From 1a9a5b82a8f335246bb884b4dda08768689f9e43 Mon Sep 17 00:00:00 2001 From: InsanityAutomation Date: Tue, 9 Jan 2024 09:33:38 -0500 Subject: [PATCH] AddTwinNebula --- Marlin/Configuration.h | 37 +++++++++++++++++++++++++++---------- Marlin/Configuration_adv.h | 6 +++++- platformio.ini | 9 +++++++++ 3 files changed, 41 insertions(+), 11 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index e877bd499e..44ade5e038 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -4,6 +4,8 @@ //#define Workhorse //#define TazPro +//#define TOOLHEAD_Twin_Nebula_175 // TAZ Pro Dual Extruder + //#define TazDualZ #if ENABLED(TazPro) @@ -312,8 +314,12 @@ #if ENABLED(SWITCHING_NOZZLE) #define SWITCHING_NOZZLE_SERVO_NR 0 #define SWITCHING_NOZZLE_E1_SERVO_NR 1 // If two servos are used, the index of the second - #define SWITCHING_NOZZLE_SERVO_ANGLES { 55, 120 } // A pair of angles for { E0, E1 }. + #if ENABLED(TOOLHEAD_Twin_Nebula_175) + #define SWITCHING_NOZZLE_SERVO_ANGLES {{ 75, 125 }, { 75, 125 }} + #else + #define SWITCHING_NOZZLE_SERVO_ANGLES {{ 55, 120 }, { 55, 120 }} // A pair of angles for { E0, E1 }. // For Dual Servo use two pairs: { { lower, raise }, { lower, raise } } + #endif #define SWITCHING_NOZZLE_SERVO_DWELL 2500 // Dwell time to wait for servo to make physical move #endif @@ -1365,6 +1371,8 @@ #define DEFAULT_AXIS_STEPS_PER_UNIT { 100, 100, 200, 420 } #elif ENABLED(Taz6) #define DEFAULT_AXIS_STEPS_PER_UNIT { 100, 100, 1600, 830 } +#elif ENABLED(TOOLHEAD_Twin_Nebula_175) + #define DEFAULT_AXIS_STEPS_PER_UNIT { 100, 100, 500, 410 } #elif ANY(Workhorse, TazPro) #define DEFAULT_AXIS_STEPS_PER_UNIT { 100, 100, 500, 420 } #endif @@ -2031,14 +2039,23 @@ #elif ENABLED(TazPro) #define X_BED_SIZE 280 // <-- changed #define Y_BED_SIZE 280 // <-- changed - - // Travel limits (mm) after homing, corresponding to endstop positions. - #define X_MIN_POS -27 // <-- changed - #define Y_MIN_POS -36 // <-- changed - #define Z_MIN_POS -9 // <-- changed - #define X_MAX_POS 299 // <-- changed - #define Y_MAX_POS 292 // <-- changed - #define Z_MAX_POS 292 // <-- changed + #if ENABLED(LULZBOT_TOOLHEAD_X_MAX_ADJ) + // Travel limits (mm) after homing, corresponding to endstop positions. + #define X_MIN_POS -18 // <-- changed + #define Y_MIN_POS -38 // <-- changed + #define Z_MIN_POS -12 // <-- changed + #define X_MAX_POS 296 // <-- changed + #define Y_MAX_POS 282 // <-- changed + #define Z_MAX_POS 289 // <-- changed + #else + // Travel limits (mm) after homing, corresponding to endstop positions. + #define X_MIN_POS -27 // <-- changed + #define Y_MIN_POS -36 // <-- changed + #define Z_MIN_POS -9 // <-- changed + #define X_MAX_POS 299 // <-- changed + #define Y_MAX_POS 292 // <-- changed + #define Z_MAX_POS 292 // <-- changed + #endif #endif //#define I_MIN_POS 0 //#define I_MAX_POS 50 @@ -2156,7 +2173,7 @@ // Commands to execute on filament runout. // With multiple runout sensors use the %c placeholder for the current tool in commands (e.g., "M600 T%c") // NOTE: After 'M412 H1' the host handles filament runout and this script does not apply. - #define FILAMENT_RUNOUT_SCRIPT "M600" + #define FILAMENT_RUNOUT_SCRIPT "M600 T%c" // After a runout is detected, continue printing this length of filament // before executing the runout script. Useful for a sensor at the end of diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 3b8f8f573b..af14844c36 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -3228,7 +3228,11 @@ #endif #if AXIS_IS_TMC_CONFIG(E0) - #define E0_CURRENT 960 + #if ENABLED(TOOLHEAD_Twin_Nebula_175) + #define E0_CURRENT 750 + #else + #define E0_CURRENT 960 + #endif #define E0_MICROSTEPS 16 #define E0_RSENSE 0.12 #define E0_CHAIN_POS -1 diff --git a/platformio.ini b/platformio.ini index e5a4f6e8d4..7e38718241 100644 --- a/platformio.ini +++ b/platformio.ini @@ -220,6 +220,15 @@ board_build.variants_dir = buildroot/share/PlatformIO/variants/ extra_scripts = ${common.extra_scripts} Marlin/src/HAL/DUE/upload_extra_script.py +[env:TazProNebula] +platform = atmelsam +extends = env:DUE +board = marlin_archim +build_flags = ${common.build_flags} + -DARDUINO_SAM_ARCHIM -DARDUINO_ARCH_SAM -D__SAM3X8E__ -DUSBCON -DTazPro -DTOOLHEAD_Twin_Nebula_175 +board_build.variants_dir = buildroot/share/PlatformIO/variants/ +extra_scripts = ${common.extra_scripts} + Marlin/src/HAL/DUE/upload_extra_script.py # # Just print the dependency tree