Hello everyone. I'm using kernel 3.4.6, RTAI 4.0 and IgH Master 1.5.2. When running a simple RTAI program <https://github.com/mohse-n/L7N_EtherLab/blob/master/rtai/rtai_sample.c> that uses distributed clocks (basically the dc_rtai example), I encounter the following kernel log:
*kernel: [ 1891.643677] EtherCAT 0: Link state of ecm0 changed to UP.* *kernel: [ 1891.647798] EtherCAT 0: 2 slave(s) responding on main device.* *kernel: [ 1891.647800] EtherCAT 0: Slave states on main device: PREOP.* *kernel: [ 1891.647837] EtherCAT 0: Scanning bus.* *kernel: [ 1892.083268] EtherCAT 0: Bus scanning completed in 436 ms.* *kernel: [ 1892.083271] EtherCAT 0: Using slave 0 as DC reference clock.* *kernel: [ 1906.700138] EtherCAT: Requesting master 0...* *kernel: [ 1906.700142] EtherCAT: Successfully requested master 0.* *kernel: [ 1906.700160] EtherCAT 0: Domain0: Logical address 0x00000000, 24 byte, expected working counter 6.* *kernel: [ 1906.700161] EtherCAT 0: Datagram domain0-0-main: Logical offset 0x00000000, 24 byte, type LRW.* *kernel: [ 1906.700185] EtherCAT 0: Master thread exited.* *kernel: [ 1906.700187] EtherCAT 0: Starting EtherCAT-OP thread.* *kernel: [ 1906.704215] ec_rtai_sample: RT timer started with 3116/3117 ticks.* *kernel: [ 1906.704218] ec_rtai_sample: Initialized.* *kernel: [ 1911.935059] EtherCAT WARNING 0-0: Slave did not sync after 5000 ms.* *kernel: [ 1911.946039] EtherCAT 0: Domain 0: Working counter changed to 3/6.* *kernel: [ 1914.070216] EtherCAT ERROR 0-0: Failed to set OP state, slave refused state change (SAFEOP + ERROR).* *kernel: [ 1914.073870] EtherCAT ERROR 0-0: AL status message 0x002D: "No Sync Error".* *kernel: [ 1914.081189] EtherCAT 0-0: Acknowledged state SAFEOP.* *kernel: [ 1919.308375] EtherCAT WARNING 0-1: Slave did not sync after 5000 ms.* *kernel: [ 1919.321187] EtherCAT 0: Domain 0: Working counter changed to 6/6.* *kernel: [ 1921.449013] EtherCAT ERROR 0-1: Failed to set OP state, slave refused state change (SAFEOP + ERROR).* *kernel: [ 1921.452670] EtherCAT ERROR 0-1: AL status message 0x002D: "No Sync Error".* *kernel: [ 1921.459991] EtherCAT 0-1: Acknowledged state SAFEOP.* *kernel: [ 1921.469158] EtherCAT 0: Slave states on main device: SAFEOP.* The slaves (servo drives) would give an alarm related to EtherCAT communication. Apparently, the slaves are unable to sync after 5 seconds. But why? (Note: I have tested the distributed clocks example in userspace and it works, so I don't think the issue is from the slaves' side.) Best, Mohsen
_______________________________________________ etherlab-users mailing list etherlab-users@etherlab.org http://lists.etherlab.org/mailman/listinfo/etherlab-users