From ebc666321058482f70c8a717648d4b886c740c59 Mon Sep 17 00:00:00 2001 From: vintagepc <53943260+vintagepc@users.noreply.github.com> Date: Fri, 7 Feb 2020 19:13:53 -0500 Subject: [PATCH 1/3] Add auto-home to tune menu --- Firmware/ultralcd.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Firmware/ultralcd.cpp b/Firmware/ultralcd.cpp index 8b771207b..528259ac8 100644 --- a/Firmware/ultralcd.cpp +++ b/Firmware/ultralcd.cpp @@ -5441,7 +5441,9 @@ static void lcd_tune_menu() if (!farm_mode) MENU_ITEM_FUNCTION_P(_T(MSG_FILAMENTCHANGE), lcd_colorprint_change); #endif - + if (isPrintPaused) // Don't allow rehome if actively printing. Maaaaybe it could work to insert on the fly, seems too risky. + MENU_ITEM_GCODE_P(_T(MSG_AUTO_HOME), PSTR("G28 X Y")); + } #ifdef FILAMENT_SENSOR MENU_ITEM_SUBMENU_P(_T(MSG_FSENSOR), lcd_fsensor_settings_menu); #endif //FILAMENT_SENSOR From b75e3b523369c580bb3bd683f6cacb16361fb291 Mon Sep 17 00:00:00 2001 From: vintagepc <53943260+vintagepc@users.noreply.github.com> Date: Fri, 7 Feb 2020 19:33:38 -0500 Subject: [PATCH 2/3] facepalm commit ... I somehow managed to lose a bracket. DERP. --- Firmware/ultralcd.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Firmware/ultralcd.cpp b/Firmware/ultralcd.cpp index 528259ac8..93e08dff8 100644 --- a/Firmware/ultralcd.cpp +++ b/Firmware/ultralcd.cpp @@ -5441,7 +5441,7 @@ static void lcd_tune_menu() if (!farm_mode) MENU_ITEM_FUNCTION_P(_T(MSG_FILAMENTCHANGE), lcd_colorprint_change); #endif - if (isPrintPaused) // Don't allow rehome if actively printing. Maaaaybe it could work to insert on the fly, seems too risky. + if (isPrintPaused) {// Don't allow rehome if actively printing. Maaaaybe it could work to insert on the fly, seems too risky. MENU_ITEM_GCODE_P(_T(MSG_AUTO_HOME), PSTR("G28 X Y")); } #ifdef FILAMENT_SENSOR From b7daac3b70b9714bff0994dee1190a08dfc6499a Mon Sep 17 00:00:00 2001 From: vintagepc <53943260+vintagepc@users.noreply.github.com> Date: Sun, 9 Feb 2020 10:13:15 -0500 Subject: [PATCH 3/3] Direct home instead of G28 --- Firmware/ultralcd.cpp | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/Firmware/ultralcd.cpp b/Firmware/ultralcd.cpp index 93e08dff8..86de54938 100644 --- a/Firmware/ultralcd.cpp +++ b/Firmware/ultralcd.cpp @@ -241,6 +241,8 @@ static void lcd_sheet_menu(); static void menu_action_sdfile(const char* filename); static void menu_action_sddirectory(const char* filename); +static void lcd_rehome_xy(); + #define ENCODER_FEEDRATE_DEADZONE 10 #define STATE_NA 255 @@ -5335,6 +5337,15 @@ void stepper_timer_overflow() { } #endif /* DEBUG_STEPPER_TIMER_MISSED */ +static void lcd_rehome_xy() { + // Do home directly, G28 X Y resets MBL, which could be bad. + homeaxis(X_AXIS); + homeaxis(Y_AXIS); + lcd_setstatuspgm(_T(MSG_AUTO_HOME)); + lcd_return_to_status(); + lcd_draw_update = 3; +} + static void lcd_colorprint_change() { @@ -5442,7 +5453,7 @@ static void lcd_tune_menu() MENU_ITEM_FUNCTION_P(_T(MSG_FILAMENTCHANGE), lcd_colorprint_change); #endif if (isPrintPaused) {// Don't allow rehome if actively printing. Maaaaybe it could work to insert on the fly, seems too risky. - MENU_ITEM_GCODE_P(_T(MSG_AUTO_HOME), PSTR("G28 X Y")); + MENU_ITEM_FUNCTION_P(_T(MSG_AUTO_HOME), lcd_rehome_xy); } #ifdef FILAMENT_SENSOR MENU_ITEM_SUBMENU_P(_T(MSG_FSENSOR), lcd_fsensor_settings_menu);