Now You Can Add Ethernet Networking to Your Raspberry Pi Pico

Now You Can Add Ethernet Networking to Your Raspberry Pi Pico

AlthoughRaspberry Pi Picohas many unique, impressivefeatures, one thing it has been lacking is networking capability.But not anymore!

Withall the growing demand for networking,Pi enthusiasts knew it wouldonlybea matter of time before this requestwas fulfilled. True enough, Pi Day weekend witnessed the inclusion of bothEthernet PHY andUSB Ethernet forboththe RP2040 and Pico.

The added PHY support is the brainchild ofSandeep Mistry, who also authored the Arduino LoRa library and the bleno and noble Node.js libraries, among others. Based on the IwIP stack, this new feature leverages the dual-core, DMA, and PIO features of the RP2040 by creating a software-based Ethernet MAC stack. Currently supported by the project are the Microchip LAN8720 and other Ethernet PHY modules that are built around RMII.

WithLAN8270 breakout boards available from some international retailers for as little as $1.50, you can now connect to the Internetnot only easily but rather cheaply. Here atVilros, we’re proud to be an official reseller of Raspberry Pi products, one of only a few in North America that offer the Raspberry Pi Pico, and you canbuyPicofrom us for just $4.Amazing cutting-edge tech for such a low cost!

 

Breadboard Wirings 

Unfortunately, the cheapest and most common LAN8720 breakoutisn’t the most breadboard-friendly option out in the market.So, you’llprobably have to grab some of those male-to-female jumper wires with the breadboard before you’re ready to get started.

To get set up, you’ll need to wire your Pico to the breakout board. You should find that the board is well-labeled with the top row of breakout pins corresponding to the left-hand label. Here’s is how to map out the pins of your Pico with theRMII-based LAN8720 breakout board:

LAN8720 Breakout

RP2040

Pico

RX0

GP6

Pin 9

RX1 (RX0 + 1 )

GP7

Pin 10

CRS (RX0 + 2)

GP8

Pin 11

TX0

GP10

Pin 14

TX1 (TX0 + 1)

GP11

Pin 15

TX-EN (TX0 + 2)

GP12

Pin 16

MDIO

GP14

Pin 19

MDC

GP15

Pin 20

nINT / RETCLK

GP20

Pin 26

VCC

3V3 (OUT)

GND

GND

Pin 38

 

**Note: for the RP2040, these are the library default pins, which can be changed via software.

 

Limitations

You should be aware,the current network add-on implementationdoes havesome limitations. Using the reference clock of the RMII modules, the RP2040 will run underclocked to only 50 MHz. Compiling the IwIP stack with NO_SYS also means neither the Socket API nor the Netcon API will be enabled. Lastly, there is the 10 Mbps limit with the link speed because of the current issue with transmission at 100 Mbps.

 

Your Next Steps

The exampledeveloped by Sandeep utilized the IwIPweb server, butthere are still many instances of library applications that enthusiasts can use and modify according to their requirements includingMQTT andTFTP example applications.Best of all,IwIP is just another TCP/IP stack – which means anything that can be done over TCP can now be done from the Raspberry Pico!

If oy need more Pico development support, you can always check out the officialRaspberry Pi forums.Unofficially, there’s also a highly activeDiscord server where many enthusiasts hang out.

Also, if you havedocumentation feedback, just post it to the Githubpico-feedback repository as anIssue.Additionally, you can find other useful links and all of the necessary documentation on theGetting Started page.

If you try out the new ethernet networking with your Raspberry Pi Pico, our team here at Vilros would love to know what you think!

And to find out more news and updates regarding your favorite products from Raspberry Pi and Arduino, don’t forget to check out more articles hereonour Vilrosblog!


Leave a comment

Comments will be approved before showing up.


Also in Raspberry Pi Intermediate Projects

How to Create Your Own Funky Music Box with Raspberry Pi
How to Create Your Own Funky Music Box with Raspberry Pi

Read More

GET IN TOUCH

MAKE:INSPIRE TEAM

x