Sensor-ID Mapping over Ethernet with RP2040 & W5500 (MicroPython)
MicroPython firmware for W5500-EVB-Pico that polls sensor IDs via I²C/SPI and streams them over wired TCP/IP as a low-power IoT gateway.

Repository Overview
ID-Mapping_v2_PICO
is an experimental MicroPython firmware for the W5500-EVB-Pico (RP2040 + W5500). It polls one or more sensors for their unique IDs and sends the data over a wired TCP/IP link. According to the README log, the 24 Feb 2025 build finished the ID-reading routine, while the 23 Apr 2025 commit merged legacy TCP test code and added a “chunked script loader.”
Required Hardware
W5500-EVB-Pico board: Combines an RP2040 MCU with WIZnet’s W5500 hard-wired TCP/IP chip.
RJ-45 patch cable & router/switch: For physical Ethernet.
I²C or SPI sensors (e.g., temperature-humidity, light, accelerometer) that expose a unique ID/serial number.
Required Software
MicroPython v1.22+ UF2 for W5500-EVB-Pico
Built-in WIZnet driver (network.WIZNET5K
)
mpremote or rshell on a host PC for file transfer and console logging.
Source-Code Highlights
W5500_EVB_PICO.py
– sets GPIO/SPI timing, handles DHCP or static IP, wraps low-level wiznet5k.socket
calls into helpers.
main.py
–
Scans attached sensors for their unique IDs.
Encodes the list as JSON/binary and pushes it to a TCP server.
Implements retry/reset logic on network failure.
Includes a chunk loader that fetches and parses large scripts in 512-byte blocks.