Skip to content

Commit

Permalink
fix(api): smoothie driver: Limit high currents to moving axes (#4729)
Browse files Browse the repository at this point in the history
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
sfoster1 authored Jan 15, 2020
1 parent c25c887 commit 7e728ea
Show file tree
Hide file tree
Showing 2 changed files with 73 additions and 69 deletions.
Loading

0 comments on commit 7e728ea

Please sign in to comment.