Browse Source

Enable "Move axis" and "Disable steppers" only when idle

Move axis queues movements, which disrupts a normal print, homing (when
XY is combined) or MBL.

Likewise, "Disable steppers" only makes sense when the printer is fully
idle.

Only allow such actions when the printer is not active and/or in the
paused state.
Yuri D'Elia 3 years ago
parent
commit
b4f5633bde
1 changed files with 4 additions and 2 deletions
  1. 4 2
      Firmware/ultralcd.cpp

+ 4 - 2
Firmware/ultralcd.cpp

@@ -5747,10 +5747,12 @@ static void lcd_settings_menu()
 	MENU_ITEM_BACK_P(_T(MSG_MAIN));
 	MENU_ITEM_BACK_P(_T(MSG_MAIN));
 
 
 	MENU_ITEM_SUBMENU_P(_i("Temperature"), lcd_control_temperature_menu);////MSG_TEMPERATURE
 	MENU_ITEM_SUBMENU_P(_i("Temperature"), lcd_control_temperature_menu);////MSG_TEMPERATURE
-	if (!homing_flag)
+
+	if (!PRINTER_ACTIVE || isPrintPaused)
+    {
 	    MENU_ITEM_SUBMENU_P(_i("Move axis"), lcd_move_menu_1mm);////MSG_MOVE_AXIS
 	    MENU_ITEM_SUBMENU_P(_i("Move axis"), lcd_move_menu_1mm);////MSG_MOVE_AXIS
-	if (!isPrintPaused)
 	    MENU_ITEM_GCODE_P(_i("Disable steppers"), PSTR("M84"));////MSG_DISABLE_STEPPERS
 	    MENU_ITEM_GCODE_P(_i("Disable steppers"), PSTR("M84"));////MSG_DISABLE_STEPPERS
+    }
 
 
 	SETTINGS_FILAMENT_SENSOR;
 	SETTINGS_FILAMENT_SENSOR;