W5500 gets a timeout during send complete interrupt

I am having an issue that I don’t understand. I believe it is causing some problems with a particular website. I sent a packet with “ESTABLISHED” connection (Sn_SR = 0x17). I then receive and interrupt for the socket I used to send the packet. The Sn_IR registers shows 0x18 when I read it in the interrupt service routine. It looks like there was a SEND_OK but how can there be a TIMEOUT bit set also? The next time I sent a packet to the website, the Sn_SR is 0x00 (CLOSED). I think this is causing some issue because there is no response to the TCP SYN packet that was sent.

I don’t understand how an established connection can just timeout especially since the packet got sent.


SEND_OK interrupt is not send is completed.
SEND_OK interrupt is occurred when data is written at buffer.

I think the packet is sent but not receive ACK packet so TIMEOUT interrupt is occurred.
Capture packet of send and receive by like wireshark. Or check physical link.

And if you see “ESTABLISHED”, It doesn’t matter about TCP SYN.