-
Notifications
You must be signed in to change notification settings - Fork 7.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
W5500 is broken due to enforced version check (IDFGH-10054) #11331
Comments
Linking the discussion in #10554 (comment) |
Oh sorry, I haven't seen this earlier. I will close this issue for now. I'll try putting in a 100ms delay tomorrow and see will that helps or not. |
@huming2207 please let us know if adding a delay help you. If so, I will update the driver. I probably add multiple attempts to read the version and add delay between each attempt. |
Hi @kostaond , I've implemented a poll here: https://github.com/huming2207/esp-idf/commit/6e5e2c7344aaea3add65395849cfd282f6ae572c I'm awaiting my colleagues to test that out. If that works for us, I will submit a PR soon. |
We've tested the fix and it works for us. I will submit a PR. |
Needs backport to release/v5.1. |
Good catch! |
Is there a way to override the W5500_CHIP_VERSION or the whole w5500_verify_id function? |
Could you please try to upgrade to v5.1.1. The version check function in this version performs multiple attempts to read the version. It was observed that some chips return 0x0 when it is read right after the reset. |
5.1.1 fixed this for me, thank you! |
Answers checklist.
IDF version.
v5.1-dev-4528-g420ebd208a
Operating System used.
Linux
How did you build your project?
Command line with idf.py
If you are using Windows, please specify command line type.
None
Development Kit.
Custom board
Power Supply used.
USB
What is the expected behavior?
Some W5500 chips may return 0 for version, and just works and connects to the ethernet in ESP-IDF 5.0 (or anything before this commit bb2f346)
What is the actual behavior?
Broken with error:
...and apparently, no ethernet connection can be established after this error.
Steps to reproduce.
I've tried commenting out this line, the issue can be fixed:
esp-idf/components/esp_eth/src/esp_eth_mac_w5500.c
Line 234 in bb2f346
Debug Logs.
No response
More Information.
I've sourced our W5500 module from here: https://99tech.com.au/product/mod-w5500-t2/
It seems to be a genuine chip, at least the engraved mark on the chip package is identical to the one on Wiznet's official Raspberry Pi Pico dev W5500 HAT module. It might be just in a different version, and both versions are working fine with ESP-IDF's W5500 driver anyway.
The text was updated successfully, but these errors were encountered: