Merge pull request #8496 from GMagician/tool-change-fix-1.0

[1.1.x]  tool change bad behaviours
This commit is contained in:
Scott Lahteine 2017-11-20 20:36:42 -06:00 committed by GitHub
commit 6ebf8ea230
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -11122,21 +11122,21 @@ void tool_change(const uint8_t tmp_extruder, const float fr_mm_s/*=0.0*/, bool n
// Move to the "old position" (move the extruder into place)
if (!no_move && IsRunning()) {
#if ENABLED(SWITCHING_NOZZLE)
if (z_raise != z_diff)
destination[Z_AXIS] += z_diff; // Include the Z restore with the "move back"
#endif
#if ENABLED(DEBUG_LEVELING_FEATURE)
if (DEBUGGING(LEVELING)) DEBUG_POS("Move back", destination);
#endif
prepare_move_to_destination();
// Move back to the original (or tweaked) position
do_blocking_move_to(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS]);
}
#if ENABLED(SWITCHING_NOZZLE)
// Move back down, if needed. (Including when the new tool is higher.)
if (z_raise != z_diff) {
destination[Z_AXIS] += z_diff;
feedrate_mm_s = planner.max_feedrate_mm_s[Z_AXIS];
prepare_move_to_destination();
}
else if (z_raise != z_diff)
do_blocking_move_to_z(destination[Z_AXIS] + z_diff, planner.max_feedrate_mm_s[Z_AXIS]);
#endif
} // (tmp_extruder != active_extruder)
stepper.synchronize();