PREVENT_DANGEROUS_EXTRUDE => PREVENT_COLD_EXTRUSION

Also improve the documentation of this and related options, and set
EXTRUDE_MINTEMP to 170 everywhere.
This commit is contained in:
Scott Lahteine 2016-08-20 23:34:24 -05:00
parent a1f6cf1e5d
commit 01d4703429
28 changed files with 213 additions and 167 deletions

View File

@ -522,11 +522,11 @@
#define HAS_THERMALLY_PROTECTED_BED (HAS_TEMP_BED && HAS_HEATER_BED && ENABLED(THERMAL_PROTECTION_BED)) #define HAS_THERMALLY_PROTECTED_BED (HAS_TEMP_BED && HAS_HEATER_BED && ENABLED(THERMAL_PROTECTION_BED))
/** /**
* This value is used by M109 when trying to calculate a ballpark safe margin * This setting is also used by M109 when trying to calculate
* to prevent wait-forever situation. * a ballpark safe margin to prevent wait-forever situation.
*/ */
#ifndef EXTRUDE_MINTEMP #ifndef EXTRUDE_MINTEMP
#define EXTRUDE_MINTEMP 170 #define EXTRUDE_MINTEMP 170
#endif #endif
/** /**

View File

@ -347,14 +347,16 @@
// @section extruder // @section extruder
//this prevents dangerous Extruder moves, i.e. if the temperature is under the limit // This option prevents extrusion if the temperature is below EXTRUDE_MINTEMP.
//can be software-disabled for whatever purposes by // It also enables the M302 command to set the minimum extrusion temperature
#define PREVENT_DANGEROUS_EXTRUDE // or to allow moving the extruder regardless of the hotend temperature.
//if PREVENT_DANGEROUS_EXTRUDE is on, you can still disable (uncomment) very long bits of extrusion separately. // *** IT IS HIGHLY RECOMMENDED TO LEAVE THIS OPTION ENABLED! ***
#define PREVENT_LENGTHY_EXTRUDE #define PREVENT_COLD_EXTRUSION
#define EXTRUDE_MINTEMP 170 #define EXTRUDE_MINTEMP 170
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances.
// This option prevents a single extrusion longer than EXTRUDE_MAXLENGTH.
#define PREVENT_LENGTHY_EXTRUDE
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH)
//=========================================================================== //===========================================================================
//======================== Thermal Runaway Protection ======================= //======================== Thermal Runaway Protection =======================

View File

@ -5844,7 +5844,7 @@ inline void gcode_M226() {
#endif // HAS_LCD_CONTRAST #endif // HAS_LCD_CONTRAST
#if ENABLED(PREVENT_DANGEROUS_EXTRUDE) #if ENABLED(PREVENT_COLD_EXTRUSION)
/** /**
* M302: Allow cold extrudes, or set the minimum extrude temperature * M302: Allow cold extrudes, or set the minimum extrude temperature
@ -5879,7 +5879,7 @@ inline void gcode_M226() {
} }
} }
#endif // PREVENT_DANGEROUS_EXTRUDE #endif // PREVENT_COLD_EXTRUSION
/** /**
* M303: PID relay autotune * M303: PID relay autotune
@ -7549,11 +7549,11 @@ void process_next_command() {
break; break;
#endif // HAS_LCD_CONTRAST #endif // HAS_LCD_CONTRAST
#if ENABLED(PREVENT_DANGEROUS_EXTRUDE) #if ENABLED(PREVENT_COLD_EXTRUSION)
case 302: // allow cold extrudes, or set the minimum extrude temperature case 302: // allow cold extrudes, or set the minimum extrude temperature
gcode_M302(); gcode_M302();
break; break;
#endif // PREVENT_DANGEROUS_EXTRUDE #endif // PREVENT_COLD_EXTRUSION
case 303: // M303 PID autotune case 303: // M303 PID autotune
gcode_M303(); gcode_M303();
@ -8121,7 +8121,7 @@ void mesh_line_to_destination(float fr_mm_s, uint8_t x_splits = 0xff, uint8_t y_
#endif // !DELTA && !SCARA #endif // !DELTA && !SCARA
#if ENABLED(PREVENT_DANGEROUS_EXTRUDE) #if ENABLED(PREVENT_COLD_EXTRUSION)
inline void prevent_dangerous_extrude(float& curr_e, float& dest_e) { inline void prevent_dangerous_extrude(float& curr_e, float& dest_e) {
if (DEBUGGING(DRYRUN)) return; if (DEBUGGING(DRYRUN)) return;
@ -8142,7 +8142,7 @@ void mesh_line_to_destination(float fr_mm_s, uint8_t x_splits = 0xff, uint8_t y_
} }
} }
#endif // PREVENT_DANGEROUS_EXTRUDE #endif // PREVENT_COLD_EXTRUSION
/** /**
* Prepare a single move and get ready for the next one * Prepare a single move and get ready for the next one
@ -8154,7 +8154,7 @@ void prepare_move_to_destination() {
clamp_to_software_endstops(destination); clamp_to_software_endstops(destination);
refresh_cmd_timeout(); refresh_cmd_timeout();
#if ENABLED(PREVENT_DANGEROUS_EXTRUDE) #if ENABLED(PREVENT_COLD_EXTRUSION)
prevent_dangerous_extrude(current_position[E_AXIS], destination[E_AXIS]); prevent_dangerous_extrude(current_position[E_AXIS], destination[E_AXIS]);
#endif #endif

View File

@ -135,6 +135,8 @@
#error "Z_RAISE_PROBE_DEPLOY_STOW and Z_RAISE_BETWEEN_PROBINGS are now Z_PROBE_DEPLOY_HEIGHT and Z_PROBE_TRAVEL_HEIGHT Please update your configuration." #error "Z_RAISE_PROBE_DEPLOY_STOW and Z_RAISE_BETWEEN_PROBINGS are now Z_PROBE_DEPLOY_HEIGHT and Z_PROBE_TRAVEL_HEIGHT Please update your configuration."
#elif !defined(MIN_SEGMENTS_FOR_MOVE) #elif !defined(MIN_SEGMENTS_FOR_MOVE)
#error "\"dropsegments\" is replaced with MIN_SEGMENTS_FOR_MOVE (and increases by 1). Please update Configuration_adv.h." #error "\"dropsegments\" is replaced with MIN_SEGMENTS_FOR_MOVE (and increases by 1). Please update Configuration_adv.h."
#elif defined(PREVENT_DANGEROUS_EXTRUDE)
#error "PREVENT_DANGEROUS_EXTRUDE is now PREVENT_COLD_EXTRUSION. Please update your configuration."
#endif #endif
/** /**

View File

@ -347,14 +347,16 @@
// @section extruder // @section extruder
//this prevents dangerous Extruder moves, i.e. if the temperature is under the limit // This option prevents extrusion if the temperature is below EXTRUDE_MINTEMP.
//can be software-disabled for whatever purposes by // It also enables the M302 command to set the minimum extrusion temperature
#define PREVENT_DANGEROUS_EXTRUDE // or to allow moving the extruder regardless of the hotend temperature.
//if PREVENT_DANGEROUS_EXTRUDE is on, you can still disable (uncomment) very long bits of extrusion separately. // *** IT IS HIGHLY RECOMMENDED TO LEAVE THIS OPTION ENABLED! ***
#define PREVENT_LENGTHY_EXTRUDE #define PREVENT_COLD_EXTRUSION
#define EXTRUDE_MINTEMP 170
#define EXTRUDE_MINTEMP 18 // This option prevents a single extrusion longer than EXTRUDE_MAXLENGTH.
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances. #define PREVENT_LENGTHY_EXTRUDE
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH)
//=========================================================================== //===========================================================================
//======================== Thermal Runaway Protection ======================= //======================== Thermal Runaway Protection =======================

View File

@ -329,14 +329,16 @@
// @section extruder // @section extruder
//this prevents dangerous Extruder moves, i.e. if the temperature is under the limit // This option prevents extrusion if the temperature is below EXTRUDE_MINTEMP.
//can be software-disabled for whatever purposes by // It also enables the M302 command to set the minimum extrusion temperature
#define PREVENT_DANGEROUS_EXTRUDE // or to allow moving the extruder regardless of the hotend temperature.
//if PREVENT_DANGEROUS_EXTRUDE is on, you can still disable (uncomment) very long bits of extrusion separately. // *** IT IS HIGHLY RECOMMENDED TO LEAVE THIS OPTION ENABLED! ***
#define PREVENT_LENGTHY_EXTRUDE #define PREVENT_COLD_EXTRUSION
#define EXTRUDE_MINTEMP 170 #define EXTRUDE_MINTEMP 170
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances.
// This option prevents a single extrusion longer than EXTRUDE_MAXLENGTH.
#define PREVENT_LENGTHY_EXTRUDE
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH)
//=========================================================================== //===========================================================================
//======================== Thermal Runaway Protection ======================= //======================== Thermal Runaway Protection =======================

View File

@ -327,14 +327,16 @@
// @section extruder // @section extruder
//this prevents dangerous Extruder moves, i.e. if the temperature is under the limit // This option prevents extrusion if the temperature is below EXTRUDE_MINTEMP.
//can be software-disabled for whatever purposes by // It also enables the M302 command to set the minimum extrusion temperature
#define PREVENT_DANGEROUS_EXTRUDE // or to allow moving the extruder regardless of the hotend temperature.
//if PREVENT_DANGEROUS_EXTRUDE is on, you can still disable (uncomment) very long bits of extrusion separately. // *** IT IS HIGHLY RECOMMENDED TO LEAVE THIS OPTION ENABLED! ***
#define PREVENT_LENGTHY_EXTRUDE #define PREVENT_COLD_EXTRUSION
#define EXTRUDE_MINTEMP 170 #define EXTRUDE_MINTEMP 170
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances.
// This option prevents a single extrusion longer than EXTRUDE_MAXLENGTH.
#define PREVENT_LENGTHY_EXTRUDE
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH)
//=========================================================================== //===========================================================================
//======================== Thermal Runaway Protection ======================= //======================== Thermal Runaway Protection =======================

View File

@ -339,14 +339,16 @@
// @section extruder // @section extruder
//this prevents dangerous Extruder moves, i.e. if the temperature is under the limit // This option prevents extrusion if the temperature is below EXTRUDE_MINTEMP.
//can be software-disabled for whatever purposes by // It also enables the M302 command to set the minimum extrusion temperature
#define PREVENT_DANGEROUS_EXTRUDE // or to allow moving the extruder regardless of the hotend temperature.
//if PREVENT_DANGEROUS_EXTRUDE is on, you can still disable (uncomment) very long bits of extrusion separately. // *** IT IS HIGHLY RECOMMENDED TO LEAVE THIS OPTION ENABLED! ***
#define PREVENT_LENGTHY_EXTRUDE #define PREVENT_COLD_EXTRUSION
#define EXTRUDE_MINTEMP 170 #define EXTRUDE_MINTEMP 170
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances.
// This option prevents a single extrusion longer than EXTRUDE_MAXLENGTH.
#define PREVENT_LENGTHY_EXTRUDE
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH)
//=========================================================================== //===========================================================================
//======================== Thermal Runaway Protection ======================= //======================== Thermal Runaway Protection =======================

View File

@ -341,14 +341,16 @@
// @section extruder // @section extruder
//this prevents dangerous Extruder moves, i.e. if the temperature is under the limit // This option prevents extrusion if the temperature is below EXTRUDE_MINTEMP.
//can be software-disabled for whatever purposes by // It also enables the M302 command to set the minimum extrusion temperature
#define PREVENT_DANGEROUS_EXTRUDE // or to allow moving the extruder regardless of the hotend temperature.
//if PREVENT_DANGEROUS_EXTRUDE is on, you can still disable (uncomment) very long bits of extrusion separately. // *** IT IS HIGHLY RECOMMENDED TO LEAVE THIS OPTION ENABLED! ***
#define PREVENT_LENGTHY_EXTRUDE #define PREVENT_COLD_EXTRUSION
#define EXTRUDE_MINTEMP 170 #define EXTRUDE_MINTEMP 170
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances.
// This option prevents a single extrusion longer than EXTRUDE_MAXLENGTH.
#define PREVENT_LENGTHY_EXTRUDE
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH)
//=========================================================================== //===========================================================================
//======================== Thermal Runaway Protection ======================= //======================== Thermal Runaway Protection =======================

View File

@ -364,14 +364,16 @@
// @section extruder // @section extruder
//this prevents dangerous Extruder moves, i.e. if the temperature is under the limit // This option prevents extrusion if the temperature is below EXTRUDE_MINTEMP.
//can be software-disabled for whatever purposes by // It also enables the M302 command to set the minimum extrusion temperature
#define PREVENT_DANGEROUS_EXTRUDE // or to allow moving the extruder regardless of the hotend temperature.
//if PREVENT_DANGEROUS_EXTRUDE is on, you can still disable (uncomment) very long bits of extrusion separately. // *** IT IS HIGHLY RECOMMENDED TO LEAVE THIS OPTION ENABLED! ***
#define PREVENT_LENGTHY_EXTRUDE #define PREVENT_COLD_EXTRUSION
#define EXTRUDE_MINTEMP 170 #define EXTRUDE_MINTEMP 170
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances.
// This option prevents a single extrusion longer than EXTRUDE_MAXLENGTH.
#define PREVENT_LENGTHY_EXTRUDE
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH)
//=========================================================================== //===========================================================================
//======================== Thermal Runaway Protection ======================= //======================== Thermal Runaway Protection =======================

View File

@ -347,14 +347,16 @@
// @section extruder // @section extruder
//this prevents dangerous Extruder moves, i.e. if the temperature is under the limit // This option prevents extrusion if the temperature is below EXTRUDE_MINTEMP.
//can be software-disabled for whatever purposes by // It also enables the M302 command to set the minimum extrusion temperature
#define PREVENT_DANGEROUS_EXTRUDE // or to allow moving the extruder regardless of the hotend temperature.
//if PREVENT_DANGEROUS_EXTRUDE is on, you can still disable (uncomment) very long bits of extrusion separately. // *** IT IS HIGHLY RECOMMENDED TO LEAVE THIS OPTION ENABLED! ***
#define PREVENT_LENGTHY_EXTRUDE #define PREVENT_COLD_EXTRUSION
#define EXTRUDE_MINTEMP 170
#define EXTRUDE_MINTEMP 160 // This option prevents a single extrusion longer than EXTRUDE_MAXLENGTH.
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances. #define PREVENT_LENGTHY_EXTRUDE
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH)
//=========================================================================== //===========================================================================
//======================== Thermal Runaway Protection ======================= //======================== Thermal Runaway Protection =======================

View File

@ -347,14 +347,16 @@
// @section extruder // @section extruder
//this prevents dangerous Extruder moves, i.e. if the temperature is under the limit // This option prevents extrusion if the temperature is below EXTRUDE_MINTEMP.
//can be software-disabled for whatever purposes by // It also enables the M302 command to set the minimum extrusion temperature
#define PREVENT_DANGEROUS_EXTRUDE // or to allow moving the extruder regardless of the hotend temperature.
//if PREVENT_DANGEROUS_EXTRUDE is on, you can still disable (uncomment) very long bits of extrusion separately. // *** IT IS HIGHLY RECOMMENDED TO LEAVE THIS OPTION ENABLED! ***
#define PREVENT_LENGTHY_EXTRUDE #define PREVENT_COLD_EXTRUSION
#define EXTRUDE_MINTEMP 170
#define EXTRUDE_MINTEMP 160 // This option prevents a single extrusion longer than EXTRUDE_MAXLENGTH.
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances. #define PREVENT_LENGTHY_EXTRUDE
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH)
//=========================================================================== //===========================================================================
//======================== Thermal Runaway Protection ======================= //======================== Thermal Runaway Protection =======================

View File

@ -347,14 +347,16 @@
// @section extruder // @section extruder
//this prevents dangerous Extruder moves, i.e. if the temperature is under the limit // This option prevents extrusion if the temperature is below EXTRUDE_MINTEMP.
//can be software-disabled for whatever purposes by // It also enables the M302 command to set the minimum extrusion temperature
#define PREVENT_DANGEROUS_EXTRUDE // or to allow moving the extruder regardless of the hotend temperature.
//if PREVENT_DANGEROUS_EXTRUDE is on, you can still disable (uncomment) very long bits of extrusion separately. // *** IT IS HIGHLY RECOMMENDED TO LEAVE THIS OPTION ENABLED! ***
#define PREVENT_LENGTHY_EXTRUDE #define PREVENT_COLD_EXTRUSION
#define EXTRUDE_MINTEMP 170 #define EXTRUDE_MINTEMP 170
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances.
// This option prevents a single extrusion longer than EXTRUDE_MAXLENGTH.
#define PREVENT_LENGTHY_EXTRUDE
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH)
//=========================================================================== //===========================================================================
//======================== Thermal Runaway Protection ======================= //======================== Thermal Runaway Protection =======================

View File

@ -344,14 +344,16 @@
// @section extruder // @section extruder
//this prevents dangerous Extruder moves, i.e. if the temperature is under the limit // This option prevents extrusion if the temperature is below EXTRUDE_MINTEMP.
//can be software-disabled for whatever purposes by // It also enables the M302 command to set the minimum extrusion temperature
#define PREVENT_DANGEROUS_EXTRUDE // or to allow moving the extruder regardless of the hotend temperature.
//if PREVENT_DANGEROUS_EXTRUDE is on, you can still disable (uncomment) very long bits of extrusion separately. // *** IT IS HIGHLY RECOMMENDED TO LEAVE THIS OPTION ENABLED! ***
#define PREVENT_LENGTHY_EXTRUDE #define PREVENT_COLD_EXTRUSION
#define EXTRUDE_MINTEMP 170 #define EXTRUDE_MINTEMP 170
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances.
// This option prevents a single extrusion longer than EXTRUDE_MAXLENGTH.
#define PREVENT_LENGTHY_EXTRUDE
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH)
//=========================================================================== //===========================================================================
//======================== Thermal Runaway Protection ======================= //======================== Thermal Runaway Protection =======================

View File

@ -355,14 +355,16 @@
// @section extruder // @section extruder
//this prevents dangerous Extruder moves, i.e. if the temperature is under the limit // This option prevents extrusion if the temperature is below EXTRUDE_MINTEMP.
//can be software-disabled for whatever purposes by // It also enables the M302 command to set the minimum extrusion temperature
//#define PREVENT_DANGEROUS_EXTRUDE // or to allow moving the extruder regardless of the hotend temperature.
//if PREVENT_DANGEROUS_EXTRUDE is on, you can still disable (uncomment) very long bits of extrusion separately. // *** IT IS HIGHLY RECOMMENDED TO LEAVE THIS OPTION ENABLED! ***
#define PREVENT_LENGTHY_EXTRUDE #define PREVENT_COLD_EXTRUSION
#define EXTRUDE_MINTEMP 170
#define EXTRUDE_MINTEMP 150 // This option prevents a single extrusion longer than EXTRUDE_MAXLENGTH.
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances. #define PREVENT_LENGTHY_EXTRUDE
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH)
//=========================================================================== //===========================================================================
//======================== Thermal Runaway Protection ======================= //======================== Thermal Runaway Protection =======================

View File

@ -368,14 +368,16 @@
// @section extruder // @section extruder
//this prevents dangerous Extruder moves, i.e. if the temperature is under the limit // This option prevents extrusion if the temperature is below EXTRUDE_MINTEMP.
//can be software-disabled for whatever purposes by // It also enables the M302 command to set the minimum extrusion temperature
#define PREVENT_DANGEROUS_EXTRUDE // or to allow moving the extruder regardless of the hotend temperature.
//if PREVENT_DANGEROUS_EXTRUDE is on, you can still disable (uncomment) very long bits of extrusion separately. // *** IT IS HIGHLY RECOMMENDED TO LEAVE THIS OPTION ENABLED! ***
#define PREVENT_LENGTHY_EXTRUDE #define PREVENT_COLD_EXTRUSION
#define EXTRUDE_MINTEMP 170 #define EXTRUDE_MINTEMP 170
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances.
// This option prevents a single extrusion longer than EXTRUDE_MAXLENGTH.
#define PREVENT_LENGTHY_EXTRUDE
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH)
//=========================================================================== //===========================================================================
//======================== Thermal Runaway Protection ======================= //======================== Thermal Runaway Protection =======================

View File

@ -339,14 +339,16 @@
// @section extruder // @section extruder
//this prevents dangerous Extruder moves, i.e. if the temperature is under the limit // This option prevents extrusion if the temperature is below EXTRUDE_MINTEMP.
//can be software-disabled for whatever purposes by // It also enables the M302 command to set the minimum extrusion temperature
#define PREVENT_DANGEROUS_EXTRUDE // or to allow moving the extruder regardless of the hotend temperature.
//if PREVENT_DANGEROUS_EXTRUDE is on, you can still disable (uncomment) very long bits of extrusion separately. // *** IT IS HIGHLY RECOMMENDED TO LEAVE THIS OPTION ENABLED! ***
#define PREVENT_LENGTHY_EXTRUDE #define PREVENT_COLD_EXTRUSION
#define EXTRUDE_MINTEMP 170 #define EXTRUDE_MINTEMP 170
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances.
// This option prevents a single extrusion longer than EXTRUDE_MAXLENGTH.
#define PREVENT_LENGTHY_EXTRUDE
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH)
//=========================================================================== //===========================================================================
//======================== Thermal Runaway Protection ======================= //======================== Thermal Runaway Protection =======================

View File

@ -347,14 +347,16 @@
// @section extruder // @section extruder
//this prevents dangerous Extruder moves, i.e. if the temperature is under the limit // This option prevents extrusion if the temperature is below EXTRUDE_MINTEMP.
//can be software-disabled for whatever purposes by // It also enables the M302 command to set the minimum extrusion temperature
#define PREVENT_DANGEROUS_EXTRUDE // or to allow moving the extruder regardless of the hotend temperature.
//if PREVENT_DANGEROUS_EXTRUDE is on, you can still disable (uncomment) very long bits of extrusion separately. // *** IT IS HIGHLY RECOMMENDED TO LEAVE THIS OPTION ENABLED! ***
#define PREVENT_LENGTHY_EXTRUDE #define PREVENT_COLD_EXTRUSION
#define EXTRUDE_MINTEMP 170 #define EXTRUDE_MINTEMP 170
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances.
// This option prevents a single extrusion longer than EXTRUDE_MAXLENGTH.
#define PREVENT_LENGTHY_EXTRUDE
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH)
//=========================================================================== //===========================================================================
//======================== Thermal Runaway Protection ======================= //======================== Thermal Runaway Protection =======================

View File

@ -347,14 +347,16 @@
// @section extruder // @section extruder
//this prevents dangerous Extruder moves, i.e. if the temperature is under the limit // This option prevents extrusion if the temperature is below EXTRUDE_MINTEMP.
//can be software-disabled for whatever purposes by // It also enables the M302 command to set the minimum extrusion temperature
#define PREVENT_DANGEROUS_EXTRUDE // or to allow moving the extruder regardless of the hotend temperature.
//if PREVENT_DANGEROUS_EXTRUDE is on, you can still disable (uncomment) very long bits of extrusion separately. // *** IT IS HIGHLY RECOMMENDED TO LEAVE THIS OPTION ENABLED! ***
#define PREVENT_LENGTHY_EXTRUDE #define PREVENT_COLD_EXTRUSION
#define EXTRUDE_MINTEMP 170 #define EXTRUDE_MINTEMP 170
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances.
// This option prevents a single extrusion longer than EXTRUDE_MAXLENGTH.
#define PREVENT_LENGTHY_EXTRUDE
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH)
//=========================================================================== //===========================================================================
//======================== Thermal Runaway Protection ======================= //======================== Thermal Runaway Protection =======================

View File

@ -347,14 +347,16 @@
// @section extruder // @section extruder
//this prevents dangerous Extruder moves, i.e. if the temperature is under the limit // This option prevents extrusion if the temperature is below EXTRUDE_MINTEMP.
//can be software-disabled for whatever purposes by // It also enables the M302 command to set the minimum extrusion temperature
#define PREVENT_DANGEROUS_EXTRUDE // or to allow moving the extruder regardless of the hotend temperature.
//if PREVENT_DANGEROUS_EXTRUDE is on, you can still disable (uncomment) very long bits of extrusion separately. // *** IT IS HIGHLY RECOMMENDED TO LEAVE THIS OPTION ENABLED! ***
#define PREVENT_LENGTHY_EXTRUDE #define PREVENT_COLD_EXTRUSION
#define EXTRUDE_MINTEMP 170 #define EXTRUDE_MINTEMP 170
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances.
// This option prevents a single extrusion longer than EXTRUDE_MAXLENGTH.
#define PREVENT_LENGTHY_EXTRUDE
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH)
//=========================================================================== //===========================================================================
//======================== Thermal Runaway Protection ======================= //======================== Thermal Runaway Protection =======================

View File

@ -347,14 +347,16 @@
// @section extruder // @section extruder
//this prevents dangerous Extruder moves, i.e. if the temperature is under the limit // This option prevents extrusion if the temperature is below EXTRUDE_MINTEMP.
//can be software-disabled for whatever purposes by // It also enables the M302 command to set the minimum extrusion temperature
#define PREVENT_DANGEROUS_EXTRUDE // or to allow moving the extruder regardless of the hotend temperature.
//if PREVENT_DANGEROUS_EXTRUDE is on, you can still disable (uncomment) very long bits of extrusion separately. // *** IT IS HIGHLY RECOMMENDED TO LEAVE THIS OPTION ENABLED! ***
#define PREVENT_LENGTHY_EXTRUDE #define PREVENT_COLD_EXTRUSION
#define EXTRUDE_MINTEMP 170 #define EXTRUDE_MINTEMP 170
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances.
// This option prevents a single extrusion longer than EXTRUDE_MAXLENGTH.
#define PREVENT_LENGTHY_EXTRUDE
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH)
//=========================================================================== //===========================================================================
//======================== Thermal Runaway Protection ======================= //======================== Thermal Runaway Protection =======================

View File

@ -336,14 +336,16 @@
// @section extruder // @section extruder
//this prevents dangerous Extruder moves, i.e. if the temperature is under the limit // This option prevents extrusion if the temperature is below EXTRUDE_MINTEMP.
//can be software-disabled for whatever purposes by // It also enables the M302 command to set the minimum extrusion temperature
#define PREVENT_DANGEROUS_EXTRUDE // or to allow moving the extruder regardless of the hotend temperature.
//if PREVENT_DANGEROUS_EXTRUDE is on, you can still disable (uncomment) very long bits of extrusion separately. // *** IT IS HIGHLY RECOMMENDED TO LEAVE THIS OPTION ENABLED! ***
#define PREVENT_LENGTHY_EXTRUDE #define PREVENT_COLD_EXTRUSION
#define EXTRUDE_MINTEMP 170 #define EXTRUDE_MINTEMP 170
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances.
// This option prevents a single extrusion longer than EXTRUDE_MAXLENGTH.
#define PREVENT_LENGTHY_EXTRUDE
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH)
//=========================================================================== //===========================================================================
//======================== Thermal Runaway Protection ======================= //======================== Thermal Runaway Protection =======================

View File

@ -345,14 +345,16 @@
// @section extruder // @section extruder
//this prevents dangerous Extruder moves, i.e. if the temperature is under the limit // This option prevents extrusion if the temperature is below EXTRUDE_MINTEMP.
//can be software-disabled for whatever purposes by // It also enables the M302 command to set the minimum extrusion temperature
#define PREVENT_DANGEROUS_EXTRUDE // or to allow moving the extruder regardless of the hotend temperature.
//if PREVENT_DANGEROUS_EXTRUDE is on, you can still disable (uncomment) very long bits of extrusion separately. // *** IT IS HIGHLY RECOMMENDED TO LEAVE THIS OPTION ENABLED! ***
#define PREVENT_LENGTHY_EXTRUDE #define PREVENT_COLD_EXTRUSION
#define EXTRUDE_MINTEMP 170 #define EXTRUDE_MINTEMP 170
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances.
// This option prevents a single extrusion longer than EXTRUDE_MAXLENGTH.
#define PREVENT_LENGTHY_EXTRUDE
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH)
//=========================================================================== //===========================================================================
//======================== Thermal Runaway Protection ======================= //======================== Thermal Runaway Protection =======================

View File

@ -350,14 +350,16 @@
// @section extruder // @section extruder
//this prevents dangerous Extruder moves, i.e. if the temperature is under the limit // This option prevents extrusion if the temperature is below EXTRUDE_MINTEMP.
//can be software-disabled for whatever purposes by // It also enables the M302 command to set the minimum extrusion temperature
#define PREVENT_DANGEROUS_EXTRUDE // or to allow moving the extruder regardless of the hotend temperature.
//if PREVENT_DANGEROUS_EXTRUDE is on, you can still disable (uncomment) very long bits of extrusion separately. // *** IT IS HIGHLY RECOMMENDED TO LEAVE THIS OPTION ENABLED! ***
#define PREVENT_LENGTHY_EXTRUDE #define PREVENT_COLD_EXTRUSION
#define EXTRUDE_MINTEMP 170 #define EXTRUDE_MINTEMP 170
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances.
// This option prevents a single extrusion longer than EXTRUDE_MAXLENGTH.
#define PREVENT_LENGTHY_EXTRUDE
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH)
//=========================================================================== //===========================================================================
//======================== Thermal Runaway Protection ======================= //======================== Thermal Runaway Protection =======================

View File

@ -337,14 +337,16 @@
// @section extruder // @section extruder
//this prevents dangerous Extruder moves, i.e. if the temperature is under the limit // This option prevents extrusion if the temperature is below EXTRUDE_MINTEMP.
//can be software-disabled for whatever purposes by // It also enables the M302 command to set the minimum extrusion temperature
#define PREVENT_DANGEROUS_EXTRUDE // or to allow moving the extruder regardless of the hotend temperature.
//if PREVENT_DANGEROUS_EXTRUDE is on, you can still disable (uncomment) very long bits of extrusion separately. // *** IT IS HIGHLY RECOMMENDED TO LEAVE THIS OPTION ENABLED! ***
#define PREVENT_LENGTHY_EXTRUDE #define PREVENT_COLD_EXTRUSION
#define EXTRUDE_MINTEMP 170 #define EXTRUDE_MINTEMP 170
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances.
// This option prevents a single extrusion longer than EXTRUDE_MAXLENGTH.
#define PREVENT_LENGTHY_EXTRUDE
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH)
//=========================================================================== //===========================================================================
//======================== Thermal Runaway Protection ======================= //======================== Thermal Runaway Protection =======================

View File

@ -573,7 +573,7 @@ void Planner::check_axes_activity() {
long de = target[E_AXIS] - position[E_AXIS]; long de = target[E_AXIS] - position[E_AXIS];
#if ENABLED(PREVENT_DANGEROUS_EXTRUDE) #if ENABLED(PREVENT_COLD_EXTRUSION)
if (de) { if (de) {
if (thermalManager.tooColdToExtrude(extruder)) { if (thermalManager.tooColdToExtrude(extruder)) {
position[E_AXIS] = target[E_AXIS]; // Behave as if the move really took place, but ignore E part position[E_AXIS] = target[E_AXIS]; // Behave as if the move really took place, but ignore E part

View File

@ -108,7 +108,7 @@ unsigned char Temperature::soft_pwm_bed;
millis_t Temperature::watch_bed_next_ms = 0; millis_t Temperature::watch_bed_next_ms = 0;
#endif #endif
#if ENABLED(PREVENT_DANGEROUS_EXTRUDE) #if ENABLED(PREVENT_COLD_EXTRUSION)
bool Temperature::allow_cold_extrude = false; bool Temperature::allow_cold_extrude = false;
float Temperature::extrude_min_temp = EXTRUDE_MINTEMP; float Temperature::extrude_min_temp = EXTRUDE_MINTEMP;
#endif #endif

View File

@ -121,7 +121,7 @@ class Temperature {
static millis_t watch_bed_next_ms; static millis_t watch_bed_next_ms;
#endif #endif
#if ENABLED(PREVENT_DANGEROUS_EXTRUDE) #if ENABLED(PREVENT_COLD_EXTRUSION)
static bool allow_cold_extrude; static bool allow_cold_extrude;
static float extrude_min_temp; static float extrude_min_temp;
static bool tooColdToExtrude(uint8_t e) { static bool tooColdToExtrude(uint8_t e) {