diff --git a/Marlin/Marlin_main.cpp b/Marlin/Marlin_main.cpp index 5c8d70ff1c..06e5974556 100644 --- a/Marlin/Marlin_main.cpp +++ b/Marlin/Marlin_main.cpp @@ -3087,8 +3087,8 @@ static void homeaxis(const AxisEnum axis) { } else { - // If the height hasn't been altered, undo the Z hop - if (retract_zlift > 0.01 && hop_height == current_position[Z_AXIS]) { + // If the height hasn't been lowered, undo the Z hop + if (retract_zlift > 0.01 && hop_height <= current_position[Z_AXIS]) { // Pretend current position is higher. Z will lower on the next move current_position[Z_AXIS] += retract_zlift; SYNC_PLAN_POSITION_KINEMATIC();