FreeRTOS unexpected CRC error

Hello all,

I am running a server and a client on two microcontrollers that have their TCP/IP stack setup in the exact same way. Sometimes it works, but more often than not I cannot get reliable communication between the two. The hardware is fine, and my links are short with a switch that has nothing else connected to it.

I keep getting this error on the server side after a connectionis established, but I don’t get the same error on the client side.

When I reduce the buffer size to 520 bytes, I get the following on the server side, but not on the client

eSYN_RECEIVED: ACK expected, not SYN: peer missed our SYN+ACK

Any ideas where I could start debugging to see where the issue is?

Thanks in advance

The logging shows that incoming packets have an incorrect checksum.
Doesn’t your hardware calculate the checksums? And if so, maybe it changes the value of the CRC-fields?

Another thing I think of is data corruption. Can you tell what platform you are using, and can you show the contents of your FreeRTOSIPConfig.h?

When I reduce the buffer size to 520 bytes

What “buffer size” do you mean?