|
@@ -2273,6 +2273,9 @@ static void homeaxis(AxisEnum axis) {
|
2273
|
2273
|
if (axis == Z_AXIS) stepper.set_homing_flag(true);
|
2274
|
2274
|
#endif
|
2275
|
2275
|
|
|
2276
|
+ // Fast move towards endstop until triggered
|
|
2277
|
+ do_homing_move(axis, 1.5 * max_length(axis) * axis_home_dir);
|
|
2278
|
+
|
2276
|
2279
|
// When homing Z with probe respect probe clearance
|
2277
|
2280
|
const float bump = axis_home_dir * (
|
2278
|
2281
|
#if HOMING_Z_WITH_PROBE
|
|
@@ -2281,12 +2284,13 @@ static void homeaxis(AxisEnum axis) {
|
2281
|
2284
|
home_bump_mm(axis)
|
2282
|
2285
|
);
|
2283
|
2286
|
|
2284
|
|
- // 1. Fast move towards endstop until triggered
|
2285
|
|
- // 2. Move away from the endstop by the axis HOME_BUMP_MM
|
2286
|
|
- // 3. Slow move towards endstop until triggered
|
2287
|
|
- do_homing_move(axis, 1.5 * max_length(axis) * axis_home_dir);
|
2288
|
|
- do_homing_move(axis, -bump);
|
2289
|
|
- do_homing_move(axis, 2 * bump, get_homing_bump_feedrate(axis));
|
|
2287
|
+ // If a second homing move is configured...
|
|
2288
|
+ if (bump) {
|
|
2289
|
+ // Move away from the endstop by the axis HOME_BUMP_MM
|
|
2290
|
+ do_homing_move(axis, -bump);
|
|
2291
|
+ // Slow move towards endstop until triggered
|
|
2292
|
+ do_homing_move(axis, 2 * bump, get_homing_bump_feedrate(axis));
|
|
2293
|
+ }
|
2290
|
2294
|
|
2291
|
2295
|
#if ENABLED(Z_DUAL_ENDSTOPS)
|
2292
|
2296
|
if (axis == Z_AXIS) {
|