diff --git a/Marlin/AO_FT810_UI_Screens.h b/Marlin/AO_FT810_UI_Screens.h index 4903bbcef..dd6c7f56e 100644 --- a/Marlin/AO_FT810_UI_Screens.h +++ b/Marlin/AO_FT810_UI_Screens.h @@ -1067,7 +1067,7 @@ bool StatusScreen::onTouchStart(uint8_t tag) { #define GRID_ROWS 7 #define GRID_COLS 2 #else - #define GRID_ROWS 4 + #define GRID_ROWS 5 #define GRID_COLS 2 #endif @@ -1084,28 +1084,29 @@ void MenuScreen::onRefresh() { #if defined(LCD_PORTRAIT) BTN_TAG(2) BTN_ENABLED(1) BTN( BTN_POS(1,1), BTN_SIZE(1,1), F("Auto Home"), MENU_BTN_STYLE); - BTN_TAG(3) BTN_ENABLED(1) BTN( BTN_POS(2,1), BTN_SIZE(1,1), F("Move Axis"), MENU_BTN_STYLE); - BTN_TAG(5) BTN_ENABLED(1) BTN( BTN_POS(1,2), BTN_SIZE(2,1), F("Temperature"), MENU_BTN_STYLE); - BTN_TAG(6) BTN_ENABLED(0) BTN( BTN_POS(1,3), BTN_SIZE(2,1), F("Change Filament"), MENU_BTN_STYLE); - BTN_TAG(4) BTN_ENABLED(1) BTN( BTN_POS(1,4), BTN_SIZE(2,1), F("Disable Steppers"), MENU_BTN_STYLE); - BTN_TAG(7) BTN_ENABLED(1) BTN( BTN_POS(1,5), BTN_SIZE(2,1), F("Advanced Settings"), MENU_BTN_STYLE); - BTN_TAG(8) BTN_ENABLED(1) BTN( BTN_POS(1,6), BTN_SIZE(2,1), F("About Firmware"), MENU_BTN_STYLE); + BTN_TAG(3) BTN_ENABLED(1) BTN( BTN_POS(2,1), BTN_SIZE(1,1), F("Auto Level"), MENU_BTN_STYLE); + BTN_TAG(4) BTN_ENABLED(1) BTN( BTN_POS(1,2), BTN_SIZE(1,1), F("Move Axis"), MENU_BTN_STYLE); + BTN_TAG(5) BTN_ENABLED(1) BTN( BTN_POS(2,2), BTN_SIZE(1,1), F("Motors Off"), MENU_BTN_STYLE); + BTN_TAG(6) BTN_ENABLED(1) BTN( BTN_POS(1,3), BTN_SIZE(2,1), F("Temperature"), MENU_BTN_STYLE); + BTN_TAG(7) BTN_ENABLED(0) BTN( BTN_POS(1,4), BTN_SIZE(2,1), F("Change Filament"), MENU_BTN_STYLE); + BTN_TAG(8) BTN_ENABLED(1) BTN( BTN_POS(1,5), BTN_SIZE(2,1), F("Advanced Settings"), MENU_BTN_STYLE); + BTN_TAG(9) BTN_ENABLED(1) BTN( BTN_POS(1,6), BTN_SIZE(2,1), F("About Firmware"), MENU_BTN_STYLE); #else BTN_TAG(2) BTN_ENABLED(1) BTN( BTN_POS(1,1), BTN_SIZE(1,1), F("Auto Home"), MENU_BTN_STYLE); - BTN_TAG(3) BTN_ENABLED(1) BTN( BTN_POS(1,2), BTN_SIZE(1,1), F("Move Axis"), MENU_BTN_STYLE); - BTN_TAG(6) BTN_ENABLED(0) BTN( BTN_POS(1,3), BTN_SIZE(1,1), F("Change Filament"), MENU_BTN_STYLE); - BTN_TAG(4) BTN_ENABLED(1) BTN( BTN_POS(1,4), BTN_SIZE(1,1), F("Disable Steppers"), MENU_BTN_STYLE); - - BTN_TAG(5) BTN_ENABLED(1) BTN( BTN_POS(2,1), BTN_SIZE(1,1), F("Temperature"), MENU_BTN_STYLE); - BTN_TAG(7) BTN_ENABLED(1) BTN( BTN_POS(2,2), BTN_SIZE(1,1), F("Advanced Settings"), MENU_BTN_STYLE); - BTN_TAG(8) BTN_ENABLED(1) BTN( BTN_POS(2,3), BTN_SIZE(1,1), F("About Firmware"), MENU_BTN_STYLE); + BTN_TAG(3) BTN_ENABLED(1) BTN( BTN_POS(2,1), BTN_SIZE(1,1), F("Auto Level"), MENU_BTN_STYLE); + BTN_TAG(4) BTN_ENABLED(1) BTN( BTN_POS(1,2), BTN_SIZE(1,1), F("Move Axis"), MENU_BTN_STYLE); + BTN_TAG(5) BTN_ENABLED(1) BTN( BTN_POS(2,2), BTN_SIZE(1,1), F("Motors Off"), MENU_BTN_STYLE); + BTN_TAG(6) BTN_ENABLED(1) BTN( BTN_POS(1,3), BTN_SIZE(1,1), F("Temperature"), MENU_BTN_STYLE); + BTN_TAG(7) BTN_ENABLED(0) BTN( BTN_POS(2,3), BTN_SIZE(1,1), F("Change Filament"), MENU_BTN_STYLE); + BTN_TAG(8) BTN_ENABLED(1) BTN( BTN_POS(1,4), BTN_SIZE(1,1), F("Advanced Settings"), MENU_BTN_STYLE); + BTN_TAG(9) BTN_ENABLED(1) BTN( BTN_POS(2,4), BTN_SIZE(1,1), F("About Firmware"), MENU_BTN_STYLE); #endif #if defined(LCD_PORTRAIT) #define MARGIN_T 15 BTN_TAG(1) THEME(back_btn) BTN( BTN_POS(1,7), BTN_SIZE(2,1), F("Back"), MENU_BTN_STYLE); #else - BTN_TAG(1) THEME(back_btn) BTN( BTN_POS(2,4), BTN_SIZE(1,1), F("Back"), MENU_BTN_STYLE); + BTN_TAG(1) THEME(back_btn) BTN( BTN_POS(1,5), BTN_SIZE(2,1), F("Back"), MENU_BTN_STYLE); #endif #define MARGIN_T 5 @@ -1120,13 +1121,14 @@ void MenuScreen::onRefresh() { bool MenuScreen::onTouchStart(uint8_t tag) { switch(tag) { - case 1: GOTO_PREVIOUS(); break; - case 2: EXEC_GCODE(F("G28")); break; - case 3: GOTO_SCREEN(MoveAxisScreen); break; - case 4: EXEC_GCODE(F("M84")); break; - case 5: GOTO_SCREEN(TemperatureScreen); break; - case 7: GOTO_SCREEN(AdvancedSettingsScreen); break; - case 8: GOTO_SCREEN(AboutScreen); break; + case 1: GOTO_PREVIOUS(); break; + case 2: EXEC_GCODE(F("G28")); break; + case 3: EXEC_GCODE(F(LULZBOT_MENU_AXIS_LEVELING_GCODE)); break; + case 4: GOTO_SCREEN(MoveAxisScreen); break; + case 5: EXEC_GCODE(F("M84")); break; + case 6: GOTO_SCREEN(TemperatureScreen); break; + case 8: GOTO_SCREEN(AdvancedSettingsScreen); break; + case 9: GOTO_SCREEN(AboutScreen); break; default: return false; } diff --git a/Marlin/Conditionals_LulzBot.h b/Marlin/Conditionals_LulzBot.h index 432828a58..4fa844040 100644 --- a/Marlin/Conditionals_LulzBot.h +++ b/Marlin/Conditionals_LulzBot.h @@ -13,7 +13,7 @@ * got disabled. */ -#define LULZBOT_FW_VERSION ".18" // Change this with each update +#define LULZBOT_FW_VERSION ".19" // Change this with each update #if ( \ !defined(LULZBOT_Gladiola_Mini) && \ @@ -624,6 +624,10 @@ return; \ } +#if defined(LULZBOT_USE_Z_BELT) + #define LULZBOT_MENU_AXIS_LEVELING_GCODE "G28\nG0 Z5 F6000\nG91\nM211 S0\nM906 Z600\nG0 Z-15 F500\nG90\nM400\nM906 Z960\nM211 S1\nG28\nM117 Levelling done." +#endif + /*************************** COMMON TOOLHEADS PARAMETERS ***********************/ #define LULZBOT_DEFAULT_EJERK 10.0 @@ -1456,6 +1460,8 @@ #if defined(LULZBOT_USE_LCD_DISPLAY) #define LULZBOT_ADVANCED_PAUSE_FEATURE + #define LULZBOT_ADVANCED_PAUSE_EXTRUDE_LENGTH 10 + #define LULZBOT_ADVANCED_PAUSE_EXTRUDE_FEEDRATE 1 #define LULZBOT_HOME_BEFORE_FILAMENT_CHANGE #define LULZBOT_PARK_HEAD_ON_PAUSE #define LULZBOT_PAUSE_PARK_X_POS 10 diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index fca13390f..9ad17009b 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -926,8 +926,8 @@ #define FILAMENT_CHANGE_LOAD_LENGTH 0 // Load filament length over hotend in mm // Longer length for bowden printers to fast load filament into whole bowden tube over the hotend, // Short or zero length for printers without bowden where loading is not used - #define ADVANCED_PAUSE_EXTRUDE_FEEDRATE 3 // Extrude filament feedrate in mm/s - must be slower than load feedrate - #define ADVANCED_PAUSE_EXTRUDE_LENGTH 50 // Extrude filament length in mm after filament is loaded over the hotend, + #define ADVANCED_PAUSE_EXTRUDE_FEEDRATE LULZBOT_ADVANCED_PAUSE_EXTRUDE_FEEDRATE // Extrude filament feedrate in mm/s - must be slower than load feedrate + #define ADVANCED_PAUSE_EXTRUDE_LENGTH LULZBOT_ADVANCED_PAUSE_EXTRUDE_LENGTH // Extrude filament length in mm after filament is loaded over the hotend, // 0 to disable for manual extrusion // Filament can be extruded repeatedly from the filament exchange menu to fill the hotend, // or until outcoming filament color is not clear for filament color change diff --git a/Marlin/ultralcd.cpp b/Marlin/ultralcd.cpp index 83ad88ba0..479875432 100644 --- a/Marlin/ultralcd.cpp +++ b/Marlin/ultralcd.cpp @@ -1040,6 +1040,9 @@ void kill_screen(const char* lcd_msg) { START_MENU(); MENU_BACK(MSG_MAIN); MENU_ITEM(gcode, MSG_AUTO_HOME, PSTR("G28")); + #if defined(LULZBOT_MENU_AXIS_LEVELING_GCODE) + MENU_ITEM(gcode, _UxGT("Auto-level"), PSTR(LULZBOT_MENU_AXIS_LEVELING_GCODE)); + #endif #if defined(LULZBOT_MENU_BED_LEVELING_GCODE) if (!thermalManager.tooColdToExtrude(active_extruder)) { MENU_ITEM(gcode, MSG_BED_LEVELING, PSTR(LULZBOT_MENU_BED_LEVELING_GCODE));