diff --git a/Firmware/mmu2.cpp b/Firmware/mmu2.cpp index 365ac4b71..a0db68b9e 100644 --- a/Firmware/mmu2.cpp +++ b/Firmware/mmu2.cpp @@ -573,10 +573,13 @@ void MMU2::SaveAndPark(bool move_axes, bool turn_off_nozzle) { raise_z(MMU_ERR_Z_PAUSE_LIFT); // move XY aside - current_position[X_AXIS] = MMU_ERR_X_PAUSE_POS; - current_position[Y_AXIS] = MMU_ERR_Y_PAUSE_POS; - plan_buffer_line_curposXYZE(NOZZLE_PARK_XY_FEEDRATE); - st_synchronize(); + if (axis_known_position[X_AXIS] && axis_known_position[Y_AXIS]) + { + current_position[X_AXIS] = MMU_ERR_X_PAUSE_POS; + current_position[Y_AXIS] = MMU_ERR_Y_PAUSE_POS; + plan_buffer_line_curposXYZE(NOZZLE_PARK_XY_FEEDRATE); + st_synchronize(); + } } if (turn_off_nozzle){