mirror of
https://github.com/MarlinFirmware/Marlin.git
synced 2024-11-23 12:04:19 +00:00
🚸 Restore active tool after ABL G29 (#23692)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
This commit is contained in:
parent
38484c6eb6
commit
11071c7472
@ -316,7 +316,7 @@ void unified_bed_leveling::G29() {
|
||||
planner.synchronize();
|
||||
// Send 'N' to force homing before G29 (internal only)
|
||||
if (axes_should_home() || parser.seen_test('N')) gcode.home_all_axes();
|
||||
TERN_(HAS_MULTI_HOTEND, if (active_extruder) tool_change(0));
|
||||
TERN_(HAS_MULTI_HOTEND, if (active_extruder != 0) tool_change(0, true));
|
||||
}
|
||||
|
||||
// Invalidate one or more nearby mesh points, possibly all.
|
||||
@ -663,7 +663,7 @@ void unified_bed_leveling::G29() {
|
||||
UNUSED(probe_deployed);
|
||||
#endif
|
||||
|
||||
TERN_(HAS_MULTI_HOTEND, tool_change(old_tool_index));
|
||||
TERN_(HAS_MULTI_HOTEND, if (old_tool_index != 0) tool_change(old_tool_index));
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -155,7 +155,7 @@ void GcodeSuite::G35() {
|
||||
|
||||
// Restore the active tool after homing
|
||||
#if HAS_MULTI_HOTEND
|
||||
tool_change(old_tool_index, DISABLED(PARKING_EXTRUDER)); // Fetch previous toolhead if not PARKING_EXTRUDER
|
||||
if (old_tool_index != 0) tool_change(old_tool_index, DISABLED(PARKING_EXTRUDER)); // Fetch previous toolhead if not PARKING_EXTRUDER
|
||||
#endif
|
||||
|
||||
#if BOTH(HAS_LEVELING, RESTORE_LEVELING_AFTER_G35)
|
||||
|
@ -93,6 +93,10 @@ public:
|
||||
bool dryrun,
|
||||
reenable;
|
||||
|
||||
#if HAS_MULTI_HOTEND
|
||||
uint8_t tool_index;
|
||||
#endif
|
||||
|
||||
#if EITHER(PROBE_MANUALLY, AUTO_BED_LEVELING_LINEAR)
|
||||
int abl_probe_index;
|
||||
#endif
|
||||
@ -263,7 +267,10 @@ G29_TYPE GcodeSuite::G29() {
|
||||
*/
|
||||
if (!g29_in_progress) {
|
||||
|
||||
TERN_(HAS_MULTI_HOTEND, if (active_extruder) tool_change(0));
|
||||
#if HAS_MULTI_HOTEND
|
||||
abl.tool_index = active_extruder;
|
||||
if (active_extruder != 0) tool_change(0, true);
|
||||
#endif
|
||||
|
||||
#if EITHER(PROBE_MANUALLY, AUTO_BED_LEVELING_LINEAR)
|
||||
abl.abl_probe_index = -1;
|
||||
@ -891,6 +898,8 @@ G29_TYPE GcodeSuite::G29() {
|
||||
|
||||
TERN_(HAS_DWIN_E3V2_BASIC, DWIN_CompletedLeveling());
|
||||
|
||||
TERN_(HAS_MULTI_HOTEND, if (abl.tool_index != 0) tool_change(abl.tool_index));
|
||||
|
||||
report_current_position();
|
||||
|
||||
TERN_(FULL_REPORT_TO_HOST_FEATURE, set_and_report_grblstate(M_IDLE));
|
||||
|
Loading…
Reference in New Issue
Block a user