On 8/5/2013 4:33 PM, Michael Haberler wrote: > > 2. motion underrun: this is a situation where motion runs out of > commands for some reason, which might or might not be end of program > (m2) or a queue buster > > re 2: motion cannot tell, so it just stops: > http://git.linuxcnc.org/gitweb?p=linuxcnc.git;a=blob;f=src/emc/kinematics/tp.c;h=c115d91f85070733f84f3ea03aa45f491215f3c8;hb=cab03d760374d7e322d48c8190c8f590eeec86df#l688 > > you might want to trap that situation too, either through a debug > HAL pin, or a log message
Hmm...I'm not even going to _pretend_ to understand the trajectory planner communication, but it seems REALLY suspicious that the first thing the code does if the queue is initialize it (and resetting the read and write pointers to zero). I think this reset (the tcqInit call immediately following the line you linked above) is happening on the real-time side, so unless things are *REALLY* well coordinated I can easily see the non-RT side getting confused about the queue pointers and valid data getting dropped on the floor (which would totally explain what I'm seeing). I'll try to hack in a log warning or something and see if this code is ever getting triggered. In the meantime, does anyone know why tp.c / tpRunCycle() is initializing the &tp->queue if it's ever found to be empty? -- Charles Steinkuehler [email protected]
signature.asc
Description: OpenPGP digital signature
------------------------------------------------------------------------------ Get your SQL database under version control now! Version control is standard for application code, but databases havent caught up. So what steps can you take to put your SQL databases under version control? Why should you start doing it? Read more to find out. http://pubads.g.doubleclick.net/gampad/clk?id=49501711&iu=/4140/ostg.clktrk
_______________________________________________ Emc-developers mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/emc-developers
