Skip to main content
Skip table of contents

How to diagnose an EtherCAT communication problem

This page describes the procedures to diagnose EtherCAT communication problems of the following type:

EtherCAT package drop

Use an Ethernet probe to sniff the traffic between the EtherCAT master and slave to see the dropped packages.

Setup

  • PC1: computer running the script packet_drop_test.py, is connected to the EtherCAT network using a USB-Ethernet adapter.

  • PC2: computer connected to the Ethernet probe.

  • EtherCAT slave: Safety-drive (for instance, the DEN-S-NET).

Results

  • The EtherCAT master packet gets dropped.

master_packet_drop.PNG

master_packet_drop_pc1.pcapng master_packet_drop_pc2.pcapng

The logs show that the PDO packet (#8531 on the left side) is sent by the master but does not reach the slave.

  • The EtherCAT slave packet gets dropped.

slave_packet_drop.PNG

slave_packet_drop_pc1.pcapng slave_packet_drop_pc2.pcapng

The logs show that the PDO packet (#8344 on the right side) is sent by the slave but does not reach the master.

Analyzing the logs, we see that whenever a packet is lost, there is always a packet from a different protocol (DHCPv6, mDNS, UDP, etc.) before or after it. When this packet arrives at the USB-Ethernet it causes it to cancel all pending transfers (URB_FUNCTION_ABORT_PIPE ).

usb_logs.PNG

master_packet_drop_pc1_usb.pcapng slave_packet_drop_pc1_usb.pcapng

EtherCAT late package timeout

Use a Network analyzer to see the messages between the EtherCAT master and slave.

Setup

  • PC1: Computer running the Network analyzer, connected to the EtherCAT network.

  • PC2: Computer running the Network analyzer, connected to the Ethernet probe.

  • EtherCAT slave: Safety-drive (for instance, the DEN-S-NET).

Results

Two cases have been detected:

  • An EtherCAT LRW message never arrives, leading to an FSoE error:

image-20250122-143340.png

Example 1 - LWR message not sent

The logs on the left show that the last LRW packet (#1867) sent by the Master has ID 67. The logs on the right show how the Slave’s last received LRW packet (#1866) belongs to the previous message with ID 66, and that the Masters' last packet (#1867) never arrived.

  • An EtherCAT LRW message arrives late, leading to an FSoE error:

image-20250122-151113.png

Example 2 - LWR message arrives late to master

The logs on the right show how the Slave received the LRW packet (#2085) with ID 36 sent by the master, immediately sent the LRW packet (#2086) and then the BRD packet (#2087). The logs on the right show how the Master sent the first LRW packet (#2085) with ID 36, and then received first the BRD packet (#2086) 15.86 ms later, followed by the LRW packet (#2087).

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.