diff --git a/Marlin/src/module/probe.cpp b/Marlin/src/module/probe.cpp index deeb53942b..0bd83bc3ac 100644 --- a/Marlin/src/module/probe.cpp +++ b/Marlin/src/module/probe.cpp @@ -596,11 +596,15 @@ bool Probe::probe_down_to_z(const_float_t z, const_feedRate_t fr_mm_s) { thermalManager.wait_for_hotend_heating(active_extruder); #endif - // Ensure the BLTouch is deployed. Does nothing if already deployed. - if (TERN0(BLTOUCH, bltouch.deploy())) return true; + #if ENABLED(BLTOUCH) + // Ensure the BLTouch is deployed. (Does nothing if already deployed.) + // Don't deploy with high_speed_mode enabled. The probe already re-deploys itself. + if (TERN(MEASURE_BACKLASH_WHEN_PROBING, true, !bltouch.high_speed_mode) && bltouch.deploy()) + return true; + #endif #if HAS_Z_SERVO_PROBE && (ENABLED(Z_SERVO_INTERMEDIATE_STOW) || defined(Z_SERVO_MEASURE_ANGLE)) - probe_specific_action(true); // Always re-deploy in this case + probe_specific_action(true); // Always re-deploy in this case #endif // Disable stealthChop if used. Enable diag1 pin on driver.