Tech News
← Back to articles

Raspberry Pi Pico Bit-Bangs 100 Mbit/S Ethernet

read original related products more articles

Three years after the popular Pico-10BASE-T experiment and following bit-banged USB in 2023, developer Steve Markgraf now bit-bangs 100 Mbit/s Fast Ethernet on the Raspberry Pi Pico using only software and PIO. Let's take a look!

Three years ago, @kingyoPiyo’s Pico-10BASE-T project drew wide attention right here on Elektor for implementing 10 Mbit/s Ethernet on the Raspberry Pi Pico using just a few resistors. In 2023, another milestone followed with bit-banged USB, showing how far the RP2040’s (and now RP2350) programmable I/O could be pushed.

What Can an RP2350 Bit-Bang Next?

Now, developer Steve Markgraf (GitHub @steve-m) has extended the concept with Pico-100BASE-TX — a 100 Mbit/s Fast Ethernet transmitter running entirely in software.

Markgraf’s implementation uses the PIO and DMA to perform MLT-3 encoding, 4B5B line coding, and scrambling at a 125 MHz symbol rate. The result is a functioning 100 Mbit/s link capable of streaming about 11 Mbyte/s over UDP, demonstrated by real-time audio and ADC data streams.

Bit-banging 100 Mbps Ethernet on a Raspberry Pi Pico. Source: https://github.com/steve-m/Pico-100BASE-TX

As before, this is a transmit-only proof of concept and must not be connected to PoE-enabled hardware. A pulse transformer or intermediary Ethernet switch is recommended for isolation.

Check Out the Rest of His Repo

... continue reading