On 30 April 2014 05:17, propcoder <marius.alks...@gmail.com> wrote: > I think this is the line in src/emc/motion/control.c where bad thing > happens: > > /* write to HAL pins */ > .... > *(joint_data->index_enable) = joint->index_enable;
That _should_ be OK. Every servo cycle the motion controller first reads the inputs: control.c: 512 joint->index_enable = *(joint_data->index_enable); Then after processing, writes the new values: control.c: 1873 *(joint_data->index_enable) = joint->index_enable; Unless the homing code has set the joint->index_enable then the value of the pin should be unchanged. homing.c: 652 joint->index_enable = 1; It does seem odd that the pin is read then written with no apparent forcing of the sequence. Motion really ought to only write to the pin if it has decided it needs to change the value. It might be that your problem is caused by the bldc and motmod components executing in an unfortunate order. -- atp If you can't fix it, you don't own it. http://www.ifixit.com/Manifesto ------------------------------------------------------------------------------ "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE Instantly run your Selenium tests across 300+ browser/OS combos. Get unparalleled scalability from the best Selenium testing platform available. Simple to use. Nothing to install. Get started now for free." http://p.sf.net/sfu/SauceLabs _______________________________________________ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users