Browse Source

Use probe clearance for bump when homing Z with probe

pull/1/head
Scott Lahteine 8 years ago
parent
commit
e8d5073a90
  1. 12
      Marlin/Marlin_main.cpp

12
Marlin/Marlin_main.cpp

@ -2256,12 +2256,20 @@ static void homeaxis(AxisEnum axis) {
if (axis == Z_AXIS) stepper.set_homing_flag(true); if (axis == Z_AXIS) stepper.set_homing_flag(true);
#endif #endif
// When homing Z with probe respect probe clearance
const float bump = axis_home_dir * (
#if HOMING_Z_WITH_PROBE
(axis == Z_AXIS) ? max(Z_CLEARANCE_BETWEEN_PROBES, home_bump_mm(Z_AXIS)) :
#endif
home_bump_mm(axis)
);
// 1. Fast move towards endstop until triggered // 1. Fast move towards endstop until triggered
// 2. Move away from the endstop by the axis HOME_BUMP_MM // 2. Move away from the endstop by the axis HOME_BUMP_MM
// 3. Slow move towards endstop until triggered // 3. Slow move towards endstop until triggered
do_homing_move(axis, 1.5 * max_length(axis) * axis_home_dir); do_homing_move(axis, 1.5 * max_length(axis) * axis_home_dir);
do_homing_move(axis, -home_bump_mm(axis) * axis_home_dir); do_homing_move(axis, -bump);
do_homing_move(axis, 2 * home_bump_mm(axis) * axis_home_dir, get_homing_bump_feedrate(axis)); do_homing_move(axis, 2 * bump, get_homing_bump_feedrate(axis));
#if ENABLED(Z_DUAL_ENDSTOPS) #if ENABLED(Z_DUAL_ENDSTOPS)
if (axis == Z_AXIS) { if (axis == Z_AXIS) {

Loading…
Cancel
Save