Trying to get first W5500 design operating, and can’t seem to get the PHY Link Status to go Up.
When I plug my board into network switch the W5500 the Link Led is on steady and the Activity will flash as needed. My switch tells me that the link is up.
If I load SIPR, GAR etc., I can ping the W5500 with no problem. But checking the PHYCFGR register, bit 0 remains 0-Link Down.
Looking at this thread - W5500 No PHY Link made me think that the resistors could be a problem, so have replaced the suggested 33 Ohms damping resisters with 0 Ohm links, but still link down.
I have loaded the PHY config and then done a wizphy_reset, but no change.
What is needed for the W5500 to confirm the link and set bit 0 of PHYCFGR to 1?
Any ideas on what to check?
Further to this post, the schematic of the W5500 is attached.
The resistors on the RSVD pins have been removed, with no improvement.
It is very strange that the Link LED goes on as soon as the Ethernet cable is plugged in, and the Activity LED flashes as expected, but the PHYCFGR still say Link Down.
Has been sorted.
The link was up, but my register read function had a problem, and wasn’t returning a correct value. The burst read function (reading back IP etc.,) was fine, so thought single byte read was okay, but it wasn’t.
So W5500 all good, my firmware, no good!
how did you solve the problem
i have this problem too and w5500 always return 10111010
The post is a bit old & I’m a newbie, but with my Arduino shield I discovered that I have to wait between 205 - 210ms (+ the time of some setup instructions) before using the function Ethernet.linkStatus(), to be sure, I’ve added delay(300). Hope it helps.