[etherlab-users] Regular "working counter changes" error
law_hit at aliyun.com
law_hit at aliyun.com
Sat Nov 17 14:00:33 CET 2018
Dear all,
I am running Etherlab master with Gavin's patches to drive some IO modules and servo drivers.
All the slaves are successfully configured and switched to OP. But I got a lot of working counter
warnings begin from it is started. Part of the dmesg log is shown below:
[ 4764.420650] EtherCAT 0: Domain 0: 670 working counter changes - now 13/21.
[ 4765.424640] EtherCAT 0: Domain 0: 669 working counter changes - now 21/21.
[ 4766.428629] EtherCAT 0: Domain 0: 669 working counter changes - now 13/21.
[ 4767.432619] EtherCAT 0: Domain 0: 670 working counter changes - now 13/21.
[ 4768.436609] EtherCAT 0: Domain 0: 669 working counter changes - now 21/21.
[ 4769.440597] EtherCAT 0: Domain 0: 669 working counter changes - now 13/21.
[ 4770.444586] EtherCAT 0: Domain 0: 670 working counter changes - now 13/21.
[ 4771.448576] EtherCAT 0: Domain 0: 669 working counter changes - now 21/21.
Some information of my system: CPU: AMD ryzen5 1600x, Intel I211 network card, LMDE2(Debian8),
Kernel: 4.9.0-0.bpo.8-rt-amd64 (rt-preempt), IgH EtherCAT master 1.5.2 d5f6daedadc3+,
I am using the generic driver.
I believe this is not a timing problem of the realtime master thread. Because I have isolated serval cores (6-11)
for realtime tasks, and the max jitter of realtime thread is no more than 5us.
mint at lmde ~ $ sudo cyclictest -p80 --smp
[sudo] password for mint:
# /dev/cpu_dma_latency set to 0us
WARN: Running on unknown kernel version...YMMV
policy: fifo: loadavg: 0.32 0.09 0.03 1/872 17643
T: 0 (17345) P:80 I:1000 C: 58319 Min: 1 Act: 2 Avg: 3 Max: 34
T: 1 (17346) P:80 I:1500 C: 38879 Min: 1 Act: 5 Avg: 4 Max: 113
T: 2 (17347) P:80 I:2000 C: 29159 Min: 1 Act: 3 Avg: 4 Max: 42
T: 3 (17348) P:80 I:2500 C: 23327 Min: 1 Act: 3 Avg: 4 Max: 43
T: 4 (17349) P:80 I:3000 C: 19439 Min: 1 Act: 3 Avg: 5 Max: 32
T: 5 (17350) P:80 I:3500 C: 16662 Min: 1 Act: 3 Avg: 4 Max: 27
T: 6 (17351) P:80 I:4000 C: 14579 Min: 2 Act: 3 Avg: 3 Max: 4
T: 7 (17352) P:80 I:4500 C: 12959 Min: 2 Act: 3 Avg: 3 Max: 5
T: 8 (17353) P:80 I:5000 C: 11663 Min: 2 Act: 3 Avg: 3 Max: 5
T: 9 (17354) P:80 I:5500 C: 10603 Min: 2 Act: 3 Avg: 3 Max: 5
T:10 (17355) P:80 I:6000 C: 9719 Min: 2 Act: 4 Avg: 3 Max: 4
T:11 (17356) P:80 I:6500 C: 8972 Min: 2 Act: 3 Avg: 3 Max: 4
I have tried to use DC but the errors still happen. Related codes:
ecrt_domain_queue(domain1);
clock_gettime(CLOCK_TO_USE, &time);
ecrt_master_application_time(master, TIMESPEC2NS(time));
ecrt_master_sync_reference_clock(master);
ecrt_master_sync_slave_clocks(master);
ecrt_master_send(master);
The sync functions are called after ecrt_domain_queue() as suggested in other mail threads.
I have also tried the igb driver instead of generic, but the problem still.
Can anyone help explain what is happening and what should I do to get rid of these errors please?
Thanks in advance,
Yours,
Jancon
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.etherlab.org/pipermail/etherlab-users/attachments/20181117/49729d49/attachment-0002.htm>
More information about the Etherlab-users
mailing list