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.

AM623: EtherCAT packet loss issue

Part Number: AM623
Other Parts Discussed in Thread: AM625

Hi experts

The customer's project using AM6231 is ready for small batch production. However, there is a problem that is currently stuck and cannot continue, and we hope that it will be supported.
The symptoms are as follows:
1.EtherCAT master has packet loss (1 ms send once, Codesys or system driver statistics within half an hour of data retrieval is about 30 packets less than data sent)
2.Packet loss is also can be reproduced using TI's am625 EVM and SDK;
3.The transmission frequency becomes low (more than 3ms sent once) packet loss is relieved; the NIC driver statistics no error;
4.The customer is convinced that it is not the problem of other sites connected to the network port, because they tried the PLC of other companies in the same environment without losing the packet.
I suspect it is related to the configuration of the Ethernet port or the Ethernet driver

  • Hello Ethan,

    First a couple of questions,

    What errors or packet drops show in NIC driver statistics when at 1ms configured cycle time?

    What is the max measured cycle time and jitter for 1ms configured cycle time? 

    When they tried other PLCs, were they also using CODESYS? If so, how many CODESYS tasks were there? (EtherCAT_Task, MainTask, etc?) Additionally, what was the maximum cycle time and jitter when using those PLC?

    What ECAT subdevices are used and how many? 

    Could they check the CPU load while CODESYS is running on AM62x vs the CPU load on the other PLC? 

    -------------------------------------

    In terms of the Ethernet port or driver, one guess is that since both ports/ethernet interfaces are using the same CPSW driver and the packets that pass through both ports are received or transmitted via an internal port, the packets transferred through the port connected to the PC to view CODESYS statistics might interfere with those passing through the port connected to the ECAT network. I'm currently not too sure about how best to determine if this is the case. A test I haven't tried yet is to use AM64x to connect one ICSSG port to ECAT network and CPSW port to PC to test this theory by using two different Ethernet drivers.

    In general, there really isn't an easy way to isolate the packets passing through both ports besides increasing the priority of the CODESYS task that uses the port in connection to the ECAT network. 

    From my previous benchmarking, 1ms configured cycle time running for about 6 hours with 10x Beckhoff EL2889 as subdevices resulted in ~28 packets loss reported by CODESYS statistics. This was prior to the optimization steps I made for the EW paper I shared with Thomas in the email thread. I did not check the packet loss reported after doing those optimization steps.

    -Daolin

  • A couple additional comments

    1. What is the hardware on the other PLCs?

    2. Are they currently connecting the AM62x to the PC for CODESYS statistics via Wifi or Ethernet? That is, I assumed in my previous response they are connected to the PC via one ethernet port and the other port connected to the ECAT network. If so, and the two ports do interfere with each other, it may be worth first, not connecting to the PC at all and check if any packets are lost in the NIC statistics. If no lost or error packets with NIC statistics, try to connect to the PC via wifi and see if the packets are lost.

    -Daolin