[etherlab-users] Non-CoE slaves

Thomas Nelson gcsnh at granitecomputersciences.com
Tue May 22 16:09:03 CEST 2012

On May 18, 2012, at 1:52 AM, Florian Pose wrote:

> Am 17.05.2012 20:25, schrieb Thomas Nelson:
>> My client is adding a digital I/O module to their current EtherCAT
>> servo motor control system that I've been working with for several
>> months now. All slaves are currently using CoE, but the DIO module
>> that we're currently evaluating does not support that mode (or any
>> other mailbox mode for that matter), only fixed data access via the
>> SMs and FMMUs.
>> Does the current (1.5.x) master support this capability? If so,
>> can someone provide a suitable configuration example, as it's not
>> obvious to me that one of the existing examples demonstrates this.
>> The DIO module is enumerated successfully, but I haven't been able
>> to configure it for access from the application.
> The digital output slave in the user/ example is such a slave. You can
> just ctreate a slave configuration and then call
> ecrt_slave_config_pdos() as usual (to tell the master about the PDO
> layout). The only difference is, that the master won't have a
> possibility to change the PDO mapping, but this is not necessary if
> the mapping provided matches the slave's PDOs.

After pruning the application code down to just the minimum necessary to initialize and operation this DIO slave, I've been able to zero in on what appears to be the failure from the following log message sequence (starting with the master activation):

[ 1231.073757] EtherCAT DEBUG 0: ecrt_master_activate(master = 0xf74ab000)
[ 1231.073771] EtherCAT 0: Domain0: Logical address 0x00000000, 13 byte, expected working counter 3.
[ 1231.073781] EtherCAT 0:   Datagram domain0-0: Logical offset 0x00000000, 13 byte, type LRW.
[ 1231.073789] EtherCAT DEBUG 0: Stopping master thread.
[ 1231.077182] EtherCAT DEBUG 0: Master IDLE thread exiting...
[ 1231.077213] EtherCAT 0: Master thread exited.
[ 1231.077224] EtherCAT DEBUG 0: FSM datagram is f74ab4c0.
[ 1231.077231] EtherCAT 0: Starting EtherCAT-OP thread.
[ 1231.077338] EtherCAT DEBUG 0: Operation thread running with fsm interval = 4000 us, max data size=45000
[ 1231.077354] EtherCAT DEBUG 0: mmap()
[ 1231.077376] EtherCAT DEBUG 0: Vma fault, virtual_address = b7732000, offset = 0, page = f74638e0
[ 1231.101864] EtherCAT DEBUG 0: Configuration changed.
[ 1231.101872] EtherCAT DEBUG 0: Writing system time offsets...
[ 1231.105920] EtherCAT DEBUG 0-0: DC system time offset calculation: system_time=1257390295170 (corrected with 4000000), app_time=1231105663809, diff=-26284631361
[ 1231.105931] EtherCAT DEBUG 0-0: Setting time offset to 18446744047424920255 (was 0)
[ 1231.109969] EtherCAT DEBUG 0: Writing system time offsets...
[ 1231.109977] EtherCAT DEBUG 0: Requesting OP...
[ 1231.118052] EtherCAT DEBUG 0-0: Changing state from PREOP to OP.
[ 1231.118058] EtherCAT DEBUG 0-0: Configuring...
[ 1231.126130] EtherCAT DEBUG 0-0: Now in INIT.
[ 1231.126136] EtherCAT DEBUG 0-0: Clearing FMMU configurations...
[ 1231.130176] EtherCAT DEBUG 0-0: Clearing sync manager configurations...
[ 1231.134216] EtherCAT DEBUG 0-0: Clearing DC assignment...
[ 1231.138256] EtherCAT DEBUG 0-0: Configuring mailbox sync managers...
[ 1231.138263] EtherCAT DEBUG 0-0: Slave does not provide mailbox sync manager configurations.
[ 1231.138274] EtherCAT DEBUG 0-0: SM0: Addr 0x1800, Size 128, Ctrl 0x26, En 1
[ 1231.138282] EtherCAT DEBUG 0-0: SM1: Addr 0x18F6, Size 128, Ctrl 0x22, En 1
[ 1231.150383] EtherCAT DEBUG 0-0: Now in PREOP.
[ 1231.150405] EtherCAT WARNING 0-0: PDOs configured for SM2, but slave does not provide the sync manager information!
[ 1231.150427] EtherCAT WARNING 0-0: PDOs configured for SM3, but slave does not provide the sync manager information!
[ 1231.150444] EtherCAT ERROR 0-0: Failed to determine PDO sync manager for FMMU!

All initialization prior to the master activation appears to be successful.  I've double checked the fixed PDO and SM mappings with the data in the vendor's supplied ESI file.  They claim that this device operates successfully with at least 3 other commercial EC masters (TRIO, NI, and Koenig-PA), but acknowledge that these masters were configured using the ESI file.

Any recommendations on how to proceed, if possible?  If you need any further information, I'll be happy to supply it if I can.

Best regards,

Tom Nelson
Consulting Engineer
Granite Computer Sciences, LLC

More information about the Etherlab-users mailing list