<div dir="ltr"><div><div><div><div><div><div><div><div><div><div><div><div>Hi everyone, <br><br></div>I've a machine with 25 Hiwin servos working usign linuxcnc and <a href="https://github.com/sittner/linuxcnc-ethercat">Sittner HAL etherCAT component </a><br><br></div>My problem is I am suffering some random desynchronizations. Dmesg output: (full text as attachment dmesgoutput.txt) <br><br>Jan 22 12:01:16 kernel: [11788.586944] EtherCAT 0: Domain 0: 6 working counter changes - now 75/75.<br><br></div>at 12:01:16 the machine is working ok and everything is well but suddenly (most of times without doing anything on the application) <br><br>Jan 22 13:04:31 kernel: [15578.066190] EtherCAT 0: Domain 0: Working counter changed to 27/75.<br>Jan 22 13:04:31 kernel: [15578.074179] EtherCAT 0: 9 slave(s) responding on main device.<br>Jan 22 13:04:31 kernel: [15578.074181] EtherCAT 0: Slave states on main device: OP.<br>Jan 22 13:04:31 kernel: [15578.077148] EtherCAT 0: Scanning bus.<br><br></div>and so on... until it gets to sync everything again. <br><br></div>I've reading a lot of the etherlab users mailing list and I've found something I think could help me with the problem. <br>The application that I'm running (what most of people of linuxcnc run) is using the first method that Graeme Foot describes <a href="http://lists.etherlab.org/pipermail/etherlab-users/2016/003013.html">here</a><br></div>In the file <a href="https://github.com/sittner/linuxcnc-ethercat/blob/master/src/lcec_main.c">lcec_main.c</a> from line 1119 you can see how he makes it. <br><br></div>I've tried to modify it in many ways but I have not been able to make it works propertly. <br></div>With <a href="https://github.com/narogon/linuxcnc-ethercat/commit/e4ab86ba6167ced532e49904059df580062b2d97#diff-059a684a933530837771b5a249433ff3">this version</a> (also as attachment lcec_main.c) I get the servos sync and OP but it seems that the PDO doesn't arrive for some of the slaves (no idea why).<br><br></div>Could you help me with this problem? Could be the DC method the origin of theĀ  desynchronizations or must be something different? How could I get the application working with the 2nd mode that Foot described? <br><br></div>Many thanks,<br><br></div>Best Regards<br></div>Nacho Rosales<br><div><div><div><div><br><br><div><div><div><div><div><div><div><div><br><div><br><br></div></div></div></div></div></div></div></div></div></div></div></div></div></div>