<div class="gmail_quote">On Thu, Mar 1, 2012 at 1:51 PM, Graeme Foot <span dir="ltr"><<a href="mailto:GraemeF@touchcut.com">GraemeF@touchcut.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">






<u></u>
<u></u>
<u></u>





<div lang="EN-GB" link="blue" vlink="blue">

<div>

<p class="MsoNormal"><font color="navy" face="Arial"><span style="font-size:10.0pt;font-family:Arial;color:navy">Hi,<u></u><u></u></span></font></p>

<p class="MsoNormal"><font color="navy" face="Arial"><span style="font-size:10.0pt;font-family:Arial;color:navy"><u></u> <u></u></span></font></p>

<p class="MsoNormal"><font color="navy" face="Arial"><span style="font-size:10.0pt;font-family:Arial;color:navy">There is an RTDM patch for EtherLabs
EtherCAT master for use with RTAI / Xenomi.  It allows certain ethercat
calls to be made from user space from a real-time context.</span></font></p></div></div></blockquote><div><br></div><div>Thank you for the suggestion, and I would be happy with that if user space operation was the only design goal for our software stack, but we want to minimize the number of software components we have to configure and compile. It would be great if there was a solution for RT_PREEMPT.</div>

<div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="EN-GB" link="blue" vlink="blue"><div><p class="MsoNormal"><font color="navy" face="Arial"><span style="font-size:10.0pt;font-family:Arial;color:navy"><u></u><u></u></span></font></p>



<p class="MsoNormal"><font color="navy" face="Arial"><span style="font-size:10.0pt;font-family:Arial;color:navy"><u></u> <u></u></span></font></p>

<p class="MsoNormal"><font color="navy" face="Arial"><span style="font-size:10.0pt;font-family:Arial;color:navy">I don't know know about the RT_PREEMPT
side of things.<u></u><u></u></span></font></p>

<p class="MsoNormal"><font color="navy" face="Arial"><span style="font-size:10.0pt;font-family:Arial;color:navy"><u></u> <u></u></span></font></p>

<p class="MsoNormal"><font color="navy" face="Arial"><span style="font-size:10.0pt;font-family:Arial;color:navy">Regards,<u></u><u></u></span></font></p>

<p class="MsoNormal"><font color="navy" face="Arial"><span style="font-size:10.0pt;font-family:Arial;color:navy">Graeme.<u></u><u></u></span></font></p>

<p class="MsoNormal"><font color="navy" face="Arial"><span style="font-size:10.0pt;font-family:Arial;color:navy"><u></u> <u></u></span></font></p>

<div>

<div class="MsoNormal" align="center" style="text-align:center"><font size="3" face="Times New Roman"><span lang="EN-US" style="font-size:12.0pt">

<hr size="2" width="100%" align="center">

</span></font></div>

<p class="MsoNormal"><b><font face="Tahoma"><span lang="EN-US" style="font-size:10.0pt;font-family:Tahoma;font-weight:bold">From:</span></font></b><font face="Tahoma"><span lang="EN-US" style="font-size:10.0pt;font-family:Tahoma">
<a href="mailto:etherlab-users-bounces@etherlab.org" target="_blank">etherlab-users-bounces@etherlab.org</a>
[mailto:<a href="mailto:etherlab-users-bounces@etherlab.org" target="_blank">etherlab-users-bounces@etherlab.org</a>] <b><span style="font-weight:bold">On
Behalf Of </span></b>Soo-Hyun Yoo<br>
<b><span style="font-weight:bold">Sent:</span></b> Friday, 2 March 2012 09:00<br>
<b><span style="font-weight:bold">To:</span></b> <a href="mailto:etherlab-users@etherlab.org" target="_blank">etherlab-users@etherlab.org</a><br>
<b><span style="font-weight:bold">Subject:</span></b> [etherlab-users] Jitter
when trying to use EtherLab Master at hard real-time 1 kHz under RT-PREEMPT</span></font><span lang="EN-US"><u></u><u></u></span></p>

</div><div><div class="h5">

<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt"><u></u> <u></u></span></font></p>

<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt">Hello,<u></u><u></u></span></font></p>

<div>

<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt"><u></u> <u></u></span></font></p>

</div>

<div>

<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt">I am using EtherLab version 1.5.0 in Xubuntu 10.04, kernel
v2.6.31-11-rt (RT_PREEMPT-patched kernel, installed via aptitude),
and Orocos to provide a real-time user space environment in which to run
software controllers at hard real-time 1 kHz.<u></u><u></u></span></font></p>

</div>

<div>

<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt"><u></u> <u></u></span></font></p>

</div>

<div>

<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt">Unfortunately, I am having problems with jitter on the EtherCAT bus.
Oscilloscope readings show jitter as high as 400 or 500 us, possibly higher.
Comparatively, our old EtherCAT master running in kernel space under RTAI
v3.8.1 has jitter under 50 us at most.<u></u><u></u></span></font></p>

</div>

<div>

<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt"><u></u> <u></u></span></font></p>

</div>

<div>

<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt">From what I have read in mailing list threads like this one (<a href="http://lists.etherlab.org/pipermail/etherlab-users/2009/000535.html" target="_blank">http://lists.etherlab.org/pipermail/etherlab-users/2009/000535.html</a>),
it sounds like the EtherLab Master is capable of real-time user space operation
in an RT_PREEMPT-patched kernel, but only capable of real-time kernel
space operation under RTAI/LXRT (<a href="http://www.mail-archive.com/etherlab-users@etherlab.org/msg00588.html" target="_blank">http://www.mail-archive.com/etherlab-users@etherlab.org/msg00588.html</a>).<u></u><u></u></span></font></p>



</div>

<div>

<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt"><u></u> <u></u></span></font></p>

</div>

<div>

<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt">My tenuous understanding of this is that since the EtherCAT character
device tries to use the kernel's ioctl calls, the kernel's ioctl
"interface" (?) needs to be patched. Since RT_PREEMPT is the only patch
that does so, while LXRT provides its own interface, the former is the only one
capable of real-time user space operation while the latter is limited to kernel
space. Based on this assumption, I am hoping that the EtherLab Master is
capable of real-time operation in user space under RT_PREEMPT.<u></u><u></u></span></font></p>

</div>

<div>

<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt"><u></u> <u></u></span></font></p>

</div>

<div>

<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt">What can I do to lessen this jitter? Does anyone have a working
EtherCAT master running at 1 kHz with jitter under 50 us?<u></u><u></u></span></font></p>

</div>

<div>

<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt"><u></u> <u></u></span></font></p>

</div>

<div>

<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt">Soo-Hyun Yoo<u></u><u></u></span></font></p>

</div>

<div>

<p class="MsoNormal"><font size="3" face="Times New Roman"><span style="font-size:12.0pt">Dynamic Robotics Lab<u></u><u></u></span></font></p>

</div>

<div>

<p class="MsoNormal"><u></u><u></u><font size="3" face="Times New Roman"><span style="font-size:12.0pt">Oregon</span></font><u></u>
 <u></u>State<u></u> <u></u>University<u></u><u></u><u></u><u></u></p>

</div>

</div></div></div>

</div>


</blockquote></div><br>