I've been working on a project that requires trying to get the Ethercat
module stack communicating with a Beckhoff CX5140 running ubuntu 16.04
(x64) with kernel image 4.10.0-28-generic. My testbed consists of a single
EL1819 digital input card and a modified examples/user main.c code to try
and read in a digital in bit. In particular, I have cloned and built the
source available on the default branch of the etherlab sourceforge page. To
this point, I've had no (apparent) issue building and installing the
The problem is that when I start the ethercat service, the EtherCAT module
and ec_ccat driver are loaded (DEVICE_MODULES="ccat"), but there is never a
response from the EL1819 slave... dmesg just reports that "1 master waiting
for devices." and then reports nothing more.
However, when I change the configuration to use the ec_generic driver
(DEVICE_MODULES="generic"), the driver binds the sockets and EL1819 slave
is discovered (so I can see Tx/Rx info when using the "ethercat master" and
"ethercat slaves" command line tools and get the slave struct info with
ethercat cstruct)... but the dmesg log explodes with the error message
"Failed recieve FMMU clearing datagram" and associated datagrams TIMED OUT
and frames CORRUPTED warnings.
At this point I can't get the example to work. Is there anything I may be
doing wrong in my configuration, or more information I can provide to
diagnose the issue? I've checked many times that the mac address to my
interface matches, and have even tried uncommenting the "MODPROBE_FLAGS"
section of the config file.
Another related question, because I wanted to make sure, but do I have to
also make and install the Beckhoff provided CCAT drivers (from their github
page) or are the ccat modules bundled with etherlab adequate to get all
Thanks for any help that can be provided.
etherlab-users mailing list