Homing submenu option (#22692)

This commit is contained in:
Thomas White 2021-09-03 12:30:24 +08:00 committed by Scott Lahteine
parent 13bccd8441
commit 9e18a543fa
8 changed files with 60 additions and 24 deletions

View file

@ -2159,6 +2159,7 @@
// Add individual axis homing items (Home X, Home Y, and Home Z) to the LCD menu. // Add individual axis homing items (Home X, Home Y, and Home Z) to the LCD menu.
// //
//#define INDIVIDUAL_AXIS_HOMING_MENU //#define INDIVIDUAL_AXIS_HOMING_MENU
//#define INDIVIDUAL_AXIS_HOMING_SUBMENU
// //
// SPEAKER/BUZZER // SPEAKER/BUZZER

View file

@ -70,6 +70,7 @@ namespace Language_en {
PROGMEM Language_Str MSG_DISABLE_STEPPERS = _UxGT("Disable Steppers"); PROGMEM Language_Str MSG_DISABLE_STEPPERS = _UxGT("Disable Steppers");
PROGMEM Language_Str MSG_DEBUG_MENU = _UxGT("Debug Menu"); PROGMEM Language_Str MSG_DEBUG_MENU = _UxGT("Debug Menu");
PROGMEM Language_Str MSG_PROGRESS_BAR_TEST = _UxGT("Progress Bar Test"); PROGMEM Language_Str MSG_PROGRESS_BAR_TEST = _UxGT("Progress Bar Test");
PROGMEM Language_Str MSG_HOMING = _UxGT("Homing");
PROGMEM Language_Str MSG_AUTO_HOME = _UxGT("Auto Home"); PROGMEM Language_Str MSG_AUTO_HOME = _UxGT("Auto Home");
PROGMEM Language_Str MSG_AUTO_HOME_X = _UxGT("Home X"); PROGMEM Language_Str MSG_AUTO_HOME_X = _UxGT("Home X");
PROGMEM Language_Str MSG_AUTO_HOME_Y = _UxGT("Home Y"); PROGMEM Language_Str MSG_AUTO_HOME_Y = _UxGT("Home Y");

View file

@ -320,6 +320,36 @@ void menu_move() {
END_MENU(); END_MENU();
} }
#if ENABLED(INDIVIDUAL_AXIS_HOMING_SUBMENU)
//
// "Motion" > "Homing" submenu
//
void menu_home() {
START_MENU();
BACK_ITEM(MSG_MOTION);
GCODES_ITEM(MSG_AUTO_HOME, G28_STR);
GCODES_ITEM(MSG_AUTO_HOME_X, PSTR("G28X"));
#if HAS_Y_AXIS
GCODES_ITEM(MSG_AUTO_HOME_Y, PSTR("G28Y"));
#endif
#if HAS_Z_AXIS
GCODES_ITEM(MSG_AUTO_HOME_Z, PSTR("G28Z"));
#endif
#if LINEAR_AXES >= 4
GCODES_ITEM(MSG_AUTO_HOME_I, PSTR("G28" AXIS4_STR));
#endif
#if LINEAR_AXES >= 5
GCODES_ITEM(MSG_AUTO_HOME_J, PSTR("G28" AXIS5_STR));
#endif
#if LINEAR_AXES >= 6
GCODES_ITEM(MSG_AUTO_HOME_K, PSTR("G28" AXIS6_STR));
#endif
END_MENU();
}
#endif
#if ENABLED(AUTO_BED_LEVELING_UBL) #if ENABLED(AUTO_BED_LEVELING_UBL)
void _lcd_ubl_level_bed(); void _lcd_ubl_level_bed();
#elif ENABLED(LCD_BED_LEVELING) #elif ENABLED(LCD_BED_LEVELING)
@ -347,23 +377,27 @@ void menu_motion() {
// //
// Auto Home // Auto Home
// //
GCODES_ITEM(MSG_AUTO_HOME, G28_STR); #if ENABLED(INDIVIDUAL_AXIS_HOMING_SUBMENU)
#if ENABLED(INDIVIDUAL_AXIS_HOMING_MENU) SUBMENU(MSG_HOMING, menu_home);
GCODES_ITEM(MSG_AUTO_HOME_X, PSTR("G28X")); #else
#if HAS_Y_AXIS GCODES_ITEM(MSG_AUTO_HOME, G28_STR);
GCODES_ITEM(MSG_AUTO_HOME_Y, PSTR("G28Y")); #if ENABLED(INDIVIDUAL_AXIS_HOMING_MENU)
#endif GCODES_ITEM(MSG_AUTO_HOME_X, PSTR("G28X"));
#if HAS_Z_AXIS #if HAS_Y_AXIS
GCODES_ITEM(MSG_AUTO_HOME_Z, PSTR("G28Z")); GCODES_ITEM(MSG_AUTO_HOME_Y, PSTR("G28Y"));
#endif #endif
#if LINEAR_AXES >= 4 #if HAS_Z_AXIS
GCODES_ITEM(MSG_AUTO_HOME_I, PSTR("G28" AXIS4_STR)); GCODES_ITEM(MSG_AUTO_HOME_Z, PSTR("G28Z"));
#endif #endif
#if LINEAR_AXES >= 5 #if LINEAR_AXES >= 4
GCODES_ITEM(MSG_AUTO_HOME_J, PSTR("G28" AXIS5_STR)); GCODES_ITEM(MSG_AUTO_HOME_I, PSTR("G28" AXIS4_STR));
#endif #endif
#if LINEAR_AXES >= 6 #if LINEAR_AXES >= 5
GCODES_ITEM(MSG_AUTO_HOME_K, PSTR("G28" AXIS6_STR)); GCODES_ITEM(MSG_AUTO_HOME_J, PSTR("G28" AXIS5_STR));
#endif
#if LINEAR_AXES >= 6
GCODES_ITEM(MSG_AUTO_HOME_K, PSTR("G28" AXIS6_STR));
#endif
#endif #endif
#endif #endif

View file

@ -564,11 +564,11 @@
#elif MB(MINGDA_MPX_ARM_MINI) #elif MB(MINGDA_MPX_ARM_MINI)
#include "stm32f1/pins_MINGDA_MPX_ARM_MINI.h" // STM32F1 env:mingda_mpx_arm_mini #include "stm32f1/pins_MINGDA_MPX_ARM_MINI.h" // STM32F1 env:mingda_mpx_arm_mini
#elif MB(ZONESTAR_ZM3E2) #elif MB(ZONESTAR_ZM3E2)
#include "stm32f1/pins_ZM3E2_V1_0.h" // STM32F1 env:STM32F103RC_ZM3E2_USB env:STM32F103RC_ZM3E2_USB_maple #include "stm32f1/pins_ZM3E2_V1_0.h" // STM32F1 env:STM32F103RC_ZM3E2_USB env:STM32F103RC_ZM3E2_USB_maple
#elif MB(ZONESTAR_ZM3E4) #elif MB(ZONESTAR_ZM3E4)
#include "stm32f1/pins_ZM3E4_V1_0.h" // STM32F1 env:STM32F103VC_ZM3E4_USB env:STM32F103VC_ZM3E4_USB_maple #include "stm32f1/pins_ZM3E4_V1_0.h" // STM32F1 env:STM32F103VC_ZM3E4_USB env:STM32F103VC_ZM3E4_USB_maple
#elif MB(ZONESTAR_ZM3E4V2) #elif MB(ZONESTAR_ZM3E4V2)
#include "stm32f1/pins_ZM3E4_V2_0.h" // STM32F1 env:STM32F103VE_ZM3E4V2_USB env:STM32F103VE_ZM3E4V2_USB_maple #include "stm32f1/pins_ZM3E4_V2_0.h" // STM32F1 env:STM32F103VE_ZM3E4V2_USB env:STM32F103VE_ZM3E4V2_USB_maple
// //
// ARM Cortex-M4F // ARM Cortex-M4F

View file

@ -326,7 +326,7 @@
#if SD_CONNECTION_IS(ONBOARD) #if SD_CONNECTION_IS(ONBOARD)
#define FORCE_SOFT_SPI #define FORCE_SOFT_SPI
#endif #endif
//#define LCD_SCREEN_ROT_180 //#define LCD_SCREEN_ROT_180
#else // !MKS_MINI_12864 #else // !MKS_MINI_12864

View file

@ -362,7 +362,7 @@
#if SD_CONNECTION_IS(ONBOARD) #if SD_CONNECTION_IS(ONBOARD)
#define FORCE_SOFT_SPI #define FORCE_SOFT_SPI
#endif #endif
//#define LCD_SCREEN_ROT_180 //#define LCD_SCREEN_ROT_180
#else // !MKS_MINI_12864 #else // !MKS_MINI_12864

View file

@ -402,7 +402,7 @@
#if SD_CONNECTION_IS(ONBOARD) #if SD_CONNECTION_IS(ONBOARD)
#define FORCE_SOFT_SPI #define FORCE_SOFT_SPI
#endif #endif
//#define LCD_SCREEN_ROT_180 //#define LCD_SCREEN_ROT_180
#else // !MKS_MINI_12864 #else // !MKS_MINI_12864