CompactCom M40 EtherCAT, Example App, Communication Issue with EtherCAT Master


I have the following setup:

A) Anybus CompactCom M40 EtherCAT Module. It is being used with a “Cypress FM3 CY9BF524M Microcontroller”. The Anybus is connected to the Microcontroller using SPI.

B) The EtherCAT Master is a “Hilscher CIFX 50-RE”

( CIFX 50-RE | PC card PCI - EtherCAT-Master |

I am using DTM Program as well in order to set everything up.

The Problem:

I have established the SPI communication between the MCU and the Anybus M40 Module successfully. I am trying to run the “appl_adimap_speed_example”, but I am unable to observe exchange of data between the EtherCAT Master and the Anybus CompactComm. The Anybus state is “ABP_ANB_STATE_WAIT_PROCESS”, and the Handler State is “APPL_RUN”.

I am unable to proceed forward in establishing successful data exchange between the EtherCAT Master and Slave.

Have you added the device to the EtherCAT master? Is the EtherCAT network in its run state? The Anybus state being “ABP_ANB_STATE_WAIT_PROCESS”, and the Handler State is “APPL_RUN" sounds correct for an idle m40. You can enable EOE though the ethercat object F5h instance 1 attribute 17.


Here is a document that should help with setting up EOE.

Basic setup for EoE with an M40.docx (104.1 KB)

I would also recommend reach out to your local support team via


Hello Deryck;

Thank you for the response.

I am using “cifX 50 EtherCAT Master” from “Hilscher”. I also have a 2nd CIFX Card second card, which can be configured as an Anybus Slave to test and verify, if the EtherCAT Network works or not.

I am using the Software (also from Hilscher) in order to control the Master and Slave. When I do a Network Scan with the ABCC_M40 EtherCAT Slave connected, I get either of two results:

  1. Slave not Connected
  2. The Slave is Detected but there is no information available about the slave and I am unable to control it or work with it.

When I use my Second CIFX card as a dummy Slave, the Network scan detects the slave properly with all the correct information and I am able to work with it without any issues.

I also made sure that I use the “HMS EtherCAT ESI Generator” to generate the ESI (.xml) File. I import the File into the Software, but still I am unable to work with it.

There seems to be a problem between the SYCON CIFX EtherCAT Master and the Anybus Slave, which I am unable to figure out.


Hello Deryck,

I have solved the issue, and I think we can close this topic. Thank you for the Help.

As mentioned above, I was having the Following Problems:

  1. Unable to Detect the Slave.
  2. When the Slave was detected, The Data was incorrect.(This should have been my clue).

I got an email from Anybus Support in Karlsruhe, Germany. It included a “Draft Document” which explains Setting up the Anybus Example Application, and exchanging the Data from the Network, and Using “TwinCAT 3” from Beckhoff as an EtherCAT Master.

When I did my Setup, I also got an Error from TwinCAT which said that my VendorID was wrong (0xFFFFFFFF). I used the EtherCAT ESI File Generator, but the issue remained, and the VendorID in the XML File was always 0xFFFFFFFF.

I looked into my “Host Application Example”, I had unknowingly enabled the EtherCAT Setup by setting "ECT_OBJ_ENABLE " to TRUE. Due to this, the Vendor ID was set at 0xFFFFFFFF. The ESI File generator was reading from the Module.

I have no problems anymore, and both and TwinCAT work properly with the Slave.

I am relatively new with EtherCAT, and I appreciate the help. Thank you very much.

Have a great day,


1 Like

Ah good catch with the Vendor ID that would cause some problems. Glad to hear you have it up and running.

Have a great day,