[etherlab-users] Problem with distributed clocks in RTAI: "Slave did not sync after 5000 ms" & "No Sync Error"
Mohsen Alizadeh Noghani
m.alizad3h at gmail.com
Fri Oct 19 11:35:16 CEST 2018
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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.etherlab.org/pipermail/etherlab-users/attachments/20181019/ea962b85/attachment-0002.htm>
More information about the Etherlab-users
mailing list