Hi,
I habe an Ender 3V2 Printer with Creality V4.2.2 board.
I use a direct drive, so disabling an extruder motor for a filament change would be very handy.
However, G Code SET_STEPPER_ENABLE does not disable or enable stepper motors after homing is done.
It means, i cannot use it in macro during print.
However, if motors were disabled by M18 or M84, SET_STEPPER_ENABLE STEPPER=[stepper name] ENABLE=1 turns ALL stepper motors on and … ENABLE=0 switches them off again. So it doesn’t seem to work with a single stepper, but for all of them at the same time.
Is it somehow possible to make this command work for a single stepper without stopping the print?
Or does it work only for stepper drivers in UART mode?
I’m not familiar with that particular printer, but several Ender printers have just one wire to control the enable state of several motors - in that case, there’s nothing the software can do to selectively enable just one motor.
Why do you want disable motors after homing?
If you disable the motors after homing, Klipper assumes the positions are not correct any more. In particular the X, Y and Z axis. The E axis is not homed. So you have to home again.
Disabling the motors only make sense after a print.
Ok, that could be the reason. The drivers are in standalone mode, not even UART on the board, so i guess, they could be really controlled by a single wire. I should look into schematic then.
UPD.:
Yes, that should be it. The steppers are all disabled at once, when i do it for each single motor at the same time: