I am looking to reduce the temperature of the stepper motors running the z-axis lead screws on my printer.
I am looking for a little more information on why setting a hold_current is no longer recommended.
The only information I have been able to find is that the switch between hold and run current has a negative impact on precision.
Is this still the case? What is the impact on precision? Is it still not recommended to set a hold current even if it’s just on the z axis, which does not move much? Can this negative impact on precision be overcome/corrected for somehow?
Generally, what is happening, the driver reduces the current step by step, and while it is happening, the rotor slowly deviates from its current position.
The position is determined by the current in both coils with hysteresis/friction lag.
The more torque/current you have, the less hysteresis/friction lag is noticeable.
Think about it like there are springs (magnetic springs) and you make them loose, while they are under load.
With XY, it depends on the printer; it can be a problem. With Z it is complicated and depends on how it is implemented.
For example, if you have a lead screw T8x8, it can self-rotate under load if the motor is unpowered, because of the lead angle. When you reduce the current, it does rotate a little because the motor has less torque now.
With Voron-style belts, it would be similar because the weight of the portal would try to spin the motor shaft.
So, in the case of Z, it would generally look like there is an inconsistency in layer heights.
It can be overcome if there is a sort of closed loop that will correct for this.
Or there is a really HIGH gear ratio, like for T8x2 where the bed would move only by 2 mm per rotation. IDK, if it would help, but the effect should be less noticeable.
I’m using high-flow extruders that require quite a lot of current — in fact, I’m testing some at 1.5 A, reaching around 200 mm³/s with 2.85 mm filament.
However, there’s one thing I’m wondering about: since the extruders are not always active, would it be suitable to reduce the hold current when they’re idle? I know it’s generally not recommended for regular stepper motors, but in this case, I’d just like to keep the extruder cooler when it’s not being used.
By the way, I’m also cooling the extruder itself with a liquid-cooling system — not just the hotend, haha.
This is more about power and mass, not just current.
You have very rare hardware to say something for sure.
I can only suggest trying; generally error will be <1 full step.
So, you can recompute it for your rotational distance to get the rough idea.
If there is no preload of any type, there would probably be a small error.
I doubt that under normal printing, there is idle time, so I doubt you will notice the difference.
I might not fully understand what idle did you mean, but i think if it’s just waiting, like on pause, you can turn the stepper off completely. Extruder axis doesn’t need homing, and high gear ratio in the extruder probably won’t allow any filament movements. And at the end of the day, you will probably need to purge a bit after idle anyway.
But if we are talking about mid print idles, like during travel moves, that’s a different issue, since errors will accumulate. However, it depends on you setup, if you gear ratio is high, and you probably printing on larger lines on such setup, it might not be that noticeable.