MAGNETIC_PARKING_EXTRUDER (#12351)
This commit is contained in:
		
				
					committed by
					
						 Scott Lahteine
						Scott Lahteine
					
				
			
			
				
	
			
			
			
						parent
						
							1bd9a63049
						
					
				
				
					commit
					524c6c10bf
				
			| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -148,7 +148,7 @@ | ||||
|   #include "feature/fanmux.h" | ||||
| #endif | ||||
|  | ||||
| #if DO_SWITCH_EXTRUDER || ENABLED(SWITCHING_NOZZLE) || ENABLED(PARKING_EXTRUDER) | ||||
| #if DO_SWITCH_EXTRUDER || ENABLED(SWITCHING_NOZZLE) || ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|   #include "module/tool_change.h" | ||||
| #endif | ||||
|  | ||||
| @@ -975,8 +975,12 @@ void setup() { | ||||
|     #endif | ||||
|   #endif | ||||
|  | ||||
|   #if ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|     mpe_settings_init(); | ||||
|   #endif | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|     pe_magnet_init(); | ||||
|     pe_solenoid_init(); | ||||
|   #endif | ||||
|  | ||||
|   #if ENABLED(POWER_LOSS_RECOVERY) | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,47 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -205,16 +205,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -205,16 +205,47 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -212,16 +212,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -205,16 +205,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -213,16 +213,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,47 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -245,16 +245,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -207,16 +207,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -208,16 +208,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -209,16 +209,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -224,16 +224,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -209,16 +209,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -205,16 +205,47 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,47 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -207,16 +207,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -235,16 +235,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -226,16 +226,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,47 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -224,16 +224,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -223,16 +223,47 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -219,16 +219,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -209,16 +209,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,47 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -208,16 +208,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -209,16 +209,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -204,16 +204,48 @@ | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * via a solenoid docking mechanism. Requires SOL1_PIN and SOL2_PIN. | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define PARKING_EXTRUDER | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|   #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // Delay (ms) for magnetic field. No delay if 0 or not defined. | ||||
|  | ||||
| /** | ||||
|  * Two separate X-carriages with extruders that connect to a moving part | ||||
|  * via a magnetic docking mechanism using movements and no solenoid | ||||
|  * | ||||
|  * project   : https://www.thingiverse.com/thing:3080893 | ||||
|  * movements : https://youtu.be/0xCEiG9VS3k | ||||
|  *             https://youtu.be/Bqbcs0CU2FE | ||||
|  * | ||||
|  * for cooling multi extruder with separate fans | ||||
|  * see on Configuration_adv.h and look for "Part-Cooling" | ||||
|  */ | ||||
| //#define MAGNETIC_PARKING_EXTRUDER | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) || ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   #define PARKING_EXTRUDER_PARKING_X { -78, 184 }     // X positions for parking the extruders | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // (mm) Distance to move beyond the parking point to grab the extruder | ||||
|   #define PARKING_EXTRUDER_GRAB_DISTANCE 1            // mm to move beyond the parking point to grab the extruder | ||||
|   //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #if ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_INVERT           // If enabled, the solenoid is NOT magnetized with applied voltage | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE LOW  // LOW or HIGH pin signal energizes the coil | ||||
|     #define PARKING_EXTRUDER_SOLENOIDS_DELAY 250        // (ms) Delay for magnetic field. No delay if 0 or not defined. | ||||
|     //#define MANUAL_SOLENOID_CONTROL                   // Manual control of docking solenoids with M380 S / M381 | ||||
|  | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|     #define MPE_FAST_SPEED      9000      // (mm/m) Speed for travel before last distance point | ||||
|     #define MPE_SLOW_SPEED      4500      // (mm/m) Speed for last distance travel to park and couple | ||||
|     #define MPE_TRAVEL_DISTANCE   10      // (mm) Last distance point | ||||
|     #define MPE_COMPENSATION       0      // Offset Compensation -1 , 0 , 1 (multiplier) only for coupling | ||||
|  | ||||
|   #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -705,6 +705,10 @@ void GcodeSuite::process_parsed_command( | ||||
|         case 869: M869(); break;                                  // M869: Report axis error | ||||
|       #endif | ||||
|  | ||||
|       #if ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|         case 951: M951(); break;                                  // M951: Set Magnetic Parking Extruder parameters | ||||
|       #endif | ||||
|  | ||||
|       #if ENABLED(Z_STEPPER_AUTO_ALIGN) | ||||
|         case 422: M422(); break;                                  // M422: Set Z Stepper automatic alignment position using probe | ||||
|       #endif | ||||
|   | ||||
| @@ -243,6 +243,7 @@ | ||||
|  * M914 - Set StallGuard sensitivity. (Requires SENSORLESS_HOMING or SENSORLESS_PROBING) | ||||
|  * M917 - L6470 tuning: Find minimum current thresholds | ||||
|  * M918 - L6470 tuning: Increase speed until max or error | ||||
|  * M951 - Set Magnetic Parking Extruder parameters. (Requires MAGNETIC_PARKING_EXTRUDER) | ||||
|  * | ||||
|  * M360 - SCARA calibration: Move to cal-position ThetaA (0 deg calibration) | ||||
|  * M361 - SCARA calibration: Move to cal-position ThetaB (90 deg calibration - steps per degree) | ||||
| @@ -842,6 +843,10 @@ private: | ||||
|     static void M928(); | ||||
|   #endif | ||||
|  | ||||
|   #if ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|     static void M951(); | ||||
|   #endif | ||||
|  | ||||
|   static void M999(); | ||||
|  | ||||
|   #if ENABLED(POWER_LOSS_RECOVERY) | ||||
|   | ||||
							
								
								
									
										76
									
								
								Marlin/src/gcode/probe/M951.cpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										76
									
								
								Marlin/src/gcode/probe/M951.cpp
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,76 @@ | ||||
| /** | ||||
|  * Marlin 3D Printer Firmware | ||||
|  * Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] | ||||
|  * | ||||
|  * Based on Sprinter and grbl. | ||||
|  * Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm | ||||
|  * | ||||
|  * This program is free software: you can redistribute it and/or modify | ||||
|  * it under the terms of the GNU General Public License as published by | ||||
|  * the Free Software Foundation, either version 3 of the License, or | ||||
|  * (at your option) any later version. | ||||
|  * | ||||
|  * This program is distributed in the hope that it will be useful, | ||||
|  * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
|  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
|  * GNU General Public License for more details. | ||||
|  * | ||||
|  * You should have received a copy of the GNU General Public License | ||||
|  * along with this program.  If not, see <http://www.gnu.org/licenses/>. | ||||
|  * | ||||
|  */ | ||||
|  | ||||
| #include "../../inc/MarlinConfigPre.h" | ||||
|  | ||||
| #if ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
| #include "../gcode.h" | ||||
| #include "../../module/tool_change.h" | ||||
| #include "../../module/motion.h" | ||||
|  | ||||
|  | ||||
| mpe_settings_t mpe_settings; | ||||
|  | ||||
| inline void mpe_settings_report() { | ||||
|   SERIAL_ECHO_START(); SERIAL_ECHOLNPGM("Magnetic Parking Extruder"); | ||||
|   SERIAL_ECHO_START(); SERIAL_ECHOLNPAIR("L: Left parking  :", mpe_settings.parking_xpos[0]); | ||||
|   SERIAL_ECHO_START(); SERIAL_ECHOLNPAIR("R: Right parking :", mpe_settings.parking_xpos[1]); | ||||
|   SERIAL_ECHO_START(); SERIAL_ECHOLNPAIR("I: Grab Offset   :", mpe_settings.grab_distance); | ||||
|   SERIAL_ECHO_START(); SERIAL_ECHOLNPAIR("J: Normal speed  :", long(MMS_TO_MMM(mpe_settings.slow_feedrate))); | ||||
|   SERIAL_ECHO_START(); SERIAL_ECHOLNPAIR("H: High speed    :", long(MMS_TO_MMM(mpe_settings.fast_feedrate))); | ||||
|   SERIAL_ECHO_START(); SERIAL_ECHOLNPAIR("D: Distance trav.:", mpe_settings.travel_distance); | ||||
|   SERIAL_ECHO_START(); SERIAL_ECHOLNPAIR("C: Compenstion   :", mpe_settings.compensation_factor); | ||||
| } | ||||
|  | ||||
| void mpe_settings_init() { | ||||
|   constexpr float pex[2] = PARKING_EXTRUDER_PARKING_X; | ||||
|   mpe_settings.parking_xpos[0]      = pex[0];                         // M951 L | ||||
|   mpe_settings.parking_xpos[1]      = pex[1];                         // M951 R | ||||
|   mpe_settings.grab_distance        = PARKING_EXTRUDER_GRAB_DISTANCE; // M951 I | ||||
|   #if HAS_HOME_OFFSET | ||||
|     set_home_offset(X_AXIS, mpe_settings.grab_distance * -1); | ||||
|   #endif | ||||
|   mpe_settings.slow_feedrate        = MMM_TO_MMS(MPE_SLOW_SPEED);     // M951 J | ||||
|   mpe_settings.fast_feedrate        = MMM_TO_MMS(MPE_FAST_SPEED);     // M951 H | ||||
|   mpe_settings.travel_distance      = MPE_TRAVEL_DISTANCE;            // M951 D | ||||
|   mpe_settings.compensation_factor  = MPE_COMPENSATION;               // M951 C | ||||
|   mpe_settings_report(); | ||||
| } | ||||
|  | ||||
| void GcodeSuite::M951() { | ||||
|   if (parser.seenval('L')) mpe_settings.parking_xpos[0] = parser.value_linear_units(); | ||||
|   if (parser.seenval('R')) mpe_settings.parking_xpos[1] = parser.value_linear_units(); | ||||
|   if (parser.seenval('I')) { | ||||
|     mpe_settings.grab_distance = parser.value_linear_units(); | ||||
|     #if HAS_HOME_OFFSET | ||||
|       set_home_offset(X_AXIS, mpe_settings.grab_distance * -1); | ||||
|     #endif | ||||
|   } | ||||
|   if (parser.seenval('J')) mpe_settings.slow_feedrate       = MMM_TO_MMS(parser.value_linear_units()); | ||||
|   if (parser.seenval('H')) mpe_settings.fast_feedrate       = MMM_TO_MMS(parser.value_linear_units()); | ||||
|   if (parser.seenval('D')) mpe_settings.travel_distance     = parser.value_linear_units(); | ||||
|   if (parser.seenval('C')) mpe_settings.compensation_factor = parser.value_float(); | ||||
|   if (!parser.seen("CDHIJLR")) mpe_settings_report(); | ||||
| } | ||||
|  | ||||
| #endif // MAGNETIC_PARKING_EXTRUDER | ||||
| @@ -791,7 +791,7 @@ static_assert(Y_MAX_LENGTH >= Y_BED_SIZE, "Movement bounds (Y_MIN_POS, Y_MAX_POS | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|  * Parking Extruder requirements | ||||
|  * (Magnetic) Parking Extruder requirements | ||||
|  */ | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
|   #if ENABLED(DUAL_X_CARRIAGE) | ||||
| @@ -800,6 +800,8 @@ static_assert(Y_MAX_LENGTH >= Y_BED_SIZE, "Movement bounds (Y_MIN_POS, Y_MAX_POS | ||||
|     #error "PARKING_EXTRUDER and SINGLENOZZLE are incompatible." | ||||
|   #elif ENABLED(EXT_SOLENOID) | ||||
|     #error "PARKING_EXTRUDER and EXT_SOLENOID are incompatible. (Pins are used twice.)" | ||||
|   #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|     #error "Enable only one of PARKING_EXTRUDER and MAGNETIC_PARKING_EXTRUDER." | ||||
|   #elif EXTRUDERS != 2 | ||||
|     #error "PARKING_EXTRUDER requires exactly 2 EXTRUDERS." | ||||
|   #elif !PIN_EXISTS(SOL0) || !PIN_EXISTS(SOL1) | ||||
| @@ -815,6 +817,22 @@ static_assert(Y_MAX_LENGTH >= Y_BED_SIZE, "Movement bounds (Y_MIN_POS, Y_MAX_POS | ||||
|   #elif !defined(PARKING_EXTRUDER_SOLENOIDS_DELAY) || !WITHIN(PARKING_EXTRUDER_SOLENOIDS_DELAY, 0, 2000) | ||||
|     #error "PARKING_EXTRUDER_SOLENOIDS_DELAY must be between 0 and 2000 (ms)." | ||||
|   #endif | ||||
| #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|   #if ENABLED(DUAL_X_CARRIAGE) | ||||
|     #error "MAGNETIC_PARKING_EXTRUDER and DUAL_X_CARRIAGE are incompatible." | ||||
|   #elif ENABLED(SINGLENOZZLE) | ||||
|     #error "MAGNETIC_PARKING_EXTRUDER and SINGLENOZZLE are incompatible." | ||||
|   #elif ENABLED(EXT_SOLENOID) | ||||
|     #error "MAGNETIC_PARKING_EXTRUDER and EXT_SOLENOID are incompatible. (Pins are used twice.)" | ||||
|   #elif EXTRUDERS != 2 | ||||
|     #error "MAGNETIC_PARKING_EXTRUDER requires exactly 2 EXTRUDERS." | ||||
|   #elif !defined(PARKING_EXTRUDER_PARKING_X) | ||||
|     #error "MAGNETIC_PARKING_EXTRUDER requires PARKING_EXTRUDER_PARKING_X." | ||||
|   #elif !defined(TOOLCHANGE_ZRAISE) | ||||
|     #error "MAGNETIC_PARKING_EXTRUDER requires TOOLCHANGE_ZRAISE." | ||||
|   #elif TOOLCHANGE_ZRAISE < 0 | ||||
|     #error "TOOLCHANGE_ZRAISE must be 0 or higher." | ||||
|   #endif | ||||
| #endif | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -2078,6 +2078,10 @@ void MarlinSettings::reset(PORTARG_SOLO) { | ||||
|     toolchange_settings.z_raise = TOOLCHANGE_ZRAISE; | ||||
|   #endif | ||||
|  | ||||
|   #if ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|     mpe_settings_init(); | ||||
|   #endif | ||||
|  | ||||
|   // | ||||
|   // Global Leveling | ||||
|   // | ||||
|   | ||||
| @@ -42,7 +42,7 @@ | ||||
|   #endif | ||||
| #endif | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) && PARKING_EXTRUDER_SOLENOIDS_DELAY > 0 | ||||
| #if ENABLED(MAGNETIC_PARKING_EXTRUDER) || (ENABLED(PARKING_EXTRUDER) && PARKING_EXTRUDER_SOLENOIDS_DELAY > 0) | ||||
|   #include "../gcode/gcode.h" // for dwell() | ||||
| #endif | ||||
|  | ||||
| @@ -126,18 +126,143 @@ | ||||
|  | ||||
| #endif // SWITCHING_NOZZLE | ||||
|  | ||||
| #if ENABLED(PARKING_EXTRUDER) | ||||
| #if ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   void pe_magnet_init() { | ||||
|   float parkingposx[2] ,           // M951 R L | ||||
|         parkinggrabdistance ,      // M951 I | ||||
|         parkingslowspeed,          // M951 J | ||||
|         parkinghighspeed ,         // M951 H | ||||
|         parkingtraveldistance,     // M951 D | ||||
|         compensationmultiplier;   | ||||
|  | ||||
|   inline void magnetic_parking_extruder_tool_change(const uint8_t tmp_extruder) { | ||||
|  | ||||
|     const float oldx = current_position[X_AXIS], | ||||
|                 grabpos = mpe_settings.parking_xpos[tmp_extruder] + (tmp_extruder ? mpe_settings.grab_distance : -mpe_settings.grab_distance), | ||||
|                 offsetcompensation = | ||||
|                   #if HAS_HOTEND_OFFSET | ||||
|                     hotend_offset[X_AXIS][active_extruder] * mpe_settings.compensation_factor | ||||
|                   #else | ||||
|                     0 | ||||
|                   #endif | ||||
|               ; | ||||
|  | ||||
|     if (axis_unhomed_error(true, false, false)) return; | ||||
|  | ||||
|     /** | ||||
|      * Z Lift and Nozzle Offset shift ar defined in caller method to work equal with any Multi Hotend realization | ||||
|      * | ||||
|      * Steps: | ||||
|      *   1. Move high speed to park position of new extruder | ||||
|      *   2. Move to couple position of new extruder (this also discouple the old extruder) | ||||
|      *   3. Move to park position of new extruder | ||||
|      *   4. Move high speed to approach park position of old extruder | ||||
|      *   5. Move to park position of old extruder | ||||
|      *   6. Move to starting position | ||||
|      */ | ||||
|  | ||||
|     // STEP 1 | ||||
|  | ||||
|     current_position[X_AXIS] = mpe_settings.parking_xpos[tmp_extruder] + offsetcompensation; | ||||
|  | ||||
|     #if ENABLED(DEBUG_LEVELING_FEATURE) | ||||
|       if (DEBUGGING(LEVELING)) { | ||||
|         SERIAL_ECHOPAIR("(1) Move extruder ", int(tmp_extruder)); | ||||
|         DEBUG_POS(" to new extruder ParkPos", current_position); | ||||
|       } | ||||
|     #endif | ||||
|  | ||||
|     planner.buffer_line(current_position, mpe_settings.fast_feedrate, tmp_extruder); | ||||
|     planner.synchronize(); | ||||
|  | ||||
|     // STEP 2 | ||||
|  | ||||
|     current_position[X_AXIS] = grabpos + offsetcompensation; | ||||
|    | ||||
|     #if ENABLED(DEBUG_LEVELING_FEATURE) | ||||
|       if (DEBUGGING(LEVELING)) { | ||||
|         SERIAL_ECHOPAIR("(2) Couple extruder ", int(tmp_extruder)); | ||||
|         DEBUG_POS(" to new extruder GrabPos", current_position); | ||||
|       } | ||||
|     #endif | ||||
|    | ||||
|     planner.buffer_line(current_position, mpe_settings.slow_feedrate, tmp_extruder); | ||||
|     planner.synchronize(); | ||||
|    | ||||
|     // Delay before moving tool, to allow magnetic coupling | ||||
|     gcode.dwell(150); | ||||
|    | ||||
|     // STEP 3 | ||||
|  | ||||
|     current_position[X_AXIS] = mpe_settings.parking_xpos[tmp_extruder] + offsetcompensation; | ||||
|     #if ENABLED(DEBUG_LEVELING_FEATURE) | ||||
|       if (DEBUGGING(LEVELING)) { | ||||
|         SERIAL_ECHOPAIR("(3) Move extruder ", int(tmp_extruder)); | ||||
|         DEBUG_POS(" back to new extruder ParkPos", current_position); | ||||
|       } | ||||
|     #endif | ||||
|  | ||||
|     planner.buffer_line(current_position, mpe_settings.slow_feedrate, tmp_extruder); | ||||
|     planner.synchronize(); | ||||
|  | ||||
|     // STEP 4 | ||||
|  | ||||
|     current_position[X_AXIS] = mpe_settings.parking_xpos[active_extruder] + (active_extruder == 0 ? MPE_TRAVEL_DISTANCE : -MPE_TRAVEL_DISTANCE) + offsetcompensation; | ||||
|     #if ENABLED(DEBUG_LEVELING_FEATURE) | ||||
|       if (DEBUGGING(LEVELING)) { | ||||
|         SERIAL_ECHOPAIR("(4) Move extruder ", int(tmp_extruder)); | ||||
|         DEBUG_POS(" close to old extruder ParkPos", current_position); | ||||
|       } | ||||
|     #endif | ||||
|  | ||||
|     planner.buffer_line(current_position, mpe_settings.fast_feedrate, tmp_extruder); | ||||
|     planner.synchronize(); | ||||
|  | ||||
|     // STEP 5 | ||||
|  | ||||
|     current_position[X_AXIS] = mpe_settings.parking_xpos[active_extruder] + offsetcompensation; | ||||
|  | ||||
|     #if ENABLED(DEBUG_LEVELING_FEATURE) | ||||
|       if (DEBUGGING(LEVELING)) { | ||||
|         SERIAL_ECHOPAIR("(5) Park extruder ", int(tmp_extruder)); | ||||
|         DEBUG_POS(" at old extruder ParkPos", current_position); | ||||
|       } | ||||
|     #endif | ||||
|  | ||||
|     planner.buffer_line(current_position, mpe_settings.slow_feedrate, tmp_extruder); | ||||
|     planner.synchronize(); | ||||
|  | ||||
|     // STEP 6 | ||||
|  | ||||
|     current_position[X_AXIS] = oldx; | ||||
|  | ||||
|     #if ENABLED(DEBUG_LEVELING_FEATURE) | ||||
|       if (DEBUGGING(LEVELING)) { | ||||
|         SERIAL_ECHOPAIR("(6) Move extruder ", int(tmp_extruder)); | ||||
|         DEBUG_POS(" to starting position", current_position); | ||||
|       } | ||||
|     #endif | ||||
|  | ||||
|     planner.buffer_line(current_position, mpe_settings.fast_feedrate, tmp_extruder); | ||||
|     planner.synchronize(); | ||||
|  | ||||
|     #if ENABLED(DEBUG_LEVELING_FEATURE) | ||||
|       if (DEBUGGING(LEVELING)) SERIAL_ECHOLNPGM("Autopark done."); | ||||
|     #endif | ||||
|   } | ||||
|  | ||||
| #elif ENABLED(PARKING_EXTRUDER) | ||||
|  | ||||
|   void pe_solenoid_init() { | ||||
|     for (uint8_t n = 0; n <= 1; ++n) | ||||
|       #if ENABLED(PARKING_EXTRUDER_SOLENOIDS_INVERT) | ||||
|         pe_activate_magnet(n); | ||||
|         pe_activate_solenoid(n); | ||||
|       #else | ||||
|         pe_deactivate_magnet(n); | ||||
|         pe_deactivate_solenoid(n); | ||||
|       #endif | ||||
|   } | ||||
|  | ||||
|   void pe_set_magnet(const uint8_t extruder_num, const uint8_t state) { | ||||
|   void pe_set_solenoid(const uint8_t extruder_num, const uint8_t state) { | ||||
|     switch (extruder_num) { | ||||
|       case 1: OUT_WRITE(SOL1_PIN, state); break; | ||||
|       default: OUT_WRITE(SOL0_PIN, state); break; | ||||
| @@ -206,7 +331,7 @@ | ||||
|         if (DEBUGGING(LEVELING)) SERIAL_ECHOLNPGM("(3) Disengage magnet "); | ||||
|       #endif | ||||
|  | ||||
|       pe_deactivate_magnet(active_extruder); | ||||
|       pe_deactivate_solenoid(active_extruder); | ||||
|  | ||||
|       // STEP 4 | ||||
|  | ||||
| @@ -229,10 +354,10 @@ | ||||
|       #endif | ||||
|  | ||||
|       #if ENABLED(PARKING_EXTRUDER_SOLENOIDS_INVERT) | ||||
|         pe_activate_magnet(active_extruder); //just save power for inverted magnets | ||||
|         pe_activate_solenoid(active_extruder); //just save power for inverted magnets | ||||
|       #endif | ||||
|  | ||||
|       pe_activate_magnet(tmp_extruder); | ||||
|       pe_activate_solenoid(tmp_extruder); | ||||
|  | ||||
|       // STEP 6 | ||||
|  | ||||
| @@ -266,9 +391,9 @@ | ||||
|     } | ||||
|     else { // nomove == true | ||||
|       // Only engage magnetic field for new extruder | ||||
|       pe_activate_magnet(tmp_extruder); | ||||
|       pe_activate_solenoid(tmp_extruder); | ||||
|       #if ENABLED(PARKING_EXTRUDER_SOLENOIDS_INVERT) | ||||
|         pe_activate_magnet(active_extruder); // Just save power for inverted magnets | ||||
|         pe_activate_solenoid(active_extruder); // Just save power for inverted magnets | ||||
|       #endif | ||||
|     } | ||||
|  | ||||
| @@ -661,6 +786,8 @@ void tool_change(const uint8_t tmp_extruder, const float fr_mm_s/*=0.0*/, bool n | ||||
|         dualx_tool_change(tmp_extruder, no_move); | ||||
|       #elif ENABLED(PARKING_EXTRUDER) // Dual Parking extruder | ||||
|         parking_extruder_tool_change(tmp_extruder, no_move); | ||||
|       #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) // Magnetic Parking extruder | ||||
|         magnetic_parking_extruder_tool_change(tmp_extruder); | ||||
|       #elif ENABLED(SWITCHING_TOOLHEAD) // Switching Toolhead | ||||
|         switching_toolhead_tool_change(tmp_extruder, fr_mm_s, no_move); | ||||
|       #elif ENABLED(SWITCHING_NOZZLE) && !SWITCHING_NOZZLE_TWO_SERVOS | ||||
|   | ||||
| @@ -61,14 +61,29 @@ | ||||
|     #define PE_MAGNET_ON_STATE PARKING_EXTRUDER_SOLENOIDS_PINS_ACTIVE | ||||
|   #endif | ||||
|  | ||||
|   void pe_set_magnet(const uint8_t extruder_num, const uint8_t state); | ||||
|   void pe_set_solenoid(const uint8_t extruder_num, const uint8_t state); | ||||
|  | ||||
|   inline void pe_activate_magnet(const uint8_t extruder_num) { pe_set_magnet(extruder_num, PE_MAGNET_ON_STATE); } | ||||
|   inline void pe_deactivate_magnet(const uint8_t extruder_num) { pe_set_magnet(extruder_num, !PE_MAGNET_ON_STATE); } | ||||
|   inline void pe_activate_solenoid(const uint8_t extruder_num) { pe_set_solenoid(extruder_num, PE_MAGNET_ON_STATE); } | ||||
|   inline void pe_deactivate_solenoid(const uint8_t extruder_num) { pe_set_solenoid(extruder_num, !PE_MAGNET_ON_STATE); } | ||||
|  | ||||
|   void pe_magnet_init(); | ||||
|   void pe_solenoid_init(); | ||||
|  | ||||
| #endif // PARKING_EXTRUDER | ||||
| #elif ENABLED(MAGNETIC_PARKING_EXTRUDER) | ||||
|  | ||||
|   typedef struct MPESettings { | ||||
|     float parking_xpos[2],      // M951 L R | ||||
|           grab_distance,        // M951 I | ||||
|           slow_feedrate,        // M951 J | ||||
|           fast_feedrate,        // M951 H | ||||
|           travel_distance,      // M951 D | ||||
|           compensation_factor;  // M951 C | ||||
|   } mpe_settings_t; | ||||
|  | ||||
|   extern mpe_settings_t mpe_settings; | ||||
|  | ||||
|   void mpe_settings_init(); | ||||
|  | ||||
| #endif | ||||
|  | ||||
| #if ENABLED(SINGLENOZZLE) | ||||
|   extern uint16_t singlenozzle_temp[EXTRUDERS]; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user