revilor 5 år sedan
förälder
incheckning
6a57d0b381
100 ändrade filer med 2862 tillägg och 5 borttagningar
  1. 10
    0
      Marlin/Configuration.h
  2. 54
    1
      Marlin/Configuration_adv.h
  3. 18
    0
      Marlin/src/HAL/HAL_AVR/MarlinSerial.cpp
  4. 18
    0
      Marlin/src/HAL/HAL_AVR/MarlinSerial.h
  5. 12
    0
      Marlin/src/Marlin.cpp
  6. 10
    0
      Marlin/src/config/default/Configuration.h
  7. 54
    1
      Marlin/src/config/default/Configuration_adv.h
  8. 10
    0
      Marlin/src/config/examples/3DFabXYZ/Migbot/Configuration.h
  9. 53
    0
      Marlin/src/config/examples/3DFabXYZ/Migbot/Configuration_adv.h
  10. 10
    0
      Marlin/src/config/examples/AlephObjects/TAZ4/Configuration.h
  11. 53
    0
      Marlin/src/config/examples/AlephObjects/TAZ4/Configuration_adv.h
  12. 10
    0
      Marlin/src/config/examples/AliExpress/CL-260/Configuration.h
  13. 10
    0
      Marlin/src/config/examples/Anet/A2/Configuration.h
  14. 53
    0
      Marlin/src/config/examples/Anet/A2/Configuration_adv.h
  15. 10
    0
      Marlin/src/config/examples/Anet/A2plus/Configuration.h
  16. 53
    0
      Marlin/src/config/examples/Anet/A2plus/Configuration_adv.h
  17. 10
    0
      Marlin/src/config/examples/Anet/A6/Configuration.h
  18. 53
    0
      Marlin/src/config/examples/Anet/A6/Configuration_adv.h
  19. 10
    0
      Marlin/src/config/examples/Anet/A8/Configuration.h
  20. 53
    0
      Marlin/src/config/examples/Anet/A8/Configuration_adv.h
  21. 11
    1
      Marlin/src/config/examples/AnyCubic/i3/Configuration.h
  22. 53
    0
      Marlin/src/config/examples/AnyCubic/i3/Configuration_adv.h
  23. 10
    0
      Marlin/src/config/examples/ArmEd/Configuration.h
  24. 53
    0
      Marlin/src/config/examples/ArmEd/Configuration_adv.h
  25. 10
    0
      Marlin/src/config/examples/Azteeg/X5GT/Configuration.h
  26. 10
    0
      Marlin/src/config/examples/BIBO/TouchX/cyclops/Configuration.h
  27. 53
    0
      Marlin/src/config/examples/BIBO/TouchX/cyclops/Configuration_adv.h
  28. 10
    0
      Marlin/src/config/examples/BIBO/TouchX/default/Configuration.h
  29. 53
    0
      Marlin/src/config/examples/BIBO/TouchX/default/Configuration_adv.h
  30. 10
    0
      Marlin/src/config/examples/BQ/Hephestos/Configuration.h
  31. 53
    0
      Marlin/src/config/examples/BQ/Hephestos/Configuration_adv.h
  32. 10
    0
      Marlin/src/config/examples/BQ/Hephestos_2/Configuration.h
  33. 53
    0
      Marlin/src/config/examples/BQ/Hephestos_2/Configuration_adv.h
  34. 10
    0
      Marlin/src/config/examples/BQ/WITBOX/Configuration.h
  35. 53
    0
      Marlin/src/config/examples/BQ/WITBOX/Configuration_adv.h
  36. 10
    0
      Marlin/src/config/examples/Cartesio/Configuration.h
  37. 53
    0
      Marlin/src/config/examples/Cartesio/Configuration_adv.h
  38. 10
    0
      Marlin/src/config/examples/Creality/CR-10/Configuration.h
  39. 53
    0
      Marlin/src/config/examples/Creality/CR-10/Configuration_adv.h
  40. 10
    0
      Marlin/src/config/examples/Creality/CR-10S/Configuration.h
  41. 53
    0
      Marlin/src/config/examples/Creality/CR-10S/Configuration_adv.h
  42. 10
    0
      Marlin/src/config/examples/Creality/CR-10mini/Configuration.h
  43. 53
    0
      Marlin/src/config/examples/Creality/CR-10mini/Configuration_adv.h
  44. 10
    0
      Marlin/src/config/examples/Creality/CR-8/Configuration.h
  45. 53
    0
      Marlin/src/config/examples/Creality/CR-8/Configuration_adv.h
  46. 10
    0
      Marlin/src/config/examples/Creality/Ender-2/Configuration.h
  47. 53
    0
      Marlin/src/config/examples/Creality/Ender-2/Configuration_adv.h
  48. 10
    0
      Marlin/src/config/examples/Creality/Ender-3/Configuration.h
  49. 53
    0
      Marlin/src/config/examples/Creality/Ender-3/Configuration_adv.h
  50. 10
    0
      Marlin/src/config/examples/Creality/Ender-4/Configuration.h
  51. 53
    0
      Marlin/src/config/examples/Creality/Ender-4/Configuration_adv.h
  52. 10
    0
      Marlin/src/config/examples/Einstart-S/Configuration.h
  53. 53
    0
      Marlin/src/config/examples/Einstart-S/Configuration_adv.h
  54. 10
    0
      Marlin/src/config/examples/Felix/Configuration.h
  55. 53
    0
      Marlin/src/config/examples/Felix/Configuration_adv.h
  56. 10
    0
      Marlin/src/config/examples/Felix/DUAL/Configuration.h
  57. 10
    0
      Marlin/src/config/examples/FlashForge/CreatorPro/Configuration.h
  58. 53
    0
      Marlin/src/config/examples/FlashForge/CreatorPro/Configuration_adv.h
  59. 10
    0
      Marlin/src/config/examples/FolgerTech/i3-2020/Configuration.h
  60. 54
    1
      Marlin/src/config/examples/FolgerTech/i3-2020/Configuration_adv.h
  61. 10
    0
      Marlin/src/config/examples/Formbot/Raptor/Configuration.h
  62. 54
    1
      Marlin/src/config/examples/Formbot/Raptor/Configuration_adv.h
  63. 10
    0
      Marlin/src/config/examples/Formbot/T_Rex_2+/Configuration.h
  64. 53
    0
      Marlin/src/config/examples/Formbot/T_Rex_2+/Configuration_adv.h
  65. 10
    0
      Marlin/src/config/examples/Formbot/T_Rex_3/Configuration.h
  66. 53
    0
      Marlin/src/config/examples/Formbot/T_Rex_3/Configuration_adv.h
  67. 10
    0
      Marlin/src/config/examples/Geeetech/GT2560/Configuration.h
  68. 10
    0
      Marlin/src/config/examples/Geeetech/I3_Pro_X-GT2560/Configuration.h
  69. 10
    0
      Marlin/src/config/examples/Geeetech/MeCreator2/Configuration.h
  70. 53
    0
      Marlin/src/config/examples/Geeetech/MeCreator2/Configuration_adv.h
  71. 10
    0
      Marlin/src/config/examples/Geeetech/Prusa i3 Pro B/bltouch/Configuration.h
  72. 10
    0
      Marlin/src/config/examples/Geeetech/Prusa i3 Pro B/noprobe/Configuration.h
  73. 10
    0
      Marlin/src/config/examples/Geeetech/Prusa i3 Pro C/Configuration.h
  74. 53
    0
      Marlin/src/config/examples/Geeetech/Prusa i3 Pro C/Configuration_adv.h
  75. 10
    0
      Marlin/src/config/examples/Geeetech/Prusa i3 Pro W/Configuration.h
  76. 53
    0
      Marlin/src/config/examples/Geeetech/Prusa i3 Pro W/Configuration_adv.h
  77. 10
    0
      Marlin/src/config/examples/Infitary/i3-M508/Configuration.h
  78. 53
    0
      Marlin/src/config/examples/Infitary/i3-M508/Configuration_adv.h
  79. 10
    0
      Marlin/src/config/examples/JGAurora/A5/Configuration.h
  80. 53
    0
      Marlin/src/config/examples/JGAurora/A5/Configuration_adv.h
  81. 10
    0
      Marlin/src/config/examples/MakerParts/Configuration.h
  82. 53
    0
      Marlin/src/config/examples/MakerParts/Configuration_adv.h
  83. 10
    0
      Marlin/src/config/examples/Malyan/M150/Configuration.h
  84. 53
    0
      Marlin/src/config/examples/Malyan/M150/Configuration_adv.h
  85. 10
    0
      Marlin/src/config/examples/Malyan/M200/Configuration.h
  86. 53
    0
      Marlin/src/config/examples/Malyan/M200/Configuration_adv.h
  87. 10
    0
      Marlin/src/config/examples/Micromake/C1/basic/Configuration.h
  88. 10
    0
      Marlin/src/config/examples/Micromake/C1/enhanced/Configuration.h
  89. 53
    0
      Marlin/src/config/examples/Micromake/C1/enhanced/Configuration_adv.h
  90. 10
    0
      Marlin/src/config/examples/Mks/Robin/Configuration.h
  91. 53
    0
      Marlin/src/config/examples/Mks/Robin/Configuration_adv.h
  92. 10
    0
      Marlin/src/config/examples/Mks/Sbase/Configuration.h
  93. 53
    0
      Marlin/src/config/examples/Mks/Sbase/Configuration_adv.h
  94. 10
    0
      Marlin/src/config/examples/RapideLite/RL200/Configuration.h
  95. 53
    0
      Marlin/src/config/examples/RapideLite/RL200/Configuration_adv.h
  96. 10
    0
      Marlin/src/config/examples/RepRapPro/Huxley/Configuration.h
  97. 10
    0
      Marlin/src/config/examples/RepRapWorld/Megatronics/Configuration.h
  98. 10
    0
      Marlin/src/config/examples/RigidBot/Configuration.h
  99. 53
    0
      Marlin/src/config/examples/RigidBot/Configuration_adv.h
  100. 0
    0
      Marlin/src/config/examples/SCARA/Configuration.h

+ 10
- 0
Marlin/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 54
- 1
Marlin/Configuration_adv.h Visa fil

@@ -1463,7 +1463,7 @@
1463 1463
    * Define you own with
1464 1464
    * { <off_time[1..15]>, <hysteresis_end[-3..12]>, hysteresis_start[1..8] }
1465 1465
    */
1466
-  #define CHOPPER_TIMING CHOPPER_DEFAULT_12V
1466
+  #define CHOPPER_TIMING { 4, -2, 1 }
1467 1467
 
1468 1468
   /**
1469 1469
    * Monitor Trinamic TMC2130 and TMC2208 drivers for error conditions,
@@ -2104,6 +2104,59 @@
2104 2104
   #define WIFI_PWD  "Wifi Password"
2105 2105
 #endif
2106 2106
 
2107
+/**
2108
+ * Prusa Multi-Material Unit v2
2109
+ * Enable in Configuration.h
2110
+ */
2111
+#if ENABLED(PRUSA_MMU2)
2112
+
2113
+  // Serial port used for communication with MMU2.
2114
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2115
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2116
+  #define INTERNAL_SERIAL_PORT 2
2117
+  #define MMU2_SERIAL internalSerial
2118
+
2119
+  // Use hardware reset for MMU if a pin is defined for it
2120
+  //#define MMU2_RST_PIN 23
2121
+
2122
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2123
+  //#define MMU2_MODE_12V
2124
+
2125
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2126
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2127
+
2128
+  // Add an LCD menu for MMU2
2129
+  //#define MMU2_MENUS
2130
+  #if ENABLED(MMU2_MENUS)
2131
+    // Settings for filament load / unload from the LCD menu.
2132
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2133
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2134
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2135
+      {  7.2,  562 }, \
2136
+      { 14.4,  871 }, \
2137
+      { 36.0, 1393 }, \
2138
+      { 14.4,  871 }, \
2139
+      { 50.0,  198 }
2140
+
2141
+    #define MMU2_RAMMING_SEQUENCE \
2142
+      {   1.0, 1000 }, \
2143
+      {   1.0, 1500 }, \
2144
+      {   2.0, 2000 }, \
2145
+      {   1.5, 3000 }, \
2146
+      {   2.5, 4000 }, \
2147
+      { -15.0, 5000 }, \
2148
+      { -14.0, 1200 }, \
2149
+      {  -6.0,  600 }, \
2150
+      {  10.0,  700 }, \
2151
+      { -10.0,  400 }, \
2152
+      { -50.0, 2000 }
2153
+
2154
+  #endif
2155
+
2156
+  //#define MMU2_DEBUG  // Write debug info to serial output
2157
+
2158
+#endif // PRUSA_MMU2
2159
+
2107 2160
 // @section develop
2108 2161
 
2109 2162
 /**

+ 18
- 0
Marlin/src/HAL/HAL_AVR/MarlinSerial.cpp Visa fil

@@ -739,6 +739,24 @@
739 739
 
740 740
 #endif // !USBCON && (UBRRH || UBRR0H || UBRR1H || UBRR2H || UBRR3H)
741 741
 
742
+
743
+#if defined(INTERNAL_SERIAL_PORT)
744
+
745
+    ISR(SERIAL_REGNAME(USART,INTERNAL_SERIAL_PORT,_RX_vect)) {
746
+      MarlinSerial<MarlinInternalSerialCfg<INTERNAL_SERIAL_PORT>>::store_rxd_char();
747
+    }
748
+
749
+    ISR(SERIAL_REGNAME(USART,INTERNAL_SERIAL_PORT,_UDRE_vect)) {
750
+      MarlinSerial<MarlinInternalSerialCfg<INTERNAL_SERIAL_PORT>>::_tx_udr_empty_irq();
751
+    }
752
+
753
+    // Preinstantiate
754
+    template class MarlinSerial<MarlinInternalSerialCfg<INTERNAL_SERIAL_PORT>>;
755
+
756
+    // Instantiate
757
+    MarlinSerial<MarlinInternalSerialCfg<INTERNAL_SERIAL_PORT>> internalSerial;
758
+
759
+#endif
742 760
 // For AT90USB targets use the UART for BT interfacing
743 761
 #if defined(USBCON) && ENABLED(BLUETOOTH)
744 762
   HardwareSerial bluetoothSerial;

+ 18
- 0
Marlin/src/HAL/HAL_AVR/MarlinSerial.h Visa fil

@@ -275,6 +275,24 @@
275 275
 
276 276
 #endif // !USBCON
277 277
 
278
+
279
+#if defined(INTERNAL_SERIAL_PORT)
280
+  template <uint8_t serial>
281
+  struct MarlinInternalSerialCfg {
282
+    static constexpr int PORT               = serial;
283
+    static constexpr unsigned int RX_SIZE   = 32;
284
+    static constexpr unsigned int TX_SIZE   = 32;
285
+    static constexpr bool XONOFF            = false;
286
+    static constexpr bool EMERGENCYPARSER   = false;
287
+    static constexpr bool DROPPED_RX        = false;
288
+    static constexpr bool RX_OVERRUNS       = false;
289
+    static constexpr bool RX_FRAMING_ERRORS = false;
290
+    static constexpr bool MAX_RX_QUEUED     = false;
291
+  };
292
+
293
+  extern MarlinSerial<MarlinInternalSerialCfg<INTERNAL_SERIAL_PORT>> internalSerial;
294
+#endif
295
+
278 296
 // Use the UART for Bluetooth in AT90USB configurations
279 297
 #if defined(USBCON) && ENABLED(BLUETOOTH)
280 298
   extern HardwareSerial bluetoothSerial;

+ 12
- 0
Marlin/src/Marlin.cpp Visa fil

@@ -156,6 +156,10 @@
156 156
   #include "feature/controllerfan.h"
157 157
 #endif
158 158
 
159
+#if ENABLED(PRUSA_MMU2)
160
+  #include "feature/prusa_MMU2/mmu2.h"
161
+#endif
162
+
159 163
 #if ENABLED(EXTENSIBLE_UI)
160 164
   #include "lcd/extensible_ui/ui_api.h"
161 165
 #endif
@@ -632,6 +636,10 @@ void idle(
632 636
   #if ENABLED(USB_FLASH_DRIVE_SUPPORT)
633 637
     Sd2Card::idle();
634 638
   #endif
639
+
640
+  #if ENABLED(PRUSA_MMU2)
641
+    mmu2.mmuLoop();
642
+  #endif
635 643
 }
636 644
 
637 645
 /**
@@ -984,6 +992,10 @@ void setup() {
984 992
   #if HAS_TRINAMIC && DISABLED(PS_DEFAULT_OFF)
985 993
     test_tmc_connection(true, true, true, true);
986 994
   #endif
995
+
996
+  #if ENABLED(PRUSA_MMU2)
997
+    mmu2.init();
998
+  #endif
987 999
 }
988 1000
 
989 1001
 /**

+ 10
- 0
Marlin/src/config/default/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 54
- 1
Marlin/src/config/default/Configuration_adv.h Visa fil

@@ -1463,7 +1463,7 @@
1463 1463
    * Define you own with
1464 1464
    * { <off_time[1..15]>, <hysteresis_end[-3..12]>, hysteresis_start[1..8] }
1465 1465
    */
1466
-  #define CHOPPER_TIMING CHOPPER_DEFAULT_12V
1466
+  #define CHOPPER_TIMING { 4, -2, 1 }
1467 1467
 
1468 1468
   /**
1469 1469
    * Monitor Trinamic TMC2130 and TMC2208 drivers for error conditions,
@@ -2104,6 +2104,59 @@
2104 2104
   #define WIFI_PWD  "Wifi Password"
2105 2105
 #endif
2106 2106
 
2107
+/**
2108
+ * Prusa Multi-Material Unit v2
2109
+ * Enable in Configuration.h
2110
+ */
2111
+#if ENABLED(PRUSA_MMU2)
2112
+
2113
+  // Serial port used for communication with MMU2.
2114
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2115
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2116
+  #define INTERNAL_SERIAL_PORT 2
2117
+  #define MMU2_SERIAL internalSerial
2118
+
2119
+  // Use hardware reset for MMU if a pin is defined for it
2120
+  //#define MMU2_RST_PIN 23
2121
+
2122
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2123
+  //#define MMU2_MODE_12V
2124
+
2125
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2126
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2127
+
2128
+  // Add an LCD menu for MMU2
2129
+  //#define MMU2_MENUS
2130
+  #if ENABLED(MMU2_MENUS)
2131
+    // Settings for filament load / unload from the LCD menu.
2132
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2133
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2134
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2135
+      {  7.2,  562 }, \
2136
+      { 14.4,  871 }, \
2137
+      { 36.0, 1393 }, \
2138
+      { 14.4,  871 }, \
2139
+      { 50.0,  198 }
2140
+
2141
+    #define MMU2_RAMMING_SEQUENCE \
2142
+      {   1.0, 1000 }, \
2143
+      {   1.0, 1500 }, \
2144
+      {   2.0, 2000 }, \
2145
+      {   1.5, 3000 }, \
2146
+      {   2.5, 4000 }, \
2147
+      { -15.0, 5000 }, \
2148
+      { -14.0, 1200 }, \
2149
+      {  -6.0,  600 }, \
2150
+      {  10.0,  700 }, \
2151
+      { -10.0,  400 }, \
2152
+      { -50.0, 2000 }
2153
+
2154
+  #endif
2155
+
2156
+  //#define MMU2_DEBUG  // Write debug info to serial output
2157
+
2158
+#endif // PRUSA_MMU2
2159
+
2107 2160
 // @section develop
2108 2161
 
2109 2162
 /**

+ 10
- 0
Marlin/src/config/examples/3DFabXYZ/Migbot/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/3DFabXYZ/Migbot/Configuration_adv.h Visa fil

@@ -2106,6 +2106,59 @@
2106 2106
   #define WIFI_PWD  "Wifi Password"
2107 2107
 #endif
2108 2108
 
2109
+/**
2110
+ * Prusa Multi-Material Unit v2
2111
+ * Enable in Configuration.h
2112
+ */
2113
+#if ENABLED(PRUSA_MMU2)
2114
+
2115
+  // Serial port used for communication with MMU2.
2116
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2117
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2118
+  #define INTERNAL_SERIAL_PORT 2
2119
+  #define MMU2_SERIAL internalSerial
2120
+
2121
+  // Use hardware reset for MMU if a pin is defined for it
2122
+  //#define MMU2_RST_PIN 23
2123
+
2124
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2125
+  //#define MMU2_MODE_12V
2126
+
2127
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2128
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2129
+
2130
+  // Add an LCD menu for MMU2
2131
+  //#define MMU2_MENUS
2132
+  #if ENABLED(MMU2_MENUS)
2133
+    // Settings for filament load / unload from the LCD menu.
2134
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2135
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2136
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2137
+      {  7.2,  562 }, \
2138
+      { 14.4,  871 }, \
2139
+      { 36.0, 1393 }, \
2140
+      { 14.4,  871 }, \
2141
+      { 50.0,  198 }
2142
+
2143
+    #define MMU2_RAMMING_SEQUENCE \
2144
+      {   1.0, 1000 }, \
2145
+      {   1.0, 1500 }, \
2146
+      {   2.0, 2000 }, \
2147
+      {   1.5, 3000 }, \
2148
+      {   2.5, 4000 }, \
2149
+      { -15.0, 5000 }, \
2150
+      { -14.0, 1200 }, \
2151
+      {  -6.0,  600 }, \
2152
+      {  10.0,  700 }, \
2153
+      { -10.0,  400 }, \
2154
+      { -50.0, 2000 }
2155
+
2156
+  #endif
2157
+
2158
+  //#define MMU2_DEBUG  // Write debug info to serial output
2159
+
2160
+#endif // PRUSA_MMU2
2161
+
2109 2162
 // @section develop
2110 2163
 
2111 2164
 /**

+ 10
- 0
Marlin/src/config/examples/AlephObjects/TAZ4/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/AlephObjects/TAZ4/Configuration_adv.h Visa fil

@@ -2103,6 +2103,59 @@
2103 2103
   #define WIFI_PWD  "Wifi Password"
2104 2104
 #endif
2105 2105
 
2106
+/**
2107
+ * Prusa Multi-Material Unit v2
2108
+ * Enable in Configuration.h
2109
+ */
2110
+#if ENABLED(PRUSA_MMU2)
2111
+
2112
+  // Serial port used for communication with MMU2.
2113
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2114
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2115
+  #define INTERNAL_SERIAL_PORT 2
2116
+  #define MMU2_SERIAL internalSerial
2117
+
2118
+  // Use hardware reset for MMU if a pin is defined for it
2119
+  //#define MMU2_RST_PIN 23
2120
+
2121
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2122
+  //#define MMU2_MODE_12V
2123
+
2124
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2125
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2126
+
2127
+  // Add an LCD menu for MMU2
2128
+  //#define MMU2_MENUS
2129
+  #if ENABLED(MMU2_MENUS)
2130
+    // Settings for filament load / unload from the LCD menu.
2131
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2132
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2133
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2134
+      {  7.2,  562 }, \
2135
+      { 14.4,  871 }, \
2136
+      { 36.0, 1393 }, \
2137
+      { 14.4,  871 }, \
2138
+      { 50.0,  198 }
2139
+
2140
+    #define MMU2_RAMMING_SEQUENCE \
2141
+      {   1.0, 1000 }, \
2142
+      {   1.0, 1500 }, \
2143
+      {   2.0, 2000 }, \
2144
+      {   1.5, 3000 }, \
2145
+      {   2.5, 4000 }, \
2146
+      { -15.0, 5000 }, \
2147
+      { -14.0, 1200 }, \
2148
+      {  -6.0,  600 }, \
2149
+      {  10.0,  700 }, \
2150
+      { -10.0,  400 }, \
2151
+      { -50.0, 2000 }
2152
+
2153
+  #endif
2154
+
2155
+  //#define MMU2_DEBUG  // Write debug info to serial output
2156
+
2157
+#endif // PRUSA_MMU2
2158
+
2106 2159
 // @section develop
2107 2160
 
2108 2161
 /**

+ 10
- 0
Marlin/src/config/examples/AliExpress/CL-260/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 10
- 0
Marlin/src/config/examples/Anet/A2/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/Anet/A2/Configuration_adv.h Visa fil

@@ -2103,6 +2103,59 @@
2103 2103
   #define WIFI_PWD  "Wifi Password"
2104 2104
 #endif
2105 2105
 
2106
+/**
2107
+ * Prusa Multi-Material Unit v2
2108
+ * Enable in Configuration.h
2109
+ */
2110
+#if ENABLED(PRUSA_MMU2)
2111
+
2112
+  // Serial port used for communication with MMU2.
2113
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2114
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2115
+  #define INTERNAL_SERIAL_PORT 2
2116
+  #define MMU2_SERIAL internalSerial
2117
+
2118
+  // Use hardware reset for MMU if a pin is defined for it
2119
+  //#define MMU2_RST_PIN 23
2120
+
2121
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2122
+  //#define MMU2_MODE_12V
2123
+
2124
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2125
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2126
+
2127
+  // Add an LCD menu for MMU2
2128
+  //#define MMU2_MENUS
2129
+  #if ENABLED(MMU2_MENUS)
2130
+    // Settings for filament load / unload from the LCD menu.
2131
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2132
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2133
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2134
+      {  7.2,  562 }, \
2135
+      { 14.4,  871 }, \
2136
+      { 36.0, 1393 }, \
2137
+      { 14.4,  871 }, \
2138
+      { 50.0,  198 }
2139
+
2140
+    #define MMU2_RAMMING_SEQUENCE \
2141
+      {   1.0, 1000 }, \
2142
+      {   1.0, 1500 }, \
2143
+      {   2.0, 2000 }, \
2144
+      {   1.5, 3000 }, \
2145
+      {   2.5, 4000 }, \
2146
+      { -15.0, 5000 }, \
2147
+      { -14.0, 1200 }, \
2148
+      {  -6.0,  600 }, \
2149
+      {  10.0,  700 }, \
2150
+      { -10.0,  400 }, \
2151
+      { -50.0, 2000 }
2152
+
2153
+  #endif
2154
+
2155
+  //#define MMU2_DEBUG  // Write debug info to serial output
2156
+
2157
+#endif // PRUSA_MMU2
2158
+
2106 2159
 // @section develop
2107 2160
 
2108 2161
 /**

+ 10
- 0
Marlin/src/config/examples/Anet/A2plus/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/Anet/A2plus/Configuration_adv.h Visa fil

@@ -2103,6 +2103,59 @@
2103 2103
   #define WIFI_PWD  "Wifi Password"
2104 2104
 #endif
2105 2105
 
2106
+/**
2107
+ * Prusa Multi-Material Unit v2
2108
+ * Enable in Configuration.h
2109
+ */
2110
+#if ENABLED(PRUSA_MMU2)
2111
+
2112
+  // Serial port used for communication with MMU2.
2113
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2114
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2115
+  #define INTERNAL_SERIAL_PORT 2
2116
+  #define MMU2_SERIAL internalSerial
2117
+
2118
+  // Use hardware reset for MMU if a pin is defined for it
2119
+  //#define MMU2_RST_PIN 23
2120
+
2121
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2122
+  //#define MMU2_MODE_12V
2123
+
2124
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2125
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2126
+
2127
+  // Add an LCD menu for MMU2
2128
+  //#define MMU2_MENUS
2129
+  #if ENABLED(MMU2_MENUS)
2130
+    // Settings for filament load / unload from the LCD menu.
2131
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2132
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2133
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2134
+      {  7.2,  562 }, \
2135
+      { 14.4,  871 }, \
2136
+      { 36.0, 1393 }, \
2137
+      { 14.4,  871 }, \
2138
+      { 50.0,  198 }
2139
+
2140
+    #define MMU2_RAMMING_SEQUENCE \
2141
+      {   1.0, 1000 }, \
2142
+      {   1.0, 1500 }, \
2143
+      {   2.0, 2000 }, \
2144
+      {   1.5, 3000 }, \
2145
+      {   2.5, 4000 }, \
2146
+      { -15.0, 5000 }, \
2147
+      { -14.0, 1200 }, \
2148
+      {  -6.0,  600 }, \
2149
+      {  10.0,  700 }, \
2150
+      { -10.0,  400 }, \
2151
+      { -50.0, 2000 }
2152
+
2153
+  #endif
2154
+
2155
+  //#define MMU2_DEBUG  // Write debug info to serial output
2156
+
2157
+#endif // PRUSA_MMU2
2158
+
2106 2159
 // @section develop
2107 2160
 
2108 2161
 /**

+ 10
- 0
Marlin/src/config/examples/Anet/A6/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/Anet/A6/Configuration_adv.h Visa fil

@@ -2102,6 +2102,59 @@
2102 2102
   #define WIFI_PWD  "Wifi Password"
2103 2103
 #endif
2104 2104
 
2105
+/**
2106
+ * Prusa Multi-Material Unit v2
2107
+ * Enable in Configuration.h
2108
+ */
2109
+#if ENABLED(PRUSA_MMU2)
2110
+
2111
+  // Serial port used for communication with MMU2.
2112
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2113
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2114
+  #define INTERNAL_SERIAL_PORT 2
2115
+  #define MMU2_SERIAL internalSerial
2116
+
2117
+  // Use hardware reset for MMU if a pin is defined for it
2118
+  //#define MMU2_RST_PIN 23
2119
+
2120
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2121
+  //#define MMU2_MODE_12V
2122
+
2123
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2124
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2125
+
2126
+  // Add an LCD menu for MMU2
2127
+  //#define MMU2_MENUS
2128
+  #if ENABLED(MMU2_MENUS)
2129
+    // Settings for filament load / unload from the LCD menu.
2130
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2131
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2132
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2133
+      {  7.2,  562 }, \
2134
+      { 14.4,  871 }, \
2135
+      { 36.0, 1393 }, \
2136
+      { 14.4,  871 }, \
2137
+      { 50.0,  198 }
2138
+
2139
+    #define MMU2_RAMMING_SEQUENCE \
2140
+      {   1.0, 1000 }, \
2141
+      {   1.0, 1500 }, \
2142
+      {   2.0, 2000 }, \
2143
+      {   1.5, 3000 }, \
2144
+      {   2.5, 4000 }, \
2145
+      { -15.0, 5000 }, \
2146
+      { -14.0, 1200 }, \
2147
+      {  -6.0,  600 }, \
2148
+      {  10.0,  700 }, \
2149
+      { -10.0,  400 }, \
2150
+      { -50.0, 2000 }
2151
+
2152
+  #endif
2153
+
2154
+  //#define MMU2_DEBUG  // Write debug info to serial output
2155
+
2156
+#endif // PRUSA_MMU2
2157
+
2105 2158
 // @section develop
2106 2159
 
2107 2160
 /**

+ 10
- 0
Marlin/src/config/examples/Anet/A8/Configuration.h Visa fil

@@ -175,6 +175,16 @@
175 175
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
176 176
 #endif
177 177
 
178
+/**
179
+ * Prusa Multi-Material Unit v2
180
+ *
181
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
182
+ * Requires EXTRUDERS = 5
183
+ *
184
+ * For additional configuration see Configuration_adv.h
185
+ */
186
+//#define PRUSA_MMU2
187
+
178 188
 // A dual extruder that uses a single stepper motor
179 189
 //#define SWITCHING_EXTRUDER
180 190
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/Anet/A8/Configuration_adv.h Visa fil

@@ -2103,6 +2103,59 @@
2103 2103
   #define WIFI_PWD  "Wifi Password"
2104 2104
 #endif
2105 2105
 
2106
+/**
2107
+ * Prusa Multi-Material Unit v2
2108
+ * Enable in Configuration.h
2109
+ */
2110
+#if ENABLED(PRUSA_MMU2)
2111
+
2112
+  // Serial port used for communication with MMU2.
2113
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2114
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2115
+  #define INTERNAL_SERIAL_PORT 2
2116
+  #define MMU2_SERIAL internalSerial
2117
+
2118
+  // Use hardware reset for MMU if a pin is defined for it
2119
+  //#define MMU2_RST_PIN 23
2120
+
2121
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2122
+  //#define MMU2_MODE_12V
2123
+
2124
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2125
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2126
+
2127
+  // Add an LCD menu for MMU2
2128
+  //#define MMU2_MENUS
2129
+  #if ENABLED(MMU2_MENUS)
2130
+    // Settings for filament load / unload from the LCD menu.
2131
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2132
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2133
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2134
+      {  7.2,  562 }, \
2135
+      { 14.4,  871 }, \
2136
+      { 36.0, 1393 }, \
2137
+      { 14.4,  871 }, \
2138
+      { 50.0,  198 }
2139
+
2140
+    #define MMU2_RAMMING_SEQUENCE \
2141
+      {   1.0, 1000 }, \
2142
+      {   1.0, 1500 }, \
2143
+      {   2.0, 2000 }, \
2144
+      {   1.5, 3000 }, \
2145
+      {   2.5, 4000 }, \
2146
+      { -15.0, 5000 }, \
2147
+      { -14.0, 1200 }, \
2148
+      {  -6.0,  600 }, \
2149
+      {  10.0,  700 }, \
2150
+      { -10.0,  400 }, \
2151
+      { -50.0, 2000 }
2152
+
2153
+  #endif
2154
+
2155
+  //#define MMU2_DEBUG  // Write debug info to serial output
2156
+
2157
+#endif // PRUSA_MMU2
2158
+
2106 2159
 // @section develop
2107 2160
 
2108 2161
 /**

+ 11
- 1
Marlin/src/config/examples/AnyCubic/i3/Configuration.h Visa fil

@@ -175,6 +175,16 @@
175 175
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
176 176
 #endif
177 177
 
178
+/**
179
+ * Prusa Multi-Material Unit v2
180
+ *
181
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
182
+ * Requires EXTRUDERS = 5
183
+ *
184
+ * For additional configuration see Configuration_adv.h
185
+ */
186
+//#define PRUSA_MMU2
187
+
178 188
 // A dual extruder that uses a single stepper motor
179 189
 //#define SWITCHING_EXTRUDER
180 190
 #if ENABLED(SWITCHING_EXTRUDER)
@@ -403,7 +413,7 @@
403 413
   // ANYCUBIC I3 240C and 8 cycles
404 414
   #define  DEFAULT_Kp 17.80
405 415
   #define  DEFAULT_Ki 0.84
406
-  #define  DEFAULT_Kd 64.84 
416
+  #define  DEFAULT_Kd 64.84
407 417
 
408 418
   // Ultimaker
409 419
   //#define DEFAULT_Kp 22.2

+ 53
- 0
Marlin/src/config/examples/AnyCubic/i3/Configuration_adv.h Visa fil

@@ -2104,6 +2104,59 @@
2104 2104
   #define WIFI_PWD  "Wifi Password"
2105 2105
 #endif
2106 2106
 
2107
+/**
2108
+ * Prusa Multi-Material Unit v2
2109
+ * Enable in Configuration.h
2110
+ */
2111
+#if ENABLED(PRUSA_MMU2)
2112
+
2113
+  // Serial port used for communication with MMU2.
2114
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2115
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2116
+  #define INTERNAL_SERIAL_PORT 2
2117
+  #define MMU2_SERIAL internalSerial
2118
+
2119
+  // Use hardware reset for MMU if a pin is defined for it
2120
+  //#define MMU2_RST_PIN 23
2121
+
2122
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2123
+  //#define MMU2_MODE_12V
2124
+
2125
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2126
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2127
+
2128
+  // Add an LCD menu for MMU2
2129
+  //#define MMU2_MENUS
2130
+  #if ENABLED(MMU2_MENUS)
2131
+    // Settings for filament load / unload from the LCD menu.
2132
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2133
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2134
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2135
+      {  7.2,  562 }, \
2136
+      { 14.4,  871 }, \
2137
+      { 36.0, 1393 }, \
2138
+      { 14.4,  871 }, \
2139
+      { 50.0,  198 }
2140
+
2141
+    #define MMU2_RAMMING_SEQUENCE \
2142
+      {   1.0, 1000 }, \
2143
+      {   1.0, 1500 }, \
2144
+      {   2.0, 2000 }, \
2145
+      {   1.5, 3000 }, \
2146
+      {   2.5, 4000 }, \
2147
+      { -15.0, 5000 }, \
2148
+      { -14.0, 1200 }, \
2149
+      {  -6.0,  600 }, \
2150
+      {  10.0,  700 }, \
2151
+      { -10.0,  400 }, \
2152
+      { -50.0, 2000 }
2153
+
2154
+  #endif
2155
+
2156
+  //#define MMU2_DEBUG  // Write debug info to serial output
2157
+
2158
+#endif // PRUSA_MMU2
2159
+
2107 2160
 // @section develop
2108 2161
 
2109 2162
 /**

+ 10
- 0
Marlin/src/config/examples/ArmEd/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/ArmEd/Configuration_adv.h Visa fil

@@ -2108,6 +2108,59 @@
2108 2108
   #define WIFI_PWD  "Wifi Password"
2109 2109
 #endif
2110 2110
 
2111
+/**
2112
+ * Prusa Multi-Material Unit v2
2113
+ * Enable in Configuration.h
2114
+ */
2115
+#if ENABLED(PRUSA_MMU2)
2116
+
2117
+  // Serial port used for communication with MMU2.
2118
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2119
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2120
+  #define INTERNAL_SERIAL_PORT 2
2121
+  #define MMU2_SERIAL internalSerial
2122
+
2123
+  // Use hardware reset for MMU if a pin is defined for it
2124
+  //#define MMU2_RST_PIN 23
2125
+
2126
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2127
+  //#define MMU2_MODE_12V
2128
+
2129
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2130
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2131
+
2132
+  // Add an LCD menu for MMU2
2133
+  //#define MMU2_MENUS
2134
+  #if ENABLED(MMU2_MENUS)
2135
+    // Settings for filament load / unload from the LCD menu.
2136
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2137
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2138
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2139
+      {  7.2,  562 }, \
2140
+      { 14.4,  871 }, \
2141
+      { 36.0, 1393 }, \
2142
+      { 14.4,  871 }, \
2143
+      { 50.0,  198 }
2144
+
2145
+    #define MMU2_RAMMING_SEQUENCE \
2146
+      {   1.0, 1000 }, \
2147
+      {   1.0, 1500 }, \
2148
+      {   2.0, 2000 }, \
2149
+      {   1.5, 3000 }, \
2150
+      {   2.5, 4000 }, \
2151
+      { -15.0, 5000 }, \
2152
+      { -14.0, 1200 }, \
2153
+      {  -6.0,  600 }, \
2154
+      {  10.0,  700 }, \
2155
+      { -10.0,  400 }, \
2156
+      { -50.0, 2000 }
2157
+
2158
+  #endif
2159
+
2160
+  //#define MMU2_DEBUG  // Write debug info to serial output
2161
+
2162
+#endif // PRUSA_MMU2
2163
+
2111 2164
 // @section develop
2112 2165
 
2113 2166
 /**

+ 10
- 0
Marlin/src/config/examples/Azteeg/X5GT/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 10
- 0
Marlin/src/config/examples/BIBO/TouchX/cyclops/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/BIBO/TouchX/cyclops/Configuration_adv.h Visa fil

@@ -2102,6 +2102,59 @@
2102 2102
   #define WIFI_PWD  "Wifi Password"
2103 2103
 #endif
2104 2104
 
2105
+/**
2106
+ * Prusa Multi-Material Unit v2
2107
+ * Enable in Configuration.h
2108
+ */
2109
+#if ENABLED(PRUSA_MMU2)
2110
+
2111
+  // Serial port used for communication with MMU2.
2112
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2113
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2114
+  #define INTERNAL_SERIAL_PORT 2
2115
+  #define MMU2_SERIAL internalSerial
2116
+
2117
+  // Use hardware reset for MMU if a pin is defined for it
2118
+  //#define MMU2_RST_PIN 23
2119
+
2120
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2121
+  //#define MMU2_MODE_12V
2122
+
2123
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2124
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2125
+
2126
+  // Add an LCD menu for MMU2
2127
+  //#define MMU2_MENUS
2128
+  #if ENABLED(MMU2_MENUS)
2129
+    // Settings for filament load / unload from the LCD menu.
2130
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2131
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2132
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2133
+      {  7.2,  562 }, \
2134
+      { 14.4,  871 }, \
2135
+      { 36.0, 1393 }, \
2136
+      { 14.4,  871 }, \
2137
+      { 50.0,  198 }
2138
+
2139
+    #define MMU2_RAMMING_SEQUENCE \
2140
+      {   1.0, 1000 }, \
2141
+      {   1.0, 1500 }, \
2142
+      {   2.0, 2000 }, \
2143
+      {   1.5, 3000 }, \
2144
+      {   2.5, 4000 }, \
2145
+      { -15.0, 5000 }, \
2146
+      { -14.0, 1200 }, \
2147
+      {  -6.0,  600 }, \
2148
+      {  10.0,  700 }, \
2149
+      { -10.0,  400 }, \
2150
+      { -50.0, 2000 }
2151
+
2152
+  #endif
2153
+
2154
+  //#define MMU2_DEBUG  // Write debug info to serial output
2155
+
2156
+#endif // PRUSA_MMU2
2157
+
2105 2158
 // @section develop
2106 2159
 
2107 2160
 /**

+ 10
- 0
Marlin/src/config/examples/BIBO/TouchX/default/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/BIBO/TouchX/default/Configuration_adv.h Visa fil

@@ -2103,6 +2103,59 @@
2103 2103
   #define WIFI_PWD  "Wifi Password"
2104 2104
 #endif
2105 2105
 
2106
+/**
2107
+ * Prusa Multi-Material Unit v2
2108
+ * Enable in Configuration.h
2109
+ */
2110
+#if ENABLED(PRUSA_MMU2)
2111
+
2112
+  // Serial port used for communication with MMU2.
2113
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2114
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2115
+  #define INTERNAL_SERIAL_PORT 2
2116
+  #define MMU2_SERIAL internalSerial
2117
+
2118
+  // Use hardware reset for MMU if a pin is defined for it
2119
+  //#define MMU2_RST_PIN 23
2120
+
2121
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2122
+  //#define MMU2_MODE_12V
2123
+
2124
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2125
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2126
+
2127
+  // Add an LCD menu for MMU2
2128
+  //#define MMU2_MENUS
2129
+  #if ENABLED(MMU2_MENUS)
2130
+    // Settings for filament load / unload from the LCD menu.
2131
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2132
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2133
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2134
+      {  7.2,  562 }, \
2135
+      { 14.4,  871 }, \
2136
+      { 36.0, 1393 }, \
2137
+      { 14.4,  871 }, \
2138
+      { 50.0,  198 }
2139
+
2140
+    #define MMU2_RAMMING_SEQUENCE \
2141
+      {   1.0, 1000 }, \
2142
+      {   1.0, 1500 }, \
2143
+      {   2.0, 2000 }, \
2144
+      {   1.5, 3000 }, \
2145
+      {   2.5, 4000 }, \
2146
+      { -15.0, 5000 }, \
2147
+      { -14.0, 1200 }, \
2148
+      {  -6.0,  600 }, \
2149
+      {  10.0,  700 }, \
2150
+      { -10.0,  400 }, \
2151
+      { -50.0, 2000 }
2152
+
2153
+  #endif
2154
+
2155
+  //#define MMU2_DEBUG  // Write debug info to serial output
2156
+
2157
+#endif // PRUSA_MMU2
2158
+
2106 2159
 // @section develop
2107 2160
 
2108 2161
 /**

+ 10
- 0
Marlin/src/config/examples/BQ/Hephestos/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/BQ/Hephestos/Configuration_adv.h Visa fil

@@ -2103,6 +2103,59 @@
2103 2103
   #define WIFI_PWD  "Wifi Password"
2104 2104
 #endif
2105 2105
 
2106
+/**
2107
+ * Prusa Multi-Material Unit v2
2108
+ * Enable in Configuration.h
2109
+ */
2110
+#if ENABLED(PRUSA_MMU2)
2111
+
2112
+  // Serial port used for communication with MMU2.
2113
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2114
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2115
+  #define INTERNAL_SERIAL_PORT 2
2116
+  #define MMU2_SERIAL internalSerial
2117
+
2118
+  // Use hardware reset for MMU if a pin is defined for it
2119
+  //#define MMU2_RST_PIN 23
2120
+
2121
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2122
+  //#define MMU2_MODE_12V
2123
+
2124
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2125
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2126
+
2127
+  // Add an LCD menu for MMU2
2128
+  //#define MMU2_MENUS
2129
+  #if ENABLED(MMU2_MENUS)
2130
+    // Settings for filament load / unload from the LCD menu.
2131
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2132
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2133
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2134
+      {  7.2,  562 }, \
2135
+      { 14.4,  871 }, \
2136
+      { 36.0, 1393 }, \
2137
+      { 14.4,  871 }, \
2138
+      { 50.0,  198 }
2139
+
2140
+    #define MMU2_RAMMING_SEQUENCE \
2141
+      {   1.0, 1000 }, \
2142
+      {   1.0, 1500 }, \
2143
+      {   2.0, 2000 }, \
2144
+      {   1.5, 3000 }, \
2145
+      {   2.5, 4000 }, \
2146
+      { -15.0, 5000 }, \
2147
+      { -14.0, 1200 }, \
2148
+      {  -6.0,  600 }, \
2149
+      {  10.0,  700 }, \
2150
+      { -10.0,  400 }, \
2151
+      { -50.0, 2000 }
2152
+
2153
+  #endif
2154
+
2155
+  //#define MMU2_DEBUG  // Write debug info to serial output
2156
+
2157
+#endif // PRUSA_MMU2
2158
+
2106 2159
 // @section develop
2107 2160
 
2108 2161
 /**

+ 10
- 0
Marlin/src/config/examples/BQ/Hephestos_2/Configuration.h Visa fil

@@ -182,6 +182,16 @@
182 182
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
183 183
 #endif
184 184
 
185
+/**
186
+ * Prusa Multi-Material Unit v2
187
+ *
188
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
189
+ * Requires EXTRUDERS = 5
190
+ *
191
+ * For additional configuration see Configuration_adv.h
192
+ */
193
+//#define PRUSA_MMU2
194
+
185 195
 // A dual extruder that uses a single stepper motor
186 196
 //#define SWITCHING_EXTRUDER
187 197
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/BQ/Hephestos_2/Configuration_adv.h Visa fil

@@ -2111,6 +2111,59 @@
2111 2111
   #define WIFI_PWD  "Wifi Password"
2112 2112
 #endif
2113 2113
 
2114
+/**
2115
+ * Prusa Multi-Material Unit v2
2116
+ * Enable in Configuration.h
2117
+ */
2118
+#if ENABLED(PRUSA_MMU2)
2119
+
2120
+  // Serial port used for communication with MMU2.
2121
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2122
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2123
+  #define INTERNAL_SERIAL_PORT 2
2124
+  #define MMU2_SERIAL internalSerial
2125
+
2126
+  // Use hardware reset for MMU if a pin is defined for it
2127
+  //#define MMU2_RST_PIN 23
2128
+
2129
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2130
+  //#define MMU2_MODE_12V
2131
+
2132
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2133
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2134
+
2135
+  // Add an LCD menu for MMU2
2136
+  //#define MMU2_MENUS
2137
+  #if ENABLED(MMU2_MENUS)
2138
+    // Settings for filament load / unload from the LCD menu.
2139
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2140
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2141
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2142
+      {  7.2,  562 }, \
2143
+      { 14.4,  871 }, \
2144
+      { 36.0, 1393 }, \
2145
+      { 14.4,  871 }, \
2146
+      { 50.0,  198 }
2147
+
2148
+    #define MMU2_RAMMING_SEQUENCE \
2149
+      {   1.0, 1000 }, \
2150
+      {   1.0, 1500 }, \
2151
+      {   2.0, 2000 }, \
2152
+      {   1.5, 3000 }, \
2153
+      {   2.5, 4000 }, \
2154
+      { -15.0, 5000 }, \
2155
+      { -14.0, 1200 }, \
2156
+      {  -6.0,  600 }, \
2157
+      {  10.0,  700 }, \
2158
+      { -10.0,  400 }, \
2159
+      { -50.0, 2000 }
2160
+
2161
+  #endif
2162
+
2163
+  //#define MMU2_DEBUG  // Write debug info to serial output
2164
+
2165
+#endif // PRUSA_MMU2
2166
+
2114 2167
 // @section develop
2115 2168
 
2116 2169
 /**

+ 10
- 0
Marlin/src/config/examples/BQ/WITBOX/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/BQ/WITBOX/Configuration_adv.h Visa fil

@@ -2103,6 +2103,59 @@
2103 2103
   #define WIFI_PWD  "Wifi Password"
2104 2104
 #endif
2105 2105
 
2106
+/**
2107
+ * Prusa Multi-Material Unit v2
2108
+ * Enable in Configuration.h
2109
+ */
2110
+#if ENABLED(PRUSA_MMU2)
2111
+
2112
+  // Serial port used for communication with MMU2.
2113
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2114
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2115
+  #define INTERNAL_SERIAL_PORT 2
2116
+  #define MMU2_SERIAL internalSerial
2117
+
2118
+  // Use hardware reset for MMU if a pin is defined for it
2119
+  //#define MMU2_RST_PIN 23
2120
+
2121
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2122
+  //#define MMU2_MODE_12V
2123
+
2124
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2125
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2126
+
2127
+  // Add an LCD menu for MMU2
2128
+  //#define MMU2_MENUS
2129
+  #if ENABLED(MMU2_MENUS)
2130
+    // Settings for filament load / unload from the LCD menu.
2131
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2132
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2133
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2134
+      {  7.2,  562 }, \
2135
+      { 14.4,  871 }, \
2136
+      { 36.0, 1393 }, \
2137
+      { 14.4,  871 }, \
2138
+      { 50.0,  198 }
2139
+
2140
+    #define MMU2_RAMMING_SEQUENCE \
2141
+      {   1.0, 1000 }, \
2142
+      {   1.0, 1500 }, \
2143
+      {   2.0, 2000 }, \
2144
+      {   1.5, 3000 }, \
2145
+      {   2.5, 4000 }, \
2146
+      { -15.0, 5000 }, \
2147
+      { -14.0, 1200 }, \
2148
+      {  -6.0,  600 }, \
2149
+      {  10.0,  700 }, \
2150
+      { -10.0,  400 }, \
2151
+      { -50.0, 2000 }
2152
+
2153
+  #endif
2154
+
2155
+  //#define MMU2_DEBUG  // Write debug info to serial output
2156
+
2157
+#endif // PRUSA_MMU2
2158
+
2106 2159
 // @section develop
2107 2160
 
2108 2161
 /**

+ 10
- 0
Marlin/src/config/examples/Cartesio/Configuration.h Visa fil

@@ -175,6 +175,16 @@
175 175
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
176 176
 #endif
177 177
 
178
+/**
179
+ * Prusa Multi-Material Unit v2
180
+ *
181
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
182
+ * Requires EXTRUDERS = 5
183
+ *
184
+ * For additional configuration see Configuration_adv.h
185
+ */
186
+//#define PRUSA_MMU2
187
+
178 188
 // A dual extruder that uses a single stepper motor
179 189
 //#define SWITCHING_EXTRUDER
180 190
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/Cartesio/Configuration_adv.h Visa fil

@@ -2103,6 +2103,59 @@
2103 2103
   #define WIFI_PWD  "Wifi Password"
2104 2104
 #endif
2105 2105
 
2106
+/**
2107
+ * Prusa Multi-Material Unit v2
2108
+ * Enable in Configuration.h
2109
+ */
2110
+#if ENABLED(PRUSA_MMU2)
2111
+
2112
+  // Serial port used for communication with MMU2.
2113
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2114
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2115
+  #define INTERNAL_SERIAL_PORT 2
2116
+  #define MMU2_SERIAL internalSerial
2117
+
2118
+  // Use hardware reset for MMU if a pin is defined for it
2119
+  //#define MMU2_RST_PIN 23
2120
+
2121
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2122
+  //#define MMU2_MODE_12V
2123
+
2124
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2125
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2126
+
2127
+  // Add an LCD menu for MMU2
2128
+  //#define MMU2_MENUS
2129
+  #if ENABLED(MMU2_MENUS)
2130
+    // Settings for filament load / unload from the LCD menu.
2131
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2132
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2133
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2134
+      {  7.2,  562 }, \
2135
+      { 14.4,  871 }, \
2136
+      { 36.0, 1393 }, \
2137
+      { 14.4,  871 }, \
2138
+      { 50.0,  198 }
2139
+
2140
+    #define MMU2_RAMMING_SEQUENCE \
2141
+      {   1.0, 1000 }, \
2142
+      {   1.0, 1500 }, \
2143
+      {   2.0, 2000 }, \
2144
+      {   1.5, 3000 }, \
2145
+      {   2.5, 4000 }, \
2146
+      { -15.0, 5000 }, \
2147
+      { -14.0, 1200 }, \
2148
+      {  -6.0,  600 }, \
2149
+      {  10.0,  700 }, \
2150
+      { -10.0,  400 }, \
2151
+      { -50.0, 2000 }
2152
+
2153
+  #endif
2154
+
2155
+  //#define MMU2_DEBUG  // Write debug info to serial output
2156
+
2157
+#endif // PRUSA_MMU2
2158
+
2106 2159
 // @section develop
2107 2160
 
2108 2161
 /**

+ 10
- 0
Marlin/src/config/examples/Creality/CR-10/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/Creality/CR-10/Configuration_adv.h Visa fil

@@ -2106,6 +2106,59 @@
2106 2106
   #define WIFI_PWD  "Wifi Password"
2107 2107
 #endif
2108 2108
 
2109
+/**
2110
+ * Prusa Multi-Material Unit v2
2111
+ * Enable in Configuration.h
2112
+ */
2113
+#if ENABLED(PRUSA_MMU2)
2114
+
2115
+  // Serial port used for communication with MMU2.
2116
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2117
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2118
+  #define INTERNAL_SERIAL_PORT 2
2119
+  #define MMU2_SERIAL internalSerial
2120
+
2121
+  // Use hardware reset for MMU if a pin is defined for it
2122
+  //#define MMU2_RST_PIN 23
2123
+
2124
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2125
+  //#define MMU2_MODE_12V
2126
+
2127
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2128
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2129
+
2130
+  // Add an LCD menu for MMU2
2131
+  //#define MMU2_MENUS
2132
+  #if ENABLED(MMU2_MENUS)
2133
+    // Settings for filament load / unload from the LCD menu.
2134
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2135
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2136
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2137
+      {  7.2,  562 }, \
2138
+      { 14.4,  871 }, \
2139
+      { 36.0, 1393 }, \
2140
+      { 14.4,  871 }, \
2141
+      { 50.0,  198 }
2142
+
2143
+    #define MMU2_RAMMING_SEQUENCE \
2144
+      {   1.0, 1000 }, \
2145
+      {   1.0, 1500 }, \
2146
+      {   2.0, 2000 }, \
2147
+      {   1.5, 3000 }, \
2148
+      {   2.5, 4000 }, \
2149
+      { -15.0, 5000 }, \
2150
+      { -14.0, 1200 }, \
2151
+      {  -6.0,  600 }, \
2152
+      {  10.0,  700 }, \
2153
+      { -10.0,  400 }, \
2154
+      { -50.0, 2000 }
2155
+
2156
+  #endif
2157
+
2158
+  //#define MMU2_DEBUG  // Write debug info to serial output
2159
+
2160
+#endif // PRUSA_MMU2
2161
+
2109 2162
 // @section develop
2110 2163
 
2111 2164
 /**

+ 10
- 0
Marlin/src/config/examples/Creality/CR-10S/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/Creality/CR-10S/Configuration_adv.h Visa fil

@@ -2103,6 +2103,59 @@
2103 2103
   #define WIFI_PWD  "Wifi Password"
2104 2104
 #endif
2105 2105
 
2106
+/**
2107
+ * Prusa Multi-Material Unit v2
2108
+ * Enable in Configuration.h
2109
+ */
2110
+#if ENABLED(PRUSA_MMU2)
2111
+
2112
+  // Serial port used for communication with MMU2.
2113
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2114
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2115
+  #define INTERNAL_SERIAL_PORT 2
2116
+  #define MMU2_SERIAL internalSerial
2117
+
2118
+  // Use hardware reset for MMU if a pin is defined for it
2119
+  //#define MMU2_RST_PIN 23
2120
+
2121
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2122
+  //#define MMU2_MODE_12V
2123
+
2124
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2125
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2126
+
2127
+  // Add an LCD menu for MMU2
2128
+  //#define MMU2_MENUS
2129
+  #if ENABLED(MMU2_MENUS)
2130
+    // Settings for filament load / unload from the LCD menu.
2131
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2132
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2133
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2134
+      {  7.2,  562 }, \
2135
+      { 14.4,  871 }, \
2136
+      { 36.0, 1393 }, \
2137
+      { 14.4,  871 }, \
2138
+      { 50.0,  198 }
2139
+
2140
+    #define MMU2_RAMMING_SEQUENCE \
2141
+      {   1.0, 1000 }, \
2142
+      {   1.0, 1500 }, \
2143
+      {   2.0, 2000 }, \
2144
+      {   1.5, 3000 }, \
2145
+      {   2.5, 4000 }, \
2146
+      { -15.0, 5000 }, \
2147
+      { -14.0, 1200 }, \
2148
+      {  -6.0,  600 }, \
2149
+      {  10.0,  700 }, \
2150
+      { -10.0,  400 }, \
2151
+      { -50.0, 2000 }
2152
+
2153
+  #endif
2154
+
2155
+  //#define MMU2_DEBUG  // Write debug info to serial output
2156
+
2157
+#endif // PRUSA_MMU2
2158
+
2106 2159
 // @section develop
2107 2160
 
2108 2161
 /**

+ 10
- 0
Marlin/src/config/examples/Creality/CR-10mini/Configuration.h Visa fil

@@ -183,6 +183,16 @@
183 183
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
184 184
 #endif
185 185
 
186
+/**
187
+ * Prusa Multi-Material Unit v2
188
+ *
189
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
190
+ * Requires EXTRUDERS = 5
191
+ *
192
+ * For additional configuration see Configuration_adv.h
193
+ */
194
+//#define PRUSA_MMU2
195
+
186 196
 // A dual extruder that uses a single stepper motor
187 197
 //#define SWITCHING_EXTRUDER
188 198
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/Creality/CR-10mini/Configuration_adv.h Visa fil

@@ -2103,6 +2103,59 @@
2103 2103
   #define WIFI_PWD  "Wifi Password"
2104 2104
 #endif
2105 2105
 
2106
+/**
2107
+ * Prusa Multi-Material Unit v2
2108
+ * Enable in Configuration.h
2109
+ */
2110
+#if ENABLED(PRUSA_MMU2)
2111
+
2112
+  // Serial port used for communication with MMU2.
2113
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2114
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2115
+  #define INTERNAL_SERIAL_PORT 2
2116
+  #define MMU2_SERIAL internalSerial
2117
+
2118
+  // Use hardware reset for MMU if a pin is defined for it
2119
+  //#define MMU2_RST_PIN 23
2120
+
2121
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2122
+  //#define MMU2_MODE_12V
2123
+
2124
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2125
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2126
+
2127
+  // Add an LCD menu for MMU2
2128
+  //#define MMU2_MENUS
2129
+  #if ENABLED(MMU2_MENUS)
2130
+    // Settings for filament load / unload from the LCD menu.
2131
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2132
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2133
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2134
+      {  7.2,  562 }, \
2135
+      { 14.4,  871 }, \
2136
+      { 36.0, 1393 }, \
2137
+      { 14.4,  871 }, \
2138
+      { 50.0,  198 }
2139
+
2140
+    #define MMU2_RAMMING_SEQUENCE \
2141
+      {   1.0, 1000 }, \
2142
+      {   1.0, 1500 }, \
2143
+      {   2.0, 2000 }, \
2144
+      {   1.5, 3000 }, \
2145
+      {   2.5, 4000 }, \
2146
+      { -15.0, 5000 }, \
2147
+      { -14.0, 1200 }, \
2148
+      {  -6.0,  600 }, \
2149
+      {  10.0,  700 }, \
2150
+      { -10.0,  400 }, \
2151
+      { -50.0, 2000 }
2152
+
2153
+  #endif
2154
+
2155
+  //#define MMU2_DEBUG  // Write debug info to serial output
2156
+
2157
+#endif // PRUSA_MMU2
2158
+
2106 2159
 // @section develop
2107 2160
 
2108 2161
 /**

+ 10
- 0
Marlin/src/config/examples/Creality/CR-8/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/Creality/CR-8/Configuration_adv.h Visa fil

@@ -2103,6 +2103,59 @@
2103 2103
   #define WIFI_PWD  "Wifi Password"
2104 2104
 #endif
2105 2105
 
2106
+/**
2107
+ * Prusa Multi-Material Unit v2
2108
+ * Enable in Configuration.h
2109
+ */
2110
+#if ENABLED(PRUSA_MMU2)
2111
+
2112
+  // Serial port used for communication with MMU2.
2113
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2114
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2115
+  #define INTERNAL_SERIAL_PORT 2
2116
+  #define MMU2_SERIAL internalSerial
2117
+
2118
+  // Use hardware reset for MMU if a pin is defined for it
2119
+  //#define MMU2_RST_PIN 23
2120
+
2121
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2122
+  //#define MMU2_MODE_12V
2123
+
2124
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2125
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2126
+
2127
+  // Add an LCD menu for MMU2
2128
+  //#define MMU2_MENUS
2129
+  #if ENABLED(MMU2_MENUS)
2130
+    // Settings for filament load / unload from the LCD menu.
2131
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2132
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2133
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2134
+      {  7.2,  562 }, \
2135
+      { 14.4,  871 }, \
2136
+      { 36.0, 1393 }, \
2137
+      { 14.4,  871 }, \
2138
+      { 50.0,  198 }
2139
+
2140
+    #define MMU2_RAMMING_SEQUENCE \
2141
+      {   1.0, 1000 }, \
2142
+      {   1.0, 1500 }, \
2143
+      {   2.0, 2000 }, \
2144
+      {   1.5, 3000 }, \
2145
+      {   2.5, 4000 }, \
2146
+      { -15.0, 5000 }, \
2147
+      { -14.0, 1200 }, \
2148
+      {  -6.0,  600 }, \
2149
+      {  10.0,  700 }, \
2150
+      { -10.0,  400 }, \
2151
+      { -50.0, 2000 }
2152
+
2153
+  #endif
2154
+
2155
+  //#define MMU2_DEBUG  // Write debug info to serial output
2156
+
2157
+#endif // PRUSA_MMU2
2158
+
2106 2159
 // @section develop
2107 2160
 
2108 2161
 /**

+ 10
- 0
Marlin/src/config/examples/Creality/Ender-2/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/Creality/Ender-2/Configuration_adv.h Visa fil

@@ -2103,6 +2103,59 @@
2103 2103
   #define WIFI_PWD  "Wifi Password"
2104 2104
 #endif
2105 2105
 
2106
+/**
2107
+ * Prusa Multi-Material Unit v2
2108
+ * Enable in Configuration.h
2109
+ */
2110
+#if ENABLED(PRUSA_MMU2)
2111
+
2112
+  // Serial port used for communication with MMU2.
2113
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2114
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2115
+  #define INTERNAL_SERIAL_PORT 2
2116
+  #define MMU2_SERIAL internalSerial
2117
+
2118
+  // Use hardware reset for MMU if a pin is defined for it
2119
+  //#define MMU2_RST_PIN 23
2120
+
2121
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2122
+  //#define MMU2_MODE_12V
2123
+
2124
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2125
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2126
+
2127
+  // Add an LCD menu for MMU2
2128
+  //#define MMU2_MENUS
2129
+  #if ENABLED(MMU2_MENUS)
2130
+    // Settings for filament load / unload from the LCD menu.
2131
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2132
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2133
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2134
+      {  7.2,  562 }, \
2135
+      { 14.4,  871 }, \
2136
+      { 36.0, 1393 }, \
2137
+      { 14.4,  871 }, \
2138
+      { 50.0,  198 }
2139
+
2140
+    #define MMU2_RAMMING_SEQUENCE \
2141
+      {   1.0, 1000 }, \
2142
+      {   1.0, 1500 }, \
2143
+      {   2.0, 2000 }, \
2144
+      {   1.5, 3000 }, \
2145
+      {   2.5, 4000 }, \
2146
+      { -15.0, 5000 }, \
2147
+      { -14.0, 1200 }, \
2148
+      {  -6.0,  600 }, \
2149
+      {  10.0,  700 }, \
2150
+      { -10.0,  400 }, \
2151
+      { -50.0, 2000 }
2152
+
2153
+  #endif
2154
+
2155
+  //#define MMU2_DEBUG  // Write debug info to serial output
2156
+
2157
+#endif // PRUSA_MMU2
2158
+
2106 2159
 // @section develop
2107 2160
 
2108 2161
 /**

+ 10
- 0
Marlin/src/config/examples/Creality/Ender-3/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/Creality/Ender-3/Configuration_adv.h Visa fil

@@ -2103,6 +2103,59 @@
2103 2103
   #define WIFI_PWD  "Wifi Password"
2104 2104
 #endif
2105 2105
 
2106
+/**
2107
+ * Prusa Multi-Material Unit v2
2108
+ * Enable in Configuration.h
2109
+ */
2110
+#if ENABLED(PRUSA_MMU2)
2111
+
2112
+  // Serial port used for communication with MMU2.
2113
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2114
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2115
+  #define INTERNAL_SERIAL_PORT 2
2116
+  #define MMU2_SERIAL internalSerial
2117
+
2118
+  // Use hardware reset for MMU if a pin is defined for it
2119
+  //#define MMU2_RST_PIN 23
2120
+
2121
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2122
+  //#define MMU2_MODE_12V
2123
+
2124
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2125
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2126
+
2127
+  // Add an LCD menu for MMU2
2128
+  //#define MMU2_MENUS
2129
+  #if ENABLED(MMU2_MENUS)
2130
+    // Settings for filament load / unload from the LCD menu.
2131
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2132
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2133
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2134
+      {  7.2,  562 }, \
2135
+      { 14.4,  871 }, \
2136
+      { 36.0, 1393 }, \
2137
+      { 14.4,  871 }, \
2138
+      { 50.0,  198 }
2139
+
2140
+    #define MMU2_RAMMING_SEQUENCE \
2141
+      {   1.0, 1000 }, \
2142
+      {   1.0, 1500 }, \
2143
+      {   2.0, 2000 }, \
2144
+      {   1.5, 3000 }, \
2145
+      {   2.5, 4000 }, \
2146
+      { -15.0, 5000 }, \
2147
+      { -14.0, 1200 }, \
2148
+      {  -6.0,  600 }, \
2149
+      {  10.0,  700 }, \
2150
+      { -10.0,  400 }, \
2151
+      { -50.0, 2000 }
2152
+
2153
+  #endif
2154
+
2155
+  //#define MMU2_DEBUG  // Write debug info to serial output
2156
+
2157
+#endif // PRUSA_MMU2
2158
+
2106 2159
 // @section develop
2107 2160
 
2108 2161
 /**

+ 10
- 0
Marlin/src/config/examples/Creality/Ender-4/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/Creality/Ender-4/Configuration_adv.h Visa fil

@@ -2103,6 +2103,59 @@
2103 2103
   #define WIFI_PWD  "Wifi Password"
2104 2104
 #endif
2105 2105
 
2106
+/**
2107
+ * Prusa Multi-Material Unit v2
2108
+ * Enable in Configuration.h
2109
+ */
2110
+#if ENABLED(PRUSA_MMU2)
2111
+
2112
+  // Serial port used for communication with MMU2.
2113
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2114
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2115
+  #define INTERNAL_SERIAL_PORT 2
2116
+  #define MMU2_SERIAL internalSerial
2117
+
2118
+  // Use hardware reset for MMU if a pin is defined for it
2119
+  //#define MMU2_RST_PIN 23
2120
+
2121
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2122
+  //#define MMU2_MODE_12V
2123
+
2124
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2125
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2126
+
2127
+  // Add an LCD menu for MMU2
2128
+  //#define MMU2_MENUS
2129
+  #if ENABLED(MMU2_MENUS)
2130
+    // Settings for filament load / unload from the LCD menu.
2131
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2132
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2133
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2134
+      {  7.2,  562 }, \
2135
+      { 14.4,  871 }, \
2136
+      { 36.0, 1393 }, \
2137
+      { 14.4,  871 }, \
2138
+      { 50.0,  198 }
2139
+
2140
+    #define MMU2_RAMMING_SEQUENCE \
2141
+      {   1.0, 1000 }, \
2142
+      {   1.0, 1500 }, \
2143
+      {   2.0, 2000 }, \
2144
+      {   1.5, 3000 }, \
2145
+      {   2.5, 4000 }, \
2146
+      { -15.0, 5000 }, \
2147
+      { -14.0, 1200 }, \
2148
+      {  -6.0,  600 }, \
2149
+      {  10.0,  700 }, \
2150
+      { -10.0,  400 }, \
2151
+      { -50.0, 2000 }
2152
+
2153
+  #endif
2154
+
2155
+  //#define MMU2_DEBUG  // Write debug info to serial output
2156
+
2157
+#endif // PRUSA_MMU2
2158
+
2106 2159
 // @section develop
2107 2160
 
2108 2161
 /**

+ 10
- 0
Marlin/src/config/examples/Einstart-S/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/Einstart-S/Configuration_adv.h Visa fil

@@ -2103,6 +2103,59 @@
2103 2103
   #define WIFI_PWD  "Wifi Password"
2104 2104
 #endif
2105 2105
 
2106
+/**
2107
+ * Prusa Multi-Material Unit v2
2108
+ * Enable in Configuration.h
2109
+ */
2110
+#if ENABLED(PRUSA_MMU2)
2111
+
2112
+  // Serial port used for communication with MMU2.
2113
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2114
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2115
+  #define INTERNAL_SERIAL_PORT 2
2116
+  #define MMU2_SERIAL internalSerial
2117
+
2118
+  // Use hardware reset for MMU if a pin is defined for it
2119
+  //#define MMU2_RST_PIN 23
2120
+
2121
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2122
+  //#define MMU2_MODE_12V
2123
+
2124
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2125
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2126
+
2127
+  // Add an LCD menu for MMU2
2128
+  //#define MMU2_MENUS
2129
+  #if ENABLED(MMU2_MENUS)
2130
+    // Settings for filament load / unload from the LCD menu.
2131
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2132
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2133
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2134
+      {  7.2,  562 }, \
2135
+      { 14.4,  871 }, \
2136
+      { 36.0, 1393 }, \
2137
+      { 14.4,  871 }, \
2138
+      { 50.0,  198 }
2139
+
2140
+    #define MMU2_RAMMING_SEQUENCE \
2141
+      {   1.0, 1000 }, \
2142
+      {   1.0, 1500 }, \
2143
+      {   2.0, 2000 }, \
2144
+      {   1.5, 3000 }, \
2145
+      {   2.5, 4000 }, \
2146
+      { -15.0, 5000 }, \
2147
+      { -14.0, 1200 }, \
2148
+      {  -6.0,  600 }, \
2149
+      {  10.0,  700 }, \
2150
+      { -10.0,  400 }, \
2151
+      { -50.0, 2000 }
2152
+
2153
+  #endif
2154
+
2155
+  //#define MMU2_DEBUG  // Write debug info to serial output
2156
+
2157
+#endif // PRUSA_MMU2
2158
+
2106 2159
 // @section develop
2107 2160
 
2108 2161
 /**

+ 10
- 0
Marlin/src/config/examples/Felix/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/Felix/Configuration_adv.h Visa fil

@@ -2103,6 +2103,59 @@
2103 2103
   #define WIFI_PWD  "Wifi Password"
2104 2104
 #endif
2105 2105
 
2106
+/**
2107
+ * Prusa Multi-Material Unit v2
2108
+ * Enable in Configuration.h
2109
+ */
2110
+#if ENABLED(PRUSA_MMU2)
2111
+
2112
+  // Serial port used for communication with MMU2.
2113
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2114
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2115
+  #define INTERNAL_SERIAL_PORT 2
2116
+  #define MMU2_SERIAL internalSerial
2117
+
2118
+  // Use hardware reset for MMU if a pin is defined for it
2119
+  //#define MMU2_RST_PIN 23
2120
+
2121
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2122
+  //#define MMU2_MODE_12V
2123
+
2124
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2125
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2126
+
2127
+  // Add an LCD menu for MMU2
2128
+  //#define MMU2_MENUS
2129
+  #if ENABLED(MMU2_MENUS)
2130
+    // Settings for filament load / unload from the LCD menu.
2131
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2132
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2133
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2134
+      {  7.2,  562 }, \
2135
+      { 14.4,  871 }, \
2136
+      { 36.0, 1393 }, \
2137
+      { 14.4,  871 }, \
2138
+      { 50.0,  198 }
2139
+
2140
+    #define MMU2_RAMMING_SEQUENCE \
2141
+      {   1.0, 1000 }, \
2142
+      {   1.0, 1500 }, \
2143
+      {   2.0, 2000 }, \
2144
+      {   1.5, 3000 }, \
2145
+      {   2.5, 4000 }, \
2146
+      { -15.0, 5000 }, \
2147
+      { -14.0, 1200 }, \
2148
+      {  -6.0,  600 }, \
2149
+      {  10.0,  700 }, \
2150
+      { -10.0,  400 }, \
2151
+      { -50.0, 2000 }
2152
+
2153
+  #endif
2154
+
2155
+  //#define MMU2_DEBUG  // Write debug info to serial output
2156
+
2157
+#endif // PRUSA_MMU2
2158
+
2106 2159
 // @section develop
2107 2160
 
2108 2161
 /**

+ 10
- 0
Marlin/src/config/examples/Felix/DUAL/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 10
- 0
Marlin/src/config/examples/FlashForge/CreatorPro/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/FlashForge/CreatorPro/Configuration_adv.h Visa fil

@@ -2102,6 +2102,59 @@
2102 2102
   #define WIFI_PWD  "Wifi Password"
2103 2103
 #endif
2104 2104
 
2105
+/**
2106
+ * Prusa Multi-Material Unit v2
2107
+ * Enable in Configuration.h
2108
+ */
2109
+#if ENABLED(PRUSA_MMU2)
2110
+
2111
+  // Serial port used for communication with MMU2.
2112
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2113
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2114
+  #define INTERNAL_SERIAL_PORT 2
2115
+  #define MMU2_SERIAL internalSerial
2116
+
2117
+  // Use hardware reset for MMU if a pin is defined for it
2118
+  //#define MMU2_RST_PIN 23
2119
+
2120
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2121
+  //#define MMU2_MODE_12V
2122
+
2123
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2124
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2125
+
2126
+  // Add an LCD menu for MMU2
2127
+  //#define MMU2_MENUS
2128
+  #if ENABLED(MMU2_MENUS)
2129
+    // Settings for filament load / unload from the LCD menu.
2130
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2131
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2132
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2133
+      {  7.2,  562 }, \
2134
+      { 14.4,  871 }, \
2135
+      { 36.0, 1393 }, \
2136
+      { 14.4,  871 }, \
2137
+      { 50.0,  198 }
2138
+
2139
+    #define MMU2_RAMMING_SEQUENCE \
2140
+      {   1.0, 1000 }, \
2141
+      {   1.0, 1500 }, \
2142
+      {   2.0, 2000 }, \
2143
+      {   1.5, 3000 }, \
2144
+      {   2.5, 4000 }, \
2145
+      { -15.0, 5000 }, \
2146
+      { -14.0, 1200 }, \
2147
+      {  -6.0,  600 }, \
2148
+      {  10.0,  700 }, \
2149
+      { -10.0,  400 }, \
2150
+      { -50.0, 2000 }
2151
+
2152
+  #endif
2153
+
2154
+  //#define MMU2_DEBUG  // Write debug info to serial output
2155
+
2156
+#endif // PRUSA_MMU2
2157
+
2105 2158
 // @section develop
2106 2159
 
2107 2160
 /**

+ 10
- 0
Marlin/src/config/examples/FolgerTech/i3-2020/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 54
- 1
Marlin/src/config/examples/FolgerTech/i3-2020/Configuration_adv.h Visa fil

@@ -2111,12 +2111,65 @@
2111 2111
   #define WIFI_PWD  "Wifi Password"
2112 2112
 #endif
2113 2113
 
2114
+/**
2115
+ * Prusa Multi-Material Unit v2
2116
+ * Enable in Configuration.h
2117
+ */
2118
+#if ENABLED(PRUSA_MMU2)
2119
+
2120
+  // Serial port used for communication with MMU2.
2121
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2122
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2123
+  #define INTERNAL_SERIAL_PORT 2
2124
+  #define MMU2_SERIAL internalSerial
2125
+
2126
+  // Use hardware reset for MMU if a pin is defined for it
2127
+  //#define MMU2_RST_PIN 23
2128
+
2129
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2130
+  //#define MMU2_MODE_12V
2131
+
2132
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2133
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2134
+
2135
+  // Add an LCD menu for MMU2
2136
+  //#define MMU2_MENUS
2137
+  #if ENABLED(MMU2_MENUS)
2138
+    // Settings for filament load / unload from the LCD menu.
2139
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2140
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2141
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2142
+      {  7.2,  562 }, \
2143
+      { 14.4,  871 }, \
2144
+      { 36.0, 1393 }, \
2145
+      { 14.4,  871 }, \
2146
+      { 50.0,  198 }
2147
+
2148
+    #define MMU2_RAMMING_SEQUENCE \
2149
+      {   1.0, 1000 }, \
2150
+      {   1.0, 1500 }, \
2151
+      {   2.0, 2000 }, \
2152
+      {   1.5, 3000 }, \
2153
+      {   2.5, 4000 }, \
2154
+      { -15.0, 5000 }, \
2155
+      { -14.0, 1200 }, \
2156
+      {  -6.0,  600 }, \
2157
+      {  10.0,  700 }, \
2158
+      { -10.0,  400 }, \
2159
+      { -50.0, 2000 }
2160
+
2161
+  #endif
2162
+
2163
+  //#define MMU2_DEBUG  // Write debug info to serial output
2164
+
2165
+#endif // PRUSA_MMU2
2166
+
2114 2167
 // @section develop
2115 2168
 
2116 2169
 /**
2117 2170
  * M43 - display pin status, watch pins for changes, watch endstops & toggle LED, Z servo probe test, toggle pins
2118 2171
  */
2119
-#define PINS_DEBUGGING
2172
+//#define PINS_DEBUGGING
2120 2173
 
2121 2174
 // Enable Marlin dev mode which adds some special commands
2122 2175
 //#define MARLIN_DEV_MODE

+ 10
- 0
Marlin/src/config/examples/Formbot/Raptor/Configuration.h Visa fil

@@ -215,6 +215,16 @@
215 215
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
216 216
 #endif
217 217
 
218
+/**
219
+ * Prusa Multi-Material Unit v2
220
+ *
221
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
222
+ * Requires EXTRUDERS = 5
223
+ *
224
+ * For additional configuration see Configuration_adv.h
225
+ */
226
+//#define PRUSA_MMU2
227
+
218 228
 // A dual extruder that uses a single stepper motor
219 229
 //#define SWITCHING_EXTRUDER
220 230
 #if ENABLED(SWITCHING_EXTRUDER)

+ 54
- 1
Marlin/src/config/examples/Formbot/Raptor/Configuration_adv.h Visa fil

@@ -2107,12 +2107,65 @@
2107 2107
   #define WIFI_PWD  "Wifi Password"
2108 2108
 #endif
2109 2109
 
2110
+/**
2111
+ * Prusa Multi-Material Unit v2
2112
+ * Enable in Configuration.h
2113
+ */
2114
+#if ENABLED(PRUSA_MMU2)
2115
+
2116
+  // Serial port used for communication with MMU2.
2117
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2118
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2119
+  #define INTERNAL_SERIAL_PORT 2
2120
+  #define MMU2_SERIAL internalSerial
2121
+
2122
+  // Use hardware reset for MMU if a pin is defined for it
2123
+  //#define MMU2_RST_PIN 23
2124
+
2125
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2126
+  //#define MMU2_MODE_12V
2127
+
2128
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2129
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2130
+
2131
+  // Add an LCD menu for MMU2
2132
+  //#define MMU2_MENUS
2133
+  #if ENABLED(MMU2_MENUS)
2134
+    // Settings for filament load / unload from the LCD menu.
2135
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2136
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2137
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2138
+      {  7.2,  562 }, \
2139
+      { 14.4,  871 }, \
2140
+      { 36.0, 1393 }, \
2141
+      { 14.4,  871 }, \
2142
+      { 50.0,  198 }
2143
+
2144
+    #define MMU2_RAMMING_SEQUENCE \
2145
+      {   1.0, 1000 }, \
2146
+      {   1.0, 1500 }, \
2147
+      {   2.0, 2000 }, \
2148
+      {   1.5, 3000 }, \
2149
+      {   2.5, 4000 }, \
2150
+      { -15.0, 5000 }, \
2151
+      { -14.0, 1200 }, \
2152
+      {  -6.0,  600 }, \
2153
+      {  10.0,  700 }, \
2154
+      { -10.0,  400 }, \
2155
+      { -50.0, 2000 }
2156
+
2157
+  #endif
2158
+
2159
+  //#define MMU2_DEBUG  // Write debug info to serial output
2160
+
2161
+#endif // PRUSA_MMU2
2162
+
2110 2163
 // @section develop
2111 2164
 
2112 2165
 /**
2113 2166
  * M43 - display pin status, watch pins for changes, watch endstops & toggle LED, Z servo probe test, toggle pins
2114 2167
  */
2115
-#define PINS_DEBUGGING
2168
+//#define PINS_DEBUGGING
2116 2169
 
2117 2170
 // Enable Marlin dev mode which adds some special commands
2118 2171
 //#define MARLIN_DEV_MODE

+ 10
- 0
Marlin/src/config/examples/Formbot/T_Rex_2+/Configuration.h Visa fil

@@ -177,6 +177,16 @@
177 177
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
178 178
 #endif
179 179
 
180
+/**
181
+ * Prusa Multi-Material Unit v2
182
+ *
183
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
184
+ * Requires EXTRUDERS = 5
185
+ *
186
+ * For additional configuration see Configuration_adv.h
187
+ */
188
+//#define PRUSA_MMU2
189
+
180 190
 // A dual extruder that uses a single stepper motor
181 191
 //#define SWITCHING_EXTRUDER
182 192
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/Formbot/T_Rex_2+/Configuration_adv.h Visa fil

@@ -2118,6 +2118,59 @@
2118 2118
   #define WIFI_PWD  "Wifi Password"
2119 2119
 #endif
2120 2120
 
2121
+/**
2122
+ * Prusa Multi-Material Unit v2
2123
+ * Enable in Configuration.h
2124
+ */
2125
+#if ENABLED(PRUSA_MMU2)
2126
+
2127
+  // Serial port used for communication with MMU2.
2128
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2129
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2130
+  #define INTERNAL_SERIAL_PORT 2
2131
+  #define MMU2_SERIAL internalSerial
2132
+
2133
+  // Use hardware reset for MMU if a pin is defined for it
2134
+  //#define MMU2_RST_PIN 23
2135
+
2136
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2137
+  //#define MMU2_MODE_12V
2138
+
2139
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2140
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2141
+
2142
+  // Add an LCD menu for MMU2
2143
+  //#define MMU2_MENUS
2144
+  #if ENABLED(MMU2_MENUS)
2145
+    // Settings for filament load / unload from the LCD menu.
2146
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2147
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2148
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2149
+      {  7.2,  562 }, \
2150
+      { 14.4,  871 }, \
2151
+      { 36.0, 1393 }, \
2152
+      { 14.4,  871 }, \
2153
+      { 50.0,  198 }
2154
+
2155
+    #define MMU2_RAMMING_SEQUENCE \
2156
+      {   1.0, 1000 }, \
2157
+      {   1.0, 1500 }, \
2158
+      {   2.0, 2000 }, \
2159
+      {   1.5, 3000 }, \
2160
+      {   2.5, 4000 }, \
2161
+      { -15.0, 5000 }, \
2162
+      { -14.0, 1200 }, \
2163
+      {  -6.0,  600 }, \
2164
+      {  10.0,  700 }, \
2165
+      { -10.0,  400 }, \
2166
+      { -50.0, 2000 }
2167
+
2168
+  #endif
2169
+
2170
+  //#define MMU2_DEBUG  // Write debug info to serial output
2171
+
2172
+#endif // PRUSA_MMU2
2173
+
2121 2174
 // @section develop
2122 2175
 
2123 2176
 /**

+ 10
- 0
Marlin/src/config/examples/Formbot/T_Rex_3/Configuration.h Visa fil

@@ -178,6 +178,16 @@
178 178
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
179 179
 #endif
180 180
 
181
+/**
182
+ * Prusa Multi-Material Unit v2
183
+ *
184
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
185
+ * Requires EXTRUDERS = 5
186
+ *
187
+ * For additional configuration see Configuration_adv.h
188
+ */
189
+//#define PRUSA_MMU2
190
+
181 191
 // A dual extruder that uses a single stepper motor
182 192
 //#define SWITCHING_EXTRUDER
183 193
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/Formbot/T_Rex_3/Configuration_adv.h Visa fil

@@ -2113,6 +2113,59 @@
2113 2113
   #define WIFI_PWD  "Wifi Password"
2114 2114
 #endif
2115 2115
 
2116
+/**
2117
+ * Prusa Multi-Material Unit v2
2118
+ * Enable in Configuration.h
2119
+ */
2120
+#if ENABLED(PRUSA_MMU2)
2121
+
2122
+  // Serial port used for communication with MMU2.
2123
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2124
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2125
+  #define INTERNAL_SERIAL_PORT 2
2126
+  #define MMU2_SERIAL internalSerial
2127
+
2128
+  // Use hardware reset for MMU if a pin is defined for it
2129
+  //#define MMU2_RST_PIN 23
2130
+
2131
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2132
+  //#define MMU2_MODE_12V
2133
+
2134
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2135
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2136
+
2137
+  // Add an LCD menu for MMU2
2138
+  //#define MMU2_MENUS
2139
+  #if ENABLED(MMU2_MENUS)
2140
+    // Settings for filament load / unload from the LCD menu.
2141
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2142
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2143
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2144
+      {  7.2,  562 }, \
2145
+      { 14.4,  871 }, \
2146
+      { 36.0, 1393 }, \
2147
+      { 14.4,  871 }, \
2148
+      { 50.0,  198 }
2149
+
2150
+    #define MMU2_RAMMING_SEQUENCE \
2151
+      {   1.0, 1000 }, \
2152
+      {   1.0, 1500 }, \
2153
+      {   2.0, 2000 }, \
2154
+      {   1.5, 3000 }, \
2155
+      {   2.5, 4000 }, \
2156
+      { -15.0, 5000 }, \
2157
+      { -14.0, 1200 }, \
2158
+      {  -6.0,  600 }, \
2159
+      {  10.0,  700 }, \
2160
+      { -10.0,  400 }, \
2161
+      { -50.0, 2000 }
2162
+
2163
+  #endif
2164
+
2165
+  //#define MMU2_DEBUG  // Write debug info to serial output
2166
+
2167
+#endif // PRUSA_MMU2
2168
+
2116 2169
 // @section develop
2117 2170
 
2118 2171
 /**

+ 10
- 0
Marlin/src/config/examples/Geeetech/GT2560/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 10
- 0
Marlin/src/config/examples/Geeetech/I3_Pro_X-GT2560/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 10
- 0
Marlin/src/config/examples/Geeetech/MeCreator2/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/Geeetech/MeCreator2/Configuration_adv.h Visa fil

@@ -2089,6 +2089,59 @@
2089 2089
   #define WIFI_PWD  "Wifi Password"
2090 2090
 #endif
2091 2091
 
2092
+/**
2093
+ * Prusa Multi-Material Unit v2
2094
+ * Enable in Configuration.h
2095
+ */
2096
+#if ENABLED(PRUSA_MMU2)
2097
+
2098
+  // Serial port used for communication with MMU2.
2099
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2100
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2101
+  #define INTERNAL_SERIAL_PORT 2
2102
+  #define MMU2_SERIAL internalSerial
2103
+
2104
+  // Use hardware reset for MMU if a pin is defined for it
2105
+  //#define MMU2_RST_PIN 23
2106
+
2107
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2108
+  //#define MMU2_MODE_12V
2109
+
2110
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2111
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2112
+
2113
+  // Add an LCD menu for MMU2
2114
+  //#define MMU2_MENUS
2115
+  #if ENABLED(MMU2_MENUS)
2116
+    // Settings for filament load / unload from the LCD menu.
2117
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2118
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2119
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2120
+      {  7.2,  562 }, \
2121
+      { 14.4,  871 }, \
2122
+      { 36.0, 1393 }, \
2123
+      { 14.4,  871 }, \
2124
+      { 50.0,  198 }
2125
+
2126
+    #define MMU2_RAMMING_SEQUENCE \
2127
+      {   1.0, 1000 }, \
2128
+      {   1.0, 1500 }, \
2129
+      {   2.0, 2000 }, \
2130
+      {   1.5, 3000 }, \
2131
+      {   2.5, 4000 }, \
2132
+      { -15.0, 5000 }, \
2133
+      { -14.0, 1200 }, \
2134
+      {  -6.0,  600 }, \
2135
+      {  10.0,  700 }, \
2136
+      { -10.0,  400 }, \
2137
+      { -50.0, 2000 }
2138
+
2139
+  #endif
2140
+
2141
+  //#define MMU2_DEBUG  // Write debug info to serial output
2142
+
2143
+#endif // PRUSA_MMU2
2144
+
2092 2145
 // @section develop
2093 2146
 
2094 2147
 /**

+ 10
- 0
Marlin/src/config/examples/Geeetech/Prusa i3 Pro B/bltouch/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 10
- 0
Marlin/src/config/examples/Geeetech/Prusa i3 Pro B/noprobe/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 10
- 0
Marlin/src/config/examples/Geeetech/Prusa i3 Pro C/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/Geeetech/Prusa i3 Pro C/Configuration_adv.h Visa fil

@@ -2103,6 +2103,59 @@
2103 2103
   #define WIFI_PWD  "Wifi Password"
2104 2104
 #endif
2105 2105
 
2106
+/**
2107
+ * Prusa Multi-Material Unit v2
2108
+ * Enable in Configuration.h
2109
+ */
2110
+#if ENABLED(PRUSA_MMU2)
2111
+
2112
+  // Serial port used for communication with MMU2.
2113
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2114
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2115
+  #define INTERNAL_SERIAL_PORT 2
2116
+  #define MMU2_SERIAL internalSerial
2117
+
2118
+  // Use hardware reset for MMU if a pin is defined for it
2119
+  //#define MMU2_RST_PIN 23
2120
+
2121
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2122
+  //#define MMU2_MODE_12V
2123
+
2124
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2125
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2126
+
2127
+  // Add an LCD menu for MMU2
2128
+  //#define MMU2_MENUS
2129
+  #if ENABLED(MMU2_MENUS)
2130
+    // Settings for filament load / unload from the LCD menu.
2131
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2132
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2133
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2134
+      {  7.2,  562 }, \
2135
+      { 14.4,  871 }, \
2136
+      { 36.0, 1393 }, \
2137
+      { 14.4,  871 }, \
2138
+      { 50.0,  198 }
2139
+
2140
+    #define MMU2_RAMMING_SEQUENCE \
2141
+      {   1.0, 1000 }, \
2142
+      {   1.0, 1500 }, \
2143
+      {   2.0, 2000 }, \
2144
+      {   1.5, 3000 }, \
2145
+      {   2.5, 4000 }, \
2146
+      { -15.0, 5000 }, \
2147
+      { -14.0, 1200 }, \
2148
+      {  -6.0,  600 }, \
2149
+      {  10.0,  700 }, \
2150
+      { -10.0,  400 }, \
2151
+      { -50.0, 2000 }
2152
+
2153
+  #endif
2154
+
2155
+  //#define MMU2_DEBUG  // Write debug info to serial output
2156
+
2157
+#endif // PRUSA_MMU2
2158
+
2106 2159
 // @section develop
2107 2160
 
2108 2161
 /**

+ 10
- 0
Marlin/src/config/examples/Geeetech/Prusa i3 Pro W/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/Geeetech/Prusa i3 Pro W/Configuration_adv.h Visa fil

@@ -2103,6 +2103,59 @@
2103 2103
   #define WIFI_PWD  "Wifi Password"
2104 2104
 #endif
2105 2105
 
2106
+/**
2107
+ * Prusa Multi-Material Unit v2
2108
+ * Enable in Configuration.h
2109
+ */
2110
+#if ENABLED(PRUSA_MMU2)
2111
+
2112
+  // Serial port used for communication with MMU2.
2113
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2114
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2115
+  #define INTERNAL_SERIAL_PORT 2
2116
+  #define MMU2_SERIAL internalSerial
2117
+
2118
+  // Use hardware reset for MMU if a pin is defined for it
2119
+  //#define MMU2_RST_PIN 23
2120
+
2121
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2122
+  //#define MMU2_MODE_12V
2123
+
2124
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2125
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2126
+
2127
+  // Add an LCD menu for MMU2
2128
+  //#define MMU2_MENUS
2129
+  #if ENABLED(MMU2_MENUS)
2130
+    // Settings for filament load / unload from the LCD menu.
2131
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2132
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2133
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2134
+      {  7.2,  562 }, \
2135
+      { 14.4,  871 }, \
2136
+      { 36.0, 1393 }, \
2137
+      { 14.4,  871 }, \
2138
+      { 50.0,  198 }
2139
+
2140
+    #define MMU2_RAMMING_SEQUENCE \
2141
+      {   1.0, 1000 }, \
2142
+      {   1.0, 1500 }, \
2143
+      {   2.0, 2000 }, \
2144
+      {   1.5, 3000 }, \
2145
+      {   2.5, 4000 }, \
2146
+      { -15.0, 5000 }, \
2147
+      { -14.0, 1200 }, \
2148
+      {  -6.0,  600 }, \
2149
+      {  10.0,  700 }, \
2150
+      { -10.0,  400 }, \
2151
+      { -50.0, 2000 }
2152
+
2153
+  #endif
2154
+
2155
+  //#define MMU2_DEBUG  // Write debug info to serial output
2156
+
2157
+#endif // PRUSA_MMU2
2158
+
2106 2159
 // @section develop
2107 2160
 
2108 2161
 /**

+ 10
- 0
Marlin/src/config/examples/Infitary/i3-M508/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/Infitary/i3-M508/Configuration_adv.h Visa fil

@@ -2103,6 +2103,59 @@
2103 2103
   #define WIFI_PWD  "Wifi Password"
2104 2104
 #endif
2105 2105
 
2106
+/**
2107
+ * Prusa Multi-Material Unit v2
2108
+ * Enable in Configuration.h
2109
+ */
2110
+#if ENABLED(PRUSA_MMU2)
2111
+
2112
+  // Serial port used for communication with MMU2.
2113
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2114
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2115
+  #define INTERNAL_SERIAL_PORT 2
2116
+  #define MMU2_SERIAL internalSerial
2117
+
2118
+  // Use hardware reset for MMU if a pin is defined for it
2119
+  //#define MMU2_RST_PIN 23
2120
+
2121
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2122
+  //#define MMU2_MODE_12V
2123
+
2124
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2125
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2126
+
2127
+  // Add an LCD menu for MMU2
2128
+  //#define MMU2_MENUS
2129
+  #if ENABLED(MMU2_MENUS)
2130
+    // Settings for filament load / unload from the LCD menu.
2131
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2132
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2133
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2134
+      {  7.2,  562 }, \
2135
+      { 14.4,  871 }, \
2136
+      { 36.0, 1393 }, \
2137
+      { 14.4,  871 }, \
2138
+      { 50.0,  198 }
2139
+
2140
+    #define MMU2_RAMMING_SEQUENCE \
2141
+      {   1.0, 1000 }, \
2142
+      {   1.0, 1500 }, \
2143
+      {   2.0, 2000 }, \
2144
+      {   1.5, 3000 }, \
2145
+      {   2.5, 4000 }, \
2146
+      { -15.0, 5000 }, \
2147
+      { -14.0, 1200 }, \
2148
+      {  -6.0,  600 }, \
2149
+      {  10.0,  700 }, \
2150
+      { -10.0,  400 }, \
2151
+      { -50.0, 2000 }
2152
+
2153
+  #endif
2154
+
2155
+  //#define MMU2_DEBUG  // Write debug info to serial output
2156
+
2157
+#endif // PRUSA_MMU2
2158
+
2106 2159
 // @section develop
2107 2160
 
2108 2161
 /**

+ 10
- 0
Marlin/src/config/examples/JGAurora/A5/Configuration.h Visa fil

@@ -179,6 +179,16 @@
179 179
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
180 180
 #endif
181 181
 
182
+/**
183
+ * Prusa Multi-Material Unit v2
184
+ *
185
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
186
+ * Requires EXTRUDERS = 5
187
+ *
188
+ * For additional configuration see Configuration_adv.h
189
+ */
190
+//#define PRUSA_MMU2
191
+
182 192
 // A dual extruder that uses a single stepper motor
183 193
 //#define SWITCHING_EXTRUDER
184 194
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/JGAurora/A5/Configuration_adv.h Visa fil

@@ -2103,6 +2103,59 @@
2103 2103
   #define WIFI_PWD  "Wifi Password"
2104 2104
 #endif
2105 2105
 
2106
+/**
2107
+ * Prusa Multi-Material Unit v2
2108
+ * Enable in Configuration.h
2109
+ */
2110
+#if ENABLED(PRUSA_MMU2)
2111
+
2112
+  // Serial port used for communication with MMU2.
2113
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2114
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2115
+  #define INTERNAL_SERIAL_PORT 2
2116
+  #define MMU2_SERIAL internalSerial
2117
+
2118
+  // Use hardware reset for MMU if a pin is defined for it
2119
+  //#define MMU2_RST_PIN 23
2120
+
2121
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2122
+  //#define MMU2_MODE_12V
2123
+
2124
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2125
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2126
+
2127
+  // Add an LCD menu for MMU2
2128
+  //#define MMU2_MENUS
2129
+  #if ENABLED(MMU2_MENUS)
2130
+    // Settings for filament load / unload from the LCD menu.
2131
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2132
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2133
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2134
+      {  7.2,  562 }, \
2135
+      { 14.4,  871 }, \
2136
+      { 36.0, 1393 }, \
2137
+      { 14.4,  871 }, \
2138
+      { 50.0,  198 }
2139
+
2140
+    #define MMU2_RAMMING_SEQUENCE \
2141
+      {   1.0, 1000 }, \
2142
+      {   1.0, 1500 }, \
2143
+      {   2.0, 2000 }, \
2144
+      {   1.5, 3000 }, \
2145
+      {   2.5, 4000 }, \
2146
+      { -15.0, 5000 }, \
2147
+      { -14.0, 1200 }, \
2148
+      {  -6.0,  600 }, \
2149
+      {  10.0,  700 }, \
2150
+      { -10.0,  400 }, \
2151
+      { -50.0, 2000 }
2152
+
2153
+  #endif
2154
+
2155
+  //#define MMU2_DEBUG  // Write debug info to serial output
2156
+
2157
+#endif // PRUSA_MMU2
2158
+
2106 2159
 // @section develop
2107 2160
 
2108 2161
 /**

+ 10
- 0
Marlin/src/config/examples/MakerParts/Configuration.h Visa fil

@@ -194,6 +194,16 @@
194 194
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
195 195
 #endif
196 196
 
197
+/**
198
+ * Prusa Multi-Material Unit v2
199
+ *
200
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
201
+ * Requires EXTRUDERS = 5
202
+ *
203
+ * For additional configuration see Configuration_adv.h
204
+ */
205
+//#define PRUSA_MMU2
206
+
197 207
 // A dual extruder that uses a single stepper motor
198 208
 //#define SWITCHING_EXTRUDER
199 209
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/MakerParts/Configuration_adv.h Visa fil

@@ -2103,6 +2103,59 @@
2103 2103
   #define WIFI_PWD  "Wifi Password"
2104 2104
 #endif
2105 2105
 
2106
+/**
2107
+ * Prusa Multi-Material Unit v2
2108
+ * Enable in Configuration.h
2109
+ */
2110
+#if ENABLED(PRUSA_MMU2)
2111
+
2112
+  // Serial port used for communication with MMU2.
2113
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2114
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2115
+  #define INTERNAL_SERIAL_PORT 2
2116
+  #define MMU2_SERIAL internalSerial
2117
+
2118
+  // Use hardware reset for MMU if a pin is defined for it
2119
+  //#define MMU2_RST_PIN 23
2120
+
2121
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2122
+  //#define MMU2_MODE_12V
2123
+
2124
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2125
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2126
+
2127
+  // Add an LCD menu for MMU2
2128
+  //#define MMU2_MENUS
2129
+  #if ENABLED(MMU2_MENUS)
2130
+    // Settings for filament load / unload from the LCD menu.
2131
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2132
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2133
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2134
+      {  7.2,  562 }, \
2135
+      { 14.4,  871 }, \
2136
+      { 36.0, 1393 }, \
2137
+      { 14.4,  871 }, \
2138
+      { 50.0,  198 }
2139
+
2140
+    #define MMU2_RAMMING_SEQUENCE \
2141
+      {   1.0, 1000 }, \
2142
+      {   1.0, 1500 }, \
2143
+      {   2.0, 2000 }, \
2144
+      {   1.5, 3000 }, \
2145
+      {   2.5, 4000 }, \
2146
+      { -15.0, 5000 }, \
2147
+      { -14.0, 1200 }, \
2148
+      {  -6.0,  600 }, \
2149
+      {  10.0,  700 }, \
2150
+      { -10.0,  400 }, \
2151
+      { -50.0, 2000 }
2152
+
2153
+  #endif
2154
+
2155
+  //#define MMU2_DEBUG  // Write debug info to serial output
2156
+
2157
+#endif // PRUSA_MMU2
2158
+
2106 2159
 // @section develop
2107 2160
 
2108 2161
 /**

+ 10
- 0
Marlin/src/config/examples/Malyan/M150/Configuration.h Visa fil

@@ -179,6 +179,16 @@
179 179
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
180 180
 #endif
181 181
 
182
+/**
183
+ * Prusa Multi-Material Unit v2
184
+ *
185
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
186
+ * Requires EXTRUDERS = 5
187
+ *
188
+ * For additional configuration see Configuration_adv.h
189
+ */
190
+//#define PRUSA_MMU2
191
+
182 192
 // A dual extruder that uses a single stepper motor
183 193
 //#define SWITCHING_EXTRUDER
184 194
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/Malyan/M150/Configuration_adv.h Visa fil

@@ -2103,6 +2103,59 @@
2103 2103
   #define WIFI_PWD  "Wifi Password"
2104 2104
 #endif
2105 2105
 
2106
+/**
2107
+ * Prusa Multi-Material Unit v2
2108
+ * Enable in Configuration.h
2109
+ */
2110
+#if ENABLED(PRUSA_MMU2)
2111
+
2112
+  // Serial port used for communication with MMU2.
2113
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2114
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2115
+  #define INTERNAL_SERIAL_PORT 2
2116
+  #define MMU2_SERIAL internalSerial
2117
+
2118
+  // Use hardware reset for MMU if a pin is defined for it
2119
+  //#define MMU2_RST_PIN 23
2120
+
2121
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2122
+  //#define MMU2_MODE_12V
2123
+
2124
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2125
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2126
+
2127
+  // Add an LCD menu for MMU2
2128
+  //#define MMU2_MENUS
2129
+  #if ENABLED(MMU2_MENUS)
2130
+    // Settings for filament load / unload from the LCD menu.
2131
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2132
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2133
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2134
+      {  7.2,  562 }, \
2135
+      { 14.4,  871 }, \
2136
+      { 36.0, 1393 }, \
2137
+      { 14.4,  871 }, \
2138
+      { 50.0,  198 }
2139
+
2140
+    #define MMU2_RAMMING_SEQUENCE \
2141
+      {   1.0, 1000 }, \
2142
+      {   1.0, 1500 }, \
2143
+      {   2.0, 2000 }, \
2144
+      {   1.5, 3000 }, \
2145
+      {   2.5, 4000 }, \
2146
+      { -15.0, 5000 }, \
2147
+      { -14.0, 1200 }, \
2148
+      {  -6.0,  600 }, \
2149
+      {  10.0,  700 }, \
2150
+      { -10.0,  400 }, \
2151
+      { -50.0, 2000 }
2152
+
2153
+  #endif
2154
+
2155
+  //#define MMU2_DEBUG  // Write debug info to serial output
2156
+
2157
+#endif // PRUSA_MMU2
2158
+
2106 2159
 // @section develop
2107 2160
 
2108 2161
 /**

+ 10
- 0
Marlin/src/config/examples/Malyan/M200/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/Malyan/M200/Configuration_adv.h Visa fil

@@ -2103,6 +2103,59 @@
2103 2103
   #define WIFI_PWD  "Wifi Password"
2104 2104
 #endif
2105 2105
 
2106
+/**
2107
+ * Prusa Multi-Material Unit v2
2108
+ * Enable in Configuration.h
2109
+ */
2110
+#if ENABLED(PRUSA_MMU2)
2111
+
2112
+  // Serial port used for communication with MMU2.
2113
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2114
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2115
+  #define INTERNAL_SERIAL_PORT 2
2116
+  #define MMU2_SERIAL internalSerial
2117
+
2118
+  // Use hardware reset for MMU if a pin is defined for it
2119
+  //#define MMU2_RST_PIN 23
2120
+
2121
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2122
+  //#define MMU2_MODE_12V
2123
+
2124
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2125
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2126
+
2127
+  // Add an LCD menu for MMU2
2128
+  //#define MMU2_MENUS
2129
+  #if ENABLED(MMU2_MENUS)
2130
+    // Settings for filament load / unload from the LCD menu.
2131
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2132
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2133
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2134
+      {  7.2,  562 }, \
2135
+      { 14.4,  871 }, \
2136
+      { 36.0, 1393 }, \
2137
+      { 14.4,  871 }, \
2138
+      { 50.0,  198 }
2139
+
2140
+    #define MMU2_RAMMING_SEQUENCE \
2141
+      {   1.0, 1000 }, \
2142
+      {   1.0, 1500 }, \
2143
+      {   2.0, 2000 }, \
2144
+      {   1.5, 3000 }, \
2145
+      {   2.5, 4000 }, \
2146
+      { -15.0, 5000 }, \
2147
+      { -14.0, 1200 }, \
2148
+      {  -6.0,  600 }, \
2149
+      {  10.0,  700 }, \
2150
+      { -10.0,  400 }, \
2151
+      { -50.0, 2000 }
2152
+
2153
+  #endif
2154
+
2155
+  //#define MMU2_DEBUG  // Write debug info to serial output
2156
+
2157
+#endif // PRUSA_MMU2
2158
+
2106 2159
 // @section develop
2107 2160
 
2108 2161
 /**

+ 10
- 0
Marlin/src/config/examples/Micromake/C1/basic/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 10
- 0
Marlin/src/config/examples/Micromake/C1/enhanced/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/Micromake/C1/enhanced/Configuration_adv.h Visa fil

@@ -2103,6 +2103,59 @@
2103 2103
   #define WIFI_PWD  "Wifi Password"
2104 2104
 #endif
2105 2105
 
2106
+/**
2107
+ * Prusa Multi-Material Unit v2
2108
+ * Enable in Configuration.h
2109
+ */
2110
+#if ENABLED(PRUSA_MMU2)
2111
+
2112
+  // Serial port used for communication with MMU2.
2113
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2114
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2115
+  #define INTERNAL_SERIAL_PORT 2
2116
+  #define MMU2_SERIAL internalSerial
2117
+
2118
+  // Use hardware reset for MMU if a pin is defined for it
2119
+  //#define MMU2_RST_PIN 23
2120
+
2121
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2122
+  //#define MMU2_MODE_12V
2123
+
2124
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2125
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2126
+
2127
+  // Add an LCD menu for MMU2
2128
+  //#define MMU2_MENUS
2129
+  #if ENABLED(MMU2_MENUS)
2130
+    // Settings for filament load / unload from the LCD menu.
2131
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2132
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2133
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2134
+      {  7.2,  562 }, \
2135
+      { 14.4,  871 }, \
2136
+      { 36.0, 1393 }, \
2137
+      { 14.4,  871 }, \
2138
+      { 50.0,  198 }
2139
+
2140
+    #define MMU2_RAMMING_SEQUENCE \
2141
+      {   1.0, 1000 }, \
2142
+      {   1.0, 1500 }, \
2143
+      {   2.0, 2000 }, \
2144
+      {   1.5, 3000 }, \
2145
+      {   2.5, 4000 }, \
2146
+      { -15.0, 5000 }, \
2147
+      { -14.0, 1200 }, \
2148
+      {  -6.0,  600 }, \
2149
+      {  10.0,  700 }, \
2150
+      { -10.0,  400 }, \
2151
+      { -50.0, 2000 }
2152
+
2153
+  #endif
2154
+
2155
+  //#define MMU2_DEBUG  // Write debug info to serial output
2156
+
2157
+#endif // PRUSA_MMU2
2158
+
2106 2159
 // @section develop
2107 2160
 
2108 2161
 /**

+ 10
- 0
Marlin/src/config/examples/Mks/Robin/Configuration.h Visa fil

@@ -175,6 +175,16 @@
175 175
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
176 176
 #endif
177 177
 
178
+/**
179
+ * Prusa Multi-Material Unit v2
180
+ *
181
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
182
+ * Requires EXTRUDERS = 5
183
+ *
184
+ * For additional configuration see Configuration_adv.h
185
+ */
186
+//#define PRUSA_MMU2
187
+
178 188
 // A dual extruder that uses a single stepper motor
179 189
 //#define SWITCHING_EXTRUDER
180 190
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/Mks/Robin/Configuration_adv.h Visa fil

@@ -2104,6 +2104,59 @@
2104 2104
   #define WIFI_PWD  "Wifi Password"
2105 2105
 #endif
2106 2106
 
2107
+/**
2108
+ * Prusa Multi-Material Unit v2
2109
+ * Enable in Configuration.h
2110
+ */
2111
+#if ENABLED(PRUSA_MMU2)
2112
+
2113
+  // Serial port used for communication with MMU2.
2114
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2115
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2116
+  #define INTERNAL_SERIAL_PORT 2
2117
+  #define MMU2_SERIAL internalSerial
2118
+
2119
+  // Use hardware reset for MMU if a pin is defined for it
2120
+  //#define MMU2_RST_PIN 23
2121
+
2122
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2123
+  //#define MMU2_MODE_12V
2124
+
2125
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2126
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2127
+
2128
+  // Add an LCD menu for MMU2
2129
+  //#define MMU2_MENUS
2130
+  #if ENABLED(MMU2_MENUS)
2131
+    // Settings for filament load / unload from the LCD menu.
2132
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2133
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2134
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2135
+      {  7.2,  562 }, \
2136
+      { 14.4,  871 }, \
2137
+      { 36.0, 1393 }, \
2138
+      { 14.4,  871 }, \
2139
+      { 50.0,  198 }
2140
+
2141
+    #define MMU2_RAMMING_SEQUENCE \
2142
+      {   1.0, 1000 }, \
2143
+      {   1.0, 1500 }, \
2144
+      {   2.0, 2000 }, \
2145
+      {   1.5, 3000 }, \
2146
+      {   2.5, 4000 }, \
2147
+      { -15.0, 5000 }, \
2148
+      { -14.0, 1200 }, \
2149
+      {  -6.0,  600 }, \
2150
+      {  10.0,  700 }, \
2151
+      { -10.0,  400 }, \
2152
+      { -50.0, 2000 }
2153
+
2154
+  #endif
2155
+
2156
+  //#define MMU2_DEBUG  // Write debug info to serial output
2157
+
2158
+#endif // PRUSA_MMU2
2159
+
2107 2160
 // @section develop
2108 2161
 
2109 2162
 /**

+ 10
- 0
Marlin/src/config/examples/Mks/Sbase/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/Mks/Sbase/Configuration_adv.h Visa fil

@@ -2111,6 +2111,59 @@
2111 2111
   #define WIFI_PWD  "Wifi Password"
2112 2112
 #endif
2113 2113
 
2114
+/**
2115
+ * Prusa Multi-Material Unit v2
2116
+ * Enable in Configuration.h
2117
+ */
2118
+#if ENABLED(PRUSA_MMU2)
2119
+
2120
+  // Serial port used for communication with MMU2.
2121
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2122
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2123
+  #define INTERNAL_SERIAL_PORT 2
2124
+  #define MMU2_SERIAL internalSerial
2125
+
2126
+  // Use hardware reset for MMU if a pin is defined for it
2127
+  //#define MMU2_RST_PIN 23
2128
+
2129
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2130
+  //#define MMU2_MODE_12V
2131
+
2132
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2133
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2134
+
2135
+  // Add an LCD menu for MMU2
2136
+  //#define MMU2_MENUS
2137
+  #if ENABLED(MMU2_MENUS)
2138
+    // Settings for filament load / unload from the LCD menu.
2139
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2140
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2141
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2142
+      {  7.2,  562 }, \
2143
+      { 14.4,  871 }, \
2144
+      { 36.0, 1393 }, \
2145
+      { 14.4,  871 }, \
2146
+      { 50.0,  198 }
2147
+
2148
+    #define MMU2_RAMMING_SEQUENCE \
2149
+      {   1.0, 1000 }, \
2150
+      {   1.0, 1500 }, \
2151
+      {   2.0, 2000 }, \
2152
+      {   1.5, 3000 }, \
2153
+      {   2.5, 4000 }, \
2154
+      { -15.0, 5000 }, \
2155
+      { -14.0, 1200 }, \
2156
+      {  -6.0,  600 }, \
2157
+      {  10.0,  700 }, \
2158
+      { -10.0,  400 }, \
2159
+      { -50.0, 2000 }
2160
+
2161
+  #endif
2162
+
2163
+  //#define MMU2_DEBUG  // Write debug info to serial output
2164
+
2165
+#endif // PRUSA_MMU2
2166
+
2114 2167
 // @section develop
2115 2168
 
2116 2169
 /**

+ 10
- 0
Marlin/src/config/examples/RapideLite/RL200/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/RapideLite/RL200/Configuration_adv.h Visa fil

@@ -2104,6 +2104,59 @@
2104 2104
   #define WIFI_PWD  "Wifi Password"
2105 2105
 #endif
2106 2106
 
2107
+/**
2108
+ * Prusa Multi-Material Unit v2
2109
+ * Enable in Configuration.h
2110
+ */
2111
+#if ENABLED(PRUSA_MMU2)
2112
+
2113
+  // Serial port used for communication with MMU2.
2114
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2115
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2116
+  #define INTERNAL_SERIAL_PORT 2
2117
+  #define MMU2_SERIAL internalSerial
2118
+
2119
+  // Use hardware reset for MMU if a pin is defined for it
2120
+  //#define MMU2_RST_PIN 23
2121
+
2122
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2123
+  //#define MMU2_MODE_12V
2124
+
2125
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2126
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2127
+
2128
+  // Add an LCD menu for MMU2
2129
+  //#define MMU2_MENUS
2130
+  #if ENABLED(MMU2_MENUS)
2131
+    // Settings for filament load / unload from the LCD menu.
2132
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2133
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2134
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2135
+      {  7.2,  562 }, \
2136
+      { 14.4,  871 }, \
2137
+      { 36.0, 1393 }, \
2138
+      { 14.4,  871 }, \
2139
+      { 50.0,  198 }
2140
+
2141
+    #define MMU2_RAMMING_SEQUENCE \
2142
+      {   1.0, 1000 }, \
2143
+      {   1.0, 1500 }, \
2144
+      {   2.0, 2000 }, \
2145
+      {   1.5, 3000 }, \
2146
+      {   2.5, 4000 }, \
2147
+      { -15.0, 5000 }, \
2148
+      { -14.0, 1200 }, \
2149
+      {  -6.0,  600 }, \
2150
+      {  10.0,  700 }, \
2151
+      { -10.0,  400 }, \
2152
+      { -50.0, 2000 }
2153
+
2154
+  #endif
2155
+
2156
+  //#define MMU2_DEBUG  // Write debug info to serial output
2157
+
2158
+#endif // PRUSA_MMU2
2159
+
2107 2160
 // @section develop
2108 2161
 
2109 2162
 /**

+ 10
- 0
Marlin/src/config/examples/RepRapPro/Huxley/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 10
- 0
Marlin/src/config/examples/RepRapWorld/Megatronics/Configuration.h Visa fil

@@ -174,6 +174,16 @@
174 174
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
175 175
 #endif
176 176
 
177
+/**
178
+ * Prusa Multi-Material Unit v2
179
+ *
180
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
181
+ * Requires EXTRUDERS = 5
182
+ *
183
+ * For additional configuration see Configuration_adv.h
184
+ */
185
+//#define PRUSA_MMU2
186
+
177 187
 // A dual extruder that uses a single stepper motor
178 188
 //#define SWITCHING_EXTRUDER
179 189
 #if ENABLED(SWITCHING_EXTRUDER)

+ 10
- 0
Marlin/src/config/examples/RigidBot/Configuration.h Visa fil

@@ -177,6 +177,16 @@
177 177
   //#define E_MUX2_PIN 44  // Needed for 5 to 8 inputs
178 178
 #endif
179 179
 
180
+/**
181
+ * Prusa Multi-Material Unit v2
182
+ *
183
+ * Requires NOZZLE_PARK_FEATURE to park print head in case MMU unit fails.
184
+ * Requires EXTRUDERS = 5
185
+ *
186
+ * For additional configuration see Configuration_adv.h
187
+ */
188
+//#define PRUSA_MMU2
189
+
180 190
 // A dual extruder that uses a single stepper motor
181 191
 //#define SWITCHING_EXTRUDER
182 192
 #if ENABLED(SWITCHING_EXTRUDER)

+ 53
- 0
Marlin/src/config/examples/RigidBot/Configuration_adv.h Visa fil

@@ -2103,6 +2103,59 @@
2103 2103
   #define WIFI_PWD  "Wifi Password"
2104 2104
 #endif
2105 2105
 
2106
+/**
2107
+ * Prusa Multi-Material Unit v2
2108
+ * Enable in Configuration.h
2109
+ */
2110
+#if ENABLED(PRUSA_MMU2)
2111
+
2112
+  // Serial port used for communication with MMU2.
2113
+  // For AVR enable the UART port used for the MMU. (e.g., internalSerial)
2114
+  // For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
2115
+  #define INTERNAL_SERIAL_PORT 2
2116
+  #define MMU2_SERIAL internalSerial
2117
+
2118
+  // Use hardware reset for MMU if a pin is defined for it
2119
+  //#define MMU2_RST_PIN 23
2120
+
2121
+  // Enable if the MMU2 has 12V stepper motors (MMU2 Firmware 1.0.2 and up)
2122
+  //#define MMU2_MODE_12V
2123
+
2124
+  // G-code to execute when MMU2 F.I.N.D.A. probe detects filament runout
2125
+  #define MMU2_FILAMENT_RUNOUT_SCRIPT "M600"
2126
+
2127
+  // Add an LCD menu for MMU2
2128
+  //#define MMU2_MENUS
2129
+  #if ENABLED(MMU2_MENUS)
2130
+    // Settings for filament load / unload from the LCD menu.
2131
+    // This is for Prusa MK3-style extruders. Customize for your hardware.
2132
+    #define MMU2_FILAMENTCHANGE_EJECT_FEED 80.0
2133
+    #define MMU2_LOAD_TO_NOZZLE_SEQUENCE \
2134
+      {  7.2,  562 }, \
2135
+      { 14.4,  871 }, \
2136
+      { 36.0, 1393 }, \
2137
+      { 14.4,  871 }, \
2138
+      { 50.0,  198 }
2139
+
2140
+    #define MMU2_RAMMING_SEQUENCE \
2141
+      {   1.0, 1000 }, \
2142
+      {   1.0, 1500 }, \
2143
+      {   2.0, 2000 }, \
2144
+      {   1.5, 3000 }, \
2145
+      {   2.5, 4000 }, \
2146
+      { -15.0, 5000 }, \
2147
+      { -14.0, 1200 }, \
2148
+      {  -6.0,  600 }, \
2149
+      {  10.0,  700 }, \
2150
+      { -10.0,  400 }, \
2151
+      { -50.0, 2000 }
2152
+
2153
+  #endif
2154
+
2155
+  //#define MMU2_DEBUG  // Write debug info to serial output
2156
+
2157
+#endif // PRUSA_MMU2
2158
+
2106 2159
 // @section develop
2107 2160
 
2108 2161
 /**

+ 0
- 0
Marlin/src/config/examples/SCARA/Configuration.h Visa fil


Vissa filer visades inte eftersom för många filer har ändrats

Laddar…
Avbryt
Spara