4933
« on: February 07, 2013, 03:05:57 AM »
Hi Jack,
I think John has described the operation of these commands perfectly and I can only repeat what he has already said.
The M and E commands perform exactly the same function (M10P1 = E1P0 and M11P1 = E1P1) so to avoid confusion I will just stick with the M commands.
A typical GCode sequence could be something like this;
G0 B0 (zero imaginary Axis B)
M11P1
G0 B1 (Output #1 switched on at this point)
M11P2
G0 B0 (Outputs #2 switched on at this point)
M10 P1
G0 B1 (Output #1 switched off at this point)
M10 P2
G0 B0 (Output #2 switched off at this point)
Etc.
There has to be an axis movement following the M10 / M11 command in order for it to execute and I often use an ‘imaginary’ axis B which has been configured at minimal steps per unit with maximum Velocity and Acceleration if there is no ‘real’ axis movement to follow the M command (this may sound a bit strange but some software (such as DotG) requires a trigger point whilst the X,Y & Z axes are all stationary).
Execution time differences, measured some while ago, was 100mS for the M3 command and 2mS for the M11P1 command so there could be some advantage for your application and the best bet would be to just try it and see if you can achieve any improved results.
Tweakie.