Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 20 additions & 8 deletions Marlin/src/module/motion.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1297,7 +1297,12 @@ void homeaxis(const AxisEnum axis) {

// Homing Z towards the bed? Deploy the Z probe or endstop.
#if HOMING_Z_WITH_PROBE
if (axis == Z_AXIS && DEPLOY_PROBE()) return;
if (axis == Z_AXIS) {
if (DEPLOY_PROBE()) return;
#if ENABLED(BLTOUCH)
if (set_bltouch_deployed(true)) return;
#endif
}
#endif

// Set flags for X, Y, Z motor locking
Expand All @@ -1322,8 +1327,9 @@ void homeaxis(const AxisEnum axis) {
if (DEBUGGING(LEVELING)) SERIAL_ECHOLNPGM("Home 1 Fast:");
#endif
do_homing_move(axis, 1.5f * max_length(axis) * axis_home_dir);

#if HOMING_Z_WITH_PROBE && ENABLED(BLTOUCH)
// BLTOUCH needs to be stowed after trigger to let rearm itself
// BLTOUCH needs to be stowed after trigger to rearm itself
if (axis == Z_AXIS) set_bltouch_deployed(false);
#endif

Expand Down Expand Up @@ -1353,17 +1359,13 @@ void homeaxis(const AxisEnum axis) {
#endif

#if HOMING_Z_WITH_PROBE && ENABLED(BLTOUCH)
// BLTOUCH needs to deploy everytime
// BLTOUCH needs to be deployed every time
if (axis == Z_AXIS && set_bltouch_deployed(true)) return;
#endif

do_homing_move(axis, 2 * bump, get_homing_bump_feedrate(axis));
}

// Put away the Z probe
#if HOMING_Z_WITH_PROBE
if (axis == Z_AXIS && STOW_PROBE()) return;
#endif

#if ENABLED(X_DUAL_ENDSTOPS) || ENABLED(Y_DUAL_ENDSTOPS) || ENABLED(Z_DUAL_ENDSTOPS)
const bool pos_dir = axis_home_dir > 0;
#if ENABLED(X_DUAL_ENDSTOPS)
Expand Down Expand Up @@ -1436,6 +1438,16 @@ void homeaxis(const AxisEnum axis) {

#endif

// Put away the Z probe
#if HOMING_Z_WITH_PROBE
if (axis == Z_AXIS) {
#if ENABLED(BLTOUCH)
if (set_bltouch_deployed(false)) return;
#endif
if (STOW_PROBE()) return;
}
#endif
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Moved this down to make the revert more complete, but if the other reverts solve the Z position problem then this may turn out to be ok moved back up above.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes this will solve Z. STOW_PROBE move Z


// Clear retracted status if homing the Z axis
#if ENABLED(FWRETRACT)
if (axis == Z_AXIS) fwretract.hop_amount = 0.0;
Expand Down