When I attempt to transmit an Ethernet/UDP packet, the packet doesn’t get transmitted until some random packet is received. Maybe there is some configuration bit that I am missing, but this doesn’t sound like a legitimate mode for network operation. Does anybody have experience with this problem and a solution?
I have some issues like that. Any solutions let me know.
not sure if this is your case but you can try to define the DHAR register in the TOE
then use Sn_CR_SEND_MAC instead Sn_CR_SEND
in sendto library call
Wiznet sent me updated W7500x_miim.c and .h files that fix the issue. Not sure exactly why, but the previous code used a hard PHY address and the PHY was not being initialized. The new code somehow extracts the PHY address from the PHY and allows initialization.
Could you share the code?
The code is at:
The last commit is a year ago. I’ve been using this code.
Is this code solved your problem?
It did solve my problem. But, there is a hardware fix for a related problem. It had something to do with the network not working at 100Mbps. The new W7500P revision was released in early August, 2017. If your chip is older than this, you should investigate this fix.