Browse Source

Merge pull request #5563 from akaJes/m600

FILAMENT_CHANGE_FEATURE allowed in idle mode
Scott Lahteine 8 years ago
parent
commit
644f45cbd8
1 changed files with 18 additions and 0 deletions
  1. 18
    0
      Marlin/ultralcd.cpp

+ 18
- 0
Marlin/ultralcd.cpp View File

@@ -145,6 +145,7 @@ uint16_t max_display_update_time = 0;
145 145
   #endif // LCD_INFO_MENU
146 146
 
147 147
   #if ENABLED(FILAMENT_CHANGE_FEATURE)
148
+    void lcd_filament_change_toocold_menu();
148 149
     void lcd_filament_change_option_menu();
149 150
     void lcd_filament_change_init_message();
150 151
     void lcd_filament_change_unload_message();
@@ -828,6 +829,11 @@ void kill_screen(const char* lcd_msg) {
828 829
 
829 830
   #if ENABLED(FILAMENT_CHANGE_FEATURE)
830 831
     void lcd_enqueue_filament_change() {
832
+      if (thermalManager.tooColdToExtrude(active_extruder)) {
833
+        lcd_save_previous_screen();
834
+        lcd_goto_screen(lcd_filament_change_toocold_menu);
835
+        return;
836
+      }
831 837
       lcd_filament_change_show_message(FILAMENT_CHANGE_MESSAGE_INIT);
832 838
       enqueue_and_echo_commands_P(PSTR("M600"));
833 839
     }
@@ -1385,6 +1391,12 @@ KeepDrawing:
1385 1391
         MENU_ITEM(function, MSG_PREHEAT_1, lcd_preheat_material1_hotend0);
1386 1392
         MENU_ITEM(function, MSG_PREHEAT_2, lcd_preheat_material2_hotend0);
1387 1393
       #endif
1394
+      //
1395
+      // Change filament
1396
+      //
1397
+      #if ENABLED(FILAMENT_CHANGE_FEATURE)
1398
+        MENU_ITEM(function, MSG_FILAMENTCHANGE, lcd_enqueue_filament_change);
1399
+      #endif
1388 1400
     #endif
1389 1401
 
1390 1402
     //
@@ -2432,6 +2444,12 @@ KeepDrawing:
2432 2444
   #endif // LCD_INFO_MENU
2433 2445
 
2434 2446
   #if ENABLED(FILAMENT_CHANGE_FEATURE)
2447
+    void lcd_filament_change_toocold_menu() {
2448
+      START_MENU();
2449
+      STATIC_ITEM(MSG_HEATING_FAILED_LCD, true, true);
2450
+      MENU_BACK(MSG_FILAMENTCHANGE);
2451
+      END_MENU();
2452
+    }
2435 2453
 
2436 2454
     void lcd_filament_change_resume_print() {
2437 2455
       filament_change_menu_response = FILAMENT_CHANGE_RESPONSE_RESUME_PRINT;

Loading…
Cancel
Save