diff --git a/Marlin/Marlin_main.cpp b/Marlin/Marlin_main.cpp index 04cac77ef..0714072e9 100644 --- a/Marlin/Marlin_main.cpp +++ b/Marlin/Marlin_main.cpp @@ -2951,7 +2951,11 @@ inline void gcode_G28() { } else { // One last "return to the bed" (as originally coded) at completion - current_position[Z_AXIS] = MESH_HOME_SEARCH_Z; + current_position[Z_AXIS] = MESH_HOME_SEARCH_Z + #if MIN_Z_HEIGHT_FOR_HOMING > 0 + + MIN_Z_HEIGHT_FOR_HOMING + #endif + ; line_to_current_position(); st_synchronize(); diff --git a/Marlin/ultralcd.cpp b/Marlin/ultralcd.cpp index 31d5d3165..c1a55380c 100644 --- a/Marlin/ultralcd.cpp +++ b/Marlin/ultralcd.cpp @@ -960,7 +960,11 @@ void lcd_cooldown() { buzz(200, 659); buzz(200, 698); #endif - current_position[Z_AXIS] = MESH_HOME_SEARCH_Z; + current_position[Z_AXIS] = MESH_HOME_SEARCH_Z + #if MIN_Z_HEIGHT_FOR_HOMING > 0 + + MIN_Z_HEIGHT_FOR_HOMING + #endif + ; line_to_current(Z_AXIS); st_synchronize(); mbl.active = true;