Browse Source

Enhance IDEX toolchange auto-return w/ no park, full control (#14117)

InsanityAutomation 5 years ago
parent
commit
aa0383a83b
92 changed files with 137 additions and 42 deletions
  1. 1
    0
      Marlin/Configuration_adv.h
  2. 2
    2
      Marlin/src/gcode/calibrate/G28.cpp
  3. 2
    2
      Marlin/src/gcode/calibrate/G33.cpp
  4. 2
    2
      Marlin/src/gcode/calibrate/G34_M422.cpp
  5. 0
    1
      Marlin/src/gcode/control/T.cpp
  6. 2
    2
      Marlin/src/gcode/feature/pause/M600.cpp
  7. 5
    5
      Marlin/src/gcode/feature/pause/M701_M702.cpp
  8. 1
    1
      Marlin/src/lcd/extensible_ui/ui_api.cpp
  9. 39
    26
      Marlin/src/module/tool_change.cpp
  10. 1
    1
      Marlin/src/module/tool_change.h
  11. 1
    0
      config/default/Configuration_adv.h
  12. 1
    0
      config/examples/3DFabXYZ/Migbot/Configuration_adv.h
  13. 1
    0
      config/examples/AlephObjects/TAZ4/Configuration_adv.h
  14. 1
    0
      config/examples/AliExpress/UM2pExt/Configuration_adv.h
  15. 1
    0
      config/examples/Anet/A2/Configuration_adv.h
  16. 1
    0
      config/examples/Anet/A2plus/Configuration_adv.h
  17. 1
    0
      config/examples/Anet/A6/Configuration_adv.h
  18. 1
    0
      config/examples/Anet/A8/Configuration_adv.h
  19. 1
    0
      config/examples/Anet/A8plus/Configuration_adv.h
  20. 1
    0
      config/examples/Anet/E16/Configuration_adv.h
  21. 1
    0
      config/examples/AnyCubic/i3/Configuration_adv.h
  22. 1
    0
      config/examples/ArmEd/Configuration_adv.h
  23. 1
    0
      config/examples/BIBO/TouchX/cyclops/Configuration_adv.h
  24. 1
    0
      config/examples/BIBO/TouchX/default/Configuration_adv.h
  25. 1
    0
      config/examples/BQ/Hephestos/Configuration_adv.h
  26. 1
    0
      config/examples/BQ/Hephestos_2/Configuration_adv.h
  27. 1
    0
      config/examples/BQ/WITBOX/Configuration_adv.h
  28. 1
    0
      config/examples/Cartesio/Configuration_adv.h
  29. 1
    0
      config/examples/Creality/CR-10/Configuration_adv.h
  30. 1
    0
      config/examples/Creality/CR-10S/Configuration_adv.h
  31. 1
    0
      config/examples/Creality/CR-10_5S/Configuration_adv.h
  32. 1
    0
      config/examples/Creality/CR-10mini/Configuration_adv.h
  33. 1
    0
      config/examples/Creality/CR-8/Configuration_adv.h
  34. 1
    0
      config/examples/Creality/Ender-2/Configuration_adv.h
  35. 1
    0
      config/examples/Creality/Ender-3/Configuration_adv.h
  36. 1
    0
      config/examples/Creality/Ender-4/Configuration_adv.h
  37. 1
    0
      config/examples/Dagoma/Disco Ultimate/Configuration_adv.h
  38. 1
    0
      config/examples/EVNOVO (Artillery)/Sidewinder X1/Configuration_adv.h
  39. 1
    0
      config/examples/Einstart-S/Configuration_adv.h
  40. 1
    0
      config/examples/Felix/Configuration_adv.h
  41. 1
    0
      config/examples/FlashForge/CreatorPro/Configuration_adv.h
  42. 1
    0
      config/examples/FolgerTech/i3-2020/Configuration_adv.h
  43. 1
    0
      config/examples/Formbot/Raptor/Configuration_adv.h
  44. 1
    0
      config/examples/Formbot/T_Rex_2+/Configuration_adv.h
  45. 1
    0
      config/examples/Formbot/T_Rex_3/Configuration_adv.h
  46. 1
    0
      config/examples/Geeetech/A10/Configuration_adv.h
  47. 1
    0
      config/examples/Geeetech/A10M/Configuration_adv.h
  48. 1
    0
      config/examples/Geeetech/A20M/Configuration_adv.h
  49. 1
    0
      config/examples/Geeetech/MeCreator2/Configuration_adv.h
  50. 1
    0
      config/examples/Geeetech/Prusa i3 Pro C/Configuration_adv.h
  51. 1
    0
      config/examples/Geeetech/Prusa i3 Pro W/Configuration_adv.h
  52. 1
    0
      config/examples/Infitary/i3-M508/Configuration_adv.h
  53. 1
    0
      config/examples/JGAurora/A1/Configuration_adv.h
  54. 1
    0
      config/examples/JGAurora/A5/Configuration_adv.h
  55. 1
    0
      config/examples/JGAurora/A5S/Configuration_adv.h
  56. 1
    0
      config/examples/MakerParts/Configuration_adv.h
  57. 1
    0
      config/examples/Malyan/M150/Configuration_adv.h
  58. 1
    0
      config/examples/Malyan/M200/Configuration_adv.h
  59. 1
    0
      config/examples/Micromake/C1/enhanced/Configuration_adv.h
  60. 1
    0
      config/examples/Mks/Robin/Configuration_adv.h
  61. 1
    0
      config/examples/Mks/Sbase/Configuration_adv.h
  62. 1
    0
      config/examples/RapideLite/RL200/Configuration_adv.h
  63. 1
    0
      config/examples/RigidBot/Configuration_adv.h
  64. 1
    0
      config/examples/SCARA/Configuration_adv.h
  65. 1
    0
      config/examples/STM32/Black_STM32F407VET6/Configuration_adv.h
  66. 1
    0
      config/examples/Sanguinololu/Configuration_adv.h
  67. 1
    0
      config/examples/Tevo/Tarantula Pro/Configuration_adv.h
  68. 1
    0
      config/examples/TheBorg/Configuration_adv.h
  69. 1
    0
      config/examples/TinyBoy2/Configuration_adv.h
  70. 1
    0
      config/examples/Tronxy/X3A/Configuration_adv.h
  71. 1
    0
      config/examples/Tronxy/X5S-2E/Configuration_adv.h
  72. 1
    0
      config/examples/UltiMachine/Archim1/Configuration_adv.h
  73. 1
    0
      config/examples/UltiMachine/Archim2/Configuration_adv.h
  74. 1
    0
      config/examples/VORONDesign/Configuration_adv.h
  75. 1
    0
      config/examples/Velleman/K8200/Configuration_adv.h
  76. 1
    0
      config/examples/Velleman/K8400/Configuration_adv.h
  77. 1
    0
      config/examples/WASP/PowerWASP/Configuration_adv.h
  78. 1
    0
      config/examples/Wanhao/Duplicator 6/Configuration_adv.h
  79. 1
    0
      config/examples/delta/Anycubic/Kossel/Configuration_adv.h
  80. 1
    0
      config/examples/delta/FLSUN/auto_calibrate/Configuration_adv.h
  81. 1
    0
      config/examples/delta/FLSUN/kossel/Configuration_adv.h
  82. 1
    0
      config/examples/delta/FLSUN/kossel_mini/Configuration_adv.h
  83. 1
    0
      config/examples/delta/Geeetech/Rostock 301/Configuration_adv.h
  84. 1
    0
      config/examples/delta/MKS/SBASE/Configuration_adv.h
  85. 1
    0
      config/examples/delta/Tevo Little Monster/Configuration_adv.h
  86. 1
    0
      config/examples/delta/generic/Configuration_adv.h
  87. 1
    0
      config/examples/delta/kossel_mini/Configuration_adv.h
  88. 1
    0
      config/examples/delta/kossel_xl/Configuration_adv.h
  89. 1
    0
      config/examples/gCreate/gMax1.5+/Configuration_adv.h
  90. 1
    0
      config/examples/makibox/Configuration_adv.h
  91. 1
    0
      config/examples/tvrrug/Round2/Configuration_adv.h
  92. 1
    0
      config/examples/wt150/Configuration_adv.h

+ 1
- 0
Marlin/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 2
- 2
Marlin/src/gcode/calibrate/G28.cpp View File

@@ -242,7 +242,7 @@ void GcodeSuite::G28(const bool always_home_all) {
242 242
     #if DISABLED(DELTA) || ENABLED(DELTA_HOME_TO_SAFE_ZONE)
243 243
       const uint8_t old_tool_index = active_extruder;
244 244
     #endif
245
-    tool_change(0, 0, true);
245
+    tool_change(0, true);
246 246
   #endif
247 247
 
248 248
   #if HAS_DUPLICATION_MODE
@@ -428,7 +428,7 @@ void GcodeSuite::G28(const bool always_home_all) {
428 428
     #else
429 429
       #define NO_FETCH true
430 430
     #endif
431
-    tool_change(old_tool_index, 0, NO_FETCH);
431
+    tool_change(old_tool_index, NO_FETCH);
432 432
   #endif
433 433
 
434 434
   ui.refresh();

+ 2
- 2
Marlin/src/gcode/calibrate/G33.cpp View File

@@ -80,7 +80,7 @@ void ac_home() {
80 80
 
81 81
 void ac_setup(const bool reset_bed) {
82 82
   #if HOTENDS > 1
83
-    tool_change(0, 0, true);
83
+    tool_change(0, true);
84 84
   #endif
85 85
 
86 86
   planner.synchronize();
@@ -104,7 +104,7 @@ void ac_cleanup(
104 104
   #endif
105 105
   clean_up_after_endstop_or_probe_move();
106 106
   #if HOTENDS > 1
107
-    tool_change(old_tool_index, 0, true);
107
+    tool_change(old_tool_index, true);
108 108
   #endif
109 109
 }
110 110
 

+ 2
- 2
Marlin/src/gcode/calibrate/G34_M422.cpp View File

@@ -109,7 +109,7 @@ void GcodeSuite::G34() {
109 109
     // Always home with tool 0 active
110 110
     #if HOTENDS > 1
111 111
       const uint8_t old_tool_index = active_extruder;
112
-      tool_change(0, 0, true);
112
+      tool_change(0, true);
113 113
     #endif
114 114
 
115 115
     #if HAS_DUPLICATION_MODE
@@ -263,7 +263,7 @@ void GcodeSuite::G34() {
263 263
 
264 264
     // Restore the active tool after homing
265 265
     #if HOTENDS > 1
266
-      tool_change(old_tool_index, 0, (
266
+      tool_change(old_tool_index, (
267 267
         #if ENABLED(PARKING_EXTRUDER)
268 268
           false // Fetch the previous toolhead
269 269
         #else

+ 0
- 1
Marlin/src/gcode/control/T.cpp View File

@@ -68,7 +68,6 @@ void GcodeSuite::T(const uint8_t tool_index) {
68 68
 
69 69
     tool_change(
70 70
       tool_index,
71
-      MMM_TO_MMS(parser.linearval('F')),
72 71
       (tool_index == active_extruder) || parser.boolval('S')
73 72
     );
74 73
 

+ 2
- 2
Marlin/src/gcode/feature/pause/M600.cpp View File

@@ -109,7 +109,7 @@ void GcodeSuite::M600() {
109 109
       #if ENABLED(DUAL_X_CARRIAGE)
110 110
         && dual_x_carriage_mode != DXC_DUPLICATION_MODE && dual_x_carriage_mode != DXC_MIRRORED_MODE
111 111
       #endif
112
-    ) tool_change(target_extruder, 0, false);
112
+    ) tool_change(target_extruder, false);
113 113
   #endif
114 114
 
115 115
   // Initial retract before move to filament change position
@@ -170,7 +170,7 @@ void GcodeSuite::M600() {
170 170
   #if EXTRUDERS > 1
171 171
     // Restore toolhead if it was changed
172 172
     if (active_extruder_before_filament_change != active_extruder)
173
-      tool_change(active_extruder_before_filament_change, 0, false);
173
+      tool_change(active_extruder_before_filament_change, false);
174 174
   #endif
175 175
 
176 176
   #if ENABLED(MIXING_EXTRUDER)

+ 5
- 5
Marlin/src/gcode/feature/pause/M701_M702.cpp View File

@@ -92,7 +92,7 @@ void GcodeSuite::M701() {
92 92
     // Change toolhead if specified
93 93
     uint8_t active_extruder_before_filament_change = active_extruder;
94 94
     if (active_extruder != target_extruder)
95
-      tool_change(target_extruder, 0, false);
95
+      tool_change(target_extruder, false);
96 96
   #endif
97 97
 
98 98
   // Lift Z axis
@@ -121,7 +121,7 @@ void GcodeSuite::M701() {
121 121
   #if EXTRUDERS > 1 && DISABLED(PRUSA_MMU2)
122 122
     // Restore toolhead if it was changed
123 123
     if (active_extruder_before_filament_change != active_extruder)
124
-      tool_change(active_extruder_before_filament_change, 0, false);
124
+      tool_change(active_extruder_before_filament_change, false);
125 125
   #endif
126 126
 
127 127
   #if ENABLED(MIXING_EXTRUDER)
@@ -191,7 +191,7 @@ void GcodeSuite::M702() {
191 191
     // Change toolhead if specified
192 192
     uint8_t active_extruder_before_filament_change = active_extruder;
193 193
     if (active_extruder != target_extruder)
194
-      tool_change(target_extruder, 0, false);
194
+      tool_change(target_extruder, false);
195 195
   #endif
196 196
 
197 197
   // Lift Z axis
@@ -205,7 +205,7 @@ void GcodeSuite::M702() {
205 205
     #if EXTRUDERS > 1 && ENABLED(FILAMENT_UNLOAD_ALL_EXTRUDERS)
206 206
       if (!parser.seenval('T')) {
207 207
         HOTEND_LOOP() {
208
-          if (e != active_extruder) tool_change(e, 0, false);
208
+          if (e != active_extruder) tool_change(e, false);
209 209
           unload_filament(-fc_settings[e].unload_length, true, PAUSE_MODE_UNLOAD_FILAMENT);
210 210
         }
211 211
       }
@@ -231,7 +231,7 @@ void GcodeSuite::M702() {
231 231
   #if EXTRUDERS > 1 && DISABLED(PRUSA_MMU2)
232 232
     // Restore toolhead if it was changed
233 233
     if (active_extruder_before_filament_change != active_extruder)
234
-      tool_change(active_extruder_before_filament_change, 0, false);
234
+      tool_change(active_extruder_before_filament_change, false);
235 235
   #endif
236 236
 
237 237
   #if ENABLED(MIXING_EXTRUDER)

+ 1
- 1
Marlin/src/lcd/extensible_ui/ui_api.cpp View File

@@ -350,7 +350,7 @@ namespace ExtUI {
350 350
     #if EXTRUDERS > 1
351 351
       const uint8_t e = extruder - E0;
352 352
       #if DO_SWITCH_EXTRUDER || EITHER(SWITCHING_NOZZLE, PARKING_EXTRUDER)
353
-        if (e != active_extruder) tool_change(e, 0, no_move);
353
+        if (e != active_extruder) tool_change(e, no_move);
354 354
       #endif
355 355
       active_extruder = e;
356 356
     #endif

+ 39
- 26
Marlin/src/module/tool_change.cpp View File

@@ -365,7 +365,7 @@ inline void fast_line_to_current(const AxisEnum fr_axis) {
365 365
 
366 366
 #if ENABLED(SWITCHING_TOOLHEAD)
367 367
 
368
-  inline void switching_toolhead_tool_change(const uint8_t tmp_extruder, const float fr_mm_s/*=0.0*/, bool no_move/*=false*/) {
368
+  inline void switching_toolhead_tool_change(const uint8_t tmp_extruder, bool no_move/*=false*/) {
369 369
     if (no_move) return;
370 370
 
371 371
     constexpr uint16_t angles[2] = SWITCHING_TOOLHEAD_SERVO_ANGLES;
@@ -469,7 +469,7 @@ inline void fast_line_to_current(const AxisEnum fr_axis) {
469 469
 
470 470
 #if ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
471 471
 
472
-  inline void magnetic_switching_toolhead_tool_change(const uint8_t tmp_extruder, const float fr_mm_s/*=0.0*/, bool no_move/*=false*/) {
472
+  inline void magnetic_switching_toolhead_tool_change(const uint8_t tmp_extruder, bool no_move/*=false*/) {
473 473
     if (no_move) return;
474 474
 
475 475
     const float toolheadposx[] = SWITCHING_TOOLHEAD_X_POS,
@@ -653,7 +653,7 @@ inline void invalid_extruder_error(const uint8_t e) {
653 653
  * Perform a tool-change, which may result in moving the
654 654
  * previous tool out of the way and the new tool into place.
655 655
  */
656
-void tool_change(const uint8_t tmp_extruder, const float fr_mm_s/*=0.0*/, bool no_move/*=false*/) {
656
+void tool_change(const uint8_t tmp_extruder, bool no_move/*=false*/) {
657 657
 
658 658
   #if ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
659 659
     if (tmp_extruder == active_extruder) return;
@@ -661,7 +661,7 @@ void tool_change(const uint8_t tmp_extruder, const float fr_mm_s/*=0.0*/, bool n
661 661
 
662 662
   #if ENABLED(MIXING_EXTRUDER)
663 663
 
664
-    UNUSED(fr_mm_s); UNUSED(no_move);
664
+    UNUSED(no_move);
665 665
 
666 666
     if (tmp_extruder >= MIXING_VIRTUAL_TOOLS)
667 667
       return invalid_extruder_error(tmp_extruder);
@@ -673,13 +673,13 @@ void tool_change(const uint8_t tmp_extruder, const float fr_mm_s/*=0.0*/, bool n
673 673
 
674 674
   #elif ENABLED(PRUSA_MMU2)
675 675
 
676
-    UNUSED(fr_mm_s); UNUSED(no_move);
676
+    UNUSED(no_move);
677 677
 
678 678
     mmu2.tool_change(tmp_extruder);
679 679
 
680 680
   #elif EXTRUDERS < 2
681 681
 
682
-    UNUSED(fr_mm_s); UNUSED(no_move);
682
+    UNUSED(no_move);
683 683
 
684 684
     if (tmp_extruder) invalid_extruder_error(tmp_extruder);
685 685
     return;
@@ -702,21 +702,25 @@ void tool_change(const uint8_t tmp_extruder, const float fr_mm_s/*=0.0*/, bool n
702 702
     if (tmp_extruder >= EXTRUDERS)
703 703
       return invalid_extruder_error(tmp_extruder);
704 704
 
705
-    if (!no_move && (!all_axes_homed()
706
-      #if ENABLED(DUAL_X_CARRIAGE)
707
-        || dual_x_carriage_mode == DXC_FULL_CONTROL_MODE
708
-      #endif
709
-    )) {
705
+    if (!no_move && !all_axes_homed()) {
710 706
       no_move = true;
711
-      if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("No move on toolchange");
707
+      if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("No move (not homed)");
712 708
     }
713 709
 
714 710
     #if HAS_LCD_MENU
715 711
       ui.return_to_status();
716 712
     #endif
717 713
 
714
+    #if ENABLED(DUAL_X_CARRIAGE)
715
+      const bool idex_full_control = dual_x_carriage_mode == DXC_FULL_CONTROL_MODE;
716
+    #else
717
+      constexpr bool idex_full_control = false;
718
+    #endif
719
+
720
+    const bool can_move_away = !no_move && !idex_full_control;
721
+
718 722
     #if ENABLED(TOOLCHANGE_FILAMENT_SWAP)
719
-      const bool should_swap = !no_move && toolchange_settings.swap_length;
723
+      const bool should_swap = can_move_away && toolchange_settings.swap_length;
720 724
       #if ENABLED(PREVENT_COLD_EXTRUSION)
721 725
         const bool too_cold = !DEBUGGING(DRYRUN) && (thermalManager.targetTooColdToExtrude(active_extruder) || thermalManager.targetTooColdToExtrude(tmp_extruder));
722 726
       #else
@@ -736,6 +740,7 @@ void tool_change(const uint8_t tmp_extruder, const float fr_mm_s/*=0.0*/, bool n
736 740
           #else
737 741
             current_position[E_AXIS] -= toolchange_settings.swap_length / planner.e_factor[active_extruder];
738 742
             planner.buffer_line(current_position, MMM_TO_MMS(toolchange_settings.retract_speed), active_extruder);
743
+            planner.synchronize();
739 744
           #endif
740 745
         }
741 746
       }
@@ -747,8 +752,7 @@ void tool_change(const uint8_t tmp_extruder, const float fr_mm_s/*=0.0*/, bool n
747 752
         raise_nozzle(active_extruder);
748 753
       #endif
749 754
 
750
-      const float old_feedrate_mm_s = fr_mm_s > 0.0 ? fr_mm_s : feedrate_mm_s;
751
-      feedrate_mm_s = fr_mm_s > 0.0 ? fr_mm_s : XY_PROBE_FEEDRATE_MM_S;
755
+      REMEMBER(fr, feedrate_mm_s, XY_PROBE_FEEDRATE_MM_S);
752 756
 
753 757
       #if HAS_SOFTWARE_ENDSTOPS
754 758
         #if HAS_HOTEND_OFFSET
@@ -765,8 +769,8 @@ void tool_change(const uint8_t tmp_extruder, const float fr_mm_s/*=0.0*/, bool n
765 769
 
766 770
       set_destination_from_current();
767 771
 
768
-      if (!no_move) {
769
-        #if DISABLED(SWITCHING_NOZZLE)
772
+      #if DISABLED(SWITCHING_NOZZLE)
773
+        if (can_move_away) {
770 774
           // Do a small lift to avoid the workpiece in the move back (below)
771 775
           current_position[Z_AXIS] += toolchange_settings.z_raise;
772 776
           #if HAS_SOFTWARE_ENDSTOPS
@@ -778,9 +782,9 @@ void tool_change(const uint8_t tmp_extruder, const float fr_mm_s/*=0.0*/, bool n
778 782
             current_position[Y_AXIS] = toolchange_settings.change_point.y;
779 783
           #endif
780 784
           planner.buffer_line(current_position, feedrate_mm_s, active_extruder);
781
-        #endif
782
-        planner.synchronize();
783
-      }
785
+          planner.synchronize();
786
+        }
787
+      #endif
784 788
 
785 789
       #if HAS_HOTEND_OFFSET
786 790
         #if ENABLED(DUAL_X_CARRIAGE)
@@ -801,9 +805,9 @@ void tool_change(const uint8_t tmp_extruder, const float fr_mm_s/*=0.0*/, bool n
801 805
       #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) // Magnetic Parking extruder
802 806
         magnetic_parking_extruder_tool_change(tmp_extruder);
803 807
       #elif ENABLED(SWITCHING_TOOLHEAD) // Switching Toolhead
804
-        switching_toolhead_tool_change(tmp_extruder, fr_mm_s, no_move);
808
+        switching_toolhead_tool_change(tmp_extruder, no_move);
805 809
       #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD) // Magnetic Switching Toolhead
806
-        magnetic_switching_toolhead_tool_change(tmp_extruder, fr_mm_s, no_move);
810
+        magnetic_switching_toolhead_tool_change(tmp_extruder, no_move);
807 811
       #elif ENABLED(SWITCHING_NOZZLE) && !SWITCHING_NOZZLE_TWO_SERVOS
808 812
         // Raise by a configured distance to avoid workpiece, except with
809 813
         // SWITCHING_NOZZLE_TWO_SERVOS, as both nozzles will lift instead.
@@ -837,7 +841,6 @@ void tool_change(const uint8_t tmp_extruder, const float fr_mm_s/*=0.0*/, bool n
837 841
 
838 842
       // Return to position and lower again
839 843
       if (safe_to_move && !no_move && IsRunning()) {
840
-        if (DEBUGGING(LEVELING)) DEBUG_POS("Move back", destination);
841 844
 
842 845
         #if ENABLED(SINGLENOZZLE)
843 846
           #if FAN_COUNT > 0
@@ -884,13 +887,23 @@ void tool_change(const uint8_t tmp_extruder, const float fr_mm_s/*=0.0*/, bool n
884 887
           apply_motion_limits(destination);
885 888
         #endif
886 889
 
887
-        // Move back to the original (or tweaked) position
888
-        do_blocking_move_to(destination);
890
+        // Should the nozzle move back to the old position?
891
+        if (can_move_away) {
892
+          #if ENABLED(TOOLCHANGE_NO_RETURN)
893
+            // Just move back down
894
+            if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Move back Z only");
895
+            do_blocking_move_to_z(destination[Z_AXIS], planner.settings.max_feedrate_mm_s[Z_AXIS]);
896
+          #else
897
+            // Move back to the original (or adjusted) position
898
+            if (DEBUGGING(LEVELING)) DEBUG_POS("Move back", destination);
899
+            do_blocking_move_to(destination);
900
+          #endif
901
+        }
902
+        else if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Move back skipped");
889 903
 
890 904
         #if ENABLED(DUAL_X_CARRIAGE)
891 905
           active_extruder_parked = false;
892 906
         #endif
893
-        feedrate_mm_s = old_feedrate_mm_s;
894 907
       }
895 908
       #if ENABLED(SWITCHING_NOZZLE)
896 909
         else {

+ 1
- 1
Marlin/src/module/tool_change.h View File

@@ -96,4 +96,4 @@
96 96
  * Perform a tool-change, which may result in moving the
97 97
  * previous tool out of the way and the new tool into place.
98 98
  */
99
-void tool_change(const uint8_t tmp_extruder, const float fr_mm_s=0.0, bool no_move=false);
99
+void tool_change(const uint8_t tmp_extruder, bool no_move=false);

+ 1
- 0
config/default/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/3DFabXYZ/Migbot/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/AlephObjects/TAZ4/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/AliExpress/UM2pExt/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Anet/A2/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Anet/A2plus/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Anet/A6/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Anet/A8/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Anet/A8plus/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Anet/E16/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/AnyCubic/i3/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/ArmEd/Configuration_adv.h View File

@@ -1439,6 +1439,7 @@
1439 1439
 #if EXTRUDERS > 1
1440 1440
   // Z raise distance for tool-change, as needed for some extruders
1441 1441
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1442
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1442 1443
 
1443 1444
   // Retract and prime filament on tool-change
1444 1445
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/BIBO/TouchX/cyclops/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/BIBO/TouchX/default/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/BQ/Hephestos/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/BQ/Hephestos_2/Configuration_adv.h View File

@@ -1443,6 +1443,7 @@
1443 1443
 #if EXTRUDERS > 1
1444 1444
   // Z raise distance for tool-change, as needed for some extruders
1445 1445
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1446
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1446 1447
 
1447 1448
   // Retract and prime filament on tool-change
1448 1449
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/BQ/WITBOX/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Cartesio/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Creality/CR-10/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Creality/CR-10S/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Creality/CR-10_5S/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Creality/CR-10mini/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Creality/CR-8/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Creality/Ender-2/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Creality/Ender-3/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Creality/Ender-4/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Dagoma/Disco Ultimate/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/EVNOVO (Artillery)/Sidewinder X1/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Einstart-S/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Felix/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/FlashForge/CreatorPro/Configuration_adv.h View File

@@ -1434,6 +1434,7 @@
1434 1434
 #if EXTRUDERS > 1
1435 1435
   // Z raise distance for tool-change, as needed for some extruders
1436 1436
   #define TOOLCHANGE_ZRAISE     0  // (mm)
1437
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1437 1438
 
1438 1439
   // Retract and prime filament on tool-change
1439 1440
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/FolgerTech/i3-2020/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Formbot/Raptor/Configuration_adv.h View File

@@ -1437,6 +1437,7 @@
1437 1437
 #if EXTRUDERS > 1
1438 1438
   // Z raise distance for tool-change, as needed for some extruders
1439 1439
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1440
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1440 1441
 
1441 1442
   // Retract and prime filament on tool-change
1442 1443
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Formbot/T_Rex_2+/Configuration_adv.h View File

@@ -1439,6 +1439,7 @@
1439 1439
 #if EXTRUDERS > 1
1440 1440
   // Z raise distance for tool-change, as needed for some extruders
1441 1441
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1442
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1442 1443
 
1443 1444
   // Retract and prime filament on tool-change
1444 1445
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Formbot/T_Rex_3/Configuration_adv.h View File

@@ -1439,6 +1439,7 @@
1439 1439
 #if EXTRUDERS > 1
1440 1440
   // Z raise distance for tool-change, as needed for some extruders
1441 1441
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1442
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1442 1443
 
1443 1444
   // Retract and prime filament on tool-change
1444 1445
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Geeetech/A10/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Geeetech/A10M/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Geeetech/A20M/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Geeetech/MeCreator2/Configuration_adv.h View File

@@ -1434,6 +1434,7 @@
1434 1434
 #if EXTRUDERS > 1
1435 1435
   // Z raise distance for tool-change, as needed for some extruders
1436 1436
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1437
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1437 1438
 
1438 1439
   // Retract and prime filament on tool-change
1439 1440
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Geeetech/Prusa i3 Pro C/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Geeetech/Prusa i3 Pro W/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Infitary/i3-M508/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/JGAurora/A1/Configuration_adv.h View File

@@ -1440,6 +1440,7 @@
1440 1440
 #if EXTRUDERS > 1
1441 1441
   // Z raise distance for tool-change, as needed for some extruders
1442 1442
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1443
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1443 1444
 
1444 1445
   // Retract and prime filament on tool-change
1445 1446
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/JGAurora/A5/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/JGAurora/A5S/Configuration_adv.h View File

@@ -1440,6 +1440,7 @@
1440 1440
 #if EXTRUDERS > 1
1441 1441
   // Z raise distance for tool-change, as needed for some extruders
1442 1442
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1443
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1443 1444
 
1444 1445
   // Retract and prime filament on tool-change
1445 1446
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/MakerParts/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Malyan/M150/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Malyan/M200/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Micromake/C1/enhanced/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Mks/Robin/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Mks/Sbase/Configuration_adv.h View File

@@ -1436,6 +1436,7 @@
1436 1436
 #if EXTRUDERS > 1
1437 1437
   // Z raise distance for tool-change, as needed for some extruders
1438 1438
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1439
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1439 1440
 
1440 1441
   // Retract and prime filament on tool-change
1441 1442
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/RapideLite/RL200/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/RigidBot/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/SCARA/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/STM32/Black_STM32F407VET6/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Sanguinololu/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Tevo/Tarantula Pro/Configuration_adv.h View File

@@ -1431,6 +1431,7 @@
1431 1431
 #if EXTRUDERS > 1
1432 1432
   // Z raise distance for tool-change, as needed for some extruders
1433 1433
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1434
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1434 1435
 
1435 1436
   // Retract and prime filament on tool-change
1436 1437
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/TheBorg/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/TinyBoy2/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Tronxy/X3A/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Tronxy/X5S-2E/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/UltiMachine/Archim1/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/UltiMachine/Archim2/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/VORONDesign/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Velleman/K8200/Configuration_adv.h View File

@@ -1448,6 +1448,7 @@
1448 1448
 #if EXTRUDERS > 1
1449 1449
   // Z raise distance for tool-change, as needed for some extruders
1450 1450
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1451
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1451 1452
 
1452 1453
   // Retract and prime filament on tool-change
1453 1454
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Velleman/K8400/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/WASP/PowerWASP/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/Wanhao/Duplicator 6/Configuration_adv.h View File

@@ -1437,6 +1437,7 @@
1437 1437
 #if EXTRUDERS > 1
1438 1438
   // Z raise distance for tool-change, as needed for some extruders
1439 1439
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1440
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1440 1441
 
1441 1442
   // Retract and prime filament on tool-change
1442 1443
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/delta/Anycubic/Kossel/Configuration_adv.h View File

@@ -1437,6 +1437,7 @@
1437 1437
 #if EXTRUDERS > 1
1438 1438
   // Z raise distance for tool-change, as needed for some extruders
1439 1439
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1440
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1440 1441
 
1441 1442
   // Retract and prime filament on tool-change
1442 1443
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/delta/FLSUN/auto_calibrate/Configuration_adv.h View File

@@ -1437,6 +1437,7 @@
1437 1437
 #if EXTRUDERS > 1
1438 1438
   // Z raise distance for tool-change, as needed for some extruders
1439 1439
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1440
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1440 1441
 
1441 1442
   // Retract and prime filament on tool-change
1442 1443
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/delta/FLSUN/kossel/Configuration_adv.h View File

@@ -1437,6 +1437,7 @@
1437 1437
 #if EXTRUDERS > 1
1438 1438
   // Z raise distance for tool-change, as needed for some extruders
1439 1439
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1440
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1440 1441
 
1441 1442
   // Retract and prime filament on tool-change
1442 1443
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/delta/FLSUN/kossel_mini/Configuration_adv.h View File

@@ -1437,6 +1437,7 @@
1437 1437
 #if EXTRUDERS > 1
1438 1438
   // Z raise distance for tool-change, as needed for some extruders
1439 1439
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1440
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1440 1441
 
1441 1442
   // Retract and prime filament on tool-change
1442 1443
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/delta/Geeetech/Rostock 301/Configuration_adv.h View File

@@ -1437,6 +1437,7 @@
1437 1437
 #if EXTRUDERS > 1
1438 1438
   // Z raise distance for tool-change, as needed for some extruders
1439 1439
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1440
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1440 1441
 
1441 1442
   // Retract and prime filament on tool-change
1442 1443
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/delta/MKS/SBASE/Configuration_adv.h View File

@@ -1437,6 +1437,7 @@
1437 1437
 #if EXTRUDERS > 1
1438 1438
   // Z raise distance for tool-change, as needed for some extruders
1439 1439
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1440
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1440 1441
 
1441 1442
   // Retract and prime filament on tool-change
1442 1443
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/delta/Tevo Little Monster/Configuration_adv.h View File

@@ -1437,6 +1437,7 @@
1437 1437
 #if EXTRUDERS > 1
1438 1438
   // Z raise distance for tool-change, as needed for some extruders
1439 1439
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1440
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1440 1441
 
1441 1442
   // Retract and prime filament on tool-change
1442 1443
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/delta/generic/Configuration_adv.h View File

@@ -1437,6 +1437,7 @@
1437 1437
 #if EXTRUDERS > 1
1438 1438
   // Z raise distance for tool-change, as needed for some extruders
1439 1439
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1440
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1440 1441
 
1441 1442
   // Retract and prime filament on tool-change
1442 1443
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/delta/kossel_mini/Configuration_adv.h View File

@@ -1437,6 +1437,7 @@
1437 1437
 #if EXTRUDERS > 1
1438 1438
   // Z raise distance for tool-change, as needed for some extruders
1439 1439
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1440
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1440 1441
 
1441 1442
   // Retract and prime filament on tool-change
1442 1443
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/delta/kossel_xl/Configuration_adv.h View File

@@ -1437,6 +1437,7 @@
1437 1437
 #if EXTRUDERS > 1
1438 1438
   // Z raise distance for tool-change, as needed for some extruders
1439 1439
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1440
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1440 1441
 
1441 1442
   // Retract and prime filament on tool-change
1442 1443
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/gCreate/gMax1.5+/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/makibox/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/tvrrug/Round2/Configuration_adv.h View File

@@ -1435,6 +1435,7 @@
1435 1435
 #if EXTRUDERS > 1
1436 1436
   // Z raise distance for tool-change, as needed for some extruders
1437 1437
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1438
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1438 1439
 
1439 1440
   // Retract and prime filament on tool-change
1440 1441
   //#define TOOLCHANGE_FILAMENT_SWAP

+ 1
- 0
config/examples/wt150/Configuration_adv.h View File

@@ -1436,6 +1436,7 @@
1436 1436
 #if EXTRUDERS > 1
1437 1437
   // Z raise distance for tool-change, as needed for some extruders
1438 1438
   #define TOOLCHANGE_ZRAISE     2  // (mm)
1439
+  //#define TOOLCHANGE_NO_RETURN   // Never return to the previous position on tool-change
1439 1440
 
1440 1441
   // Retract and prime filament on tool-change
1441 1442
   //#define TOOLCHANGE_FILAMENT_SWAP

Loading…
Cancel
Save