Add Waveshare RP2350-POE-ETH-8DI-8RO board support - #19637
Open
adh wants to merge 1 commit into
Open
Conversation
There was a problem hiding this comment.
Pull request overview
Adds a new RP2 (RP2350) board definition for the Waveshare RP2350-POE-ETH-8DI-8RO, including pin mappings and configuration to use the onboard WizNET W5500 with MicroPython’s networking stack.
Changes:
- Introduces board-level CMake, manifest, and metadata files (including RISC-V variant selection).
- Adds hardware configuration for UART/I2C/SPI, flash sizing, and W5500 defaults to support
network.WIZNET5K()with no arguments. - Defines
Pin.boardaliases viapins.csvand provides a short usage note inreadme.md.
Reviewed changes
Copilot reviewed 9 out of 9 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| ports/rp2/boards/WAVESHARE_RP2350_POE_ETH_8DI_8RO/waveshare_rp2350_poe_eth_8di_8ro.h | Pico-sdk board header defining default peripheral pins and flash config. |
| ports/rp2/boards/WAVESHARE_RP2350_POE_ETH_8DI_8RO/mpconfigboard.h | MicroPython board config enabling networking and W5500 pin/SPI bindings. |
| ports/rp2/boards/WAVESHARE_RP2350_POE_ETH_8DI_8RO/mpconfigboard.cmake | Build-time board setup (GPIO count, flash/storage sizing, lwIP + W5500). |
| ports/rp2/boards/WAVESHARE_RP2350_POE_ETH_8DI_8RO/mpconfigvariant.cmake | Default (ARM) RP2350 platform selection. |
| ports/rp2/boards/WAVESHARE_RP2350_POE_ETH_8DI_8RO/mpconfigvariant_RISCV.cmake | RISC-V RP2350 platform selection for the board variant. |
| ports/rp2/boards/WAVESHARE_RP2350_POE_ETH_8DI_8RO/manifest.py | Pulls in base port manifest and requires the networking bundle. |
| ports/rp2/boards/WAVESHARE_RP2350_POE_ETH_8DI_8RO/pins.csv | Provides Pin.board aliases for relays, digital inputs, SD, RTC, RS485, and W5500. |
| ports/rp2/boards/WAVESHARE_RP2350_POE_ETH_8DI_8RO/readme.md | Documents how to bring up Ethernet using network.WIZNET5K(). |
| ports/rp2/boards/WAVESHARE_RP2350_POE_ETH_8DI_8RO/board.json | Board metadata for docs/build tooling (features, URL, variants). |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Comment on lines
+4
to
+24
| // UART0 is exposed on the pin header. | ||
| #define PICO_DEFAULT_UART 0 | ||
| #define PICO_DEFAULT_UART_TX_PIN 0 | ||
| #define PICO_DEFAULT_UART_RX_PIN 1 | ||
|
|
||
| // The default I2C bus connects to the RTC and the pin header. | ||
| #define PICO_DEFAULT_I2C 1 | ||
| #define PICO_DEFAULT_I2C_SDA_PIN 6 | ||
| #define PICO_DEFAULT_I2C_SCL_PIN 7 | ||
|
|
||
| // The default SPI bus connects to the SD card slot. SPI0 is used by W5500. | ||
| #define PICO_DEFAULT_SPI 1 | ||
| #define PICO_DEFAULT_SPI_SCK_PIN 26 | ||
| #define PICO_DEFAULT_SPI_TX_PIN 27 | ||
| #define PICO_DEFAULT_SPI_RX_PIN 28 | ||
| #define PICO_DEFAULT_SPI_CSN_PIN 31 | ||
|
|
||
| // Flash configuration. | ||
| #define PICO_BOOT_STAGE2_CHOOSE_W25Q080 1 | ||
| #define PICO_FLASH_SIZE_BYTES (16 * 1024 * 1024) | ||
| #define PICO_FLASH_SPI_CLKDIV 2 |
|
Code size report: |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add board definition for Waveshare RP2350-POE-ETH-8DI-8RO. Most notably the integrated WizNET W5500
Testing
Tested on real hardware.
Generative AI
I used generative AI tools when creating this PR, but a human has checked the
code and is responsible for the code and the description above.