ports/rp2/boards: Add support for WIZnet-EVB-Pico2 by wiznet-grace · Pull Request #16280 · micropython/micropython · GitHub
Skip to content

ports/rp2/boards: Add support for WIZnet-EVB-Pico2 - #16280

Closed
wiznet-grace wants to merge 5 commits into
micropython:masterfrom
wiznet-grace:WIZnet-EVB-Pico2
Closed

wiznet-grace wants to merge 5 commits into
micropython:masterfrom
wiznet-grace:WIZnet-EVB-Pico2

Conversation

@wiznet-grace

Copy link
Copy Markdown

Summary

This PR adds initial support for the W5500-EVB-PICO2 and W5100S-EVB-PICO2 boards.
The changes included in this PR are as follows:

  • Board configuration files
  • Pin definitions (which are the same as W5500-EVB-Pico and W5100S-EVB-Pico)

These updates extend MicroPython's compatibility to additional RP2350-based boards, enabling more developers to utilize these platforms effectively.

Testing

W5500-EVB-PICO2 and W5100S-EVB-PICO2 boards successfully tested:

  • LED blink
  • Ethernet (DHCP allocation)

@github-actions

Copy link
Copy Markdown

@wiznet-grace
wiznet-grace force-pushed the WIZnet-EVB-Pico2 branch 4 times, most recently from 6b9334d to 47049a8 Compare November 21, 2024 05:12
@wiznet-grace wiznet-grace changed the title Add support for WIZnet-EVB-Pico2 ports/rp2/boards: Add support for WIZnet-EVB-Pico2 Nov 21, 2024
@byzantic

Copy link
Copy Markdown

Hi, I notice that in the board definition files, you have defined the external flash size as 16 MByte.

However, my understanding was that the flash size is the same as the W5500-EVB-pico, i.e. 2MByte. Also the schematic for the W5500-EVB-Pico2 (see https://docs.wiznet.io/Product/iEthernet/W5500/w5500-evb-pico2#schematic) shows the flash to be a W25Q16JV, a 16Mbit part, i.e 2MByte.

@wiznet-grace

wiznet-grace commented Nov 26, 2024

Copy link
Copy Markdown
Author

Dear byzantic,

Thank you for your advice and for pointing out the issue with the flash size definition. You are absolutely correct, and I sincerely apologize for the oversight.

The flash size for the W5500-EVB-Pico2 / W5100S-EVB-Pico2 is indeed 2MByte, as the schematic indicates with the W25Q16JV flash, which is a 2MByte(16Mbit ). I have updated the mpconfigboard.h files to reflect the correct flash size.
and I’ve also completed the testing after the modification.

I truly appreciate your attention to detail and for bringing this to my attention. Thanks again for your help in ensuring the accuracy of the board configuration.

Best regards
Grace

Hi, I notice that in the board definition files, you have defined the external flash size as 16 MByte.

However, my understanding was that the flash size is the same as the W5500-EVB-pico, i.e. 2MByte. Also the schematic for the W5500-EVB-Pico2 (see https://docs.wiznet.io/Product/iEthernet/W5500/w5500-evb-pico2#schematic) shows the flash to be a W25Q16JV, a 16Mbit part, i.e 2MByte.

@dpgeorge dpgeorge added the board-definition New or updated board definition files. Combine with a port- label. label Dec 19, 2024

@MilhouseVH MilhouseVH left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like some copy & paste minors.

Hopefully this Wiznet Pico2 support will land soon! 👍

"USB"
],
"images": [
"W5500-EVB-Pico2.jpg"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe a nit, but wrong image? Should be "W5100S-EVB-Pico2.jpg"?

"W5500-EVB-Pico2.jpg"
],
"mcu": "rp2350",
"product": "Wiznet W5500-EVB-Pico2",

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe a nit, but wrong product? Should be "Wiznet W5100S-EVB-Pico2"?


// Enable networking.
#define MICROPY_PY_NETWORK (1)
#define MICROPY_PY_NETWORK_HOSTNAME_DEFAULT "W5500S-EVB-PICO2"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
#define MICROPY_PY_NETWORK_HOSTNAME_DEFAULT "W5500S-EVB-PICO2"
#define MICROPY_PY_NETWORK_HOSTNAME_DEFAULT "W5100S-EVB-PICO2"

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hello.

Thank you for pointing out my mistake.
I will add this to the commit. I truly appreciate it.

Best regards,
Grace

Signed-off-by: wiznet-grace <Grace@wiznet.io>
@diafygi

diafygi commented Mar 10, 2025

Copy link
Copy Markdown

I may be a bit confused, but are there remaining changes needed for this PR? Looking forward to getting this board supported!

@wiznet-grace

Copy link
Copy Markdown
Author

I may be a bit confused, but are there remaining changes needed for this PR? Looking forward to getting this board supported!

Sorry for the late reply, and thank you so much for your interest!

This PR is still active and there are no pending changes at the moment.
If there's anything that needs to be fixed or adjusted, we’d really appreciate your feedback.

Thanks again for checking in — we really appreciate the support!
Grace

@nexusgoblin

Copy link
Copy Markdown

Well, FWIW, I've been testing this PR in the wild.

I picked up a W5100S-EVB-Pico2 a few weeks ago wth the add-on PoE module. I built a Micropython install for it using this PR and the v1.25 release tag. Flashed it and deployed my code on top.

It has been running 24x7 monitoring a half dozen sensors every 10 seconds or so and sending the results over a TLS encrypted websocket to a central server. It seems pretty solid.

Thanks for the work @wiznet-grace and I'm looking forward to this being merged.

@wiznet-grace

Copy link
Copy Markdown
Author

Well, FWIW, I've been testing this PR in the wild.

I picked up a W5100S-EVB-Pico2 a few weeks ago wth the add-on PoE module. I built a Micropython install for it using this PR and the v1.25 release tag. Flashed it and deployed my code on top.

It has been running 24x7 monitoring a half dozen sensors every 10 seconds or so and sending the results over a TLS encrypted websocket to a central server. It seems pretty solid.

Thanks for the work @wiznet-grace and I'm looking forward to this being merged.

Thanks a lot for testing and sharing your results!
Happy to hear it’s working well for you.
If you spot anything that needs improvement, feel free to let me know. 😊

Grace

@bachah

bachah commented May 26, 2025

Copy link
Copy Markdown

Hello ! any reason for not merging it yet?

@wiznet-grace

Copy link
Copy Markdown
Author

Hi, just following up on this PR. It’s been a few months since submission,
and we’ve seen some community users testing these WIZnet Pico2 boards with good results.

I’d be happy to rebase or make any changes needed to get this merged. Let me know if there’s anything I can help with!

Thanks again for maintaining MicroPython.

cc @dpgeorge

@bachah

bachah commented Jun 30, 2025

Copy link
Copy Markdown

Hello @dpgeorge ,

This PR looks great, builds are passing and tests are conclusive, please advise on the reason of not approving yet. Thanks!

@wiznet-grace can you please share the uf2 generated from this PR? or how to do it? would like to proceed cause 7 months are way too much for a PR 😄

@wiznet-grace

wiznet-grace commented Jun 30, 2025

Copy link
Copy Markdown
Author

Hello @dpgeorge ,

This PR looks great, builds are passing and tests are conclusive, please advise on the reason of not approving yet. Thanks!

@wiznet-grace can you please share the uf2 generated from this PR? or how to do it? would like to proceed cause 7 months are way too much for a PR 😄

Sure! You can generate the .uf2 from this PR by cloning my fork directly:

  1. Clone the repo and checkout the branch:
git clone https://github.com/wiznet-grace/micropython.git
cd micropython
git checkout WIZnet-EVB-Pico2
  1. Initialize submodules:
    git submodule update --init
  2. Build for the W5500-EVB-Pico2 board:
make -C mpy-cross
cd ports/rp2
make BOARD=W5500_EVB_PICO2
(or make BOARD=W5100S_EVB_PICO2)
  1. After build completes, you'll find:
    build-W5500_EVB_PICO2/firmware.uf2

Let me know if you need help flashing the .uf2 to your board 😄

@wiznet-grace

Copy link
Copy Markdown
Author

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

board-definition New or updated board definition files. Combine with a port- label. port-rp2

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants