diff --git a/Firmware/Marlin_main.cpp b/Firmware/Marlin_main.cpp index da18ee3d..de2d8255 100644 --- a/Firmware/Marlin_main.cpp +++ b/Firmware/Marlin_main.cpp @@ -2748,6 +2748,21 @@ bool gcode_M45(bool onlyZ, int8_t verbosity_level) if (lcd_calibrate_z_end_stop_manual(onlyZ)) { #endif //TMC2130 + + lcd_show_fullscreen_message_and_wait_P(_T(MSG_CONFIRM_NOZZLE_CLEAN)); + if(onlyZ){ + lcd_display_message_fullscreen_P(_T(MSG_MEASURE_BED_REFERENCE_HEIGHT_LINE1)); + lcd_set_cursor(0, 3); + lcd_print(1); + lcd_puts_P(_T(MSG_MEASURE_BED_REFERENCE_HEIGHT_LINE2)); + }else{ + //lcd_show_fullscreen_message_and_wait_P(_T(MSG_PAPER)); + lcd_display_message_fullscreen_P(_T(MSG_FIND_BED_OFFSET_AND_SKEW_LINE1)); + lcd_set_cursor(0, 2); + lcd_print(1); + lcd_puts_P(_T(MSG_FIND_BED_OFFSET_AND_SKEW_LINE2)); + } + refresh_cmd_timeout(); #ifndef STEEL_SHEET if (((degHotend(0) > MAX_HOTEND_TEMP_CALIBRATION) || (degBed() > MAX_BED_TEMP_CALIBRATION)) && (!onlyZ)) @@ -2762,7 +2777,6 @@ bool gcode_M45(bool onlyZ, int8_t verbosity_level) bool result = lcd_show_fullscreen_message_yes_no_and_wait_P(_T(MSG_STEEL_SHEET_CHECK), false, false); if(result) lcd_show_fullscreen_message_and_wait_P(_T(MSG_REMOVE_STEEL_SHEET)); #endif //STEEL_SHEET - lcd_show_fullscreen_message_and_wait_P(_T(MSG_CONFIRM_NOZZLE_CLEAN)); lcd_show_fullscreen_message_and_wait_P(_T(MSG_PAPER)); KEEPALIVE_STATE(IN_HANDLER); lcd_display_message_fullscreen_P(_T(MSG_FIND_BED_OFFSET_AND_SKEW_LINE1)); @@ -2770,6 +2784,7 @@ bool gcode_M45(bool onlyZ, int8_t verbosity_level) lcd_print(1); lcd_puts_P(_T(MSG_FIND_BED_OFFSET_AND_SKEW_LINE2)); } + // Move the print head close to the bed. current_position[Z_AXIS] = MESH_HOME_Z_SEARCH; diff --git a/Firmware/ultralcd.cpp b/Firmware/ultralcd.cpp index 74145f56..7dbf768d 100644 --- a/Firmware/ultralcd.cpp +++ b/Firmware/ultralcd.cpp @@ -3077,8 +3077,6 @@ void lcd_wait_for_cool_down() { #ifndef TMC2130 bool lcd_calibrate_z_end_stop_manual(bool only_z) { - bool clean_nozzle_asked = false; - // Don't know where we are. Let's claim we are Z=0, so the soft end stops will not be triggered when moving up. current_position[Z_AXIS] = 0; plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); @@ -3125,13 +3123,6 @@ bool lcd_calibrate_z_end_stop_manual(bool only_z) previous_millis_msg = millis(); } } - - if (! clean_nozzle_asked) { - lcd_show_fullscreen_message_and_wait_P(_T(MSG_CONFIRM_NOZZLE_CLEAN)); - clean_nozzle_asked = true; - } - - // Let the user confirm, that the Z carriage is at the top end stoppers. int8_t result = lcd_show_fullscreen_message_yes_no_and_wait_P(_i("Are left and right Z~carriages all up?"), false);////MSG_CONFIRM_CARRIAGE_AT_THE_TOP c=20 r=2 if (result == -1) @@ -3146,22 +3137,6 @@ calibrated: // during the search for the induction points. current_position[Z_AXIS] = Z_MAX_POS-3.f; plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - - - if(only_z){ - lcd_display_message_fullscreen_P(_T(MSG_MEASURE_BED_REFERENCE_HEIGHT_LINE1)); - lcd_set_cursor(0, 3); - lcd_print(1); - lcd_puts_P(_T(MSG_MEASURE_BED_REFERENCE_HEIGHT_LINE2)); - }else{ - //lcd_show_fullscreen_message_and_wait_P(_T(MSG_PAPER)); - lcd_display_message_fullscreen_P(_T(MSG_FIND_BED_OFFSET_AND_SKEW_LINE1)); - lcd_set_cursor(0, 2); - lcd_print(1); - lcd_puts_P(_T(MSG_FIND_BED_OFFSET_AND_SKEW_LINE2)); - } - - return true; canceled: