|
@@ -4325,7 +4325,8 @@ inline void gcode_M109() {
|
4325
|
4325
|
#ifdef TEMP_RESIDENCY_TIME
|
4326
|
4326
|
// Start the TEMP_RESIDENCY_TIME timer when we reach target temp for the first time.
|
4327
|
4327
|
// Restart the timer whenever the temperature falls outside the hysteresis.
|
4328
|
|
- if (labs(degHotend(target_extruder) - degTargetHotend(target_extruder)) > ((residency_start_ms < 0) ? TEMP_WINDOW : TEMP_HYSTERESIS))
|
|
4328
|
+ if ((residency_start_ms <= 0 && labs(degHotend(target_extruder) - degTargetHotend(target_extruder)) < TEMP_WINDOW) ||
|
|
4329
|
+ (labs(degHotend(target_extruder) - degTargetHotend(target_extruder)) > ((residency_start_ms < 0) ? TEMP_WINDOW : TEMP_HYSTERESIS)))
|
4329
|
4330
|
residency_start_ms = millis();
|
4330
|
4331
|
#endif //TEMP_RESIDENCY_TIME
|
4331
|
4332
|
|