Browse Source

Improve magnetic dock switching toolhead (#14663)

wookie666 5 years ago
parent
commit
00e2f6da8f
100 changed files with 831 additions and 135 deletions
  1. 8
    1
      Marlin/Configuration.h
  2. 11
    6
      Marlin/src/inc/SanityCheck.h
  3. 42
    32
      Marlin/src/module/tool_change.cpp
  4. 8
    1
      config/default/Configuration.h
  5. 8
    1
      config/examples/3DFabXYZ/Migbot/Configuration.h
  6. 8
    1
      config/examples/AlephObjects/TAZ4/Configuration.h
  7. 8
    1
      config/examples/Alfawise/U20/Configuration.h
  8. 8
    1
      config/examples/AliExpress/CL-260/Configuration.h
  9. 8
    1
      config/examples/AliExpress/UM2pExt/Configuration.h
  10. 8
    1
      config/examples/Anet/A2/Configuration.h
  11. 8
    1
      config/examples/Anet/A2plus/Configuration.h
  12. 8
    1
      config/examples/Anet/A6/Configuration.h
  13. 8
    1
      config/examples/Anet/A8/Configuration.h
  14. 8
    1
      config/examples/Anet/A8plus/Configuration.h
  15. 8
    1
      config/examples/Anet/E16/Configuration.h
  16. 8
    1
      config/examples/AnyCubic/i3/Configuration.h
  17. 8
    1
      config/examples/ArmEd/Configuration.h
  18. 8
    1
      config/examples/Azteeg/X5GT/Configuration.h
  19. 8
    1
      config/examples/BIBO/TouchX/cyclops/Configuration.h
  20. 8
    1
      config/examples/BIBO/TouchX/default/Configuration.h
  21. 8
    1
      config/examples/BQ/Hephestos/Configuration.h
  22. 8
    1
      config/examples/BQ/Hephestos_2/Configuration.h
  23. 8
    1
      config/examples/BQ/WITBOX/Configuration.h
  24. 8
    1
      config/examples/Cartesio/Configuration.h
  25. 8
    1
      config/examples/Creality/CR-10/Configuration.h
  26. 8
    1
      config/examples/Creality/CR-10S/Configuration.h
  27. 8
    1
      config/examples/Creality/CR-10_5S/Configuration.h
  28. 8
    1
      config/examples/Creality/CR-10mini/Configuration.h
  29. 8
    1
      config/examples/Creality/CR-20 Pro/Configuration.h
  30. 8
    1
      config/examples/Creality/CR-20/Configuration.h
  31. 8
    1
      config/examples/Creality/CR-8/Configuration.h
  32. 8
    1
      config/examples/Creality/Ender-2/Configuration.h
  33. 8
    1
      config/examples/Creality/Ender-3/Configuration.h
  34. 8
    1
      config/examples/Creality/Ender-4/Configuration.h
  35. 8
    1
      config/examples/Creality/Ender-5/Configuration.h
  36. 8
    1
      config/examples/Dagoma/Disco Ultimate/Configuration.h
  37. 8
    1
      config/examples/EVNOVO (Artillery)/Sidewinder X1/Configuration.h
  38. 8
    1
      config/examples/Einstart-S/Configuration.h
  39. 8
    1
      config/examples/FYSETC/AIO_II/Configuration.h
  40. 10
    1
      config/examples/FYSETC/Cheetah/BLTouch/Configuration.h
  41. 8
    1
      config/examples/FYSETC/Cheetah/base/Configuration.h
  42. 8
    1
      config/examples/FYSETC/F6_13/Configuration.h
  43. 8
    1
      config/examples/Felix/Configuration.h
  44. 8
    1
      config/examples/Felix/DUAL/Configuration.h
  45. 8
    1
      config/examples/FlashForge/CreatorPro/Configuration.h
  46. 8
    1
      config/examples/FolgerTech/i3-2020/Configuration.h
  47. 8
    1
      config/examples/Formbot/Raptor/Configuration.h
  48. 8
    1
      config/examples/Formbot/T_Rex_2+/Configuration.h
  49. 8
    1
      config/examples/Formbot/T_Rex_3/Configuration.h
  50. 8
    1
      config/examples/Geeetech/A10/Configuration.h
  51. 8
    1
      config/examples/Geeetech/A10M/Configuration.h
  52. 8
    1
      config/examples/Geeetech/A20M/Configuration.h
  53. 8
    1
      config/examples/Geeetech/GT2560/Configuration.h
  54. 8
    1
      config/examples/Geeetech/I3_Pro_X-GT2560/Configuration.h
  55. 8
    1
      config/examples/Geeetech/MeCreator2/Configuration.h
  56. 8
    1
      config/examples/Geeetech/Prusa i3 Pro B/bltouch/Configuration.h
  57. 8
    1
      config/examples/Geeetech/Prusa i3 Pro B/noprobe/Configuration.h
  58. 8
    1
      config/examples/Geeetech/Prusa i3 Pro C/Configuration.h
  59. 8
    1
      config/examples/Geeetech/Prusa i3 Pro W/Configuration.h
  60. 8
    1
      config/examples/Infitary/i3-M508/Configuration.h
  61. 8
    1
      config/examples/JGAurora/A1/Configuration.h
  62. 8
    1
      config/examples/JGAurora/A5/Configuration.h
  63. 8
    1
      config/examples/JGAurora/A5S/Configuration.h
  64. 8
    1
      config/examples/MakerParts/Configuration.h
  65. 8
    1
      config/examples/Malyan/M150/Configuration.h
  66. 8
    1
      config/examples/Malyan/M200/Configuration.h
  67. 8
    1
      config/examples/Micromake/C1/basic/Configuration.h
  68. 8
    1
      config/examples/Micromake/C1/enhanced/Configuration.h
  69. 8
    1
      config/examples/Mks/Robin/Configuration.h
  70. 8
    1
      config/examples/Mks/Sbase/Configuration.h
  71. 8
    1
      config/examples/Printrbot/PrintrboardG2/Configuration.h
  72. 8
    1
      config/examples/RapideLite/RL200/Configuration.h
  73. 8
    1
      config/examples/RepRapPro/Huxley/Configuration.h
  74. 8
    1
      config/examples/RepRapWorld/Megatronics/Configuration.h
  75. 8
    1
      config/examples/RigidBot/Configuration.h
  76. 8
    1
      config/examples/SCARA/Configuration.h
  77. 8
    1
      config/examples/STM32/Black_STM32F407VET6/Configuration.h
  78. 8
    1
      config/examples/STM32/STM32F10/Configuration.h
  79. 8
    1
      config/examples/STM32/STM32F4/Configuration.h
  80. 8
    1
      config/examples/STM32/stm32f103ret6/Configuration.h
  81. 8
    1
      config/examples/Sanguinololu/Configuration.h
  82. 8
    1
      config/examples/Tevo/Michelangelo/Configuration.h
  83. 8
    1
      config/examples/Tevo/Tarantula Pro/Configuration.h
  84. 8
    1
      config/examples/Tevo/Tornado/V1 (MKS Base)/Configuration.h
  85. 8
    1
      config/examples/Tevo/Tornado/V2 (MKS GEN-L)/Configuration.h
  86. 8
    1
      config/examples/TheBorg/Configuration.h
  87. 8
    1
      config/examples/TinyBoy2/Configuration.h
  88. 8
    1
      config/examples/Tronxy/X1/Configuration.h
  89. 8
    1
      config/examples/Tronxy/X3A/Configuration.h
  90. 8
    1
      config/examples/Tronxy/X5S-2E/Configuration.h
  91. 8
    1
      config/examples/Tronxy/X5S/Configuration.h
  92. 8
    1
      config/examples/Tronxy/XY100/Configuration.h
  93. 8
    1
      config/examples/UltiMachine/Archim1/Configuration.h
  94. 8
    1
      config/examples/UltiMachine/Archim2/Configuration.h
  95. 8
    1
      config/examples/VORONDesign/Configuration.h
  96. 8
    1
      config/examples/Velleman/K8200/Configuration.h
  97. 8
    1
      config/examples/Velleman/K8400/Configuration.h
  98. 8
    1
      config/examples/Velleman/K8400/Dual-head/Configuration.h
  99. 8
    1
      config/examples/WASP/PowerWASP/Configuration.h
  100. 0
    0
      config/examples/Wanhao/Duplicator 6/Configuration.h

+ 8
- 1
Marlin/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 11
- 6
Marlin/src/inc/SanityCheck.h View File

@@ -907,12 +907,11 @@ static_assert(Y_MAX_LENGTH >= Y_BED_SIZE, "Movement bounds (Y_MIN_POS, Y_MAX_POS
907 907
   #endif
908 908
 #endif
909 909
 
910
-#if ANY(MAGNETIC_SWITCHING_TOOLHEAD, ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
911
-  #if ENABLED(EXT_SOLENOID)
912
-    #error "(ELECTRO)MAGNETIC_SWITCHING_TOOLHEAD and EXT_SOLENOID are incompatible. (Pins are used twice.)"
913
-  #elif !PIN_EXISTS(SOL0)
914
-    #error "(ELECTRO)MAGNETIC_SWITCHING_TOOLHEAD requires SOL0_PIN."
915
-  #elif !defined(SWITCHING_TOOLHEAD_Y_POS)
910
+/**
911
+ * (Electro)magnetic Switching Toolhead requirements
912
+ */
913
+#if EITHER(MAGNETIC_SWITCHING_TOOLHEAD, ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
914
+  #ifndef SWITCHING_TOOLHEAD_Y_POS
916 915
     #error "(ELECTRO)MAGNETIC_SWITCHING_TOOLHEAD requires SWITCHING_TOOLHEAD_Y_POS"
917 916
   #elif !defined(SWITCHING_TOOLHEAD_X_POS)
918 917
     #error "(ELECTRO)MAGNETIC_SWITCHING_TOOLHEAD requires SWITCHING_TOOLHEAD_X_POS"
@@ -920,6 +919,12 @@ static_assert(Y_MAX_LENGTH >= Y_BED_SIZE, "Movement bounds (Y_MIN_POS, Y_MAX_POS
920 919
     #error "(ELECTRO)MAGNETIC_SWITCHING_TOOLHEAD requires SWITCHING_TOOLHEAD_Z_HOP."
921 920
   #elif !defined(SWITCHING_TOOLHEAD_Y_CLEAR)
922 921
     #error "(ELECTRO)MAGNETIC_SWITCHING_TOOLHEAD requires SWITCHING_TOOLHEAD_Y_CLEAR."
922
+  #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
923
+    #if ENABLED(EXT_SOLENOID)
924
+      #error "(ELECTRO)MAGNETIC_SWITCHING_TOOLHEAD and EXT_SOLENOID are incompatible. (Pins are used twice.)"
925
+    #elif !PIN_EXISTS(SOL0)
926
+      #error "(ELECTRO)MAGNETIC_SWITCHING_TOOLHEAD requires SOL0_PIN."
927
+    #endif
923 928
   #endif
924 929
 #endif
925 930
 

+ 42
- 32
Marlin/src/module/tool_change.cpp View File

@@ -349,7 +349,7 @@ inline void fast_line_to_current(const AxisEnum fr_axis) {
349 349
       fast_line_to_current(X_AXIS);
350 350
       planner.synchronize(); // Always sync the final move
351 351
 
352
-      DEBUG_ECHOLNPGM("PE Tool-Change done.");
352
+      if (DEBUGGING(LEVELING)) DEBUG_POS("PE Tool-Change done.", current_position);
353 353
     }
354 354
     else { // nomove == true
355 355
       // Only engage magnetic field for new extruder
@@ -455,7 +455,7 @@ inline void fast_line_to_current(const AxisEnum fr_axis) {
455 455
     fast_line_to_current(Y_AXIS); // Move away from docked toolhead
456 456
     planner.synchronize();        // Always sync the final move
457 457
 
458
-    if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("ST Tool-Change done.");
458
+    if (DEBUGGING(LEVELING)) DEBUG_POS("ST Tool-Change done.", current_position);
459 459
   }
460 460
 
461 461
 #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
@@ -463,9 +463,13 @@ inline void fast_line_to_current(const AxisEnum fr_axis) {
463 463
   inline void magnetic_switching_toolhead_tool_change(const uint8_t tmp_extruder, bool no_move/*=false*/) {
464 464
     if (no_move) return;
465 465
 
466
-    constexpr float toolheadposx[] = SWITCHING_TOOLHEAD_X_POS;
466
+    constexpr float toolheadposx[] = SWITCHING_TOOLHEAD_X_POS,
467
+                    toolheadclearx[] = SWITCHING_TOOLHEAD_X_SECURITY;
468
+
467 469
     const float placexpos = toolheadposx[active_extruder],
468
-                grabxpos = toolheadposx[tmp_extruder];
470
+                placexclear = toolheadclearx[active_extruder],
471
+                grabxpos = toolheadposx[tmp_extruder],
472
+                grabxclear = toolheadclearx[tmp_extruder];
469 473
 
470 474
     /**
471 475
      * 1. Move to switch position of current toolhead
@@ -474,7 +478,7 @@ inline void fast_line_to_current(const AxisEnum fr_axis) {
474 478
      * 4. Grab the new toolhead and move to security position
475 479
      */
476 480
 
477
-    if (DEBUGGING(LEVELING)) DEBUG_POS("Starting Toolhead change", current_position);
481
+    if (DEBUGGING(LEVELING)) DEBUG_POS("Start MST Tool-Change", current_position);
478 482
 
479 483
     // 1. Move to switch position current toolhead
480 484
 
@@ -485,7 +489,7 @@ inline void fast_line_to_current(const AxisEnum fr_axis) {
485 489
     }
486 490
     planner.buffer_line(current_position, planner.settings.max_feedrate_mm_s[Y_AXIS], active_extruder);
487 491
 
488
-    current_position[X_AXIS] = placexpos + SWITCHING_TOOLHEAD_X_SECURITY;
492
+    current_position[X_AXIS] = placexclear;
489 493
     if (DEBUGGING(LEVELING)) {
490 494
       planner.synchronize();
491 495
       DEBUG_POS("Move X SwitchPos + Security", current_position);
@@ -510,7 +514,7 @@ inline void fast_line_to_current(const AxisEnum fr_axis) {
510 514
 
511 515
     if (DEBUGGING(LEVELING)) {
512 516
       planner.synchronize();
513
-      SERIAL_ECHOLNPGM("(2) Release and Place Toolhead");
517
+      DEBUG_ECHOLNPGM("(2) Release and Place Toolhead");
514 518
     }
515 519
 
516 520
     current_position[Y_AXIS] = SWITCHING_TOOLHEAD_Y_POS + SWITCHING_TOOLHEAD_Y_RELEASE;
@@ -528,7 +532,7 @@ inline void fast_line_to_current(const AxisEnum fr_axis) {
528 532
 
529 533
     if (DEBUGGING(LEVELING)) {
530 534
       planner.synchronize();
531
-      SERIAL_ECHOLNPGM("(3) Move to new toolhead position");
535
+      DEBUG_ECHOLNPGM("(3) Move to new toolhead position");
532 536
     }
533 537
 
534 538
     current_position[X_AXIS] = grabxpos;
@@ -539,7 +543,7 @@ inline void fast_line_to_current(const AxisEnum fr_axis) {
539 543
 
540 544
     if (DEBUGGING(LEVELING)) {
541 545
       planner.synchronize();
542
-      SERIAL_ECHOLNPGM("(4) Grab new toolhead and move to security position");
546
+      DEBUG_ECHOLNPGM("(4) Grab new toolhead, move to security position");
543 547
     }
544 548
 
545 549
     current_position[Y_AXIS] = SWITCHING_TOOLHEAD_Y_POS + SWITCHING_TOOLHEAD_Y_RELEASE;
@@ -552,10 +556,22 @@ inline void fast_line_to_current(const AxisEnum fr_axis) {
552 556
       DEBUG_POS("Move Y SwitchPos", current_position);
553 557
     }
554 558
     planner.buffer_line(current_position, planner.settings.max_feedrate_mm_s[Y_AXIS] * 0.2, active_extruder);
555
-    planner.synchronize();
556
-    safe_delay(100); // Give switch time to settle
557 559
 
558
-    current_position[X_AXIS] = grabxpos + SWITCHING_TOOLHEAD_X_SECURITY;
560
+    #if ENABLED(PRIME_BEFORE_REMOVE) && (SWITCHING_TOOLHEAD_PRIME_MM || SWITCHING_TOOLHEAD_RETRACT_MM)
561
+      #if SWITCHING_TOOLHEAD_PRIME_MM
562
+        current_position[E_AXIS] += SWITCHING_TOOLHEAD_PRIME_MM;
563
+        planner.buffer_line(current_position, MMM_TO_MMS(SWITCHING_TOOLHEAD_PRIME_FEEDRATE), tmp_extruder);
564
+      #endif
565
+      #if SWITCHING_TOOLHEAD_RETRACT_MM
566
+        current_position[E_AXIS] -= SWITCHING_TOOLHEAD_RETRACT_MM;
567
+        planner.buffer_line(current_position, MMM_TO_MMS(SWITCHING_TOOLHEAD_RETRACT_FEEDRATE), tmp_extruder);
568
+      #endif
569
+    #else
570
+      planner.synchronize();
571
+      safe_delay(100); // Give switch time to settle
572
+    #endif
573
+
574
+    current_position[X_AXIS] = grabxclear;
559 575
     if (DEBUGGING(LEVELING)) DEBUG_POS("Move to new toolhead X + Security", current_position);
560 576
     planner.buffer_line(current_position, planner.settings.max_feedrate_mm_s[X_AXIS] * 0.1, active_extruder);
561 577
     planner.synchronize();
@@ -565,6 +581,8 @@ inline void fast_line_to_current(const AxisEnum fr_axis) {
565 581
     if (DEBUGGING(LEVELING)) DEBUG_POS("Move back Y clear", current_position);
566 582
     planner.buffer_line(current_position, planner.settings.max_feedrate_mm_s[Y_AXIS], active_extruder); // move away from docked toolhead
567 583
     planner.synchronize(); // Always sync last tool-change move
584
+
585
+    if (DEBUGGING(LEVELING)) DEBUG_POS("MST Tool-Change done.", current_position);
568 586
   }
569 587
 
570 588
 #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
@@ -573,7 +591,7 @@ inline void fast_line_to_current(const AxisEnum fr_axis) {
573 591
   inline void est_deactivate_solenoid() { OUT_WRITE(SOL0_PIN, LOW); }
574 592
   void est_init() { est_activate_solenoid(); }
575 593
 
576
-  inline void electromagnetic_switching_toolhead(const uint8_t tmp_extruder, bool no_move) {
594
+  inline void em_switching_toolhead_tool_change(const uint8_t tmp_extruder, bool no_move) {
577 595
     if (no_move) return;
578 596
 
579 597
     constexpr float toolheadposx[] = SWITCHING_TOOLHEAD_X_POS;
@@ -592,7 +610,7 @@ inline void fast_line_to_current(const AxisEnum fr_axis) {
592 610
      * 9. Apply Z hotend offset to current position
593 611
      */
594 612
 
595
-    if (DEBUGGING(LEVELING)) DEBUG_POS("Starting Autopark", current_position);
613
+    if (DEBUGGING(LEVELING)) DEBUG_POS("Start EMST Tool-Change", current_position);
596 614
 
597 615
     // 1. Raise Z-Axis to give enough clearance
598 616
 
@@ -624,59 +642,51 @@ inline void fast_line_to_current(const AxisEnum fr_axis) {
624 642
 
625 643
     // 4. Disengage magnetic field, wait for delay
626 644
 
627
-    if (DEBUGGING(LEVELING)) SERIAL_ECHOLNPGM("(4) Disengage magnet");
628
-
629 645
     planner.synchronize();
646
+    if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("(4) Disengage magnet");
630 647
     est_deactivate_solenoid();
631 648
 
632 649
     // 5. Leave extruder and move to position near new extruder parking
633 650
 
634 651
     if (DEBUGGING(LEVELING)) {
635
-      SERIAL_ECHOLNPGM("(5) Move near new extruder parking");
652
+      DEBUG_ECHOLNPGM("(5) Move near new extruder parking");
636 653
       DEBUG_POS("Moving ParkPos", current_position);
637 654
     }
638 655
 
639 656
     current_position[Y_AXIS] += SWITCHING_TOOLHEAD_Y_CLEAR;
640 657
     planner.buffer_line(current_position, planner.settings.max_feedrate_mm_s[Y_AXIS] * 0.5f, active_extruder);
641
-
642 658
     current_position[X_AXIS] = grabxpos + hotend_offset[X_AXIS][active_extruder];
643 659
     current_position[Y_AXIS] = SWITCHING_TOOLHEAD_Y_POS + SWITCHING_TOOLHEAD_Y_CLEAR  + hotend_offset[Y_AXIS][active_extruder];
644 660
     planner.buffer_line(current_position, planner.settings.max_feedrate_mm_s[X_AXIS], active_extruder);
645 661
 
646 662
     // 6. Move gently to park position of new extruder
647 663
 
664
+    current_position[Y_AXIS] -= SWITCHING_TOOLHEAD_Y_CLEAR;
648 665
     if (DEBUGGING(LEVELING)) {
649 666
       planner.synchronize();
650
-      SERIAL_ECHOLNPGM("(6) Move near new extruder");
667
+      DEBUG_ECHOLNPGM("(6) Move near new extruder");
651 668
     }
652
-
653
-    current_position[Y_AXIS] -= SWITCHING_TOOLHEAD_Y_CLEAR;
654 669
     planner.buffer_line(current_position, planner.settings.max_feedrate_mm_s[Y_AXIS] * 0.5f, active_extruder);
655 670
 
656 671
     // 7. Engage magnetic field for new extruder parking
657 672
 
658 673
     planner.synchronize();
659
-
660
-    if (DEBUGGING(LEVELING)) SERIAL_ECHOLNPGM("(7) Engage magnetic field");
661
-
674
+    if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("(7) Engage magnetic field");
662 675
     est_activate_solenoid();
663 676
 
664 677
     // 8. Unpark extruder
665 678
 
666
-    if (DEBUGGING(LEVELING)) SERIAL_ECHOLNPGM("(8) Unpark extruder");
667
-
668 679
     current_position[Y_AXIS] += SWITCHING_TOOLHEAD_Y_CLEAR;
669
-
680
+    if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("(8) Unpark extruder");
670 681
     planner.buffer_line(current_position, planner.settings.max_feedrate_mm_s[X_AXIS] * 0.5f, active_extruder);
682
+    planner.synchronize(); // Always sync the final move
671 683
 
672 684
     // 9. Apply Z hotend offset to current position
673 685
 
686
+    if (DEBUGGING(LEVELING)) DEBUG_POS("(9) Applying Z-offset", current_position);
674 687
     current_position[Z_AXIS] += hotend_offset[Z_AXIS][active_extruder] - hotend_offset[Z_AXIS][tmp_extruder];
675 688
 
676
-    if (DEBUGGING(LEVELING)) {
677
-      planner.synchronize();
678
-      DEBUG_POS("(9) Applying Z-offset", current_position);
679
-    }
689
+    if (DEBUGGING(LEVELING)) DEBUG_POS("EMST Tool-Change done.", current_position);
680 690
   }
681 691
 
682 692
 #endif // ELECTROMAGNETIC_SWITCHING_TOOLHEAD
@@ -905,7 +915,7 @@ void tool_change(const uint8_t tmp_extruder, bool no_move/*=false*/) {
905 915
       #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)                        // Magnetic Switching Toolhead
906 916
         magnetic_switching_toolhead_tool_change(tmp_extruder, no_move);
907 917
       #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)                 // Magnetic Switching ToolChanger
908
-        electromagnetic_switching_toolhead(tmp_extruder, no_move);
918
+        em_switching_toolhead_tool_change(tmp_extruder, no_move);
909 919
       #elif ENABLED(SWITCHING_NOZZLE) && !SWITCHING_NOZZLE_TWO_SERVOS   // Switching Nozzle (single servo)
910 920
         // Raise by a configured distance to avoid workpiece, except with
911 921
         // SWITCHING_NOZZLE_TWO_SERVOS, as both nozzles will lift instead.

+ 8
- 1
config/default/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/3DFabXYZ/Migbot/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/AlephObjects/TAZ4/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Alfawise/U20/Configuration.h View File

@@ -326,7 +326,14 @@
326 326
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
327 327
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
328 328
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
329
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
329
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
330
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
331
+    #if ENABLED(PRIME_BEFORE_REMOVE)
332
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
333
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
334
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
335
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
336
+    #endif
330 337
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
331 338
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
332 339
   #endif

+ 8
- 1
config/examples/AliExpress/CL-260/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/AliExpress/UM2pExt/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Anet/A2/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Anet/A2plus/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Anet/A6/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Anet/A8/Configuration.h View File

@@ -276,7 +276,14 @@
276 276
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
277 277
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
278 278
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
279
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
279
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
280
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
281
+    #if ENABLED(PRIME_BEFORE_REMOVE)
282
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
283
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
284
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
285
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
286
+    #endif
280 287
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
281 288
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
282 289
   #endif

+ 8
- 1
config/examples/Anet/A8plus/Configuration.h View File

@@ -276,7 +276,14 @@
276 276
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
277 277
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
278 278
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
279
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
279
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
280
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
281
+    #if ENABLED(PRIME_BEFORE_REMOVE)
282
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
283
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
284
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
285
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
286
+    #endif
280 287
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
281 288
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
282 289
   #endif

+ 8
- 1
config/examples/Anet/E16/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/AnyCubic/i3/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/ArmEd/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Azteeg/X5GT/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/BIBO/TouchX/cyclops/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/BIBO/TouchX/default/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/BQ/Hephestos/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/BQ/Hephestos_2/Configuration.h View File

@@ -283,7 +283,14 @@
283 283
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
284 284
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
285 285
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
286
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
286
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
287
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
288
+    #if ENABLED(PRIME_BEFORE_REMOVE)
289
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
290
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
291
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
292
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
293
+    #endif
287 294
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
288 295
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
289 296
   #endif

+ 8
- 1
config/examples/BQ/WITBOX/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Cartesio/Configuration.h View File

@@ -276,7 +276,14 @@
276 276
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
277 277
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
278 278
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
279
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
279
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
280
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
281
+    #if ENABLED(PRIME_BEFORE_REMOVE)
282
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
283
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
284
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
285
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
286
+    #endif
280 287
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
281 288
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
282 289
   #endif

+ 8
- 1
config/examples/Creality/CR-10/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Creality/CR-10S/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Creality/CR-10_5S/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Creality/CR-10mini/Configuration.h View File

@@ -284,7 +284,14 @@
284 284
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
285 285
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
286 286
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
287
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
287
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
288
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
289
+    #if ENABLED(PRIME_BEFORE_REMOVE)
290
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
291
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
292
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
293
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
294
+    #endif
288 295
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
289 296
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
290 297
   #endif

+ 8
- 1
config/examples/Creality/CR-20 Pro/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Creality/CR-20/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

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

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Creality/Ender-2/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Creality/Ender-3/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Creality/Ender-4/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Creality/Ender-5/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Dagoma/Disco Ultimate/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

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

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Einstart-S/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/FYSETC/AIO_II/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 10
- 1
config/examples/FYSETC/Cheetah/BLTouch/Configuration.h View File

@@ -268,7 +268,16 @@
268 268
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
269 269
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
270 270
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
271
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
271
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
272
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
273
+    #if ENABLED(PRIME_BEFORE_REMOVE)
274
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
275
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
276
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
277
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
278
+    #endif
279
+  #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280
+    #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
272 281
   #endif
273 282
 #endif
274 283
 

+ 8
- 1
config/examples/FYSETC/Cheetah/base/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/FYSETC/F6_13/Configuration.h View File

@@ -277,7 +277,14 @@
277 277
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
278 278
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
279 279
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
280
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
280
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
281
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
282
+    #if ENABLED(PRIME_BEFORE_REMOVE)
283
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
284
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
285
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
286
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
287
+    #endif
281 288
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
282 289
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
283 290
   #endif

+ 8
- 1
config/examples/Felix/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Felix/DUAL/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/FlashForge/CreatorPro/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/FolgerTech/i3-2020/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Formbot/Raptor/Configuration.h View File

@@ -316,7 +316,14 @@
316 316
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
317 317
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
318 318
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
319
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
319
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
320
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
321
+    #if ENABLED(PRIME_BEFORE_REMOVE)
322
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
323
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
324
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
325
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
326
+    #endif
320 327
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
321 328
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
322 329
   #endif

+ 8
- 1
config/examples/Formbot/T_Rex_2+/Configuration.h View File

@@ -278,7 +278,14 @@
278 278
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
279 279
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
280 280
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
281
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
281
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
282
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
283
+    #if ENABLED(PRIME_BEFORE_REMOVE)
284
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
285
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
286
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
287
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
288
+    #endif
282 289
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
283 290
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
284 291
   #endif

+ 8
- 1
config/examples/Formbot/T_Rex_3/Configuration.h View File

@@ -279,7 +279,14 @@
279 279
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
280 280
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
281 281
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
282
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
282
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
283
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
284
+    #if ENABLED(PRIME_BEFORE_REMOVE)
285
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
286
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
287
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
288
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
289
+    #endif
283 290
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
284 291
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
285 292
   #endif

+ 8
- 1
config/examples/Geeetech/A10/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Geeetech/A10M/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Geeetech/A20M/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Geeetech/GT2560/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Geeetech/I3_Pro_X-GT2560/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Geeetech/MeCreator2/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Geeetech/Prusa i3 Pro B/bltouch/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Geeetech/Prusa i3 Pro B/noprobe/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Geeetech/Prusa i3 Pro C/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Geeetech/Prusa i3 Pro W/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Infitary/i3-M508/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/JGAurora/A1/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/JGAurora/A5/Configuration.h View File

@@ -280,7 +280,14 @@
280 280
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
281 281
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
282 282
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
283
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
283
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
284
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
285
+    #if ENABLED(PRIME_BEFORE_REMOVE)
286
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
287
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
288
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
289
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
290
+    #endif
284 291
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
285 292
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
286 293
   #endif

+ 8
- 1
config/examples/JGAurora/A5S/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/MakerParts/Configuration.h View File

@@ -295,7 +295,14 @@
295 295
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
296 296
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
297 297
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
298
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
298
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
299
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
300
+    #if ENABLED(PRIME_BEFORE_REMOVE)
301
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
302
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
303
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
304
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
305
+    #endif
299 306
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
300 307
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
301 308
   #endif

+ 8
- 1
config/examples/Malyan/M150/Configuration.h View File

@@ -280,7 +280,14 @@
280 280
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
281 281
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
282 282
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
283
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
283
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
284
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
285
+    #if ENABLED(PRIME_BEFORE_REMOVE)
286
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
287
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
288
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
289
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
290
+    #endif
284 291
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
285 292
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
286 293
   #endif

+ 8
- 1
config/examples/Malyan/M200/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Micromake/C1/basic/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Micromake/C1/enhanced/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Mks/Robin/Configuration.h View File

@@ -276,7 +276,14 @@
276 276
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
277 277
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
278 278
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
279
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
279
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
280
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
281
+    #if ENABLED(PRIME_BEFORE_REMOVE)
282
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
283
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
284
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
285
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
286
+    #endif
280 287
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
281 288
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
282 289
   #endif

+ 8
- 1
config/examples/Mks/Sbase/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Printrbot/PrintrboardG2/Configuration.h View File

@@ -276,7 +276,14 @@
276 276
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
277 277
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
278 278
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
279
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
279
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
280
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
281
+    #if ENABLED(PRIME_BEFORE_REMOVE)
282
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
283
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
284
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
285
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
286
+    #endif
280 287
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
281 288
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
282 289
   #endif

+ 8
- 1
config/examples/RapideLite/RL200/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/RepRapPro/Huxley/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/RepRapWorld/Megatronics/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/RigidBot/Configuration.h View File

@@ -278,7 +278,14 @@
278 278
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
279 279
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
280 280
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
281
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
281
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
282
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
283
+    #if ENABLED(PRIME_BEFORE_REMOVE)
284
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
285
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
286
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
287
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
288
+    #endif
282 289
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
283 290
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
284 291
   #endif

+ 8
- 1
config/examples/SCARA/Configuration.h View File

@@ -302,7 +302,14 @@
302 302
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
303 303
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
304 304
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
305
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
305
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
306
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
307
+    #if ENABLED(PRIME_BEFORE_REMOVE)
308
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
309
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
310
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
311
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
312
+    #endif
306 313
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
307 314
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
308 315
   #endif

+ 8
- 1
config/examples/STM32/Black_STM32F407VET6/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/STM32/STM32F10/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/STM32/STM32F4/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/STM32/stm32f103ret6/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Sanguinololu/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Tevo/Michelangelo/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Tevo/Tarantula Pro/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Tevo/Tornado/V1 (MKS Base)/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Tevo/Tornado/V2 (MKS GEN-L)/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/TheBorg/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/TinyBoy2/Configuration.h View File

@@ -297,7 +297,14 @@
297 297
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
298 298
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
299 299
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
300
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
300
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
301
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
302
+    #if ENABLED(PRIME_BEFORE_REMOVE)
303
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
304
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
305
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
306
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
307
+    #endif
301 308
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
302 309
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
303 310
   #endif

+ 8
- 1
config/examples/Tronxy/X1/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Tronxy/X3A/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Tronxy/X5S-2E/Configuration.h View File

@@ -277,7 +277,14 @@
277 277
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
278 278
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
279 279
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
280
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
280
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
281
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
282
+    #if ENABLED(PRIME_BEFORE_REMOVE)
283
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
284
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
285
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
286
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
287
+    #endif
281 288
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
282 289
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
283 290
   #endif

+ 8
- 1
config/examples/Tronxy/X5S/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Tronxy/XY100/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/UltiMachine/Archim1/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/UltiMachine/Archim2/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/VORONDesign/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Velleman/K8200/Configuration.h View File

@@ -295,7 +295,14 @@
295 295
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
296 296
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
297 297
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
298
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
298
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
299
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
300
+    #if ENABLED(PRIME_BEFORE_REMOVE)
301
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
302
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
303
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
304
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
305
+    #endif
299 306
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
300 307
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
301 308
   #endif

+ 8
- 1
config/examples/Velleman/K8400/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/Velleman/K8400/Dual-head/Configuration.h View File

@@ -275,7 +275,14 @@
275 275
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
276 276
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
277 277
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
278
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
278
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
279
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
280
+    #if ENABLED(PRIME_BEFORE_REMOVE)
281
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
282
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
283
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
284
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
285
+    #endif
279 286
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
280 287
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
281 288
   #endif

+ 8
- 1
config/examples/WASP/PowerWASP/Configuration.h View File

@@ -294,7 +294,14 @@
294 294
     #define SWITCHING_TOOLHEAD_SERVO_ANGLES { 0, 180 }  // (degrees) Angles for Lock, Unlock
295 295
   #elif ENABLED(MAGNETIC_SWITCHING_TOOLHEAD)
296 296
     #define SWITCHING_TOOLHEAD_Y_RELEASE      5         // (mm) Security distance Y axis
297
-    #define SWITCHING_TOOLHEAD_X_SECURITY   -35         // (mm) Security distance X axis
297
+    #define SWITCHING_TOOLHEAD_X_SECURITY   { 90, 150 } // (mm) Security distance X axis (T0,T1)
298
+    //#define PRIME_BEFORE_REMOVE                       // Prime the nozzle before release from the dock
299
+    #if ENABLED(PRIME_BEFORE_REMOVE)
300
+      #define SWITCHING_TOOLHEAD_PRIME_MM           20  // (mm)   Extruder prime length
301
+      #define SWITCHING_TOOLHEAD_RETRACT_MM         10  // (mm)   Retract after priming length
302
+      #define SWITCHING_TOOLHEAD_PRIME_FEEDRATE    300  // (mm/m) Extruder prime feedrate
303
+      #define SWITCHING_TOOLHEAD_RETRACT_FEEDRATE 2400  // (mm/m) Extruder retract feedrate
304
+    #endif
298 305
   #elif ENABLED(ELECTROMAGNETIC_SWITCHING_TOOLHEAD)
299 306
     #define SWITCHING_TOOLHEAD_Z_HOP          2         // (mm) Z raise for switching
300 307
   #endif

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


Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save