M23CL Motor Microstepping Issue
-
I am trying to change one of the motors to change from 16x microstepping to 8x microstepping. It works for 16x microstepping, but when I try to change it to 8x microstepping, the motor moves once, very quickly in the opposite direction, then fails to move for any following commands due to a position tolerance issue. Once suppressing the position tolerance issue, the motor works fine, but this jerking motion occurs upon every restart of the mainboard.
I am using a Duet3D 6HC mainboard with M23CL motors.
M569 P73.0 S0 R1 M569.1 P73.0 T3 R100 I0 M569 P73.0 D4 M584 X70.0 Y71.0 Z72.0 U73.0 V74.0 E75.0 M350 X16 Y16 Z16 U16 V16 I1 M92 X640 Y640 Z1969.23077 U34.188034 V27.350427 M350 U8 I1
When I comment out the last M350 U8 I1 command, it works fine. I also tried changing the microstepping in the first M350 command as well as in M92, but that didn't work either.
-
I narrowed it down, and this happens to this axis only whenever I write M17 after start up? (with the 8x microstepping ON)
-
@ash100 what firmware version?
-
@ash100 you are using the motor in closed loop mode so microstepping does not apply. Leave it commented out.
-
@ash100 to add, if you must have 8 micro steps configured for that axis in open loop mode then
there is more here:
https://docs.duet3d.com/Duet3D_hardware/Duet_3_family/Duet_3_Expansion_1HCL#microsteppingI would use M350 U8 in the first command, then the M92 will be correct for 8 microstepping.
You can start in open loop mode for that axis and then test switching to closed loop mode once started up. Its often easier to home in open loop mode then switched to closed loop mode after homing as part of the homing file.
If this does not work then please try 3.6beta4 on the mainboard and M23CLs and report back here.
-
@ash100 what is your reason for wanting to reduce microstepping to x8?