[2.0.x] Wait for bed heaters between probing (#10472)

This commit is contained in:
Scott Lahteine
2018-04-21 15:43:21 -05:00
committed by GitHub
parent a0dac95d25
commit a90cbc6339
69 changed files with 225 additions and 2 deletions

View File

@ -1056,6 +1056,16 @@ static void do_homing_move(const AxisEnum axis, const float distance, const floa
}
#endif
#if HOMING_Z_WITH_PROBE && HAS_TEMP_BED && ENABLED(WAIT_FOR_BED_HEATER)
// Wait for bed to heat back up between probing points
if (axis == Z_AXIS && distance < 0 && thermalManager.isHeatingBed()) {
serialprintPGM(msg_wait_for_bed_heating);
LCD_MESSAGEPGM(MSG_BED_HEATING);
while (thermalManager.isHeatingBed()) safe_delay(200);
lcd_reset_status();
}
#endif
// Only do some things when moving towards an endstop
const int8_t axis_home_dir =
#if ENABLED(DUAL_X_CARRIAGE)

View File

@ -482,11 +482,26 @@ bool set_probe_deployed(const bool deploy) {
* @param fr_mm_s Feedrate in mm/s
* @return true to indicate an error
*/
#if HAS_TEMP_BED && ENABLED(WAIT_FOR_BED_HEATER)
const char msg_wait_for_bed_heating[25] PROGMEM = "Wait for bed heating...\n";
#endif
static bool do_probe_move(const float z, const float fr_mm_m) {
#if ENABLED(DEBUG_LEVELING_FEATURE)
if (DEBUGGING(LEVELING)) DEBUG_POS(">>> do_probe_move", current_position);
#endif
#if HAS_TEMP_BED && ENABLED(WAIT_FOR_BED_HEATER)
// Wait for bed to heat back up between probing points
if (thermalManager.isHeatingBed()) {
serialprintPGM(msg_wait_for_bed_heating);
LCD_MESSAGEPGM(MSG_BED_HEATING);
while (thermalManager.isHeatingBed()) safe_delay(200);
lcd_reset_status();
}
#endif
// Deploy BLTouch at the start of any probe
#if ENABLED(BLTOUCH)
if (set_bltouch_deployed(true)) return true;

View File

@ -44,6 +44,9 @@
float probe_pt(const float &rx, const float &ry, const ProbePtRaise raise_after=PROBE_PT_NONE, const uint8_t verbose_level=0, const bool probe_relative=true);
#define DEPLOY_PROBE() set_probe_deployed(true)
#define STOW_PROBE() set_probe_deployed(false)
#if HAS_TEMP_BED && ENABLED(WAIT_FOR_BED_HEATER)
extern const char msg_wait_for_bed_heating[25];
#endif
#else
#define DEPLOY_PROBE()
#define STOW_PROBE()