preheat and parking tweaks
This commit is contained in:
@@ -2199,7 +2199,7 @@
|
||||
#define PAUSE_PARK_NO_STEPPER_TIMEOUT // Enable for XYZ steppers to stay powered on during filament change.
|
||||
|
||||
#define PARK_HEAD_ON_PAUSE // Park the nozzle during pause and filament change.
|
||||
#define HOME_BEFORE_FILAMENT_CHANGE // If needed, home before parking for filament change
|
||||
//#define HOME_BEFORE_FILAMENT_CHANGE // If needed, home before parking for filament change
|
||||
|
||||
#define FILAMENT_LOAD_UNLOAD_GCODES // Add M701/M702 Load/Unload G-codes, plus Load/Unload in the LCD Prepare menu.
|
||||
//#define FILAMENT_UNLOAD_ALL_EXTRUDERS // Allow M702 to unload all extruders above a minimum target temp (as set by M302)
|
||||
|
||||
@@ -973,10 +973,10 @@ void DGUSScreenHandler::HandleLiveAdjustZ(DGUS_VP_Variable &var, void *val_ptr)
|
||||
SERIAL_ECHO(" - Difference: ");
|
||||
SERIAL_ECHO_F(difference);
|
||||
|
||||
int16_t steps = ExtUI::mmToWholeSteps(difference, ExtUI::axis_t::Z);
|
||||
float steps = ExtUI::mmToWholeSteps(difference, ExtUI::axis_t::Z);
|
||||
|
||||
SERIAL_ECHO(" - Steps: ");
|
||||
SERIAL_ECHO_F(steps);
|
||||
SERIAL_ECHO_F(steps, 2);
|
||||
SERIAL_ECHOLN(";");
|
||||
|
||||
ExtUI::smartAdjustAxis_steps(steps, ExtUI::axis_t::Z, true);
|
||||
|
||||
@@ -337,8 +337,21 @@ FORCE_INLINE void probe_specific_action(const bool deploy) {
|
||||
#if PROBING_BED_TEMP || LEVELING_BED_TEMP
|
||||
#define WAIT_FOR_BED_HEAT
|
||||
#endif
|
||||
const uint16_t hotendPreheat = TERN0(WAIT_FOR_NOZZLE_HEAT, thermalManager.degHotend(0) < hotend_temp) ? hotend_temp : 0,
|
||||
bedPreheat = TERN0(WAIT_FOR_BED_HEAT, thermalManager.degBed() < bed_temp) ? bed_temp : 0;
|
||||
|
||||
#if ENABLED(WAIT_FOR_NOZZLE_HEAT)
|
||||
uint16_t hotendPreheat;
|
||||
if (thermalManager.degHotend(0) < hotend_temp && thermalManager.degTargetHotend(0) < hotend_temp) hotendPreheat = hotend_temp;
|
||||
else if (thermalManager.degTargetHotend(0) < hotend_temp) hotendPreheat = thermalManager.degTargetHotend(0);
|
||||
else hotendPreheat = 0;
|
||||
#endif
|
||||
|
||||
#if ENABLED(WAIT_FOR_BED_HEAT)
|
||||
uint16_t bedPreheat;
|
||||
if (thermalManager.degBed() < bed_temp && thermalManager.degTargetBed() < hotend_temp) bedPreheat = bed_temp;
|
||||
else if (thermalManager.degTargetBed() < bed_temp) bedPreheat = thermalManager.degTargetBed();
|
||||
else bedPreheat = 0;
|
||||
#endif
|
||||
|
||||
DEBUG_ECHOPGM("Preheating ");
|
||||
if (hotendPreheat) {
|
||||
DEBUG_ECHOPAIR("hotend (", hotendPreheat, ") ");
|
||||
@@ -347,10 +360,10 @@ FORCE_INLINE void probe_specific_action(const bool deploy) {
|
||||
if (bedPreheat) DEBUG_ECHOPAIR("bed (", bedPreheat, ") ");
|
||||
DEBUG_EOL();
|
||||
|
||||
TERN_(WAIT_FOR_NOZZLE_HEAT, if (hotendPreheat) thermalManager.setTargetHotend(hotendPreheat, 0));
|
||||
TERN_(WAIT_FOR_BED_HEAT, if (bedPreheat) thermalManager.setTargetBed(bedPreheat));
|
||||
TERN_(WAIT_FOR_NOZZLE_HEAT, if (hotendPreheat) thermalManager.wait_for_hotend(0));
|
||||
TERN_(WAIT_FOR_BED_HEAT, if (bedPreheat) thermalManager.wait_for_bed_heating());
|
||||
TERN_(WAIT_FOR_NOZZLE_HEAT, if (hotendPreheat==hotend_temp) thermalManager.setTargetHotend(hotendPreheat, 0));
|
||||
TERN_(WAIT_FOR_BED_HEAT, if (bedPreheat==bed_temp) thermalManager.setTargetBed(bedPreheat));
|
||||
TERN_(WAIT_FOR_NOZZLE_HEAT, if (thermalManager.degTargetHotend(0) < hotend_temp) thermalManager.wait_for_hotend(0));
|
||||
TERN_(WAIT_FOR_BED_HEAT, if (thermalManager.degTargetBed() < bed_temp) thermalManager.wait_for_bed_heating());
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user