I am working on a design that uses a W5500 for networking. I followed a reference schematic and believe all my connections are correct, however I am facing issues with the network connectivity.

Basically, the device thinks that the link is always on. The Link LED turns to yellow about 1 sec after booting and stays on, even if I plug in an Ethernet cable from a router or if there is nothing plugged in.



Wiznet W5500 Reference Schematic:

Wiznet W5500 Reference Schematic

I've included the schematic here. I am using a Chinese HANRUN RJ45 connector with POE functionality.

RJ45 Connector

Does anyone know why this is or could be happening? I have followed the reference schematic and the only thing I can think that is different from the reference is the reset and the RJ45 connector.

I checked reset. It's sitting HIGH at 5 V. It needs to go low for >500 us to reset. Hitting the reset button correctly resets the device.

I should mention I did my testing with Arduino software. I used Examples -> Ethernet -> Link Status. Even when there is nothing plugged in, I get Link: ON.

Thanks for any help in advance. I will be checking back and trying to answer as many questions as possible

  • \$\begingroup\$ So quick look, your connections look ok, my guess is that it is a code issue. I've an old version of the Ethernet lib and it's made for the W5100, can you check your version and see if it is the right lib for the W5500. \$\endgroup\$
    – Jack
    Oct 5, 2020 at 9:44
  • \$\begingroup\$ Did you make sure to only pullup the PMODE pins, omitting the R30/R31/R32 pulldown resistors? Else, your current schematic will have those pins sitting at the center of the rails ~1.6V, behaviour's probably undefined. You may also want to compare with a reference like this: wizwiki.net/wiki/lib/exe/… \$\endgroup\$ Oct 7, 2020 at 0:25
  • \$\begingroup\$ @Jack, Ethernet library supports W5500 and W5200 since August 2018 when the version 2.0.0 was published \$\endgroup\$
    – Juraj
    Oct 8, 2020 at 8:47

1 Answer 1


If you based your design off of WIZnet's "wizarduino" schematic, then I suspect you didn't notice the note on it that said not to actually populate the 3 pull down resistors On the PMODE pins. These are resistors R30, R31, and R32 on your schematic. The device will not work correctly until those 3 resistors are removed. With the pull down resistors populated, those 3 connections are just voltage dividers, ones that will ensure an undefined state (neither high nor low).

Considering they control auto-negotiation behavior, it does not seem like that big of a leap to think that undefined states on these pins would cause the chip to lock up in an unresponsive state with a link active LED on due to the logic getting screwed up. It would be about 1s after boot when it would begin trying to detect if there was a link or not.

This isn't necessarily the only issue, but any other problem discovered would not fix the problem until this undefined pin state problem is also fixed. Let me know in the comments if the problem persists after removing those 3 resistors. At least its just a quick desoldering job, right? We should all be so lucky to have those kinds of problems!


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.