Add G12 minimum temp
This commit is contained in:
@@ -1059,8 +1059,8 @@
|
||||
|
||||
// Require a minimum temperature when ubefore allowing probing. Useful on machines such as the Lulzbot series
|
||||
// which uses a conductive nozzle or the Creality CR6 and other strain gauge sensors to prevent misreads from filament debris.
|
||||
#define PROBE_REQUIRES_MINTEMP_NOZZLE 150
|
||||
#define PROBE_REQUIRES_MINTEMP_BED 50
|
||||
//#define PROBE_REQUIRES_MINTEMP_NOZZLE 150
|
||||
//#define PROBE_REQUIRES_MINTEMP_BED 50
|
||||
|
||||
|
||||
|
||||
@@ -1653,6 +1653,13 @@
|
||||
// For a purge/clean station mounted on the X axis
|
||||
//#define NOZZLE_CLEAN_NO_Y
|
||||
|
||||
#define NOZZLE_CLEAN_MIN_TEMP
|
||||
#if ENABLED(NOZZLE_CLEAN_MIN_TEMP)
|
||||
#define NOZZE_CLEAN_TEMP 170
|
||||
// Default behavior is to skip nozzles that are too cold. The allows you to force them to heat instead
|
||||
//#define NOZLE_CLEAN_HEAT_LOWTEMP
|
||||
#endif
|
||||
|
||||
// Explicit wipe G-code script applies to a G12 with no arguments.
|
||||
//#define WIPE_SEQUENCE_COMMANDS "G1 X-17 Y25 Z10 F4000\nG1 Z1\nM114\nG1 X-17 Y25\nG1 X-17 Y95\nG1 X-17 Y25\nG1 X-17 Y95\nG1 X-17 Y25\nG1 X-17 Y95\nG1 X-17 Y25\nG1 X-17 Y95\nG1 X-17 Y25\nG1 X-17 Y95\nG1 X-17 Y25\nG1 X-17 Y95\nG1 Z15\nM400\nG0 X-10.0 Y-9.0"
|
||||
|
||||
|
||||
@@ -153,6 +153,19 @@ Nozzle nozzle;
|
||||
|
||||
const uint8_t arrPos = ANY(SINGLENOZZLE, MIXING_EXTRUDER) ? 0 : active_extruder;
|
||||
|
||||
#if ENABLED(NOZZLE_CLEAN_MIN_TEMP) && NOZZE_CLEAN_TEMP > 0
|
||||
if(thermalManager.degTargetHotend(arrPos)) < NOZZE_CLEAN_TEMP) {
|
||||
#if ENABLED(NOZLE_CLEAN_HEAT_LOWTEMP)
|
||||
SERIAL_ECHOLNPGM("Nozzle too Cold - Heating");
|
||||
thermalManager.setTargetHotend(NOZZE_CLEAN_TEMP, arrPos);
|
||||
thermalManager.wait_for_hotend(0);
|
||||
#else
|
||||
SERIAL_ECHOLNPGM("Nozzle too cold - Skipping Wipe");
|
||||
return;
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
|
||||
#if HAS_SOFTWARE_ENDSTOPS
|
||||
|
||||
#define LIMIT_AXIS(A) do{ \
|
||||
|
||||
@@ -348,6 +348,8 @@ bool Probe::set_deployed(const bool deploy) {
|
||||
constexpr bool deploy_stow_condition = true;
|
||||
#endif
|
||||
|
||||
bool setting_bed = false;
|
||||
bool setting_hotend = false;
|
||||
#if defined(PROBE_REQUIRES_MINTEMP_NOZZLE) && PROBE_REQUIRES_MINTEMP_NOZZLE < 0 && HAS_TEMP_HOTEND
|
||||
if (thermalManager.degTargetHotend(0) < PROBE_REQUIRES_MINTEMP_NOZZLE) {
|
||||
bool setting_hotend = false;
|
||||
@@ -359,7 +361,6 @@ bool Probe::set_deployed(const bool deploy) {
|
||||
#endif
|
||||
|
||||
#if defined(PROBE_REQUIRES_MINTEMP_BED) && PROBE_REQUIRES_MINTEMP_BED < 0 && HAS_HEATED_BED
|
||||
bool setting_hotend, setting_bed = false;
|
||||
if (thermalManager.degBed() < PROBE_REQUIRES_MINTEMP_BED) {
|
||||
uint16_t bedTemperature = AUTOLEVEL_PREHEAT_BED_TEMP;
|
||||
SERIAL_ECHOLNPAIR("Preheating bed to ", bedTemperature);
|
||||
|
||||
Reference in New Issue
Block a user