Don't compute steps for disabled axes
authorJoseph Coffland <joseph@cauldrondevelopment.com>
Tue, 19 Dec 2017 22:51:15 +0000 (14:51 -0800)
committerJoseph Coffland <joseph@cauldrondevelopment.com>
Tue, 19 Dec 2017 22:51:15 +0000 (14:51 -0800)
src/avr/src/plan/planner.c

index d8da7d9a85579cb643fe6a263bc54a71e23a45b8..bf3af978e29a69be6b585c068822119917e1237c 100644 (file)
@@ -118,8 +118,10 @@ void mp_kinematics(const float travel[], float steps[]) {
   // steps_per_unit() which takes axis travel, step angle and microsteps into
   // account.
   for (int motor = 0; motor < MOTORS; motor++)
-    steps[motor] =
-      travel[motor_get_axis(motor)] * motor_get_steps_per_unit(motor);
+    if (motor_is_enabled(motor))
+      steps[motor] =
+        travel[motor_get_axis(motor)] * motor_get_steps_per_unit(motor);
+    else steps[motor] = 0;
 }