diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp
index 6621e1962ee2a76d8b4a6160330a359597f21218..77834bd3616a34c6a6c6c6d28b8def2cbe9f0770 100644
--- a/Marlin/stepper.cpp
+++ b/Marlin/stepper.cpp
@@ -1125,7 +1125,7 @@ void Stepper::report_positions() {
 
   // MUST ONLY BE CALLED BY AN ISR,
   // No other ISR should ever interrupt this!
-  void Stepper::babystep(const uint8_t axis, const bool direction) {
+  void Stepper::babystep(const AxisEnum axis, const bool direction) {
 
     switch (axis) {
 
diff --git a/Marlin/stepper.h b/Marlin/stepper.h
index 10c5c64eeecd64b3f684d6c9166444f41b9c4757..bff23cc39df67e6ab8c1fa2c664096e420f230d7 100644
--- a/Marlin/stepper.h
+++ b/Marlin/stepper.h
@@ -257,7 +257,7 @@ class Stepper {
     #endif
 
     #if ENABLED(BABYSTEPPING)
-      static void babystep(const uint8_t axis, const bool direction); // perform a short step with a single stepper motor, outside of any convention
+      static void babystep(const AxisEnum axis, const bool direction); // perform a short step with a single stepper motor, outside of any convention
     #endif
 
     static inline void kill_current_block() {
diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp
index 61b6eb4b331bb41496a795e4ae430047c3b34e22..f01c0862ba249d466f5fecd1dd07a92ebc79124e 100644
--- a/Marlin/temperature.cpp
+++ b/Marlin/temperature.cpp
@@ -1916,15 +1916,15 @@ void Temperature::isr() {
   } // temp_count >= OVERSAMPLENR
 
   #if ENABLED(BABYSTEPPING)
-    for (uint8_t axis = X_AXIS; axis <= Z_AXIS; axis++) {
+    LOOP_XYZ(axis) {
       int curTodo = babystepsTodo[axis]; //get rid of volatile for performance
 
       if (curTodo > 0) {
-        stepper.babystep(axis,/*fwd*/true);
+        stepper.babystep((AxisEnum)axis,/*fwd*/true);
         babystepsTodo[axis]--; //fewer to do next time
       }
       else if (curTodo < 0) {
-        stepper.babystep(axis,/*fwd*/false);
+        stepper.babystep((AxisEnum)axis,/*fwd*/false);
         babystepsTodo[axis]++; //fewer to do next time
       }
     }
diff --git a/Marlin/temperature.h b/Marlin/temperature.h
index 072364e2e3b5e5dcdd4d3e5f90f12db90aa7d2b8..37d47fe5b70a6cdf1f912dc999c5e7df9757acdc 100644
--- a/Marlin/temperature.h
+++ b/Marlin/temperature.h
@@ -384,7 +384,7 @@ class Temperature {
 
     #if ENABLED(BABYSTEPPING)
 
-      static void babystep_axis(AxisEnum axis, int distance) {
+      static void babystep_axis(const AxisEnum axis, const int distance) {
         #if ENABLED(COREXY) || ENABLED(COREXZ) || ENABLED(COREYZ)
           #if ENABLED(BABYSTEP_XY)
             switch (axis) {
diff --git a/Marlin/ultralcd.cpp b/Marlin/ultralcd.cpp
index 448f319beecb75395d01174c222dee4c4204d29c..00e58ca2d1ae8c02071997f06d401988c4b88446 100755
--- a/Marlin/ultralcd.cpp
+++ b/Marlin/ultralcd.cpp
@@ -651,7 +651,7 @@ void kill_screen(const char* lcd_msg) {
       if (lcd_clicked) { defer_return_to_status = false; return lcd_goto_previous_menu(); }
       ENCODER_DIRECTION_NORMAL();
       if (encoderPosition) {
-        int babystep_increment = (int32_t)encoderPosition * BABYSTEP_MULTIPLICATOR;
+        int babystep_increment = (int32_t)encoderPosition * (BABYSTEP_MULTIPLICATOR);
         encoderPosition = 0;
         lcdDrawUpdate = LCDVIEW_REDRAW_NOW;
         thermalManager.babystep_axis(axis, babystep_increment);