[1.1.x] Update Thermal Protection Documentation (#8282)

* Fix thermal protection documentation.

Even before the recent thermal protection changes, the documentation of
the thermal protection feature in the config files did not match the
implementation.  I fixed the documentation and reconciled the M303
implementation with the documentation.

* Applied documentation changes to sample config files

* Renamed hysteresis to watch_temp_increase

* Added gcodes back into documentation.
master
Rowan Meara 7 years ago committed by Scott Lahteine
parent abb15bc30a
commit 094bebcc2d

@ -428,12 +428,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -48,31 +48,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 40 // Seconds #define THERMAL_PROTECTION_PERIOD 40 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 20 // Seconds #define WATCH_TEMP_PERIOD 20 // Seconds
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_TEMP_INCREASE 2 // Degrees Celsius
@ -86,13 +91,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 60 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -448,12 +448,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -48,31 +48,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 40 // Seconds #define THERMAL_PROTECTION_PERIOD 40 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 20 // Seconds #define WATCH_TEMP_PERIOD 20 // Seconds
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_TEMP_INCREASE 2 // Degrees Celsius
@ -86,13 +91,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 60 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -428,12 +428,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -448,12 +448,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -48,31 +48,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 60 // Seconds #define THERMAL_PROTECTION_PERIOD 60 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 10 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 10 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 60 // Seconds #define WATCH_TEMP_PERIOD 60 // Seconds
#define WATCH_TEMP_INCREASE 5 // Degrees Celsius #define WATCH_TEMP_INCREASE 5 // Degrees Celsius
@ -86,13 +91,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 5 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 5 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 180 // Seconds #define WATCH_BED_TEMP_PERIOD 180 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -434,12 +434,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -48,31 +48,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 60 // Seconds #define THERMAL_PROTECTION_PERIOD 60 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 10 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 10 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 20 // Seconds #define WATCH_TEMP_PERIOD 20 // Seconds
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_TEMP_INCREASE 2 // Degrees Celsius
@ -86,13 +91,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 5 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 5 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 180 // Seconds #define WATCH_BED_TEMP_PERIOD 180 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -419,12 +419,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -48,31 +48,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 40 // Seconds #define THERMAL_PROTECTION_PERIOD 40 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 20 // Seconds #define WATCH_TEMP_PERIOD 20 // Seconds
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_TEMP_INCREASE 2 // Degrees Celsius
@ -86,13 +91,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 60 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -429,12 +429,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -48,31 +48,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 40 // Seconds #define THERMAL_PROTECTION_PERIOD 40 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 20 // Seconds #define WATCH_TEMP_PERIOD 20 // Seconds
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_TEMP_INCREASE 2 // Degrees Celsius
@ -86,13 +91,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 60 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -419,12 +419,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -48,31 +48,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 40 // Seconds #define THERMAL_PROTECTION_PERIOD 40 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 20 // Seconds #define WATCH_TEMP_PERIOD 20 // Seconds
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_TEMP_INCREASE 2 // Degrees Celsius
@ -86,13 +91,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 60 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -427,12 +427,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -48,31 +48,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 40 // Seconds #define THERMAL_PROTECTION_PERIOD 40 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 20 // Seconds #define WATCH_TEMP_PERIOD 20 // Seconds
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_TEMP_INCREASE 2 // Degrees Celsius
@ -86,13 +91,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 60 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -438,12 +438,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -48,31 +48,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 40 // Seconds #define THERMAL_PROTECTION_PERIOD 40 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 20 // Seconds #define WATCH_TEMP_PERIOD 20 // Seconds
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_TEMP_INCREASE 2 // Degrees Celsius
@ -86,13 +91,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 60 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -409,12 +409,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -48,31 +48,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 40 // Seconds #define THERMAL_PROTECTION_PERIOD 40 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 20 // Seconds #define WATCH_TEMP_PERIOD 20 // Seconds
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_TEMP_INCREASE 2 // Degrees Celsius
@ -86,13 +91,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 60 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -409,12 +409,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -433,12 +433,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -48,31 +48,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 40 // Seconds #define THERMAL_PROTECTION_PERIOD 40 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 2 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 40 // Seconds #define WATCH_TEMP_PERIOD 40 // Seconds
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_TEMP_INCREASE 2 // Degrees Celsius
@ -86,13 +91,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 60 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -443,12 +443,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -428,12 +428,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -432,12 +432,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -48,31 +48,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 40 // Seconds #define THERMAL_PROTECTION_PERIOD 40 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 20 // Seconds #define WATCH_TEMP_PERIOD 20 // Seconds
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_TEMP_INCREASE 2 // Degrees Celsius
@ -86,13 +91,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 60 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -436,12 +436,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -48,31 +48,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 40 // Seconds #define THERMAL_PROTECTION_PERIOD 40 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 20 // Seconds #define WATCH_TEMP_PERIOD 20 // Seconds
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_TEMP_INCREASE 2 // Degrees Celsius
@ -86,13 +91,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 60 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -428,12 +428,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -428,12 +428,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -48,31 +48,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 40 // Seconds #define THERMAL_PROTECTION_PERIOD 40 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 20 // Seconds #define WATCH_TEMP_PERIOD 20 // Seconds
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_TEMP_INCREASE 2 // Degrees Celsius
@ -86,13 +91,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 60 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -428,12 +428,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -424,12 +424,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -48,31 +48,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 40 // Seconds #define THERMAL_PROTECTION_PERIOD 40 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 20 // Seconds #define WATCH_TEMP_PERIOD 20 // Seconds
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_TEMP_INCREASE 2 // Degrees Celsius
@ -86,13 +91,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 60 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -440,12 +440,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -48,31 +48,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 40 // Seconds #define THERMAL_PROTECTION_PERIOD 40 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 20 // Seconds #define WATCH_TEMP_PERIOD 20 // Seconds
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_TEMP_INCREASE 2 // Degrees Celsius
@ -86,13 +91,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 60 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -428,12 +428,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -48,31 +48,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 40 // Seconds #define THERMAL_PROTECTION_PERIOD 40 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 20 // Seconds #define WATCH_TEMP_PERIOD 20 // Seconds
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_TEMP_INCREASE 2 // Degrees Celsius
@ -86,13 +91,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 60 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -478,12 +478,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -48,31 +48,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 40 // Seconds #define THERMAL_PROTECTION_PERIOD 40 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 20 // Seconds #define WATCH_TEMP_PERIOD 20 // Seconds
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_TEMP_INCREASE 2 // Degrees Celsius
@ -86,13 +91,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 60 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -458,12 +458,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -57,18 +57,20 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
// K8200 has weak heaters/power supply by default, so you have to relax! // K8200 has weak heaters/power supply by default, so you have to relax!
@ -76,13 +78,16 @@
#define THERMAL_PROTECTION_HYSTERESIS 8 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 8 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
// K8200 has weak heaters/power supply by default, so you have to relax! // K8200 has weak heaters/power supply by default, so you have to relax!
#define WATCH_TEMP_PERIOD 30 // Seconds #define WATCH_TEMP_PERIOD 30 // Seconds
@ -99,13 +104,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 10 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 10 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 60 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -428,12 +428,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -48,31 +48,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 40 // Seconds #define THERMAL_PROTECTION_PERIOD 40 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 20 // Seconds #define WATCH_TEMP_PERIOD 20 // Seconds
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_TEMP_INCREASE 2 // Degrees Celsius
@ -86,13 +91,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 60 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -428,12 +428,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -428,12 +428,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -438,12 +438,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -48,31 +48,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 40 // Seconds #define THERMAL_PROTECTION_PERIOD 40 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 20 // Seconds #define WATCH_TEMP_PERIOD 20 // Seconds
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_TEMP_INCREASE 2 // Degrees Celsius
@ -86,13 +91,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 60 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -438,12 +438,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -48,31 +48,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 40 // Seconds #define THERMAL_PROTECTION_PERIOD 40 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 20 // Seconds #define WATCH_TEMP_PERIOD 20 // Seconds
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_TEMP_INCREASE 2 // Degrees Celsius
@ -86,13 +91,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 60 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -428,12 +428,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -48,31 +48,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 40 // Seconds #define THERMAL_PROTECTION_PERIOD 40 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 20 // Seconds #define WATCH_TEMP_PERIOD 20 // Seconds
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_TEMP_INCREASE 2 // Degrees Celsius
@ -86,13 +91,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 60 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -428,12 +428,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -48,31 +48,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 40 // Seconds #define THERMAL_PROTECTION_PERIOD 40 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 20 // Seconds #define WATCH_TEMP_PERIOD 20 // Seconds
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_TEMP_INCREASE 2 // Degrees Celsius
@ -86,13 +91,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 60 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -414,12 +414,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -53,31 +53,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 40 // Seconds #define THERMAL_PROTECTION_PERIOD 40 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 20 // Seconds #define WATCH_TEMP_PERIOD 20 // Seconds
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_TEMP_INCREASE 2 // Degrees Celsius
@ -91,13 +96,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 60 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -432,12 +432,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -48,31 +48,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 40 // Seconds #define THERMAL_PROTECTION_PERIOD 40 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 20 // Seconds #define WATCH_TEMP_PERIOD 20 // Seconds
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_TEMP_INCREASE 2 // Degrees Celsius
@ -86,13 +91,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 60 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -441,12 +441,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -48,31 +48,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 50 // Seconds #define THERMAL_PROTECTION_PERIOD 50 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 3 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 3 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 50 // Seconds #define WATCH_TEMP_PERIOD 50 // Seconds
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_TEMP_INCREASE 2 // Degrees Celsius
@ -86,13 +91,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 60 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -431,12 +431,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -48,31 +48,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 40 // Seconds #define THERMAL_PROTECTION_PERIOD 40 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 20 // Seconds #define WATCH_TEMP_PERIOD 20 // Seconds
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_TEMP_INCREASE 2 // Degrees Celsius
@ -86,13 +91,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 60 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -417,12 +417,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -48,31 +48,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 40 // Seconds #define THERMAL_PROTECTION_PERIOD 40 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 20 // Seconds #define WATCH_TEMP_PERIOD 20 // Seconds
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_TEMP_INCREASE 2 // Degrees Celsius
@ -86,13 +91,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 60 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -433,12 +433,13 @@
//=========================================================================== //===========================================================================
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* If you get "Thermal Runaway" or "Heating failed" errors the * If you get "Thermal Runaway" or "Heating failed" errors the
* details can be tuned in Configuration_adv.h * details can be tuned in Configuration_adv.h

@ -48,31 +48,36 @@
#endif #endif
/** /**
* Thermal Protection protects your printer from damage and fire if a * Thermal Protection provides additional protection to your printer from damage
* thermistor falls out or temperature sensors fail in any way. * and fire. Marlin always includes safe min and max temperature ranges which
* protect against a broken or disconnected thermistor wire.
* *
* The issue: If a thermistor falls out or a temperature sensor fails, * The issue: If a thermistor falls out, it will report the much lower
* Marlin can no longer sense the actual temperature. Since a disconnected * temperature of the air in the room, and the the firmware will keep
* thermistor reads as a low temperature, the firmware will keep the heater on. * the heater on.
* *
* The solution: Once the temperature reaches the target, start observing. * The solution: Once the temperature reaches the target, start observing.
* If the temperature stays too far below the target (hysteresis) for too long (period), * If the temperature stays too far below the target (hysteresis) for too
* the firmware will halt the machine as a safety precaution. * long (period), the firmware will halt the machine as a safety precaution.
* *
* If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD * If you get false positives for "Thermal Runaway", increase
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
*/ */
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if ENABLED(THERMAL_PROTECTION_HOTENDS)
#define THERMAL_PROTECTION_PERIOD 40 // Seconds #define THERMAL_PROTECTION_PERIOD 40 // Seconds
#define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius #define THERMAL_PROTECTION_HYSTERESIS 4 // Degrees Celsius
/** /**
* Whenever an M104 or M109 increases the target temperature the firmware will wait for the * Whenever an M104, M109, or M303 increases the target temperature, the
* WATCH_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_TEMP_INCREASE * firmware will wait for the WATCH_TEMP_PERIOD to expire. If the temperature
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M104/M109, * hasn't increased by WATCH_TEMP_INCREASE degrees, the machine is halted and
* but only if the current temperature is far enough below the target for a reliable test. * requires a hard reset. This test restarts with any M104/M109/M303, but only
* if the current temperature is far enough below the target for a reliable
* test.
* *
* If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE * If you get false positives for "Heating failed", increase WATCH_TEMP_PERIOD
* WATCH_TEMP_INCREASE should not be below 2. * and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
* below 2.
*/ */
#define WATCH_TEMP_PERIOD 20 // Seconds #define WATCH_TEMP_PERIOD 20 // Seconds
#define WATCH_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_TEMP_INCREASE 2 // Degrees Celsius
@ -86,13 +91,7 @@
#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
/** /**
* Whenever an M140 or M190 increases the target temperature the firmware will wait for the * As described above, except for the bed (M140/M190/M303).
* WATCH_BED_TEMP_PERIOD to expire, and if the temperature hasn't increased by WATCH_BED_TEMP_INCREASE
* degrees, the machine is halted, requiring a hard reset. This test restarts with any M140/M190,
* but only if the current temperature is far enough below the target for a reliable test.
*
* If you get too many "Heating failed" errors, increase WATCH_BED_TEMP_PERIOD and/or decrease
* WATCH_BED_TEMP_INCREASE. (WATCH_BED_TEMP_INCREASE should not be below 2.)
*/ */
#define WATCH_BED_TEMP_PERIOD 60 // Seconds #define WATCH_BED_TEMP_PERIOD 60 // Seconds
#define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius #define WATCH_BED_TEMP_INCREASE 2 // Degrees Celsius

@ -240,20 +240,20 @@ uint8_t Temperature::soft_pwm_amount[HOTENDS],
; ;
const int8_t watch_temp_period = const int8_t watch_temp_period =
#if ENABLED(THERMAL_PROTECTION_BED) && ENABLED(PIDTEMPBED) && ENABLED(THERMAL_PROTECTION_HOTENDS) && ENABLED(PIDTEMP) #if ENABLED(THERMAL_PROTECTION_BED) && ENABLED(PIDTEMPBED) && ENABLED(THERMAL_PROTECTION_HOTENDS) && ENABLED(PIDTEMP)
hotend < 0 ? temp - THERMAL_PROTECTION_BED_PERIOD : THERMAL_PROTECTION_PERIOD hotend < 0 ? WATCH_BED_TEMP_PERIOD : WATCH_TEMP_PERIOD
#elif ENABLED(THERMAL_PROTECTION_BED) && ENABLED(PIDTEMPBED) #elif ENABLED(THERMAL_PROTECTION_BED) && ENABLED(PIDTEMPBED)
THERMAL_PROTECTION_BED_PERIOD WATCH_BED_TEMP_PERIOD
#else #else
THERMAL_PROTECTION_PERIOD WATCH_TEMP_PERIOD
#endif #endif
; ;
const int8_t hysteresis = const int8_t watch_temp_increase =
#if ENABLED(THERMAL_PROTECTION_BED) && ENABLED(PIDTEMPBED) && ENABLED(THERMAL_PROTECTION_HOTENDS) && ENABLED(PIDTEMP) #if ENABLED(THERMAL_PROTECTION_BED) && ENABLED(PIDTEMPBED) && ENABLED(THERMAL_PROTECTION_HOTENDS) && ENABLED(PIDTEMP)
hotend < 0 ? TEMP_BED_HYSTERESIS : TEMP_HYSTERESIS hotend < 0 ? WATCH_BED_TEMP_INCREASE : WATCH_TEMP_INCREASE
#elif ENABLED(THERMAL_PROTECTION_BED) && ENABLED(PIDTEMPBED) #elif ENABLED(THERMAL_PROTECTION_BED) && ENABLED(PIDTEMPBED)
TEMP_BED_HYSTERESIS WATCH_BED_TEMP_INCREASE
#else #else
TEMP_HYSTERESIS WATCH_TEMP_INCREASE
#endif #endif
; ;
millis_t temp_change_ms = next_temp_ms + watch_temp_period * 1000UL; millis_t temp_change_ms = next_temp_ms + watch_temp_period * 1000UL;
@ -430,10 +430,12 @@ uint8_t Temperature::soft_pwm_amount[HOTENDS],
#if WATCH_THE_BED || WATCH_HOTENDS #if WATCH_THE_BED || WATCH_HOTENDS
if (!heated && input > next_watch_temp) { if (!heated && input > next_watch_temp) {
if (input > watch_temp_target) heated = true; if (input > watch_temp_target) heated = true;
next_watch_temp = input + hysteresis; next_watch_temp = input + watch_temp_increase;
temp_change_ms = ms + watch_temp_period * 1000UL; temp_change_ms = ms + watch_temp_period * 1000UL;
} }
else if ((!heated && ELAPSED(ms, temp_change_ms)) || (heated && input < temp - MAX_OVERSHOOT_PID_AUTOTUNE)) else if (!heated && ELAPSED(ms, temp_change_ms))
_temp_error(hotend, PSTR(MSG_T_HEATING_FAILED), PSTR(MSG_HEATING_FAILED_LCD));
else if (heated && input < temp - MAX_OVERSHOOT_PID_AUTOTUNE)
_temp_error(hotend, PSTR(MSG_T_THERMAL_RUNAWAY), PSTR(MSG_THERMAL_RUNAWAY)); _temp_error(hotend, PSTR(MSG_T_THERMAL_RUNAWAY), PSTR(MSG_THERMAL_RUNAWAY));
#endif #endif
} // every 2 seconds } // every 2 seconds

Loading…
Cancel
Save