Add G12 minimum temp

This commit is contained in:
InsanityAutomation
2020-12-06 10:36:25 -05:00
parent 8394f0c3f4
commit 3a7f17d782
3 changed files with 24 additions and 3 deletions
+9 -2
View File
@@ -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"
+13
View File
@@ -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{ \
+2 -1
View File
@@ -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);