I am experiencing an issue that I cannot quite figure out. I am using a w5500 on a custom development prototype. After the first time I write a register from my MCU I have to keep a continuous stream of SPI transactions (read or write, it makes no difference) otherwise the w5500 will reset. If I ever wait more than ~40ms between two consecutive transactions the device will reset. Any periodic SPI transaction will keep the device alive, such as simply reading the status register.
If I let this 40ms time elapse and then I try to read the status of the physical layer with getPHYCFGR() I will find it down and I have to recreate and reconnect to all my sockets to restore the ethernet communication.
Any idea what could be causing the issue? Please let me know how I can help reproduce the issue.