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:
parent
a1f6cf1e5d
commit
01d4703429
|
@ -522,8 +522,8 @@
|
||||||
#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
|
||||||
|
|
|
@ -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 =======================
|
||||||
|
|
|
@ -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
|
||||||
|
|
||||||
|
|
|
@ -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
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -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 =======================
|
||||||
|
|
|
@ -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 =======================
|
||||||
|
|
|
@ -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 =======================
|
||||||
|
|
|
@ -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 =======================
|
||||||
|
|
|
@ -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 =======================
|
||||||
|
|
|
@ -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 =======================
|
||||||
|
|
|
@ -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 =======================
|
||||||
|
|
|
@ -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 =======================
|
||||||
|
|
|
@ -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 =======================
|
||||||
|
|
|
@ -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 =======================
|
||||||
|
|
|
@ -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 =======================
|
||||||
|
|
|
@ -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 =======================
|
||||||
|
|
|
@ -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 =======================
|
||||||
|
|
|
@ -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 =======================
|
||||||
|
|
|
@ -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 =======================
|
||||||
|
|
|
@ -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 =======================
|
||||||
|
|
|
@ -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 =======================
|
||||||
|
|
|
@ -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 =======================
|
||||||
|
|
|
@ -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 =======================
|
||||||
|
|
|
@ -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 =======================
|
||||||
|
|
|
@ -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 =======================
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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) {
|
||||||
|
|
Loading…
Reference in a new issue