|
@@ -2306,6 +2306,7 @@ void lcd_set_filament_oq_meass()
|
|
eFILAMENT_ACTION eFilamentAction=e_FILAMENT_ACTION_none; // must be initialized as 'non-autoLoad'
|
|
eFILAMENT_ACTION eFilamentAction=e_FILAMENT_ACTION_none; // must be initialized as 'non-autoLoad'
|
|
bool bFilamentFirstRun;
|
|
bool bFilamentFirstRun;
|
|
bool bFilamentPreheatState;
|
|
bool bFilamentPreheatState;
|
|
|
|
+bool bFilamentAction=false;
|
|
|
|
|
|
static void mFilamentPrompt()
|
|
static void mFilamentPrompt()
|
|
{
|
|
{
|
|
@@ -2331,8 +2332,9 @@ switch(eFilamentAction)
|
|
}
|
|
}
|
|
if(lcd_clicked())
|
|
if(lcd_clicked())
|
|
{
|
|
{
|
|
- menu_back();
|
|
|
|
- menu_back();
|
|
|
|
|
|
+//./ menu_back();
|
|
|
|
+//./ menu_back();
|
|
|
|
+menu_back(2);
|
|
if(!bFilamentPreheatState)
|
|
if(!bFilamentPreheatState)
|
|
{
|
|
{
|
|
menu_back();
|
|
menu_back();
|
|
@@ -2349,12 +2351,17 @@ if(lcd_clicked())
|
|
enquecommand_P(PSTR("M702")); // unload filament
|
|
enquecommand_P(PSTR("M702")); // unload filament
|
|
break;
|
|
break;
|
|
case e_FILAMENT_ACTION_mmuLoad:
|
|
case e_FILAMENT_ACTION_mmuLoad:
|
|
|
|
+ MYSERIAL.println("mFilamentPrompt - mmuLoad");
|
|
|
|
+bFilamentAction=true;
|
|
menu_submenu(mmu_load_to_nozzle_menu);
|
|
menu_submenu(mmu_load_to_nozzle_menu);
|
|
break;
|
|
break;
|
|
case e_FILAMENT_ACTION_mmuUnLoad:
|
|
case e_FILAMENT_ACTION_mmuUnLoad:
|
|
|
|
+bFilamentAction=true;
|
|
extr_unload();
|
|
extr_unload();
|
|
break;
|
|
break;
|
|
case e_FILAMENT_ACTION_mmuEject:
|
|
case e_FILAMENT_ACTION_mmuEject:
|
|
|
|
+ MYSERIAL.println("mFilamentPrompt - mmuEject");
|
|
|
|
+bFilamentAction=true;
|
|
menu_submenu(mmu_fil_eject_menu);
|
|
menu_submenu(mmu_fil_eject_menu);
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
@@ -2363,13 +2370,15 @@ if(lcd_clicked())
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
-void mFilamentItem(uint16_t nTemp)
|
|
|
|
|
|
+void mFilamentItem(uint16_t nTemp,uint16_t nTempBed)
|
|
{
|
|
{
|
|
-static int nTargetOld;
|
|
|
|
|
|
+static int nTargetOld,nTargetBedOld;
|
|
|
|
|
|
//if(bPreheatState) // not necessary
|
|
//if(bPreheatState) // not necessary
|
|
nTargetOld=target_temperature[0];
|
|
nTargetOld=target_temperature[0];
|
|
|
|
+ nTargetBedOld=target_temperature_bed;
|
|
setTargetHotend0((float)nTemp);
|
|
setTargetHotend0((float)nTemp);
|
|
|
|
+setTargetBed((float)nTempBed);
|
|
lcd_timeoutToStatus.stop();
|
|
lcd_timeoutToStatus.stop();
|
|
lcd_set_cursor(0,0);
|
|
lcd_set_cursor(0,0);
|
|
lcdui_print_temp(LCD_STR_THERMOMETER[0],(int)degHotend(0),(int)degTargetHotend(0));
|
|
lcdui_print_temp(LCD_STR_THERMOMETER[0],(int)degHotend(0),(int)degTargetHotend(0));
|
|
@@ -2396,14 +2405,19 @@ if(lcd_clicked())
|
|
if(!bFilamentPreheatState)
|
|
if(!bFilamentPreheatState)
|
|
{
|
|
{
|
|
setTargetHotend0(0.0);
|
|
setTargetHotend0(0.0);
|
|
|
|
+ setTargetBed(0.0);
|
|
menu_back();
|
|
menu_back();
|
|
}
|
|
}
|
|
- else setTargetHotend0((float)nTargetOld);
|
|
|
|
|
|
+ else {
|
|
|
|
+ setTargetHotend0((float)nTargetOld);
|
|
|
|
+ setTargetBed((float)nTargetBedOld);
|
|
|
|
+ }
|
|
menu_back();
|
|
menu_back();
|
|
if(eFilamentAction==e_FILAMENT_ACTION_autoLoad)
|
|
if(eFilamentAction==e_FILAMENT_ACTION_autoLoad)
|
|
eFilamentAction=e_FILAMENT_ACTION_none; // i.e. non-autoLoad
|
|
eFilamentAction=e_FILAMENT_ACTION_none; // i.e. non-autoLoad
|
|
}
|
|
}
|
|
-else if(!isHeatingHotend0())
|
|
|
|
|
|
+//./else if(!isHeatingHotend0())
|
|
|
|
+else if(current_temperature[0]>(target_temperature[0]*0.95))
|
|
{
|
|
{
|
|
menu_submenu(mFilamentPrompt);
|
|
menu_submenu(mFilamentPrompt);
|
|
Sound_MakeSound(e_SOUND_TYPE_StandardPrompt);
|
|
Sound_MakeSound(e_SOUND_TYPE_StandardPrompt);
|
|
@@ -2413,37 +2427,37 @@ else if(!isHeatingHotend0())
|
|
static void mFilamentItem_PLA()
|
|
static void mFilamentItem_PLA()
|
|
{
|
|
{
|
|
bFilamentPreheatState=false;
|
|
bFilamentPreheatState=false;
|
|
-mFilamentItem(PLA_PREHEAT_HOTEND_TEMP);
|
|
|
|
|
|
+mFilamentItem(PLA_PREHEAT_HOTEND_TEMP,PLA_PREHEAT_HPB_TEMP);
|
|
}
|
|
}
|
|
|
|
|
|
static void mFilamentItem_PET()
|
|
static void mFilamentItem_PET()
|
|
{
|
|
{
|
|
bFilamentPreheatState=false;
|
|
bFilamentPreheatState=false;
|
|
-mFilamentItem(PET_PREHEAT_HOTEND_TEMP);
|
|
|
|
|
|
+mFilamentItem(PET_PREHEAT_HOTEND_TEMP,PET_PREHEAT_HPB_TEMP);
|
|
}
|
|
}
|
|
|
|
|
|
static void mFilamentItem_ABS()
|
|
static void mFilamentItem_ABS()
|
|
{
|
|
{
|
|
bFilamentPreheatState=false;
|
|
bFilamentPreheatState=false;
|
|
-mFilamentItem(ABS_PREHEAT_HOTEND_TEMP);
|
|
|
|
|
|
+mFilamentItem(ABS_PREHEAT_HOTEND_TEMP,ABS_PREHEAT_HPB_TEMP);
|
|
}
|
|
}
|
|
|
|
|
|
static void mFilamentItem_HIPS()
|
|
static void mFilamentItem_HIPS()
|
|
{
|
|
{
|
|
bFilamentPreheatState=false;
|
|
bFilamentPreheatState=false;
|
|
-mFilamentItem(HIPS_PREHEAT_HOTEND_TEMP);
|
|
|
|
|
|
+mFilamentItem(HIPS_PREHEAT_HOTEND_TEMP,HIPS_PREHEAT_HPB_TEMP);
|
|
}
|
|
}
|
|
|
|
|
|
static void mFilamentItem_PP()
|
|
static void mFilamentItem_PP()
|
|
{
|
|
{
|
|
bFilamentPreheatState=false;
|
|
bFilamentPreheatState=false;
|
|
-mFilamentItem(PP_PREHEAT_HOTEND_TEMP);
|
|
|
|
|
|
+mFilamentItem(PP_PREHEAT_HOTEND_TEMP,PP_PREHEAT_HPB_TEMP);
|
|
}
|
|
}
|
|
|
|
|
|
static void mFilamentItem_FLEX()
|
|
static void mFilamentItem_FLEX()
|
|
{
|
|
{
|
|
bFilamentPreheatState=false;
|
|
bFilamentPreheatState=false;
|
|
-mFilamentItem(FLEX_PREHEAT_HOTEND_TEMP);
|
|
|
|
|
|
+mFilamentItem(FLEX_PREHEAT_HOTEND_TEMP,FLEX_PREHEAT_HPB_TEMP);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
@@ -2458,19 +2472,20 @@ void mFilamentMenu()
|
|
{
|
|
{
|
|
MENU_BEGIN();
|
|
MENU_BEGIN();
|
|
MENU_ITEM_FUNCTION_P(_T(MSG_MAIN),mFilamentBack);
|
|
MENU_ITEM_FUNCTION_P(_T(MSG_MAIN),mFilamentBack);
|
|
-MENU_ITEM_SUBMENU_P(PSTR("PLA - " STRINGIFY(PLA_PREHEAT_HOTEND_TEMP)),mFilamentItem_PLA);
|
|
|
|
-MENU_ITEM_SUBMENU_P(PSTR("PET - " STRINGIFY(PET_PREHEAT_HOTEND_TEMP)),mFilamentItem_PET);
|
|
|
|
-MENU_ITEM_SUBMENU_P(PSTR("ABS - " STRINGIFY(ABS_PREHEAT_HOTEND_TEMP)),mFilamentItem_ABS);
|
|
|
|
-MENU_ITEM_SUBMENU_P(PSTR("HIPS - " STRINGIFY(HIPS_PREHEAT_HOTEND_TEMP)),mFilamentItem_HIPS);
|
|
|
|
-MENU_ITEM_SUBMENU_P(PSTR("PP - " STRINGIFY(PP_PREHEAT_HOTEND_TEMP)),mFilamentItem_PP);
|
|
|
|
-MENU_ITEM_SUBMENU_P(PSTR("FLEX - " STRINGIFY(FLEX_PREHEAT_HOTEND_TEMP)),mFilamentItem_FLEX);
|
|
|
|
|
|
+MENU_ITEM_SUBMENU_P(PSTR("PLA - " STRINGIFY(PLA_PREHEAT_HOTEND_TEMP) "/" STRINGIFY(PLA_PREHEAT_HPB_TEMP)),mFilamentItem_PLA);
|
|
|
|
+MENU_ITEM_SUBMENU_P(PSTR("PET - " STRINGIFY(PET_PREHEAT_HOTEND_TEMP) "/" STRINGIFY(PET_PREHEAT_HPB_TEMP)),mFilamentItem_PET);
|
|
|
|
+MENU_ITEM_SUBMENU_P(PSTR("ABS - " STRINGIFY(ABS_PREHEAT_HOTEND_TEMP) "/" STRINGIFY(ABS_PREHEAT_HPB_TEMP)),mFilamentItem_ABS);
|
|
|
|
+MENU_ITEM_SUBMENU_P(PSTR("HIPS - " STRINGIFY(HIPS_PREHEAT_HOTEND_TEMP) "/" STRINGIFY(HIPS_PREHEAT_HPB_TEMP)),mFilamentItem_HIPS);
|
|
|
|
+MENU_ITEM_SUBMENU_P(PSTR("PP - " STRINGIFY(PP_PREHEAT_HOTEND_TEMP) "/" STRINGIFY(PP_PREHEAT_HPB_TEMP)),mFilamentItem_PP);
|
|
|
|
+MENU_ITEM_SUBMENU_P(PSTR("FLEX - " STRINGIFY(FLEX_PREHEAT_HOTEND_TEMP) "/" STRINGIFY(FLEX_PREHEAT_HPB_TEMP)),mFilamentItem_FLEX);
|
|
MENU_END();
|
|
MENU_END();
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
void lcd_unLoadFilament()
|
|
void lcd_unLoadFilament()
|
|
{
|
|
{
|
|
-if((degHotend0()>EXTRUDE_MINTEMP)&&bFilamentFirstRun)
|
|
|
|
|
|
+//./if((degHotend0()>EXTRUDE_MINTEMP)&&bFilamentFirstRun)
|
|
|
|
+if(0)
|
|
{
|
|
{
|
|
menu_back();
|
|
menu_back();
|
|
enquecommand_P(PSTR("M702")); // unload filament
|
|
enquecommand_P(PSTR("M702")); // unload filament
|
|
@@ -2481,7 +2496,7 @@ else {
|
|
if(target_temperature[0]>=EXTRUDE_MINTEMP)
|
|
if(target_temperature[0]>=EXTRUDE_MINTEMP)
|
|
{
|
|
{
|
|
bFilamentPreheatState=true;
|
|
bFilamentPreheatState=true;
|
|
- mFilamentItem(target_temperature[0]);
|
|
|
|
|
|
+ mFilamentItem(target_temperature[0],target_temperature_bed);
|
|
}
|
|
}
|
|
else mFilamentMenu();
|
|
else mFilamentMenu();
|
|
}
|
|
}
|
|
@@ -2699,7 +2714,8 @@ static void lcd_menu_AutoLoadFilament()
|
|
|
|
|
|
static void lcd_LoadFilament()
|
|
static void lcd_LoadFilament()
|
|
{
|
|
{
|
|
- if (degHotend0() > EXTRUDE_MINTEMP)
|
|
|
|
|
|
+//-// if (degHotend0() > EXTRUDE_MINTEMP)
|
|
|
|
+if(0)
|
|
{
|
|
{
|
|
// menu_back(); // not necessary (see "lcd_return_to_status()" below)
|
|
// menu_back(); // not necessary (see "lcd_return_to_status()" below)
|
|
custom_message_type = CUSTOM_MSG_TYPE_F_LOAD;
|
|
custom_message_type = CUSTOM_MSG_TYPE_F_LOAD;
|
|
@@ -2715,7 +2731,7 @@ static void lcd_LoadFilament()
|
|
if(target_temperature[0]>=EXTRUDE_MINTEMP)
|
|
if(target_temperature[0]>=EXTRUDE_MINTEMP)
|
|
{
|
|
{
|
|
bFilamentPreheatState=true;
|
|
bFilamentPreheatState=true;
|
|
- mFilamentItem(target_temperature[0]);
|
|
|
|
|
|
+ mFilamentItem(target_temperature[0],target_temperature_bed);
|
|
}
|
|
}
|
|
else mFilamentMenu();
|
|
else mFilamentMenu();
|
|
}
|
|
}
|
|
@@ -5626,8 +5642,11 @@ static void fil_load_menu()
|
|
|
|
|
|
static void mmu_load_to_nozzle_menu()
|
|
static void mmu_load_to_nozzle_menu()
|
|
{
|
|
{
|
|
-if (degHotend0() > EXTRUDE_MINTEMP)
|
|
|
|
|
|
+//-//if (degHotend0() > EXTRUDE_MINTEMP)
|
|
|
|
+//if(current_temperature[0]>(target_temperature[0]*0.95))
|
|
|
|
+if(bFilamentAction)
|
|
{
|
|
{
|
|
|
|
+//../bFilamentAction=false;
|
|
MENU_BEGIN();
|
|
MENU_BEGIN();
|
|
MENU_ITEM_BACK_P(_T(MSG_MAIN));
|
|
MENU_ITEM_BACK_P(_T(MSG_MAIN));
|
|
MENU_ITEM_FUNCTION_P(_i("Load filament 1"), mmu_load_to_nozzle_0);
|
|
MENU_ITEM_FUNCTION_P(_i("Load filament 1"), mmu_load_to_nozzle_0);
|
|
@@ -5643,7 +5662,7 @@ else {
|
|
if(target_temperature[0]>=EXTRUDE_MINTEMP)
|
|
if(target_temperature[0]>=EXTRUDE_MINTEMP)
|
|
{
|
|
{
|
|
bFilamentPreheatState=true;
|
|
bFilamentPreheatState=true;
|
|
- mFilamentItem(target_temperature[0]);
|
|
|
|
|
|
+ mFilamentItem(target_temperature[0],target_temperature_bed);
|
|
}
|
|
}
|
|
else mFilamentMenu();
|
|
else mFilamentMenu();
|
|
}
|
|
}
|
|
@@ -5651,8 +5670,11 @@ else {
|
|
|
|
|
|
static void mmu_fil_eject_menu()
|
|
static void mmu_fil_eject_menu()
|
|
{
|
|
{
|
|
-if (degHotend0() > EXTRUDE_MINTEMP)
|
|
|
|
|
|
+//-//if (degHotend0() > EXTRUDE_MINTEMP)
|
|
|
|
+//if(current_temperature[0]>(target_temperature[0]*0.95))
|
|
|
|
+if(bFilamentAction)
|
|
{
|
|
{
|
|
|
|
+//../bFilamentAction=false;
|
|
MENU_BEGIN();
|
|
MENU_BEGIN();
|
|
MENU_ITEM_BACK_P(_T(MSG_MAIN));
|
|
MENU_ITEM_BACK_P(_T(MSG_MAIN));
|
|
MENU_ITEM_FUNCTION_P(_i("Eject filament 1"), mmu_eject_fil_0);
|
|
MENU_ITEM_FUNCTION_P(_i("Eject filament 1"), mmu_eject_fil_0);
|
|
@@ -5663,12 +5685,13 @@ if (degHotend0() > EXTRUDE_MINTEMP)
|
|
MENU_END();
|
|
MENU_END();
|
|
}
|
|
}
|
|
else {
|
|
else {
|
|
|
|
+ MYSERIAL.println(" eject - else");
|
|
eFilamentAction=e_FILAMENT_ACTION_mmuEject;
|
|
eFilamentAction=e_FILAMENT_ACTION_mmuEject;
|
|
bFilamentFirstRun=false;
|
|
bFilamentFirstRun=false;
|
|
if(target_temperature[0]>=EXTRUDE_MINTEMP)
|
|
if(target_temperature[0]>=EXTRUDE_MINTEMP)
|
|
{
|
|
{
|
|
bFilamentPreheatState=true;
|
|
bFilamentPreheatState=true;
|
|
- mFilamentItem(target_temperature[0]);
|
|
|
|
|
|
+ mFilamentItem(target_temperature[0],target_temperature_bed);
|
|
}
|
|
}
|
|
else mFilamentMenu();
|
|
else mFilamentMenu();
|
|
}
|
|
}
|
|
@@ -6142,7 +6165,8 @@ static void lcd_main_menu()
|
|
{
|
|
{
|
|
MENU_ITEM_SUBMENU_P(_T(MSG_LOAD_FILAMENT), fil_load_menu);
|
|
MENU_ITEM_SUBMENU_P(_T(MSG_LOAD_FILAMENT), fil_load_menu);
|
|
MENU_ITEM_SUBMENU_P(_i("Load to nozzle"), mmu_load_to_nozzle_menu);
|
|
MENU_ITEM_SUBMENU_P(_i("Load to nozzle"), mmu_load_to_nozzle_menu);
|
|
- MENU_ITEM_FUNCTION_P(_T(MSG_UNLOAD_FILAMENT), extr_unload);
|
|
|
|
|
|
+//-// MENU_ITEM_FUNCTION_P(_T(MSG_UNLOAD_FILAMENT), extr_unload);
|
|
|
|
+ MENU_ITEM_SUBMENU_P(_T(MSG_UNLOAD_FILAMENT), extr_unload);
|
|
MENU_ITEM_SUBMENU_P(_i("Eject filament"), mmu_fil_eject_menu);
|
|
MENU_ITEM_SUBMENU_P(_i("Eject filament"), mmu_fil_eject_menu);
|
|
}
|
|
}
|
|
else
|
|
else
|