This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AWR2944: [AWR2944 uC] - Ethernet transmission buffers issue

Part Number: AWR2944

Tool/software:

We have a critical situation within our Radar project related to the Ethernet transmission buffers.   

When transmitting large size frames (1518 bytes), the communication stops, unless adding a delay in SW Ethernet driver between consecutive sent frames. The frames are still randomly corrupted (attached screenshot), but the transmission is not stopping.

TX interpacket gap didn’t helped even if we configured it for the max configurable value.

The statistics register for both Port0 and Port1 are having the same values.

 

Temporary solution we use now:      

  • By reducing the frame size to max 1000 bytes, we can have correct communication without any delays added between the Eth frames.  

Question to you:

  • What would be the possible reason (HW wise) behind this behavior, having corrupted TX frames sent by the controller with less than expected number of bytes (1518 bytes)    ??

 

We use a AWR2944 chip.

Ethernet is configured as 100 BASE – T1

Ethernet stack is from Vector

  • Hi Laurentiu,

    I had this kind of issue some months ago trying to send UDP datagrams larger than the 1500 bytes MTU. I'm don't know if this will help you but for your information I had to patch the following SDK file because the UDP header size check made my transmission fail. For an UDP datagram, the header is 20 bytes large but if the datagram is fragmented because larger than the MTU, the UDP header is not repeated in all the fragments, just the first one. So the check failed. Now, with the patch I added, I am able to send a 15kbytes datagram. I don't know if this is the right way to proceed but this can help as a mitigation.

    <MMWAVE_SDK_INSTALL_PATH>\source\networking\enet\core\lwipif\src\lwip2lwipif.c