|
@ -2920,22 +2920,20 @@ inline void gcode_G4() { |
|
|
destination[Y_AXIS] = LOGICAL_Y_POSITION(Z_SAFE_HOMING_Y_POINT); |
|
|
destination[Y_AXIS] = LOGICAL_Y_POSITION(Z_SAFE_HOMING_Y_POINT); |
|
|
destination[Z_AXIS] = current_position[Z_AXIS]; // Z is already at the right height
|
|
|
destination[Z_AXIS] = current_position[Z_AXIS]; // Z is already at the right height
|
|
|
|
|
|
|
|
|
#if HAS_BED_PROBE |
|
|
|
|
|
destination[X_AXIS] -= X_PROBE_OFFSET_FROM_EXTRUDER; |
|
|
|
|
|
destination[Y_AXIS] -= Y_PROBE_OFFSET_FROM_EXTRUDER; |
|
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
#if ENABLED(DEBUG_LEVELING_FEATURE) |
|
|
|
|
|
if (DEBUGGING(LEVELING)) DEBUG_POS("Z_SAFE_HOMING", destination); |
|
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
if (position_is_reachable( |
|
|
if (position_is_reachable( |
|
|
destination |
|
|
destination |
|
|
#if HAS_BED_PROBE |
|
|
#if HOMING_Z_WITH_PROBE |
|
|
, true |
|
|
, true |
|
|
#endif |
|
|
#endif |
|
|
) |
|
|
) |
|
|
) { |
|
|
) { |
|
|
|
|
|
#if HOMING_Z_WITH_PROBE |
|
|
|
|
|
destination[X_AXIS] -= X_PROBE_OFFSET_FROM_EXTRUDER; |
|
|
|
|
|
destination[Y_AXIS] -= Y_PROBE_OFFSET_FROM_EXTRUDER; |
|
|
|
|
|
#endif |
|
|
|
|
|
#if ENABLED(DEBUG_LEVELING_FEATURE) |
|
|
|
|
|
if (DEBUGGING(LEVELING)) DEBUG_POS("Z_SAFE_HOMING", destination); |
|
|
|
|
|
#endif |
|
|
do_blocking_move_to_xy(destination[X_AXIS], destination[Y_AXIS]); |
|
|
do_blocking_move_to_xy(destination[X_AXIS], destination[Y_AXIS]); |
|
|
HOMEAXIS(Z); |
|
|
HOMEAXIS(Z); |
|
|
} |
|
|
} |
|
|