Add Chamber servo vent, auto fan (#19519)
This commit is contained in:
@ -603,10 +603,6 @@
|
||||
#define DO_SWITCH_EXTRUDER 1
|
||||
#endif
|
||||
|
||||
#ifdef SWITCHING_NOZZLE_E1_SERVO_NR
|
||||
#define SWITCHING_NOZZLE_TWO_SERVOS 1
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Default hotend offsets, if not defined
|
||||
*/
|
||||
@ -657,14 +653,7 @@
|
||||
#ifndef Z_PROBE_SERVO_NR
|
||||
#define Z_PROBE_SERVO_NR 0
|
||||
#endif
|
||||
#ifndef NUM_SERVOS
|
||||
#define NUM_SERVOS (Z_PROBE_SERVO_NR + 1)
|
||||
#endif
|
||||
#undef DEACTIVATE_SERVOS_AFTER_MOVE
|
||||
#if NUM_SERVOS == 1
|
||||
#undef SERVO_DELAY
|
||||
#define SERVO_DELAY { 50 }
|
||||
#endif
|
||||
|
||||
// Always disable probe pin inverting for BLTouch
|
||||
#undef Z_MIN_PROBE_ENDSTOP_INVERTING
|
||||
@ -675,14 +664,10 @@
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifndef NUM_SERVOS
|
||||
#define NUM_SERVOS 0
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Set a flag for a servo probe (or BLTouch)
|
||||
*/
|
||||
#if defined(Z_PROBE_SERVO_NR) && Z_PROBE_SERVO_NR >= 0
|
||||
#ifdef Z_PROBE_SERVO_NR
|
||||
#define HAS_Z_SERVO_PROBE 1
|
||||
#endif
|
||||
#if ANY(HAS_Z_SERVO_PROBE, SWITCHING_EXTRUDER, SWITCHING_NOZZLE)
|
||||
|
@ -26,6 +26,51 @@
|
||||
* Defines that depend on advanced configuration.
|
||||
*/
|
||||
|
||||
#ifdef SWITCHING_NOZZLE_E1_SERVO_NR
|
||||
#define SWITCHING_NOZZLE_TWO_SERVOS 1
|
||||
#endif
|
||||
|
||||
// Determine NUM_SERVOS if none was supplied
|
||||
#ifndef NUM_SERVOS
|
||||
#define NUM_SERVOS 0
|
||||
#if ANY(CHAMBER_VENT, HAS_Z_SERVO_PROBE, SWITCHING_EXTRUDER, SWITCHING_NOZZLE)
|
||||
#if NUM_SERVOS <= Z_PROBE_SERVO_NR
|
||||
#undef NUM_SERVOS
|
||||
#define NUM_SERVOS (Z_PROBE_SERVO_NR + 1)
|
||||
#endif
|
||||
#if NUM_SERVOS <= CHAMBER_VENT_SERVO_NR
|
||||
#undef NUM_SERVOS
|
||||
#define NUM_SERVOS (CHAMBER_VENT_SERVO_NR + 1)
|
||||
#endif
|
||||
#if NUM_SERVOS <= SWITCHING_TOOLHEAD_SERVO_NR
|
||||
#undef NUM_SERVOS
|
||||
#define NUM_SERVOS (SWITCHING_TOOLHEAD_SERVO_NR + 1)
|
||||
#endif
|
||||
#if NUM_SERVOS <= SWITCHING_NOZZLE_SERVO_NR
|
||||
#undef NUM_SERVOS
|
||||
#define NUM_SERVOS (SWITCHING_NOZZLE_SERVO_NR + 1)
|
||||
#endif
|
||||
#if NUM_SERVOS <= SWITCHING_NOZZLE_E1_SERVO_NR
|
||||
#undef NUM_SERVOS
|
||||
#define NUM_SERVOS (SWITCHING_NOZZLE_E1_SERVO_NR + 1)
|
||||
#endif
|
||||
#if NUM_SERVOS <= SWITCHING_EXTRUDER_SERVO_NR
|
||||
#undef NUM_SERVOS
|
||||
#define NUM_SERVOS (SWITCHING_EXTRUDER_SERVO_NR + 1)
|
||||
#endif
|
||||
#if NUM_SERVOS <= SWITCHING_EXTRUDER_E23_SERVO_NR
|
||||
#undef NUM_SERVOS
|
||||
#define NUM_SERVOS (SWITCHING_EXTRUDER_E23_SERVO_NR + 1)
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
// Convenience override for a BLTouch alone
|
||||
#if ENABLED(BLTOUCH) && NUM_SERVOS == 1
|
||||
#undef SERVO_DELAY
|
||||
#define SERVO_DELAY { 50 }
|
||||
#endif
|
||||
|
||||
#if EXTRUDERS == 0
|
||||
#define NO_VOLUMETRICS
|
||||
#undef TEMP_SENSOR_0
|
||||
|
@ -1249,8 +1249,10 @@ static_assert(Y_MAX_LENGTH >= Y_BED_SIZE, "Movement bounds (Y_MIN_POS, Y_MAX_POS
|
||||
* NUM_SERVOS is required for a Z servo probe
|
||||
*/
|
||||
#if HAS_Z_SERVO_PROBE
|
||||
#ifndef NUM_SERVOS
|
||||
#error "You must set NUM_SERVOS for a Z servo probe (Z_PROBE_SERVO_NR)."
|
||||
#if !NUM_SERVOS
|
||||
#error "NUM_SERVOS is required for a Z servo probe (Z_PROBE_SERVO_NR)."
|
||||
#elif Z_PROBE_SERVO_NR >= NUM_SERVOS
|
||||
#error "Z_PROBE_SERVO_NR must be smaller than NUM_SERVOS."
|
||||
#elif Z_PROBE_SERVO_NR == 0 && !PIN_EXISTS(SERVO0)
|
||||
#error "SERVO0_PIN must be defined for your servo or BLTOUCH probe."
|
||||
#elif Z_PROBE_SERVO_NR == 1 && !PIN_EXISTS(SERVO1)
|
||||
@ -1259,8 +1261,6 @@ static_assert(Y_MAX_LENGTH >= Y_BED_SIZE, "Movement bounds (Y_MIN_POS, Y_MAX_POS
|
||||
#error "SERVO2_PIN must be defined for your servo or BLTOUCH probe."
|
||||
#elif Z_PROBE_SERVO_NR == 3 && !PIN_EXISTS(SERVO3)
|
||||
#error "SERVO3_PIN must be defined for your servo or BLTOUCH probe."
|
||||
#elif Z_PROBE_SERVO_NR >= NUM_SERVOS
|
||||
#error "Z_PROBE_SERVO_NR must be smaller than NUM_SERVOS."
|
||||
#endif
|
||||
#endif
|
||||
|
||||
@ -1807,6 +1807,30 @@ static_assert(hbm[Z_AXIS] >= 0, "HOMING_BUMP_MM.Z must be greater than or equal
|
||||
#error "TEMP_SENSOR_CHAMBER requires TEMP_CHAMBER_PIN. Please add it to your configuration."
|
||||
#endif
|
||||
|
||||
#if ENABLED(CHAMBER_FAN) && !(defined(CHAMBER_FAN_MODE) && WITHIN(CHAMBER_FAN_MODE, 0, 2))
|
||||
#error "CHAMBER_FAN_MODE must be between 0 and 2. Please update your Configuration_adv.h."
|
||||
#endif
|
||||
|
||||
#if ENABLED(CHAMBER_VENT)
|
||||
#ifndef CHAMBER_VENT_SERVO_NR
|
||||
#error "CHAMBER_VENT_SERVO_NR is required for CHAMBER SERVO. Update your Configuration_adv.h."
|
||||
#elif !NUM_SERVOS
|
||||
#error "NUM_SERVOS is required for a Heated Chamber vent servo (CHAMBER_VENT_SERVO_NR)."
|
||||
#elif CHAMBER_VENT_SERVO_NR >= NUM_SERVOS
|
||||
#error "CHAMBER_VENT_SERVO_NR must be smaller than NUM_SERVOS."
|
||||
#elif HAS_Z_SERVO_PROBE && CHAMBER_VENT_SERVO_NR == Z_PROBE_SERVO_NR
|
||||
#error "CHAMBER SERVO is already used by BLTOUCH. Please change."
|
||||
#elif CHAMBER_VENT_SERVO_NR == 0 && !PIN_EXISTS(SERVO0)
|
||||
#error "SERVO0_PIN must be defined for your Heated Chamber vent servo."
|
||||
#elif CHAMBER_VENT_SERVO_NR == 1 && !PIN_EXISTS(SERVO1)
|
||||
#error "SERVO1_PIN must be defined for your Heated Chamber vent servo."
|
||||
#elif CHAMBER_VENT_SERVO_NR == 2 && !PIN_EXISTS(SERVO2)
|
||||
#error "SERVO2_PIN must be defined for your Heated Chamber vent servo."
|
||||
#elif CHAMBER_VENT_SERVO_NR == 3 && !PIN_EXISTS(SERVO3)
|
||||
#error "SERVO3_PIN must be defined for your Heated Chamber vent servo."
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if TEMP_SENSOR_PROBE
|
||||
#if !PIN_EXISTS(TEMP_PROBE)
|
||||
#error "TEMP_SENSOR_PROBE requires TEMP_PROBE_PIN. Please add it to your configuration."
|
||||
|
Reference in New Issue
Block a user