<div dir="ltr"><div><div><div><div><div>Hello,<br><br></div>First of all many thanks for your help! <br></div><div><br></div><br></div>If you look below, master->app_time is not really used in the code. <br></div>I get the dc ref slave clock with <span class="gmail-blob-code-inner"><span class="gmail-pl-c1">ecrt_master_reference_clock_time</span>(master->master, &master->reference_time); and save in master->reference_time<br><br></span></div><span class="gmail-blob-code-inner">after that <br><br> ecrt_master_sync_slave_clocks(master->master); // sync slaves to ref clock<br> ecrt_master_application_time(master->master, master->reference_time+master->app_time_period); //update master time with time got from dc ref slave<br></span><div><span class="gmail-blob-code-inner"><br></span></div><div><span class="gmail-blob-code-inner">Could you help me with the Sync0shift values?? The topology of my network is line one. <br></span></div><div><span class="gmail-blob-code-inner"><br></span></div><div><span class="gmail-blob-code-inner">Master ----- S1 - S2 - S3 ..... and so on until S25. <br></span></div><div><span class="gmail-blob-code-inner"><br></span></div><div><span class="gmail-blob-code-inner">I suppose I must set a very small one for the first slave and increase it a little for the next ones, no?? <br></span></div><div><span class="gmail-blob-code-inner"><br></span></div><div><span class="gmail-blob-code-inner">The kernel is Linux debian 3.4-9-rtai-686-pae #1 SMP PREEMPT Debian 3.4.55-4linuxcnc i686 GNU/Linux<br></span></div><div><span class="gmail-blob-code-inner">what is the default one of the linuxcnc 2.7 debian wheezy</span></div><div><span class="gmail-blob-code-inner"><br></span></div><div><span class="gmail-blob-code-inner">The network card is a realtek r8169</span></div><div><span class="gmail-blob-code-inner"><br></span></div><div><span class="gmail-blob-code-inner">Thanks again</span></div><div><span class="gmail-blob-code-inner">Regards, <br></span></div><div><span class="gmail-blob-code-inner"><br></span></div><div><span class="gmail-blob-code-inner">Ignacio Rosales<br></span></div><div><span class="gmail-blob-code-inner"><br></span></div><div><div><div><div><div><div><div><div><div><br><br><div><br><br></div></div></div></div></div></div></div></div></div></div></div><div class="gmail_extra"><br><div class="gmail_quote">2018-01-23 2:06 GMT+01:00 Boris Skegin <span dir="ltr"><<a href="mailto:boris.skegin.de@googlemail.com" target="_blank">boris.skegin.de@googlemail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hello.<br>
<br>
> With this version<br>
> <<a href="https://github.com/narogon/linuxcnc-ethercat/commit/e4ab86ba6167ced532e49904059df580062b2d97#diff-059a684a933530837771b5a249433ff3" rel="noreferrer" target="_blank">https://github.com/narogon/<wbr>linuxcnc-ethercat/commit/<wbr>e4ab86ba6167ced532e49904059df5<wbr>80062b2d97#diff-<wbr>059a684a933530837771b5a249433f<wbr>f3</a>><br>
<span class="">> (also as attachment lcec_main.c) I get the servos sync and OP but it seems<br>
> that the PDO doesn't arrive for some of the slaves (no idea why).<br>
<br>
</span>master->app_time += master->app_time_period; means that you just sum<br>
up constant cycle times of the LinuxCNC thread. So any latency<br>
information gets lost here.<br>
<br>
Rather make master->app_time be equal to something like<br>
rt_get_time() transferred to EtherCAT time.<br>
<br>
I also think that a proper value for sync0Shift can help a lot.<br>
<br>
If however nothing of that helps, then proceed to Graeme Foot's option b) .<br>
<br>
BTW, what exactly is your kernel and network card and do you really<br>
use an adopted ( non-generic) network driver?<br>
<br>
Regards,<br>
boris<br>
</blockquote></div><br></div>