Shift call of start_watching_heater() into setTargetHotend()
to warrant watching is set or reset. Make setTargetBed() in _lcd_preheat() dependant of TEMP_SENSOR_BED. Use disable_all_heaters() in lcd_cooldown() and abort_on_endstop_hit.
This commit is contained in:
parent
d6c1285ab5
commit
bc0764894a
|
@ -296,11 +296,7 @@ void checkHitEndstops() {
|
||||||
card.sdprinting = false;
|
card.sdprinting = false;
|
||||||
card.closefile();
|
card.closefile();
|
||||||
quickStop();
|
quickStop();
|
||||||
setTargetHotend0(0);
|
disable_all_heaters(); // switch off all heaters.
|
||||||
setTargetHotend1(0);
|
|
||||||
setTargetHotend2(0);
|
|
||||||
setTargetHotend3(0);
|
|
||||||
setTargetBed(0);
|
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
|
@ -96,7 +96,12 @@ FORCE_INLINE float degBed() { return current_temperature_bed; }
|
||||||
FORCE_INLINE float degTargetHotend(uint8_t extruder) { return target_temperature[extruder]; }
|
FORCE_INLINE float degTargetHotend(uint8_t extruder) { return target_temperature[extruder]; }
|
||||||
FORCE_INLINE float degTargetBed() { return target_temperature_bed; }
|
FORCE_INLINE float degTargetBed() { return target_temperature_bed; }
|
||||||
|
|
||||||
FORCE_INLINE void setTargetHotend(const float &celsius, uint8_t extruder) { target_temperature[extruder] = celsius; }
|
FORCE_INLINE void setTargetHotend(const float &celsius, uint8_t extruder) {
|
||||||
|
target_temperature[extruder] = celsius;
|
||||||
|
#ifdef WATCH_TEMP_PERIOD
|
||||||
|
start_watching_heater(extruder);
|
||||||
|
#endif
|
||||||
|
}
|
||||||
FORCE_INLINE void setTargetBed(const float &celsius) { target_temperature_bed = celsius; }
|
FORCE_INLINE void setTargetBed(const float &celsius) { target_temperature_bed = celsius; }
|
||||||
|
|
||||||
FORCE_INLINE bool isHeatingHotend(uint8_t extruder) { return target_temperature[extruder] > current_temperature[extruder]; }
|
FORCE_INLINE bool isHeatingHotend(uint8_t extruder) { return target_temperature[extruder] > current_temperature[extruder]; }
|
||||||
|
|
|
@ -515,12 +515,11 @@ static void lcd_tune_menu() {
|
||||||
|
|
||||||
void _lcd_preheat(int endnum, const float temph, const float tempb, const int fan) {
|
void _lcd_preheat(int endnum, const float temph, const float tempb, const int fan) {
|
||||||
if (temph > 0) setTargetHotend(temph, endnum);
|
if (temph > 0) setTargetHotend(temph, endnum);
|
||||||
|
#if TEMP_SENSOR_BED != 0
|
||||||
setTargetBed(tempb);
|
setTargetBed(tempb);
|
||||||
|
#endif
|
||||||
fanSpeed = fan;
|
fanSpeed = fan;
|
||||||
lcd_return_to_status();
|
lcd_return_to_status();
|
||||||
#ifdef WATCH_TEMP_PERIOD
|
|
||||||
if (endnum >= 0) start_watching_heater(endnum);
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
void lcd_preheat_pla0() { _lcd_preheat(0, plaPreheatHotendTemp, plaPreheatHPBTemp, plaPreheatFanSpeed); }
|
void lcd_preheat_pla0() { _lcd_preheat(0, plaPreheatHotendTemp, plaPreheatHPBTemp, plaPreheatFanSpeed); }
|
||||||
void lcd_preheat_abs0() { _lcd_preheat(0, absPreheatHotendTemp, absPreheatHPBTemp, absPreheatFanSpeed); }
|
void lcd_preheat_abs0() { _lcd_preheat(0, absPreheatHotendTemp, absPreheatHPBTemp, absPreheatFanSpeed); }
|
||||||
|
@ -602,11 +601,7 @@ void lcd_preheat_abs0() { _lcd_preheat(0, absPreheatHotendTemp, absPreheatHPBTem
|
||||||
#endif // more than one temperature sensor present
|
#endif // more than one temperature sensor present
|
||||||
|
|
||||||
void lcd_cooldown() {
|
void lcd_cooldown() {
|
||||||
setTargetHotend0(0);
|
disable_all_heaters();
|
||||||
setTargetHotend1(0);
|
|
||||||
setTargetHotend2(0);
|
|
||||||
setTargetHotend3(0);
|
|
||||||
setTargetBed(0);
|
|
||||||
fanSpeed = 0;
|
fanSpeed = 0;
|
||||||
lcd_return_to_status();
|
lcd_return_to_status();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue