Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
fix(api): smoothie driver: Limit high currents to moving axes (#4729)
V1 habitually issues calls to the smoothie driver's move() function that include only the axes that are going to move (basically because of the mover setup that underpins motion control in V1). In V2, we have a unified source of control for motor commands that always sends a full axis spec. The smoothie driver was setting high currents for all axes specified in the motion command, whether those axes moved or not. That meant that most of the time, any command would set all axes to high currents. This is unnecessary, generates heat, and may overstress the power supply, leading to unexpected skips in certain high-friction situations. Instead, use the code we already have to cut down on gcode command length to determine which axes will actually move and only set those axes to high currents. Closes #4714
- Loading branch information