diff --git a/Marlin/src/module/motion.cpp b/Marlin/src/module/motion.cpp index 820089d7eeda..fe9038a6b8a6 100644 --- a/Marlin/src/module/motion.cpp +++ b/Marlin/src/module/motion.cpp @@ -1314,7 +1314,7 @@ void do_blocking_move_to(const xyze_pos_t &raw, const_feedRate_t fr_mm_s/*=0.0f* probe.move_z_after_probing(); #endif } -#endif +#endif // HAS_Z_AXIS #if HAS_I_AXIS void do_blocking_move_to_xyz_i(const xyze_pos_t &raw, const_float_t i, const_feedRate_t fr_mm_s/*=0.0f*/) { @@ -2681,12 +2681,10 @@ void prepare_line_to_destination() { // // Homing Z with a probe? Raise Z (maybe) and deploy the Z probe. + // Return early if probe deployment fails. // #if HOMING_Z_WITH_PROBE - if (axis == Z_AXIS && probe.deploy()) { - probe.stow(); - return; - } + if (axis == Z_AXIS && probe.deploy()) { probe.stow(); return; } #endif // Set flags for X, Y, Z motor locking @@ -2705,16 +2703,17 @@ void prepare_line_to_destination() { // #if HOMING_Z_WITH_PROBE if (axis == Z_AXIS) { + #if ENABLED(BLTOUCH) - if (bltouch.deploy()) { // BLTouch was deployed above, but get the alarm state. - bltouch.stow(); - return; - } + // BLTouch was deployed above, but get the alarm state. + // Stow and return early if there is a deploy alarm. + if (bltouch.deploy()) { bltouch.stow(); return; } #endif - if (TERN0(PROBE_TARE, probe.tare())) { - probe.stow(); - return; - } + + // Tare the probe. Stow and return early if it fails + if (TERN0(PROBE_TARE, probe.tare())) { probe.stow(); return; } + + // Tell the Bed Distance Sensor we're Z homing TERN_(BD_SENSOR, bdl.config_state = BDS_HOMING_Z); } #endif @@ -2987,7 +2986,7 @@ void prepare_line_to_destination() { if (axis == Z_AXIS) bdl.config_state = BDS_IDLE; #endif - // Put away the Z probe + // Put away the Z probe. Return early if it fails. if (TERN0(HOMING_Z_WITH_PROBE, axis == Z_AXIS && probe.stow())) return; #if DISABLED(DELTA) && defined(HOMING_BACKOFF_POST_MM)