diff --git a/Firmware/mmu.cpp b/Firmware/mmu.cpp index 68e36cbc1..783564329 100644 --- a/Firmware/mmu.cpp +++ b/Firmware/mmu.cpp @@ -1353,35 +1353,36 @@ void mmu_show_warning() void lcd_mmu_load_to_nozzle(uint8_t filament_nr) { -menu_back(); -bFilamentAction=false; // NOT in "mmu_load_to_nozzle_menu()" - if (degHotend0() > EXTRUDE_MINTEMP) - { - tmp_extruder = filament_nr; - lcd_update_enable(false); - lcd_clear(); - lcd_set_cursor(0, 1); lcd_puts_P(_T(MSG_LOADING_FILAMENT)); - lcd_print(" "); - lcd_print(tmp_extruder + 1); - mmu_command(MmuCmd::T0 + tmp_extruder); - manage_response(true, true, MMU_TCODE_MOVE); - mmu_continue_loading(false); - mmu_extruder = tmp_extruder; //filament change is finished - mmu_load_to_nozzle(); - load_filament_final_feed(); - st_synchronize(); - custom_message_type = CUSTOM_MSG_TYPE_F_LOAD; - lcd_setstatuspgm(_T(MSG_LOADING_FILAMENT)); - lcd_return_to_status(); - lcd_update_enable(true); - lcd_load_filament_color_check(); - lcd_setstatuspgm(_T(WELCOME_MSG)); - custom_message_type = CUSTOM_MSG_TYPE_STATUS; - } - else - { - show_preheat_nozzle_warning(); - } + menu_back(); + bFilamentAction = false; // NOT in "mmu_load_to_nozzle_menu()" + if (degHotend0() > EXTRUDE_MINTEMP) + { + tmp_extruder = filament_nr; + lcd_update_enable(false); + lcd_clear(); + lcd_set_cursor(0, 1); + lcd_puts_P(_T(MSG_LOADING_FILAMENT)); + lcd_print(" "); + lcd_print(tmp_extruder + 1); + mmu_command(MmuCmd::T0 + tmp_extruder); + manage_response(true, true, MMU_TCODE_MOVE); + mmu_continue_loading(false); + mmu_extruder = tmp_extruder; //filament change is finished + mmu_load_to_nozzle(); + load_filament_final_feed(); + st_synchronize(); + custom_message_type = CUSTOM_MSG_TYPE_F_LOAD; + lcd_setstatuspgm(_T(MSG_LOADING_FILAMENT)); + lcd_return_to_status(); + lcd_update_enable(true); + lcd_load_filament_color_check(); + lcd_setstatuspgm(_T(WELCOME_MSG)); + custom_message_type = CUSTOM_MSG_TYPE_STATUS; + } + else + { + show_preheat_nozzle_warning(); + } } #ifdef MMU_HAS_CUTTER diff --git a/Firmware/ultralcd.cpp b/Firmware/ultralcd.cpp index d793c7ee6..5fc74c389 100755 --- a/Firmware/ultralcd.cpp +++ b/Firmware/ultralcd.cpp @@ -5922,22 +5922,23 @@ static void fil_load_menu() { MENU_BEGIN(); MENU_ITEM_BACK_P(_T(MSG_MAIN)); - MENU_ITEM_FUNCTION_P(_i("Load all"), load_all);////MSG_LOAD_ALL c=17 - MENU_ITEM_FUNCTION_NR_P(_T(MSG_LOAD_FILAMENT), '1', extr_adj, 0);////MSG_LOAD_FILAMENT_1 c=16 - MENU_ITEM_FUNCTION_NR_P(_T(MSG_LOAD_FILAMENT), '2', extr_adj, 1);////MSG_LOAD_FILAMENT_2 c=17 - MENU_ITEM_FUNCTION_NR_P(_T(MSG_LOAD_FILAMENT), '3', extr_adj, 2);////MSG_LOAD_FILAMENT_3 c=17 - MENU_ITEM_FUNCTION_NR_P(_T(MSG_LOAD_FILAMENT), '4', extr_adj, 3);////MSG_LOAD_FILAMENT_4 c=17 + MENU_ITEM_FUNCTION_P(_i("Load all"), load_all); ////MSG_LOAD_ALL c=17 + MENU_ITEM_FUNCTION_NR_P(_T(MSG_LOAD_FILAMENT), '1', extr_adj, 0); ////MSG_LOAD_FILAMENT_1 c=16 + MENU_ITEM_FUNCTION_NR_P(_T(MSG_LOAD_FILAMENT), '2', extr_adj, 1); ////MSG_LOAD_FILAMENT_2 c=17 + MENU_ITEM_FUNCTION_NR_P(_T(MSG_LOAD_FILAMENT), '3', extr_adj, 2); ////MSG_LOAD_FILAMENT_3 c=17 + MENU_ITEM_FUNCTION_NR_P(_T(MSG_LOAD_FILAMENT), '4', extr_adj, 3); ////MSG_LOAD_FILAMENT_4 c=17 if (mmu_enabled) + { MENU_ITEM_FUNCTION_NR_P(_T(MSG_LOAD_FILAMENT), '5', extr_adj, 3); - + } MENU_END(); } static void mmu_load_to_nozzle_menu() { -if(bFilamentAction) -{ + if (bFilamentAction) + { MENU_BEGIN(); MENU_ITEM_BACK_P(_T(MSG_MAIN)); MENU_ITEM_FUNCTION_NR_P(_T(MSG_LOAD_FILAMENT), '1', lcd_mmu_load_to_nozzle, 0); @@ -5946,14 +5947,15 @@ if(bFilamentAction) MENU_ITEM_FUNCTION_NR_P(_T(MSG_LOAD_FILAMENT), '4', lcd_mmu_load_to_nozzle, 3); MENU_ITEM_FUNCTION_NR_P(_T(MSG_LOAD_FILAMENT), '5', lcd_mmu_load_to_nozzle, 4); MENU_END(); -} -else { - eFilamentAction=e_FILAMENT_ACTION_mmuLoad; - bFilamentFirstRun=false; - if(target_temperature[0]>=EXTRUDE_MINTEMP) + } + else { - bFilamentPreheatState=true; - mFilamentItem(target_temperature[0],target_temperature_bed); + eFilamentAction = e_FILAMENT_ACTION_mmuLoad; + bFilamentFirstRun = false; + if (target_temperature[0] >= EXTRUDE_MINTEMP) + { + bFilamentPreheatState = true; + mFilamentItem(target_temperature[0], target_temperature_bed); } else mFilamentMenu(); } @@ -5967,7 +5969,7 @@ static void mmu_eject_filament(uint8_t filament) static void mmu_fil_eject_menu() { - if(bFilamentAction) + if (bFilamentAction) { MENU_BEGIN(); MENU_ITEM_BACK_P(_T(MSG_MAIN)); @@ -5980,12 +5982,12 @@ static void mmu_fil_eject_menu() } else { - eFilamentAction=e_FILAMENT_ACTION_mmuEject; - bFilamentFirstRun=false; - if(target_temperature[0]>=EXTRUDE_MINTEMP) + eFilamentAction = e_FILAMENT_ACTION_mmuEject; + bFilamentFirstRun = false; + if (target_temperature[0] >= EXTRUDE_MINTEMP) { - bFilamentPreheatState=true; - mFilamentItem(target_temperature[0],target_temperature_bed); + bFilamentPreheatState = true; + mFilamentItem(target_temperature[0], target_temperature_bed); } else mFilamentMenu(); } @@ -5995,8 +5997,8 @@ static void mmu_fil_eject_menu() static void mmu_cut_filament_menu() { -if(bFilamentAction) -{ + if(bFilamentAction) + { MENU_BEGIN(); MENU_ITEM_BACK_P(_T(MSG_MAIN)); MENU_ITEM_FUNCTION_NR_P(_T(MSG_EJECT_FILAMENT), '1', mmu_cut_filament, 0); @@ -6005,8 +6007,9 @@ if(bFilamentAction) MENU_ITEM_FUNCTION_NR_P(_T(MSG_EJECT_FILAMENT), '4', mmu_cut_filament, 3); MENU_ITEM_FUNCTION_NR_P(_T(MSG_EJECT_FILAMENT), '5', mmu_cut_filament, 4); MENU_END(); -} -else { + } + else + { eFilamentAction=e_FILAMENT_ACTION_mmuCut; bFilamentFirstRun=false; if(target_temperature[0]>=EXTRUDE_MINTEMP)