Commit bd2c245c authored by Simone Primarosa's avatar Simone Primarosa

Update 4.2.x

parent 305e2c45
//============================================================================ #ifndef CONFIGURATION_PINS_H
//==================== Change PIN width Configurator Tool ==================== #define CONFIGURATION_PINS_H
//============================================================================
//=========================== BASIC ==============================
//X axis pins //X axis pins
#define X_STEP_PIN ORIG_X_STEP_PIN #define X_STEP_PIN ORIG_X_STEP_PIN
...@@ -59,10 +60,73 @@ ...@@ -59,10 +60,73 @@
//FAN pin //FAN pin
#define FAN_PIN ORIG_FAN_PIN #define FAN_PIN ORIG_FAN_PIN
//=========================== START YOUR CHANGE ============================== //============================================================================
// Example for change X_MIN_PIN
// #undef X_MIN_PIN //=========================== FEATURE ==============================
// #define X_MIN_PIN newpin
#if ENABLED(MKR4)
#if (EXTRUDERS == 2) && (DRIVER_EXTRUDERS == 1) // Use this for one driver and two extruder
#define E0E1_CHOICE_PIN 5
#elif (EXTRUDERS == 3) && (DRIVER_EXTRUDERS == 1) // Use this for one driver and 3 extruder
#define E0E1_CHOICE_PIN 5
#define E0E2_CHOICE_PIN 6
#elif (EXTRUDERS == 4) && (DRIVER_EXTRUDERS == 1) // Use this for one driver and 4 extruder
#define E0E1_CHOICE_PIN 4
#define E0E2_CHOICE_PIN 5
#define E0E3_CHOICE_PIN 6
#elif (EXTRUDERS == 3) && (DRIVER_EXTRUDERS == 2) // Use this for two driver and 3 extruder
#define E0E2_CHOICE_PIN 5
#elif (EXTRUDERS == 4) && (DRIVER_EXTRUDERS == 2) // Use this for two driver and 4 extruder
#define E0E2_CHOICE_PIN 5
#define E1E3_CHOICE_PIN 6
#endif //EXTRUDERS
#endif //MKR4
#if ENABLED(NPR2)
#define E_MIN_PIN -1
#endif
#if ENABLED(LASERBEAM)
#define LASER_PWR_PIN 41
#define LASER_TTL_PIN 42
#endif
#if ENABLED(FILAMENT_RUNOUT_SENSOR)
#define FILRUNOUT_PIN -1
#endif
#if ENABLED(FILAMENT_SENSOR)
#define FILWIDTH_PIN -1 // ANALOG NUMBERING
#endif
#if ENABLED(POWER_CONSUMPTION)
#define POWER_CONSUMPTION_PIN -1 // ANALOG NUMBERING
#endif
#if ENABLED(PHOTOGRAPH)
#define PHOTOGRAPH_PIN -1
#endif
#if ENABLED(CHDK)
#define CHDK_PIN -1
#endif
#if ENABLED(CONTROLLERFAN)
#define CONTROLLERFAN_PIN -1
#endif
#if ENABLED(EXTRUDER_AUTO_FAN)
#define EXTRUDER_0_AUTO_FAN_PIN -1
#define EXTRUDER_1_AUTO_FAN_PIN -1
#define EXTRUDER_2_AUTO_FAN_PIN -1
#define EXTRUDER_3_AUTO_FAN_PIN -1
#endif
#if ENABLED(X2_IS_TMC)
#define X2_ENABLE_PIN -1
#define X2_STEP_PIN -1
#define X2_DIR_PIN -1
#endif
//============================================================================ //============================================================================
#endif
\ No newline at end of file
...@@ -38,22 +38,18 @@ ...@@ -38,22 +38,18 @@
// Uncomment to use Morgan scara mode // Uncomment to use Morgan scara mode
#define SCARA_SEGMENTS_PER_SECOND 200 // If movement is choppy try lowering this value #define SCARA_SEGMENTS_PER_SECOND 200 // If movement is choppy try lowering this value
// Length of inner support arm // Length of inner support arm
#define Linkage_1 150 //mm Preprocessor cannot handle decimal point... #define LINKAGE_1 150 //mm Preprocessor cannot handle decimal point...
// Length of outer support arm Measure arm lengths precisely and enter // Length of outer support arm Measure arm lengths precisely and enter
#define Linkage_2 150 //mm #define LINKAGE_2 150 //mm
// SCARA tower offset (position of Tower relative to bed zero position) // SCARA tower offset (position of Tower relative to bed zero position)
// This needs to be reasonably accurate as it defines the printbed position in the SCARA space. // This needs to be reasonably accurate as it defines the printbed position in the SCARA space.
#define SCARA_offset_x 100 //mm #define SCARA_OFFSET_X 100 //mm
#define SCARA_offset_y -56 //mm #define SCARA_OFFSET_Y -56 //mm
#define SCARA_RAD2DEG 57.2957795 // to convert RAD to degrees #define SCARA_RAD2DEG 57.2957795 // to convert RAD to degrees
#define THETA_HOMING_OFFSET 0 //calculatated from Calibration Guide and command M360 / M114 see picture in http://reprap.harleystudio.co.za/?page_id=1073 #define THETA_HOMING_OFFSET 0 //calculatated from Calibration Guide and command M360 / M114 see picture in http://reprap.harleystudio.co.za/?page_id=1073
#define PSI_HOMING_OFFSET 0 // calculatated from Calibration Guide and command M364 / M114 see picture in http://reprap.harleystudio.co.za/?page_id=1073 #define PSI_HOMING_OFFSET 0 // calculatated from Calibration Guide and command M364 / M114 see picture in http://reprap.harleystudio.co.za/?page_id=1073
//some helper variables to make kinematics faster
#define L1_2 sq(Linkage_1) // do not change
#define L2_2 sq(Linkage_2) // do not change
/*****************************************************************************************/ /*****************************************************************************************/
......
...@@ -7498,18 +7498,18 @@ void plan_arc( ...@@ -7498,18 +7498,18 @@ void plan_arc(
//ECHO_SMV(DB, "f_delta x=", f_scara[X_AXIS]); //ECHO_SMV(DB, "f_delta x=", f_scara[X_AXIS]);
//ECHO_MV(" y=", f_scara[Y_AXIS]); //ECHO_MV(" y=", f_scara[Y_AXIS]);
x_sin = sin(f_scara[X_AXIS]/SCARA_RAD2DEG) * Linkage_1; x_sin = sin(f_scara[X_AXIS]/SCARA_RAD2DEG) * LINKAGE_1;
x_cos = cos(f_scara[X_AXIS]/SCARA_RAD2DEG) * Linkage_1; x_cos = cos(f_scara[X_AXIS]/SCARA_RAD2DEG) * LINKAGE_1;
y_sin = sin(f_scara[Y_AXIS]/SCARA_RAD2DEG) * Linkage_2; y_sin = sin(f_scara[Y_AXIS]/SCARA_RAD2DEG) * LINKAGE_2;
y_cos = cos(f_scara[Y_AXIS]/SCARA_RAD2DEG) * Linkage_2; y_cos = cos(f_scara[Y_AXIS]/SCARA_RAD2DEG) * LINKAGE_2;
//ECHO_MV(" x_sin=", x_sin); //ECHO_MV(" x_sin=", x_sin);
//ECHO_MV(" x_cos=", x_cos); //ECHO_MV(" x_cos=", x_cos);
//ECHO_MV(" y_sin=", y_sin); //ECHO_MV(" y_sin=", y_sin);
//ECHO_MV(" y_cos=", y_cos); //ECHO_MV(" y_cos=", y_cos);
delta[X_AXIS] = x_cos + y_cos + SCARA_offset_x; //theta delta[X_AXIS] = x_cos + y_cos + SCARA_OFFSET_X; //theta
delta[Y_AXIS] = x_sin + y_sin + SCARA_offset_y; //theta+phi delta[Y_AXIS] = x_sin + y_sin + SCARA_OFFSET_Y; //theta+phi
//ECHO_MV(" delta[X_AXIS]=", delta[X_AXIS]); //ECHO_MV(" delta[X_AXIS]=", delta[X_AXIS]);
//ECHO_EMV(" delta[Y_AXIS]=", delta[Y_AXIS]); //ECHO_EMV(" delta[Y_AXIS]=", delta[Y_AXIS]);
...@@ -7523,19 +7523,19 @@ void plan_arc( ...@@ -7523,19 +7523,19 @@ void plan_arc(
float SCARA_pos[2]; float SCARA_pos[2];
static float SCARA_C2, SCARA_S2, SCARA_K1, SCARA_K2, SCARA_theta, SCARA_psi; static float SCARA_C2, SCARA_S2, SCARA_K1, SCARA_K2, SCARA_theta, SCARA_psi;
SCARA_pos[X_AXIS] = cartesian[X_AXIS] * axis_scaling[X_AXIS] - SCARA_offset_x; //Translate SCARA to standard X Y SCARA_pos[X_AXIS] = cartesian[X_AXIS] * axis_scaling[X_AXIS] - SCARA_OFFSET_X; //Translate SCARA to standard X Y
SCARA_pos[Y_AXIS] = cartesian[Y_AXIS] * axis_scaling[Y_AXIS] - SCARA_offset_y; // With scaling factor. SCARA_pos[Y_AXIS] = cartesian[Y_AXIS] * axis_scaling[Y_AXIS] - SCARA_OFFSET_Y; // With scaling factor.
#if (Linkage_1 == Linkage_2) #if (LINKAGE_1 == LINKAGE_2)
SCARA_C2 = ( ( sq(SCARA_pos[X_AXIS]) + sq(SCARA_pos[Y_AXIS]) ) / (2 * (float)L1_2) ) - 1; SCARA_C2 = ( ( sq(SCARA_pos[X_AXIS]) + sq(SCARA_pos[Y_AXIS]) ) / (2 * (float)sq(LINKAGE_1)) ) - 1;
#else #else
SCARA_C2 = ( sq(SCARA_pos[X_AXIS]) + sq(SCARA_pos[Y_AXIS]) - (float)L1_2 - (float)L2_2 ) / 45000; SCARA_C2 = ( sq(SCARA_pos[X_AXIS]) + sq(SCARA_pos[Y_AXIS]) - (float)sq(LINKAGE_1) - (float)sq(LINKAGE_2) ) / 45000;
#endif #endif
SCARA_S2 = sqrt( 1 - sq(SCARA_C2) ); SCARA_S2 = sqrt( 1 - sq(SCARA_C2) );
SCARA_K1 = Linkage_1 + Linkage_2 * SCARA_C2; SCARA_K1 = LINKAGE_1 + LINKAGE_2 * SCARA_C2;
SCARA_K2 = Linkage_2 * SCARA_S2; SCARA_K2 = LINKAGE_2 * SCARA_S2;
SCARA_theta = ( atan2(SCARA_pos[X_AXIS],SCARA_pos[Y_AXIS])-atan2(SCARA_K1, SCARA_K2) ) * -1; SCARA_theta = ( atan2(SCARA_pos[X_AXIS],SCARA_pos[Y_AXIS])-atan2(SCARA_K1, SCARA_K2) ) * -1;
SCARA_psi = atan2(SCARA_S2,SCARA_C2); SCARA_psi = atan2(SCARA_S2,SCARA_C2);
......
...@@ -623,7 +623,7 @@ ...@@ -623,7 +623,7 @@
#define HAS_E0E4 (PIN_EXISTS(E0E4_CHOICE)) #define HAS_E0E4 (PIN_EXISTS(E0E4_CHOICE))
#define HAS_E1E3 (PIN_EXISTS(E1E3_CHOICE)) #define HAS_E1E3 (PIN_EXISTS(E1E3_CHOICE))
#define HAS_BTN_BACK (PIN_EXISTS(BTN_BACK)) #define HAS_BTN_BACK (PIN_EXISTS(BTN_BACK))
#define HAS_POWER_SWITCH (POWER_SUPPLY > 0 && PIN_EXISTS(PS_ON))
#define HAS_DIGIPOTSS (DIGIPOTSS_PIN >= 0) #define HAS_DIGIPOTSS (DIGIPOTSS_PIN >= 0)
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
* Dual Stepper Drivers * Dual Stepper Drivers
*/ */
#if ENABLED(Z_DUAL_STEPPER_DRIVERS) && ENABLED(Y_DUAL_STEPPER_DRIVERS) #if ENABLED(Z_DUAL_STEPPER_DRIVERS) && ENABLED(Y_DUAL_STEPPER_DRIVERS)
#error You cannot have dual stepper drivers for both Y and Z. #error CONFLICT ERROR: CONFLICT ERROR: You cannot have dual stepper drivers for both Y and Z.
#endif #endif
/** /**
...@@ -18,16 +18,16 @@ ...@@ -18,16 +18,16 @@
*/ */
#if ENABLED(LCD_PROGRESS_BAR) #if ENABLED(LCD_PROGRESS_BAR)
#if DISABLED(SDSUPPORT) #if DISABLED(SDSUPPORT)
#error LCD_PROGRESS_BAR requires SDSUPPORT. #error CONFLICT ERROR: LCD_PROGRESS_BAR requires SDSUPPORT.
#endif #endif
#if ENABLED(DOGLCD) #if ENABLED(DOGLCD)
#error LCD_PROGRESS_BAR does not apply to graphical displays. #error CONFLICT ERROR: LCD_PROGRESS_BAR does not apply to graphical displays.
#endif #endif
#if ENABLED(FILAMENT_LCD_DISPLAY) #if ENABLED(FILAMENT_LCD_DISPLAY)
#error LCD_PROGRESS_BAR and FILAMENT_LCD_DISPLAY are not fully compatible. Comment out this line to use both. #error CONFLICT ERROR: LCD_PROGRESS_BAR and FILAMENT_LCD_DISPLAY are not fully compatible.
#endif #endif
#if ENABLED(POWER_CONSUMPTION_LCD_DISPLAY) #if ENABLED(POWER_CONSUMPTION_LCD_DISPLAY)
#error LCD_PROGRESS_BAR and POWER_CONSUMPTION_LCD_DISPLAY are not fully compatible. Comment out this line to use both. #error CONFLICT ERROR: LCD_PROGRESS_BAR and POWER_CONSUMPTION_LCD_DISPLAY are not fully compatible.
#endif #endif
#endif #endif
...@@ -36,42 +36,35 @@ ...@@ -36,42 +36,35 @@
*/ */
#if ENABLED(BABYSTEPPING) #if ENABLED(BABYSTEPPING)
#if MECH(COREXY) && ENABLED(BABYSTEP_XY) #if MECH(COREXY) && ENABLED(BABYSTEP_XY)
#error BABYSTEPPING only implemented for Z axis on CoreXY. #error CONFLICT ERROR: BABYSTEPPING only implemented for Z axis on CoreXY.
#endif #endif
#if MECH(SCARA) #if MECH(SCARA)
#error BABYSTEPPING is not implemented for SCARA yet. #error CONFLICT ERROR: BABYSTEPPING is not implemented for SCARA yet.
#endif #endif
#if MECH(DELTA) && ENABLED(BABYSTEP_XY) #if MECH(DELTA) && ENABLED(BABYSTEP_XY)
#error BABYSTEPPING only implemented for Z axis on deltabots. #error CONFLICT ERROR: BABYSTEPPING only implemented for Z axis on deltabots.
#endif #endif
#endif #endif
/**
* Filament Change with Extruder Runout Prevention
*/
#if ENABLED(FILAMENTCHANGEENABLE) && ENABLED(EXTRUDER_RUNOUT_PREVENT)
#error EXTRUDER_RUNOUT_PREVENT currently incompatible with FILAMENTCHANGE.
#endif
/** /**
* Extruder Runout Prevention * Extruder Runout Prevention
*/ */
#if ENABLED(EXTRUDER_RUNOUT_PREVENT) && EXTRUDER_RUNOUT_MINTEMP < EXTRUDE_MINTEMP #if ENABLED(EXTRUDER_RUNOUT_PREVENT) && EXTRUDER_RUNOUT_MINTEMP < EXTRUDE_MINTEMP
#error EXTRUDER_RUNOUT_MINTEMP have to be greater than EXTRUDE_MINTEMP #error CONFLICT ERROR: EXTRUDER_RUNOUT_MINTEMP have to be greater than EXTRUDE_MINTEMP
#endif #endif
/** /**
* Idle oozing prevent with Extruder Runout Prevention * Idle oozing prevent with Extruder Runout Prevention
*/ */
#if ENABLED(EXTRUDER_RUNOUT_PREVENT) && ENABLED(IDLE_OOZING_PREVENT) #if ENABLED(EXTRUDER_RUNOUT_PREVENT) && ENABLED(IDLE_OOZING_PREVENT)
#error EXTRUDER_RUNOUT_PREVENT and IDLE_OOZING_PREVENT are incopatible. Please comment one of them. #error CONFLICT ERROR: EXTRUDER_RUNOUT_PREVENT and IDLE_OOZING_PREVENT are incopatible. Please comment one of them.
#endif #endif
/** /**
* Idle oozing prevent * Idle oozing prevent
*/ */
#if ENABLED(IDLE_OOZING_PREVENT) && IDLE_OOZING_MINTEMP < EXTRUDE_MINTEMP #if ENABLED(IDLE_OOZING_PREVENT) && IDLE_OOZING_MINTEMP < EXTRUDE_MINTEMP
#error IDLE_OOZING_MINTEMP have to be greater than EXTRUDE_MINTEMP #error CONFLICT ERROR: IDLE_OOZING_MINTEMP have to be greater than EXTRUDE_MINTEMP
#endif #endif
/** /**
...@@ -80,11 +73,11 @@ ...@@ -80,11 +73,11 @@
#if EXTRUDERS > 1 #if EXTRUDERS > 1
#if ENABLED(TEMP_SENSOR_1_AS_REDUNDANT) #if ENABLED(TEMP_SENSOR_1_AS_REDUNDANT)
#error EXTRUDERS must be 1 with TEMP_SENSOR_1_AS_REDUNDANT. #error CONFLICT ERROR: EXTRUDERS must be 1 with TEMP_SENSOR_1_AS_REDUNDANT.
#endif #endif
#if ENABLED(HEATERS_PARALLEL) #if ENABLED(HEATERS_PARALLEL)
#error EXTRUDERS must be 1 with HEATERS_PARALLEL. #error CONFLICT ERROR: EXTRUDERS must be 1 with HEATERS_PARALLEL.
#endif #endif
#endif // EXTRUDERS > 1 #endif // EXTRUDERS > 1
...@@ -93,16 +86,16 @@ ...@@ -93,16 +86,16 @@
* Limited number of servos * Limited number of servos
*/ */
#if NUM_SERVOS > 4 #if NUM_SERVOS > 4
#error The maximum number of SERVOS in Marlin is 4. #error CONFLICT ERROR: The maximum number of SERVOS in Marlin is 4.
#endif #endif
#if ENABLED(NUM_SERVOS) && NUM_SERVOS > 0 #if ENABLED(NUM_SERVOS) && NUM_SERVOS > 0
#if X_ENDSTOP_SERVO_NR >= 0 || Y_ENDSTOP_SERVO_NR >= 0 || Z_ENDSTOP_SERVO_NR >= 0 #if X_ENDSTOP_SERVO_NR >= 0 || Y_ENDSTOP_SERVO_NR >= 0 || Z_ENDSTOP_SERVO_NR >= 0
#if X_ENDSTOP_SERVO_NR >= NUM_SERVOS #if X_ENDSTOP_SERVO_NR >= NUM_SERVOS
#error X_ENDSTOP_SERVO_NR must be smaller than NUM_SERVOS. #error CONFLICT ERROR: X_ENDSTOP_SERVO_NR must be smaller than NUM_SERVOS.
#elif Y_ENDSTOP_SERVO_NR >= NUM_SERVOS #elif Y_ENDSTOP_SERVO_NR >= NUM_SERVOS
#error Y_ENDSTOP_SERVO_NR must be smaller than NUM_SERVOS. #error CONFLICT ERROR: Y_ENDSTOP_SERVO_NR must be smaller than NUM_SERVOS.
#elif Z_ENDSTOP_SERVO_NR >= NUM_SERVOS #elif Z_ENDSTOP_SERVO_NR >= NUM_SERVOS
#error Z_ENDSTOP_SERVO_NR must be smaller than NUM_SERVOS. #error CONFLICT ERROR: Z_ENDSTOP_SERVO_NR must be smaller than NUM_SERVOS.
#endif #endif
#endif #endif
#endif #endif
...@@ -111,14 +104,14 @@ ...@@ -111,14 +104,14 @@
* Servo deactivation depends on servo endstops * Servo deactivation depends on servo endstops
*/ */
#if ENABLED(DEACTIVATE_SERVOS_AFTER_MOVE) && HASNT(SERVO_ENDSTOPS) #if ENABLED(DEACTIVATE_SERVOS_AFTER_MOVE) && HASNT(SERVO_ENDSTOPS)
#error At least one of the ?_ENDSTOP_SERVO_NR is required for DEACTIVATE_SERVOS_AFTER_MOVE. #error CONFLICT ERROR: At least one of the ?_ENDSTOP_SERVO_NR is required for DEACTIVATE_SERVOS_AFTER_MOVE.
#endif #endif
/** /**
* Required LCD language * Required LCD language
*/ */
#if DISABLED(DOGLCD) && ENABLED(ULTRA_LCD) && DISABLED(DISPLAY_CHARSET_HD44780_JAPAN) && DISABLED(DISPLAY_CHARSET_HD44780_WESTERN) && DISABLED(DISPLAY_CHARSET_HD44780_CYRILLIC) #if DISABLED(DOGLCD) && ENABLED(ULTRA_LCD) && DISABLED(DISPLAY_CHARSET_HD44780_JAPAN) && DISABLED(DISPLAY_CHARSET_HD44780_WESTERN) && DISABLED(DISPLAY_CHARSET_HD44780_CYRILLIC)
#error You must enable either DISPLAY_CHARSET_HD44780_JAPAN or DISPLAY_CHARSET_HD44780_WESTERN or DISPLAY_CHARSET_HD44780_CYRILLIC for your LCD controller. #error CONFLICT ERROR: You must enable either DISPLAY_CHARSET_HD44780_JAPAN or DISPLAY_CHARSET_HD44780_WESTERN or DISPLAY_CHARSET_HD44780_CYRILLIC for your LCD controller.
#endif #endif
/** /**
...@@ -132,9 +125,9 @@ ...@@ -132,9 +125,9 @@
#if Z_MIN_PIN == -1 #if Z_MIN_PIN == -1
#if Z_PROBE_PIN == -1 || DISABLED(Z_PROBE_ENDSTOP) // It's possible for someone to set a pin for the Z Probe, but not enable it. #if Z_PROBE_PIN == -1 || DISABLED(Z_PROBE_ENDSTOP) // It's possible for someone to set a pin for the Z Probe, but not enable it.
#if ENABLED(Z_PROBE_REPEATABILITY_TEST) #if ENABLED(Z_PROBE_REPEATABILITY_TEST)
#error You must have a Z_MIN or Z_PROBE endstop to enable Z_PROBE_REPEATABILITY_TEST. #error CONFLICT ERROR: You must have a Z_MIN or Z_PROBE endstop to enable Z_PROBE_REPEATABILITY_TEST.
#else #else
#error AUTO_BED_LEVELING_FEATURE requires a Z_MIN or Z_PROBE endstop. Z_MIN_PIN or Z_PROBE_PIN must point to a valid hardware pin. #error CONFLICT ERROR: AUTO_BED_LEVELING_FEATURE requires a Z_MIN or Z_PROBE endstop. Z_MIN_PIN or Z_PROBE_PIN must point to a valid hardware pin.
#endif #endif
#endif #endif
#endif #endif
...@@ -144,24 +137,24 @@ ...@@ -144,24 +137,24 @@
*/ */
#if ENABLED(Z_PROBE_ENDSTOP) #if ENABLED(Z_PROBE_ENDSTOP)
#if DISABLED(Z_PROBE_PIN) #if DISABLED(Z_PROBE_PIN)
#error You must have a Z_PROBE_PIN defined in pins2tool.h file if you enable Z_PROBE_ENDSTOP. #error CONFLICT ERROR: You must have a Z_PROBE_PIN defined in pins2tool.h file if you enable Z_PROBE_ENDSTOP.
#erro sistema pins2tool.h #erro sistema pins2tool.h
#endif #endif
#if Z_PROBE_PIN == -1 #if Z_PROBE_PIN == -1
#error You must set Z_PROBE_PIN to a valid pin if you enable Z_PROBE_ENDSTOP. #error CONFLICT ERROR: You must set Z_PROBE_PIN to a valid pin if you enable Z_PROBE_ENDSTOP.
#endif #endif
// Forcing Servo definitions can break some hall effect sensor setups. Leaving these here for further comment. // Forcing Servo definitions can break some hall effect sensor setups. Leaving these here for further comment.
// #if DISABLED(NUM_SERVOS) // #if DISABLED(NUM_SERVOS)
// #error You must have NUM_SERVOS defined and there must be at least 1 configured to use Z_PROBE_ENDSTOP. // #error CONFLICT ERROR: You must have NUM_SERVOS defined and there must be at least 1 configured to use Z_PROBE_ENDSTOP.
// #endif // #endif
// #if ENABLED(NUM_SERVOS) && NUM_SERVOS < 1 // #if ENABLED(NUM_SERVOS) && NUM_SERVOS < 1
// #error You must have at least 1 servo defined for NUM_SERVOS to use Z_PROBE_ENDSTOP. // #error CONFLICT ERROR: You must have at least 1 servo defined for NUM_SERVOS to use Z_PROBE_ENDSTOP.
// #endif // #endif
// #if Z_ENDSTOP_SERVO_NR < 0 // #if Z_ENDSTOP_SERVO_NR < 0
// #error You must have Z_ENDSTOP_SERVO_NR set to at least 0 or above to use Z_PROBE_ENDSTOP. // #error CONFLICT ERROR: You must have Z_ENDSTOP_SERVO_NR set to at least 0 or above to use Z_PROBE_ENDSTOP.
// #endif // #endif
// #if DISABLED(ERVO_ENDSTOP_ANGLES) // #if DISABLED(ERVO_ENDSTOP_ANGLES)
// #error You must have SERVO_ENDSTOP_ANGLES defined for Z Extend and Retract to use Z_PROBE_ENDSTOP. // #error CONFLICT ERROR: You must have SERVO_ENDSTOP_ANGLES defined for Z Extend and Retract to use Z_PROBE_ENDSTOP.
// #endif // #endif
#endif #endif
/** /**
...@@ -170,36 +163,36 @@ ...@@ -170,36 +163,36 @@
#if ENABLED(AUTO_BED_LEVELING_GRID) #if ENABLED(AUTO_BED_LEVELING_GRID)
// Be sure points are in the right order // Be sure points are in the right order
#if LEFT_PROBE_BED_POSITION > RIGHT_PROBE_BED_POSITION #if LEFT_PROBE_BED_POSITION > RIGHT_PROBE_BED_POSITION
#error LEFT_PROBE_BED_POSITION must be less than RIGHT_PROBE_BED_POSITION. #error CONFLICT ERROR: LEFT_PROBE_BED_POSITION must be less than RIGHT_PROBE_BED_POSITION.
#elif FRONT_PROBE_BED_POSITION > BACK_PROBE_BED_POSITION #elif FRONT_PROBE_BED_POSITION > BACK_PROBE_BED_POSITION
#error BACK_PROBE_BED_POSITION must be less than FRONT_PROBE_BED_POSITION. #error CONFLICT ERROR: BACK_PROBE_BED_POSITION must be less than FRONT_PROBE_BED_POSITION.
#endif #endif
// Make sure probing points are reachable // Make sure probing points are reachable
#if LEFT_PROBE_BED_POSITION < MIN_PROBE_X #if LEFT_PROBE_BED_POSITION < MIN_PROBE_X
#error "The given LEFT_PROBE_BED_POSITION can't be reached by the probe." #error CONFLICT ERROR: "The given LEFT_PROBE_BED_POSITION can't be reached by the probe."
#elif RIGHT_PROBE_BED_POSITION > MAX_PROBE_X #elif RIGHT_PROBE_BED_POSITION > MAX_PROBE_X
#error "The given RIGHT_PROBE_BED_POSITION can't be reached by the probe." #error CONFLICT ERROR: "The given RIGHT_PROBE_BED_POSITION can't be reached by the probe."
#elif FRONT_PROBE_BED_POSITION < MIN_PROBE_Y #elif FRONT_PROBE_BED_POSITION < MIN_PROBE_Y
#error "The given FRONT_PROBE_BED_POSITION can't be reached by the probe." #error CONFLICT ERROR: "The given FRONT_PROBE_BED_POSITION can't be reached by the probe."
#elif BACK_PROBE_BED_POSITION > MAX_PROBE_Y #elif BACK_PROBE_BED_POSITION > MAX_PROBE_Y
#error "The given BACK_PROBE_BED_POSITION can't be reached by the probe." #error CONFLICT ERROR: "The given BACK_PROBE_BED_POSITION can't be reached by the probe."
#endif #endif
#else // !AUTO_BED_LEVELING_GRID #else // !AUTO_BED_LEVELING_GRID
// Check the triangulation points // Check the triangulation points
#if ABL_PROBE_PT_1_X < MIN_PROBE_X || ABL_PROBE_PT_1_X > MAX_PROBE_X #if ABL_PROBE_PT_1_X < MIN_PROBE_X || ABL_PROBE_PT_1_X > MAX_PROBE_X
#error "The given ABL_PROBE_PT_1_X can't be reached by the probe." #error CONFLICT ERROR: "The given ABL_PROBE_PT_1_X can't be reached by the probe."
#elif ABL_PROBE_PT_2_X < MIN_PROBE_X || ABL_PROBE_PT_2_X > MAX_PROBE_X #elif ABL_PROBE_PT_2_X < MIN_PROBE_X || ABL_PROBE_PT_2_X > MAX_PROBE_X
#error "The given ABL_PROBE_PT_2_X can't be reached by the probe." #error CONFLICT ERROR: "The given ABL_PROBE_PT_2_X can't be reached by the probe."
#elif ABL_PROBE_PT_3_X < MIN_PROBE_X || ABL_PROBE_PT_3_X > MAX_PROBE_X #elif ABL_PROBE_PT_3_X < MIN_PROBE_X || ABL_PROBE_PT_3_X > MAX_PROBE_X
#error "The given ABL_PROBE_PT_3_X can't be reached by the probe." #error CONFLICT ERROR: "The given ABL_PROBE_PT_3_X can't be reached by the probe."
#elif ABL_PROBE_PT_1_Y < MIN_PROBE_Y || ABL_PROBE_PT_1_Y > MAX_PROBE_Y #elif ABL_PROBE_PT_1_Y < MIN_PROBE_Y || ABL_PROBE_PT_1_Y > MAX_PROBE_Y
#error "The given ABL_PROBE_PT_1_Y can't be reached by the probe." #error CONFLICT ERROR: "The given ABL_PROBE_PT_1_Y can't be reached by the probe."
#elif ABL_PROBE_PT_2_Y < MIN_PROBE_Y || ABL_PROBE_PT_2_Y > MAX_PROBE_Y #elif ABL_PROBE_PT_2_Y < MIN_PROBE_Y || ABL_PROBE_PT_2_Y > MAX_PROBE_Y
#error "The given ABL_PROBE_PT_2_Y can't be reached by the probe." #error CONFLICT ERROR: "The given ABL_PROBE_PT_2_Y can't be reached by the probe."
#elif ABL_PROBE_PT_3_Y < MIN_PROBE_Y || ABL_PROBE_PT_3_Y > MAX_PROBE_Y #elif ABL_PROBE_PT_3_Y < MIN_PROBE_Y || ABL_PROBE_PT_3_Y > MAX_PROBE_Y
#error "The given ABL_PROBE_PT_3_Y can't be reached by the probe." #error CONFLICT ERROR: "The given ABL_PROBE_PT_3_Y can't be reached by the probe."
#endif #endif
#endif // !AUTO_BED_LEVELING_GRID #endif // !AUTO_BED_LEVELING_GRID
...@@ -210,7 +203,7 @@ ...@@ -210,7 +203,7 @@
* ULTIPANEL encoder * ULTIPANEL encoder
*/ */
#if ENABLED(ULTIPANEL) && DISABLED(NEWPANEL) && DISABLED(SR_LCD_2W_NL) && DISABLED(SHIFT_CLK) #if ENABLED(ULTIPANEL) && DISABLED(NEWPANEL) && DISABLED(SR_LCD_2W_NL) && DISABLED(SHIFT_CLK)
#error ULTIPANEL requires some kind of encoder. #error CONFLICT ERROR: ULTIPANEL requires some kind of encoder.
#endif #endif
/** /**
...@@ -218,10 +211,10 @@ ...@@ -218,10 +211,10 @@
*/ */
#if MECH(DELTA) && ENABLED(Z_PROBE_ENDSTOP) #if MECH(DELTA) && ENABLED(Z_PROBE_ENDSTOP)
#if DISABLED(Z_PROBE_PIN) #if DISABLED(Z_PROBE_PIN)
#error You must have a Z_PROBE_PIN defined in your pins2tool.h file if you enable Z_PROBE_ENDSTOP #error CONFLICT ERROR: You must have a Z_PROBE_PIN defined in your pins2tool.h file if you enable Z_PROBE_ENDSTOP
#endif #endif
#if Z_PROBE_PIN == -1 #if Z_PROBE_PIN == -1
#error You must set Z_PROBE_PIN to a valid pin if you enable Z_PROBE_ENDSTOP #error CONFLICT ERROR: You must set Z_PROBE_PIN to a valid pin if you enable Z_PROBE_ENDSTOP
#endif #endif
#endif #endif
...@@ -233,10 +226,10 @@ ...@@ -233,10 +226,10 @@
|| HASNT(X2_ENABLE) || HASNT(X2_STEP) || HASNT(X2_DIR) \ || HASNT(X2_ENABLE) || HASNT(X2_STEP) || HASNT(X2_DIR) \
|| DISABLED(X2_HOME_POS) || DISABLED(X2_MIN_POS) || DISABLED(X2_MAX_POS) \ || DISABLED(X2_HOME_POS) || DISABLED(X2_MIN_POS) || DISABLED(X2_MAX_POS) \
|| HASNT(X_MAX) || HASNT(X_MAX)
#error Missing or invalid definitions for DUAL_X_CARRIAGE mode. #error CONFLICT ERROR: Missing or invalid definitions for DUAL_X_CARRIAGE mode.
#endif #endif
#if X_HOME_DIR != -1 || X2_HOME_DIR != 1 #if X_HOME_DIR != -1 || X2_HOME_DIR != 1
#error Please use canonical x-carriage assignment. #error CONFLICT ERROR: Please use canonical x-carriage assignment.
#endif #endif
#endif // DUAL_X_CARRIAGE #endif // DUAL_X_CARRIAGE
...@@ -245,18 +238,18 @@ ...@@ -245,18 +238,18 @@
*/ */
#if HAS(AUTO_FAN) && HAS(FAN) #if HAS(AUTO_FAN) && HAS(FAN)
#if EXTRUDER_0_AUTO_FAN_PIN == FAN_PIN #if EXTRUDER_0_AUTO_FAN_PIN == FAN_PIN
#error You cannot set EXTRUDER_0_AUTO_FAN_PIN equal to FAN_PIN. #error CONFLICT ERROR: You cannot set EXTRUDER_0_AUTO_FAN_PIN equal to FAN_PIN.
#elif EXTRUDER_1_AUTO_FAN_PIN == FAN_PIN #elif EXTRUDER_1_AUTO_FAN_PIN == FAN_PIN
#error You cannot set EXTRUDER_1_AUTO_FAN_PIN equal to FAN_PIN. #error CONFLICT ERROR: You cannot set EXTRUDER_1_AUTO_FAN_PIN equal to FAN_PIN.
#elif EXTRUDER_2_AUTO_FAN_PIN == FAN_PIN #elif EXTRUDER_2_AUTO_FAN_PIN == FAN_PIN
#error You cannot set EXTRUDER_2_AUTO_FAN_PIN equal to FAN_PIN. #error CONFLICT ERROR: You cannot set EXTRUDER_2_AUTO_FAN_PIN equal to FAN_PIN.
#elif EXTRUDER_3_AUTO_FAN_PIN == FAN_PIN #elif EXTRUDER_3_AUTO_FAN_PIN == FAN_PIN
#error You cannot set EXTRUDER_3_AUTO_FAN_PIN equal to FAN_PIN. #error CONFLICT ERROR: You cannot set EXTRUDER_3_AUTO_FAN_PIN equal to FAN_PIN.
#endif #endif
#endif #endif
#if HAS(FAN) && CONTROLLERFAN_PIN == FAN_PIN #if HAS(FAN) && CONTROLLERFAN_PIN == FAN_PIN
#error You cannot set CONTROLLERFAN_PIN equal to FAN_PIN. #error CONFLICT ERROR: You cannot set CONTROLLERFAN_PIN equal to FAN_PIN.
#endif #endif
/** /**
...@@ -264,67 +257,67 @@ ...@@ -264,67 +257,67 @@
*/ */
#if HOTENDS > 3 #if HOTENDS > 3
#if HASNT(HEATER_3) #if HASNT(HEATER_3)
#error HEATER_3_PIN not defined for this board #error CONFLICT ERROR: HEATER_3_PIN not defined for this board
#endif #endif
#elif HOTENDS > 2 #elif HOTENDS > 2
#if HASNT(HEATER_2) #if HASNT(HEATER_2)
#error HEATER_2_PIN not defined for this board #error CONFLICT ERROR: HEATER_2_PIN not defined for this board
#endif #endif
#elif HOTENDS > 1 || ENABLED(HEATERS_PARALLEL) #elif HOTENDS > 1 || ENABLED(HEATERS_PARALLEL)
#if HASNT(HEATER_1) #if HASNT(HEATER_1)
#error HEATER_1_PIN not defined for this board #error CONFLICT ERROR: HEATER_1_PIN not defined for this board
#endif #endif
#elif HOTENDS > 0 #elif HOTENDS > 0
#if HASNT(HEATER_0) #if HASNT(HEATER_0)
#error HEATER_0_PIN not defined for this board #error CONFLICT ERROR: HEATER_0_PIN not defined for this board
#endif #endif
#endif #endif
#if DISABLED(SDSUPPORT) && ENABLED(SD_SETTINGS) #if DISABLED(SDSUPPORT) && ENABLED(SD_SETTINGS)
#error You have to enable SDSUPPORT to use SD_SETTINGS #error CONFLICT ERROR: You have to enable SDSUPPORT to use SD_SETTINGS
#endif #endif
/** /**
* Warnings for old configurations * Warnings for old configurations
*/ */
#if ENABLED(X_HOME_RETRACT_MM) #if ENABLED(X_HOME_RETRACT_MM)
#error [XYZ]_HOME_RETRACT_MM settings have been renamed [XYZ]_HOME_BUMP_MM. #error CONFLICT ERROR: [XYZ]_HOME_RETRACT_MM settings have been renamed [XYZ]_HOME_BUMP_MM.
#endif #endif
#if WATCH_TEMP_PERIOD > 500 #if WATCH_TEMP_PERIOD > 500
#error WATCH_TEMP_PERIOD now uses seconds instead of milliseconds. #error CONFLICT ERROR: WATCH_TEMP_PERIOD now uses seconds instead of milliseconds.
#endif #endif
#if DISABLED(THERMAL_PROTECTION_HOTENDS) && (ENABLED(WATCH_TEMP_PERIOD) || ENABLED(THERMAL_PROTECTION_PERIOD)) #if DISABLED(THERMAL_PROTECTION_HOTENDS) && (ENABLED(WATCH_TEMP_PERIOD) || ENABLED(THERMAL_PROTECTION_PERIOD))
#error Thermal Runaway Protection for hotends must now be enabled with THERMAL_PROTECTION_HOTENDS. #error CONFLICT ERROR: Thermal Runaway Protection for hotends must now be enabled with THERMAL_PROTECTION_HOTENDS.
#endif #endif
#if DISABLED(THERMAL_PROTECTION_BED) && ENABLED(THERMAL_PROTECTION_BED_PERIOD) #if DISABLED(THERMAL_PROTECTION_BED) && ENABLED(THERMAL_PROTECTION_BED_PERIOD)
#error Thermal Runaway Protection for the bed must now be enabled with THERMAL_PROTECTION_BED. #error CONFLICT ERROR: Thermal Runaway Protection for the bed must now be enabled with THERMAL_PROTECTION_BED.
#endif #endif
#if ENABLED(PROBE_SERVO_DEACTIVATION_DELAY) #if ENABLED(PROBE_SERVO_DEACTIVATION_DELAY)
#error PROBE_SERVO_DEACTIVATION_DELAY has been replaced with DEACTIVATE_SERVOS_AFTER_MOVE and SERVO_DEACTIVATION_DELAY. #error CONFLICT ERROR: PROBE_SERVO_DEACTIVATION_DELAY has been replaced with DEACTIVATE_SERVOS_AFTER_MOVE and SERVO_DEACTIVATION_DELAY.
#endif #endif
#if MECH(COREXZ) && ENABLED(Z_LATE_ENABLE) #if MECH(COREXZ) && ENABLED(Z_LATE_ENABLE)
#error "Z_LATE_ENABLE can't be used with COREXZ." #error CONFLICT ERROR: "Z_LATE_ENABLE can't be used with COREXZ."
#endif #endif
#if ENABLED(BEEPER) #if ENABLED(BEEPER)
#error BEEPER has been replaced with BEEPER_PIN. Please update your pins definitions. #error CONFLICT ERROR: BEEPER has been replaced with BEEPER_PIN. Please update your pins definitions.
#endif #endif
#if ENABLED(SDCARDDETECT) #if ENABLED(SDCARDDETECT)
#error SDCARDDETECT is now SD_DETECT_PIN. Please update your pins definitions. #error CONFLICT ERROR: SDCARDDETECT is now SD_DETECT_PIN. Please update your pins definitions.
#endif #endif
#if ENABLED(SDCARDDETECTINVERTED) #if ENABLED(SDCARDDETECTINVERTED)
#error SDCARDDETECTINVERTED is now SD_DETECT_INVERTED. Please update your configuration. #error CONFLICT ERROR: SDCARDDETECTINVERTED is now SD_DETECT_INVERTED. Please update your configuration.
#endif #endif
#if ENABLED(POWER_CONSUMPTION) && !PIN_EXISTS(POWER_CONSUMPTION) #if ENABLED(POWER_CONSUMPTION) && !PIN_EXISTS(POWER_CONSUMPTION)
#error You have to set a valid POWER_CONSUMPTION_PIN in pins.h in order to use this feature. #error CONFLICT ERROR: You have to set a valid POWER_CONSUMPTION_PIN in pins.h in order to use this feature.
#endif #endif
#endif //SANITYCHECK_H #endif //SANITYCHECK_H
...@@ -257,6 +257,8 @@ ...@@ -257,6 +257,8 @@
#include "thermistortables.h" #include "thermistortables.h"
#include "conditionals.h" #include "conditionals.h"
#include "sanitycheck.h" #include "pins.h"
#include "dependencies.h"
#include "conflicts.h"
/***********************************************************************/ /***********************************************************************/
#endif //__CONFIGURATION_H #endif //__CONFIGURATION_H
#ifndef CONDITIONALS_H #ifndef DEPENDENCY_H
#define CONDITIONALS_H #define DEPENDENCY_H
/* /*
* This configuration file contains defines that depend on configuration but are not editable. * This file check if some essential options aren't been defined.
* * This file is usefult to see dependency between features while developing.
* - Serial comunication type
* - Board type
* - Mechanism type
* - Thermistor type
* - Temperature limits
* - Extruders number
* - UI Language
*
*/ */
// Serial comunication // Serial comunication
#if DISABLED(SERIAL_PORT) #if !defined(SERIAL_PORT)
#error DEPENDENCY ERROR: Missing setting SERIAL_PORT #error DEPENDENCY ERROR: Missing setting SERIAL_PORT
#endif #endif
#if DISABLED(BAUDRATE) #if !defined(BAUDRATE)
#error DEPENDENCY ERROR: Missing setting BAUDRATE #error DEPENDENCY ERROR: Missing setting BAUDRATE
#endif #endif
#if DISABLED(MACHINE_UUID) #if !defined(MACHINE_UUID)
#error DEPENDENCY ERROR: Missing setting MACHINE_UUID #error DEPENDENCY ERROR: Missing setting MACHINE_UUID
#endif #endif
//board //board
#if DISABLED(MOTHERBOARD) #if !defined(MOTHERBOARD)
#error DEPENDENCY ERROR: Missing setting MOTHERBOARD #error DEPENDENCY ERROR: Missing setting MOTHERBOARD
#endif #endif
//Mechanism //Mechanism
#if DISABLED(MEACHANISM) #if !defined(MEACHANISM)
#error DEPENDENCY ERROR: Missing setting MECHANISM #error DEPENDENCY ERROR: Missing setting MECHANISM
#endif #endif
//Power supply //Power supply
#if DISABLED(POWER_SUPPLY) #if !defined(POWER_SUPPLY)
#error DEPENDENCY ERROR: Missing setting POWER_SUPPLY #error DEPENDENCY ERROR: Missing setting POWER_SUPPLY
#endif #endif
//Thermistor //Thermistor
#if DISABLED(TEMP_SENSOR_0) #if !defined(TEMP_SENSOR_0)
#error DEPENDENCY ERROR: Missing setting TEMP_SENSOR_0 #error DEPENDENCY ERROR: Missing setting TEMP_SENSOR_0
#endif #endif
#if DISABLED(TEMP_SENSOR_1) #if !defined(TEMP_SENSOR_1)
#error DEPENDENCY ERROR: Missing setting TEMP_SENSOR_1 #error DEPENDENCY ERROR: Missing setting TEMP_SENSOR_1
#endif #endif
#if DISABLED(TEMP_SENSOR_2) #if !defined(TEMP_SENSOR_2)
#error DEPENDENCY ERROR: Missing setting TEMP_SENSOR_2 #error DEPENDENCY ERROR: Missing setting TEMP_SENSOR_2
#endif #endif
#if DISABLED(TEMP_SENSOR_3) #if !defined(TEMP_SENSOR_3)
#error DEPENDENCY ERROR: Missing setting TEMP_SENSOR_3 #error DEPENDENCY ERROR: Missing setting TEMP_SENSOR_3
#endif #endif
#if DISABLED(TEMP_SENSOR_BED) #if !defined(TEMP_SENSOR_BED)
#error DEPENDENCY ERROR: Missing setting TEMP_SENSOR_BED #error DEPENDENCY ERROR: Missing setting TEMP_SENSOR_BED
#endif #endif
#if (THERMISTORHEATER_0 == 998) || (THERMISTORHEATER_1 == 998) || (THERMISTORHEATER_2 == 998) || (THERMISTORHEATER_3 == 998) || (THERMISTORBED == 998) //User defined table #if (THERMISTORHEATER_0 == 998) || (THERMISTORHEATER_1 == 998) || (THERMISTORHEATER_2 == 998) || (THERMISTORHEATER_3 == 998) || (THERMISTORBED == 998) //User defined table
#if DISABLED(DUMMY_THERMISTOR_998_VALUE) #if !defined(DUMMY_THERMISTOR_998_VALUE)
#error DEPENDENCY ERROR: Missing setting DUMMY_THERMISTOR_998_VALUE #error DEPENDENCY ERROR: Missing setting DUMMY_THERMISTOR_998_VALUE
#endif #endif
#endif #endif
...@@ -66,905 +58,1219 @@ ...@@ -66,905 +58,1219 @@
/** /**
* Temperature defines * Temperature defines
*/ */
#if ENABLED(TEMP_RESIDENCY_TIME) #if defined(TEMP_RESIDENCY_TIME)
#if DISABLED(TEMP_HYSTERESIS) #if !defined(TEMP_HYSTERESIS)
#error DEPENDENCY ERROR: Missing setting TEMP_HYSTERESIS #error DEPENDENCY ERROR: Missing setting TEMP_HYSTERESIS
#endif #endif
#if DISABLED(TEMP_WINDOW) #if !defined(TEMP_WINDOW)
#error DEPENDENCY ERROR: Missing setting TEMP_WINDOW #error DEPENDENCY ERROR: Missing setting TEMP_WINDOW
#endif #endif
#endif #endif
#if TEMP_SENSOR_0 != 0 #if TEMP_SENSOR_0 != 0
#if DISABLED(HEATER_0_MAXTEMP) #if !defined(HEATER_0_MAXTEMP)
#error DEPENDENCY ERROR: Missing setting HEATER_0_MAXTEMP #error DEPENDENCY ERROR: Missing setting HEATER_0_MAXTEMP
#endif #endif
#if DISABLED(HEATER_0_MINTEMP) #if !defined(HEATER_0_MINTEMP)
#error DEPENDENCY ERROR: Missing setting HEATER_0_MINTEMP #error DEPENDENCY ERROR: Missing setting HEATER_0_MINTEMP
#endif #endif
#endif #endif
#if TEMP_SENSOR_1 != 0 #if TEMP_SENSOR_1 != 0
#if DISABLED(HEATER_1_MAXTEMP) #if !defined(HEATER_1_MAXTEMP)
#error DEPENDENCY ERROR: Missing setting HEATER_1_MAXTEMP #error DEPENDENCY ERROR: Missing setting HEATER_1_MAXTEMP
#endif #endif
#if DISABLED(HEATER_0_MINTEMP) #if !defined(HEATER_0_MINTEMP)
#error DEPENDENCY ERROR: Missing setting HEATER_1_MINTEMP #error DEPENDENCY ERROR: Missing setting HEATER_1_MINTEMP
#endif #endif
#endif #endif
#if TEMP_SENSOR_2 != 0 #if TEMP_SENSOR_2 != 0
#if DISABLED(HEATER_2_MAXTEMP) #if !defined(HEATER_2_MAXTEMP)
#error DEPENDENCY ERROR: Missing setting HEATER_2_MAXTEMP #error DEPENDENCY ERROR: Missing setting HEATER_2_MAXTEMP
#endif #endif
#if DISABLED(HEATER_0_MINTEMP) #if !defined(HEATER_0_MINTEMP)
#error DEPENDENCY ERROR: Missing setting HEATER_2_MINTEMP #error DEPENDENCY ERROR: Missing setting HEATER_2_MINTEMP
#endif #endif
#endif #endif
#if TEMP_SENSOR_3 != 0 #if TEMP_SENSOR_3 != 0
#if DISABLED(HEATER_3_MAXTEMP) #if !defined(HEATER_3_MAXTEMP)
#error DEPENDENCY ERROR: Missing setting HEATER_3_MAXTEMP #error DEPENDENCY ERROR: Missing setting HEATER_3_MAXTEMP
#endif #endif
#if DISABLED(HEATER_0_MINTEMP) #if !defined(HEATER_0_MINTEMP)
#error DEPENDENCY ERROR: Missing setting HEATER_3_MINTEMP #error DEPENDENCY ERROR: Missing setting HEATER_3_MINTEMP
#endif #endif
#endif #endif
#if TEMP_SENSOR_BED != 0 #if TEMP_SENSOR_BED != 0
#if DISABLED(BED_MAXTEMP) #if !defined(BED_MAXTEMP)
#error DEPENDENCY ERROR: Missing setting BED_MAXTEMP #error DEPENDENCY ERROR: Missing setting BED_MAXTEMP
#endif #endif
#if DISABLED(HEATER_0_MINTEMP) #if !defined(HEATER_0_MINTEMP)
#error DEPENDENCY ERROR: Missing setting BED_MINTEMP #error DEPENDENCY ERROR: Missing setting BED_MINTEMP
#endif #endif
#endif #endif
#if DISABLED(PLA_PREHEAT_HOTEND_TEMP) #if !defined(PLA_PREHEAT_HOTEND_TEMP)
#error DEPENDENCY ERROR: Missing setting PLA_PREHEAT_HOTEND_TEMP #error DEPENDENCY ERROR: Missing setting PLA_PREHEAT_HOTEND_TEMP
#endif #endif
#if DISABLED(PLA_PREHEAT_HPB_TEMP) #if !defined(PLA_PREHEAT_HPB_TEMP)
#error DEPENDENCY ERROR: Missing setting PLA_PREHEAT_HPB_TEMP #error DEPENDENCY ERROR: Missing setting PLA_PREHEAT_HPB_TEMP
#endif #endif
#if DISABLED(PLA_PREHEAT_FAN_SPEED) #if !defined(PLA_PREHEAT_FAN_SPEED)
#error DEPENDENCY ERROR: Missing setting PLA_PREHEAT_FAN_SPEED #error DEPENDENCY ERROR: Missing setting PLA_PREHEAT_FAN_SPEED
#endif #endif
#if DISABLED(ABS_PREHEAT_HOTEND_TEMP) #if !defined(ABS_PREHEAT_HOTEND_TEMP)
#error DEPENDENCY ERROR: Missing setting ABS_PREHEAT_HOTEND_TEMP #error DEPENDENCY ERROR: Missing setting ABS_PREHEAT_HOTEND_TEMP
#endif #endif
#if DISABLED(ABS_PREHEAT_HPB_TEMP) #if !defined(ABS_PREHEAT_HPB_TEMP)
#error DEPENDENCY ERROR: Missing setting ABS_PREHEAT_HPB_TEMP #error DEPENDENCY ERROR: Missing setting ABS_PREHEAT_HPB_TEMP
#endif #endif
#if DISABLED(ABS_PREHEAT_FAN_SPEED) #if !defined(ABS_PREHEAT_FAN_SPEED)
#error DEPENDENCY ERROR: Missing setting ABS_PREHEAT_FAN_SPEED #error DEPENDENCY ERROR: Missing setting ABS_PREHEAT_FAN_SPEED
#endif #endif
#if DISABLED(GUM_PREHEAT_HOTEND_TEMP) #if !defined(GUM_PREHEAT_HOTEND_TEMP)
#error DEPENDENCY ERROR: Missing setting GUM_PREHEAT_HOTEND_TEMP #error DEPENDENCY ERROR: Missing setting GUM_PREHEAT_HOTEND_TEMP
#endif #endif
#if DISABLED(GUM_PREHEAT_HPB_TEMP) #if !defined(GUM_PREHEAT_HPB_TEMP)
#error DEPENDENCY ERROR: Missing setting GUM_PREHEAT_HPB_TEMP #error DEPENDENCY ERROR: Missing setting GUM_PREHEAT_HPB_TEMP
#endif #endif
#if DISABLED(GUM_PREHEAT_FAN_SPEED) #if !defined(GUM_PREHEAT_FAN_SPEED)
#error DEPENDENCY ERROR: Missing setting GUM_PREHEAT_FAN_SPEED #error DEPENDENCY ERROR: Missing setting GUM_PREHEAT_FAN_SPEED
#endif #endif
//extruders //extruders
#if DISABLED(EXTRUDERS) #if !defined(EXTRUDERS)
#error DEPENDENCY ERROR: Missing setting EXTRUDERS #error DEPENDENCY ERROR: Missing setting EXTRUDERS
#endif #endif
#if DISABLED(DRIVER_EXTRUDERS) #if !defined(DRIVER_EXTRUDERS)
#error DEPENDENCY ERROR: Missing setting DRIVER_EXTRUDERS #error DEPENDENCY ERROR: Missing setting DRIVER_EXTRUDERS
#endif #endif
//Language //Language
#if DISABLED(LANGUAGE_CHOICE) #if !defined(LANGUAGE_CHOICE)
#error DEPENDENCY ERROR: Missing setting LANGUAGE_CHOICE #error DEPENDENCY ERROR: Missing setting LANGUAGE_CHOICE
#endif #endif
///FEATURE ///FEATURE
//Temperature //Temperature
#if DISABLED(PID_MAX) #if !defined(PID_MAX)
#error DEPENDENCY ERROR: Missing setting PID_MAX #error DEPENDENCY ERROR: Missing setting PID_MAX
#endif #endif
#if DISABLED(MAX_BED_POWER) #if !defined(MAX_BED_POWER)
#error DEPENDENCY ERROR: Missing setting MAX_BED_POWER #error DEPENDENCY ERROR: Missing setting MAX_BED_POWER
#endif #endif
#if ENABLED(PIDTEMP) || ENABLED(PIDTEMPBED) #if defined(PIDTEMP) || defined(PIDTEMPBED)
#if DISABLED(MAX_OVERSHOOT_PID_AUTOTUNE) #if !defined(MAX_OVERSHOOT_PID_AUTOTUNE)
#error DEPENDENCY ERROR: Missing setting MAX_OVERSHOOT_PID_AUTOTUNE #error DEPENDENCY ERROR: Missing setting MAX_OVERSHOOT_PID_AUTOTUNE
#endif #endif
#endif #endif
#if ENABLED(PIDTEMP) #if defined(PIDTEMP)
#if DISABLED(PID_OPENLOOP) #if !defined(PID_OPENLOOP)
#error DEPENDENCY ERROR: Missing setting PID_FUNCTIONAL_RANGE #error DEPENDENCY ERROR: Missing setting PID_FUNCTIONAL_RANGE
#endif #endif
#if DISABLED(PID_INTEGRAL_DRIVE_MAX) #if !defined(PID_INTEGRAL_DRIVE_MAX)
#error DEPENDENCY ERROR: Missing setting PID_INTEGRAL_DRIVE_MAX #error DEPENDENCY ERROR: Missing setting PID_INTEGRAL_DRIVE_MAX
#endif #endif
#if DISABLED(DEFAULT_Kp) #if !defined(DEFAULT_Kp)
#error DEPENDENCY ERROR: Missing setting DEFAULT_Kp #error DEPENDENCY ERROR: Missing setting DEFAULT_Kp
#endif #endif
#if DISABLED(DEFAULT_Ki) #if !defined(DEFAULT_Ki)
#error DEPENDENCY ERROR: Missing setting DEFAULT_Ki #error DEPENDENCY ERROR: Missing setting DEFAULT_Ki
#endif #endif
#if DISABLED(DEFAULT_Kd) #if !defined(DEFAULT_Kd)
#error DEPENDENCY ERROR: Missing setting DEFAULT_Kd #error DEPENDENCY ERROR: Missing setting DEFAULT_Kd
#endif #endif
#endif #endif
#if ENABLED(PIDTEMPBED) #if defined(PIDTEMPBED)
#if DISABLED(PID_BED_INTEGRAL_DRIVE_MAX) #if !defined(PID_BED_INTEGRAL_DRIVE_MAX)
#error DEPENDENCY ERROR: Missing setting PID_BED_INTEGRAL_DRIVE_MAX #error DEPENDENCY ERROR: Missing setting PID_BED_INTEGRAL_DRIVE_MAX
#endif #endif
#if DISABLED(DEFAULT_bedKp) #if !defined(DEFAULT_bedKp)
#error DEPENDENCY ERROR: Missing setting DEFAULT_bedKp #error DEPENDENCY ERROR: Missing setting DEFAULT_bedKp
#endif #endif
#if DISABLED(DEFAULT_bedKi) #if !defined(DEFAULT_bedKi)
#error DEPENDENCY ERROR: Missing setting DEFAULT_bedKi #error DEPENDENCY ERROR: Missing setting DEFAULT_bedKi
#endif #endif
#if DISABLED(DEFAULT_bedKd) #if !defined(DEFAULT_bedKd)
#error DEPENDENCY ERROR: Missing setting DEFAULT_bedKd #error DEPENDENCY ERROR: Missing setting DEFAULT_bedKd
#endif #endif
#endif #endif
#if ENABLED(BED_LIMIT_SWITCHING) #if defined(BED_LIMIT_SWITCHING)
#if DISABLED(BED_HYSTERESIS) #if !defined(BED_HYSTERESIS)
#error DEPENDENCY ERROR: Missing setting BED_HYSTERESIS #error DEPENDENCY ERROR: Missing setting BED_HYSTERESIS
#endif #endif
#if DISABLED(BED_CHECK_INTERVAL) #if !defined(BED_CHECK_INTERVAL)
#error DEPENDENCY ERROR: Missing setting BED_CHECK_INTERVAL #error DEPENDENCY ERROR: Missing setting BED_CHECK_INTERVAL
#endif #endif
#endif #endif
#if ENABLED(THERMAL_PROTECTION_HOTENDS) #if defined(THERMAL_PROTECTION_HOTENDS)
#if DISABLED(THERMAL_PROTECTION_PERIOD) #if !defined(THERMAL_PROTECTION_PERIOD)
#error DEPENDENCY ERROR: Missing setting THERMAL_PROTECTION_PERIOD #error DEPENDENCY ERROR: Missing setting THERMAL_PROTECTION_PERIOD
#endif #endif
#if DISABLED(THERMAL_PROTECTION_HYSTERESIS) #if !defined(THERMAL_PROTECTION_HYSTERESIS)
#error DEPENDENCY ERROR: Missing setting THERMAL_PROTECTION_HYSTERESIS #error DEPENDENCY ERROR: Missing setting THERMAL_PROTECTION_HYSTERESIS
#endif #endif
#if DISABLED(WATCH_TEMP_PERIOD) #if !defined(WATCH_TEMP_PERIOD)
#error DEPENDENCY ERROR: Missing setting WATCH_TEMP_PERIOD #error DEPENDENCY ERROR: Missing setting WATCH_TEMP_PERIOD
#endif #endif
#if DISABLED(WATCH_TEMP_INCREASE) #if !defined(WATCH_TEMP_INCREASE)
#error DEPENDENCY ERROR: Missing setting WATCH_TEMP_INCREASE #error DEPENDENCY ERROR: Missing setting WATCH_TEMP_INCREASE
#endif #endif
#endif #endif
#if ENABLED(THERMAL_PROTECTION_BED) #if defined(THERMAL_PROTECTION_BED)
#if DISABLED(THERMAL_PROTECTION_BED_PERIOD) #if !defined(THERMAL_PROTECTION_BED_PERIOD)
#error DEPENDENCY ERROR: Missing setting THERMAL_PROTECTION_BED_PERIOD #error DEPENDENCY ERROR: Missing setting THERMAL_PROTECTION_BED_PERIOD
#endif #endif
#if DISABLED(THERMAL_PROTECTION_BED_HYSTERESIS) #if !defined(THERMAL_PROTECTION_BED_HYSTERESIS)
#error DEPENDENCY ERROR: Missing setting THERMAL_PROTECTION_BED_HYSTERESIS #error DEPENDENCY ERROR: Missing setting THERMAL_PROTECTION_BED_HYSTERESIS
#endif #endif
#endif #endif
//fan //fan
#if DISABLED(SOFT_PWM_SCALE) #if !defined(SOFT_PWM_SCALE)
#error DEPENDENCY ERROR: Missing setting SOFT_PWM_SCALE #error DEPENDENCY ERROR: Missing setting SOFT_PWM_SCALE
#endif #endif
#if ENABLED(CONTROLLERFAN) #if defined(CONTROLLERFAN)
#if DISABLED(CONTROLLERFAN_SECS) #if !defined(CONTROLLERFAN_SECS)
#error DEPENDENCY ERROR: Missing setting CONTROLLERFAN_SECS #error DEPENDENCY ERROR: Missing setting CONTROLLERFAN_SECS
#endif #endif
#if DISABLED(CONTROLLERFAN_SPEED) #if !defined(CONTROLLERFAN_SPEED)
#error DEPENDENCY ERROR: Missing setting CONTROLLERFAN_SPEED #error DEPENDENCY ERROR: Missing setting CONTROLLERFAN_SPEED
#endif #endif
#if DISABLED(CONTROLLERFAN_MIN_SPEED) #if !defined(CONTROLLERFAN_MIN_SPEED)
#error DEPENDENCY ERROR: Missing setting CONTROLLERFAN_MIN_SPEED #error DEPENDENCY ERROR: Missing setting CONTROLLERFAN_MIN_SPEED
#endif #endif
#endif #endif
#if ENABLED(EXTRUDER_AUTO_FAN) #if defined(EXTRUDER_AUTO_FAN)
#if DISABLED(EXTRUDER_AUTO_FAN_TEMPERATURE) #if !defined(EXTRUDER_AUTO_FAN_TEMPERATURE)
#error DEPENDENCY ERROR: Missing setting EXTRUDER_AUTO_FAN_TEMPERATURE #error DEPENDENCY ERROR: Missing setting EXTRUDER_AUTO_FAN_TEMPERATURE
#endif #endif
#if DISABLED(EXTRUDER_AUTO_FAN_SPEED) #if !defined(EXTRUDER_AUTO_FAN_SPEED)
#error DEPENDENCY ERROR: Missing setting EXTRUDER_AUTO_FAN_SPEED #error DEPENDENCY ERROR: Missing setting EXTRUDER_AUTO_FAN_SPEED
#endif #endif
#if DISABLED(EXTRUDER_AUTO_FAN_MIN_SPEED) #if !defined(EXTRUDER_AUTO_FAN_MIN_SPEED)
#error DEPENDENCY ERROR: Missing setting EXTRUDER_AUTO_FAN_MIN_SPEED #error DEPENDENCY ERROR: Missing setting EXTRUDER_AUTO_FAN_MIN_SPEED
#endif #endif
#endif #endif
//extruder //extruder
#if ENABLED(PREVENT_DANGEROUS_EXTRUDE) #if defined(PREVENT_DANGEROUS_EXTRUDE)
#if DISABLED(EXTRUDE_MINTEMP) #if !defined(EXTRUDE_MINTEMP)
#error DEPENDENCY ERROR: Missing setting EXTRUDE_MINTEMP #error DEPENDENCY ERROR: Missing setting EXTRUDE_MINTEMP
#endif #endif
#if ENABLED(PREVENT_LENGTHY_EXTRUDE) #if defined(PREVENT_LENGTHY_EXTRUDE)
#if DISABLED(EXTRUDE_MAXLENGTH) #if !defined(EXTRUDE_MAXLENGTH)
#error DEPENDENCY ERROR: Missing setting EXTRUDE_MAXLENGTH #error DEPENDENCY ERROR: Missing setting EXTRUDE_MAXLENGTH
#endif #endif
#endif #endif
#endif #endif
#if ENABLED(NPR2) #if defined(NPR2)
#if DISABLED(COLOR_STEP) #if !defined(COLOR_STEP)
#error DEPENDENCY ERROR: Missing setting COLOR_STEP #error DEPENDENCY ERROR: Missing setting COLOR_STEP
#endif #endif
#if DISABLED(COLOR_SLOWRATE) #if !defined(COLOR_SLOWRATE)
#error DEPENDENCY ERROR: Missing setting COLOR_SLOWRATE #error DEPENDENCY ERROR: Missing setting COLOR_SLOWRATE
#endif #endif
#if DISABLED(COLOR_HOMERATE) #if !defined(COLOR_HOMERATE)
#error DEPENDENCY ERROR: Missing setting COLOR_HOMERATE #error DEPENDENCY ERROR: Missing setting COLOR_HOMERATE
#endif #endif
#if DISABLED(MOTOR_ANGLE) #if !defined(MOTOR_ANGLE)
#error DEPENDENCY ERROR: Missing setting MOTOR_ANGLE #error DEPENDENCY ERROR: Missing setting MOTOR_ANGLE
#endif #endif
#if DISABLED(DRIVER_MICROSTEP) #if !defined(DRIVER_MICROSTEP)
#error DEPENDENCY ERROR: Missing setting DRIVER_MICROSTEP #error DEPENDENCY ERROR: Missing setting DRIVER_MICROSTEP
#endif #endif
#if DISABLED(CARTER_MOLTIPLICATOR) #if !defined(CARTER_MOLTIPLICATOR)
#error DEPENDENCY ERROR: Missing setting CARTER_MOLTIPLICATOR #error DEPENDENCY ERROR: Missing setting CARTER_MOLTIPLICATOR
#endif #endif
#endif #endif
#if ENABLED(IDLE_OOZING_PREVENT) #if defined(IDLE_OOZING_PREVENT)
#if DISABLED(IDLE_OOZING_MINTEMP) #if !defined(IDLE_OOZING_MINTEMP)
#error DEPENDENCY ERROR: Missing setting IDLE_OOZING_MINTEMP #error DEPENDENCY ERROR: Missing setting IDLE_OOZING_MINTEMP
#endif #endif
#if DISABLED(IDLE_OOZING_FEEDRATE) #if !defined(IDLE_OOZING_FEEDRATE)
#error DEPENDENCY ERROR: Missing setting IDLE_OOZING_FEEDRATE #error DEPENDENCY ERROR: Missing setting IDLE_OOZING_FEEDRATE
#endif #endif
#if DISABLED(IDLE_OOZING_SECONDS) #if !defined(IDLE_OOZING_SECONDS)
#error DEPENDENCY ERROR: Missing setting IDLE_OOZING_SECONDS #error DEPENDENCY ERROR: Missing setting IDLE_OOZING_SECONDS
#endif #endif
#if DISABLED(IDLE_OOZING_LENGTH) #if !defined(IDLE_OOZING_LENGTH)
#error DEPENDENCY ERROR: Missing setting IDLE_OOZING_LENGTH #error DEPENDENCY ERROR: Missing setting IDLE_OOZING_LENGTH
#endif #endif
#if DISABLED(IDLE_OOZING_RECOVER_LENGTH) #if !defined(IDLE_OOZING_RECOVER_LENGTH)
#error DEPENDENCY ERROR: Missing setting IDLE_OOZING_RECOVER_LENGTH #error DEPENDENCY ERROR: Missing setting IDLE_OOZING_RECOVER_LENGTH
#endif #endif
#if DISABLED(IDLE_OOZING_RECOVER_FEEDRATE) #if !defined(IDLE_OOZING_RECOVER_FEEDRATE)
#error DEPENDENCY ERROR: Missing setting IDLE_OOZING_RECOVER_FEEDRATE #error DEPENDENCY ERROR: Missing setting IDLE_OOZING_RECOVER_FEEDRATE
#endif #endif
#endif #endif
#if ENABLED(EXTRUDER_RUNOUT_PREVENT) #if defined(EXTRUDER_RUNOUT_PREVENT)
#if DISABLED(EXTRUDER_RUNOUT_MINTEMP) #if !defined(EXTRUDER_RUNOUT_MINTEMP)
#error DEPENDENCY ERROR: Missing setting EXTRUDER_RUNOUT_MINTEMP #error DEPENDENCY ERROR: Missing setting EXTRUDER_RUNOUT_MINTEMP
#endif #endif
#if DISABLED(EXTRUDER_RUNOUT_SECONDS) #if !defined(EXTRUDER_RUNOUT_SECONDS)
#error DEPENDENCY ERROR: Missing setting EXTRUDER_RUNOUT_SECONDS #error DEPENDENCY ERROR: Missing setting EXTRUDER_RUNOUT_SECONDS
#endif #endif
#if DISABLED(EXTRUDER_RUNOUT_ESTEPS) #if !defined(EXTRUDER_RUNOUT_ESTEPS)
#error DEPENDENCY ERROR: Missing setting EXTRUDER_RUNOUT_ESTEPS #error DEPENDENCY ERROR: Missing setting EXTRUDER_RUNOUT_ESTEPS
#endif #endif
#if DISABLED(EXTRUDER_RUNOUT_SPEED) #if !defined(EXTRUDER_RUNOUT_SPEED)
#error DEPENDENCY ERROR: Missing setting EXTRUDER_RUNOUT_SPEED #error DEPENDENCY ERROR: Missing setting EXTRUDER_RUNOUT_SPEED
#endif #endif
#if DISABLED(EXTRUDER_RUNOUT_EXTRUDE) #if !defined(EXTRUDER_RUNOUT_EXTRUDE)
#error DEPENDENCY ERROR: Missing setting EXTRUDER_RUNOUT_EXTRUDE #error DEPENDENCY ERROR: Missing setting EXTRUDER_RUNOUT_EXTRUDE
#endif #endif
#endif #endif
#if ENABLED(EASY_LOAD) #if defined(EASY_LOAD)
#if DISABLED(BOWDEN_LENGTH) #if !defined(BOWDEN_LENGTH)
#error DEPENDENCY ERROR: Missing setting BOWDEN_LENGTH #error DEPENDENCY ERROR: Missing setting BOWDEN_LENGTH
#endif #endif
#if DISABLED(LCD_PURGE_LENGTH) #if !defined(LCD_PURGE_LENGTH)
#error DEPENDENCY ERROR: Missing setting LCD_PURGE_LENGTH #error DEPENDENCY ERROR: Missing setting LCD_PURGE_LENGTH
#endif #endif
#if DISABLED(LCD_RETRACT_LENGTH) #if !defined(LCD_RETRACT_LENGTH)
#error DEPENDENCY ERROR: Missing setting LCD_RETRACT_LENGTH #error DEPENDENCY ERROR: Missing setting LCD_RETRACT_LENGTH
#endif #endif
#if DISABLED(LCD_PURGE_FEEDRATE) #if !defined(LCD_PURGE_FEEDRATE)
#error DEPENDENCY ERROR: Missing setting LCD_PURGE_FEEDRATE #error DEPENDENCY ERROR: Missing setting LCD_PURGE_FEEDRATE
#endif #endif
#if DISABLED(LCD_RETRACT_FEEDRATE) #if !defined(LCD_RETRACT_FEEDRATE)
#error DEPENDENCY ERROR: Missing setting LCD_RETRACT_FEEDRATE #error DEPENDENCY ERROR: Missing setting LCD_RETRACT_FEEDRATE
#endif #endif
#if DISABLED(LCD_LOAD_FEEDRATE) #if !defined(LCD_LOAD_FEEDRATE)
#error DEPENDENCY ERROR: Missing setting LCD_LOAD_FEEDRATE #error DEPENDENCY ERROR: Missing setting LCD_LOAD_FEEDRATE
#endif #endif
#if DISABLED(LCD_UNLOAD_FEEDRATE) #if !defined(LCD_UNLOAD_FEEDRATE)
#error DEPENDENCY ERROR: Missing setting LCD_UNLOAD_FEEDRATE #error DEPENDENCY ERROR: Missing setting LCD_UNLOAD_FEEDRATE
#endif #endif
#endif #endif
#if ENABLED(ADVANCE) #if defined(ADVANCE)
#if DISABLED(EXTRUDER_ADVANCE_K) #if !defined(EXTRUDER_ADVANCE_K)
#error DEPENDENCY ERROR: Missing setting EXTRUDER_ADVANCE_K #error DEPENDENCY ERROR: Missing setting EXTRUDER_ADVANCE_K
#endif #endif
#if DISABLED(D_FILAMENT) #if !defined(D_FILAMENT)
#error DEPENDENCY ERROR: Missing setting D_FILAMENT #error DEPENDENCY ERROR: Missing setting D_FILAMENT
#endif #endif
#if DISABLED(STEPS_MM_E) #if !defined(STEPS_MM_E)
#error DEPENDENCY ERROR: Missing setting STEPS_MM_E #error DEPENDENCY ERROR: Missing setting STEPS_MM_E
#endif #endif
#endif #endif
#if ENABLED(FILAMENTCHANGEENABLE) #if defined(FILAMENTCHANGEENABLE)
#if DISABLED(FILAMENTCHANGE_XPOS) #if !defined(FILAMENTCHANGE_XPOS)
#error DEPENDENCY ERROR: Missing setting FILAMENTCHANGE_XPOS #error DEPENDENCY ERROR: Missing setting FILAMENTCHANGE_XPOS
#endif #endif
#if DISABLED(FILAMENTCHANGE_YPOS) #if !defined(FILAMENTCHANGE_YPOS)
#error DEPENDENCY ERROR: Missing setting FILAMENTCHANGE_YPOS #error DEPENDENCY ERROR: Missing setting FILAMENTCHANGE_YPOS
#endif #endif
#if DISABLED(FILAMENTCHANGE_ZADD) #if !defined(FILAMENTCHANGE_ZADD)
#error DEPENDENCY ERROR: Missing setting FILAMENTCHANGE_ZADD #error DEPENDENCY ERROR: Missing setting FILAMENTCHANGE_ZADD
#endif #endif
#if DISABLED(FILAMENTCHANGE_FIRSTRETRACT) #if !defined(FILAMENTCHANGE_FIRSTRETRACT)
#error DEPENDENCY ERROR: Missing setting FILAMENTCHANGE_FIRSTRETRACT #error DEPENDENCY ERROR: Missing setting FILAMENTCHANGE_FIRSTRETRACT
#endif #endif
#if DISABLED(FILAMENTCHANGE_FINALRETRACT) #if !defined(FILAMENTCHANGE_FINALRETRACT)
#error DEPENDENCY ERROR: Missing setting FILAMENTCHANGE_FINALRETRACT #error DEPENDENCY ERROR: Missing setting FILAMENTCHANGE_FINALRETRACT
#endif #endif
#if DISABLED(FILAMENTCHANGE_PRINTEROFF) #if !defined(FILAMENTCHANGE_PRINTEROFF)
#error DEPENDENCY ERROR: Missing setting FILAMENTCHANGE_PRINTEROFF #error DEPENDENCY ERROR: Missing setting FILAMENTCHANGE_PRINTEROFF
#endif #endif
#endif #endif
//Motion //Motion
#if DISABLED(SOFTWARE_MIN_ENDSTOPS) #if !defined(SOFTWARE_MIN_ENDSTOPS)
#error DEPENDENCY ERROR: Missing setting SOFTWARE_MIN_ENDSTOPS #error DEPENDENCY ERROR: Missing setting SOFTWARE_MIN_ENDSTOPS
#endif #endif
#if DISABLED(SOFTWARE_MAX_ENDSTOPS) #if !defined(SOFTWARE_MAX_ENDSTOPS)
#error DEPENDENCY ERROR: Missing setting SOFTWARE_MAX_ENDSTOPS #error DEPENDENCY ERROR: Missing setting SOFTWARE_MAX_ENDSTOPS
#endif #endif
#if ENABLED(AUTO_BED_LEVELING_FEATURE) #if defined(AUTO_BED_LEVELING_FEATURE)
#if ENABLED(AUTO_BED_LEVELING_GRID) #if defined(AUTO_BED_LEVELING_GRID)
#if DISABLED(MIN_PROBE_EDGE) #if !defined(MIN_PROBE_EDGE)
#error DEPENDENCY ERROR: Missing setting MIN_PROBE_EDGE #error DEPENDENCY ERROR: Missing setting MIN_PROBE_EDGE
#endif #endif
#if DISABLED(AUTO_BED_LEVELING_GRID_POINTS) #if !defined(AUTO_BED_LEVELING_GRID_POINTS)
#error DEPENDENCY ERROR: Missing setting AUTO_BED_LEVELING_GRID_POINTS #error DEPENDENCY ERROR: Missing setting AUTO_BED_LEVELING_GRID_POINTS
#endif #endif
#else #else
#if DISABLED(ABL_PROBE_PT_1_X) #if !defined(ABL_PROBE_PT_1_X)
#error DEPENDENCY ERROR: Missing setting ABL_PROBE_PT_1_X #error DEPENDENCY ERROR: Missing setting ABL_PROBE_PT_1_X
#endif #endif
#if DISABLED(ABL_PROBE_PT_1_Y) #if !defined(ABL_PROBE_PT_1_Y)
#error DEPENDENCY ERROR: Missing setting ABL_PROBE_PT_1_Y #error DEPENDENCY ERROR: Missing setting ABL_PROBE_PT_1_Y
#endif #endif
#if DISABLED(ABL_PROBE_PT_2_X) #if !defined(ABL_PROBE_PT_2_X)
#error DEPENDENCY ERROR: Missing setting ABL_PROBE_PT_2_X #error DEPENDENCY ERROR: Missing setting ABL_PROBE_PT_2_X
#endif #endif
#if DISABLED(ABL_PROBE_PT_2_Y) #if !defined(ABL_PROBE_PT_2_Y)
#error DEPENDENCY ERROR: Missing setting ABL_PROBE_PT_2_Y #error DEPENDENCY ERROR: Missing setting ABL_PROBE_PT_2_Y
#endif #endif
#if DISABLED(ABL_PROBE_PT_3_X) #if !defined(ABL_PROBE_PT_3_X)
#error DEPENDENCY ERROR: Missing setting ABL_PROBE_PT_3_X #error DEPENDENCY ERROR: Missing setting ABL_PROBE_PT_3_X
#endif #endif
#if DISABLED(ABL_PROBE_PT_3_Y) #if !defined(ABL_PROBE_PT_3_Y)
#error DEPENDENCY ERROR: Missing setting ABL_PROBE_PT_3_Y #error DEPENDENCY ERROR: Missing setting ABL_PROBE_PT_3_Y
#endif #endif
#endif #endif
#if DISABLED(X_PROBE_OFFSET_FROM_EXTRUDER) #if !defined(X_PROBE_OFFSET_FROM_EXTRUDER)
#error DEPENDENCY ERROR: Missing setting X_PROBE_OFFSET_FROM_EXTRUDER #error DEPENDENCY ERROR: Missing setting X_PROBE_OFFSET_FROM_EXTRUDER
#endif #endif
#if DISABLED(Y_PROBE_OFFSET_FROM_EXTRUDER) #if !defined(Y_PROBE_OFFSET_FROM_EXTRUDER)
#error DEPENDENCY ERROR: Missing setting Y_PROBE_OFFSET_FROM_EXTRUDER #error DEPENDENCY ERROR: Missing setting Y_PROBE_OFFSET_FROM_EXTRUDER
#endif #endif
#if DISABLED(Z_PROBE_OFFSET_FROM_EXTRUDER) #if !defined(Z_PROBE_OFFSET_FROM_EXTRUDER)
#error DEPENDENCY ERROR: Missing setting Z_PROBE_OFFSET_FROM_EXTRUDER #error DEPENDENCY ERROR: Missing setting Z_PROBE_OFFSET_FROM_EXTRUDER
#endif #endif
#if DISABLED(Z_RAISE_BEFORE_HOMING) #if !defined(Z_RAISE_BEFORE_HOMING)
#error DEPENDENCY ERROR: Missing setting Z_RAISE_BEFORE_HOMING #error DEPENDENCY ERROR: Missing setting Z_RAISE_BEFORE_HOMING
#endif #endif
#if DISABLED(Z_RAISE_BEFORE_PROBING) #if !defined(Z_RAISE_BEFORE_PROBING)
#error DEPENDENCY ERROR: Missing setting Z_RAISE_BEFORE_PROBING #error DEPENDENCY ERROR: Missing setting Z_RAISE_BEFORE_PROBING
#endif #endif
#if DISABLED(Z_RAISE_BETWEEN_PROBINGS) #if !defined(Z_RAISE_BETWEEN_PROBINGS)
#error DEPENDENCY ERROR: Missing setting Z_RAISE_BETWEEN_PROBINGS #error DEPENDENCY ERROR: Missing setting Z_RAISE_BETWEEN_PROBINGS
#endif #endif
#if DISABLED(Z_RAISE_AFTER_PROBING) #if !defined(Z_RAISE_AFTER_PROBING)
#error DEPENDENCY ERROR: Missing setting Z_RAISE_AFTER_PROBING #error DEPENDENCY ERROR: Missing setting Z_RAISE_AFTER_PROBING
#endif #endif
#if ENABLED(Z_PROBE_SLED) #if defined(Z_PROBE_SLED)
#if DISABLED(SLED_DOCKING_OFFSET) #if !defined(SLED_DOCKING_OFFSET)
#error DEPENDENCY ERROR: Missing setting SLED_DOCKING_OFFSET #error DEPENDENCY ERROR: Missing setting SLED_DOCKING_OFFSET
#endif #endif
#endif #endif
#if ENABLED(Z_SAFE_HOMING) #if defined(Z_SAFE_HOMING)
#if DISABLED(Z_SAFE_HOMING_X_POINT) #if !defined(Z_SAFE_HOMING_X_POINT)
#error DEPENDENCY ERROR: Missing setting Z_SAFE_HOMING_X_POINT #error DEPENDENCY ERROR: Missing setting Z_SAFE_HOMING_X_POINT
#endif #endif
#if DISABLED(Z_SAFE_HOMING_Y_POINT) #if !defined(Z_SAFE_HOMING_Y_POINT)
#error DEPENDENCY ERROR: Missing setting Z_SAFE_HOMING_Y_POINT #error DEPENDENCY ERROR: Missing setting Z_SAFE_HOMING_Y_POINT
#endif #endif
#endif #endif
#endif #endif
#if DISABLED(NUM_SERVOS) #if !defined(NUM_SERVOS)
#error DEPENDENCY ERROR: Missing setting NUM_SERVOS 0 #error DEPENDENCY ERROR: Missing setting NUM_SERVOS 0
#endif #endif
#if NUM_SERVOS > 0 #if NUM_SERVOS > 0
#if DISABLED(X_ENDSTOP_SERVO_NR) #if !defined(X_ENDSTOP_SERVO_NR)
#error DEPENDENCY ERROR: Missing setting X_ENDSTOP_SERVO_NR #error DEPENDENCY ERROR: Missing setting X_ENDSTOP_SERVO_NR
#endif #endif
#if DISABLED(Y_ENDSTOP_SERVO_NR) #if !defined(Y_ENDSTOP_SERVO_NR)
#error DEPENDENCY ERROR: Missing setting Y_ENDSTOP_SERVO_NR #error DEPENDENCY ERROR: Missing setting Y_ENDSTOP_SERVO_NR
#endif #endif
#if DISABLED(Z_ENDSTOP_SERVO_NR) #if !defined(Z_ENDSTOP_SERVO_NR)
#error DEPENDENCY ERROR: Missing setting Z_ENDSTOP_SERVO_NR #error DEPENDENCY ERROR: Missing setting Z_ENDSTOP_SERVO_NR
#endif #endif
#if DISABLED(X_ENDSTOP_SERVO_ANGLES) #if !defined(X_ENDSTOP_SERVO_ANGLES)
#error DEPENDENCY ERROR: Missing setting X_ENDSTOP_SERVO_ANGLES #error DEPENDENCY ERROR: Missing setting X_ENDSTOP_SERVO_ANGLES
#endif #endif
#if DISABLED(Y_ENDSTOP_SERVO_ANGLES) #if !defined(Y_ENDSTOP_SERVO_ANGLES)
#error DEPENDENCY ERROR: Missing setting Y_ENDSTOP_SERVO_ANGLES #error DEPENDENCY ERROR: Missing setting Y_ENDSTOP_SERVO_ANGLES
#endif #endif
#if DISABLED(Z_ENDSTOP_SERVO_ANGLES) #if !defined(Z_ENDSTOP_SERVO_ANGLES)
#error DEPENDENCY ERROR: Missing setting Z_ENDSTOP_SERVO_ANGLES #error DEPENDENCY ERROR: Missing setting Z_ENDSTOP_SERVO_ANGLES
#endif #endif
#if DISABLED(SERVO_DEACTIVATION_DELAY) #if !defined(SERVO_DEACTIVATION_DELAY)
#error DEPENDENCY ERROR: Missing setting SERVO_DEACTIVATION_DELAY #error DEPENDENCY ERROR: Missing setting SERVO_DEACTIVATION_DELAY
#endif #endif
#endif #endif
#if ENABLED(BABYSTEPPING) #if defined(BABYSTEPPING)
#if DISABLED(BABYSTEP_INVERT_Z) #if !defined(BABYSTEP_INVERT_Z)
#error DEPENDENCY ERROR: Missing setting BABYSTEP_INVERT_Z #error DEPENDENCY ERROR: Missing setting BABYSTEP_INVERT_Z
#endif #endif
#if DISABLED(BABYSTEP_Z_MULTIPLICATOR) #if !defined(BABYSTEP_Z_MULTIPLICATOR)
#error DEPENDENCY ERROR: Missing setting BABYSTEP_Z_MULTIPLICATOR #error DEPENDENCY ERROR: Missing setting BABYSTEP_Z_MULTIPLICATOR
#endif #endif
#endif #endif
#if ENABLED(FWRETRACT) #if defined(FWRETRACT)
#if DISABLED(MIN_RETRACT) #if !defined(MIN_RETRACT)
#error DEPENDENCY ERROR: Missing setting MIN_RETRACT #error DEPENDENCY ERROR: Missing setting MIN_RETRACT
#endif #endif
#if DISABLED(RETRACT_LENGTH) #if !defined(RETRACT_LENGTH)
#error DEPENDENCY ERROR: Missing setting RETRACT_LENGTH #error DEPENDENCY ERROR: Missing setting RETRACT_LENGTH
#endif #endif
#if DISABLED(RETRACT_LENGTH_SWAP) #if !defined(RETRACT_LENGTH_SWAP)
#error DEPENDENCY ERROR: Missing setting RETRACT_LENGTH_SWAP #error DEPENDENCY ERROR: Missing setting RETRACT_LENGTH_SWAP
#endif #endif
#if DISABLED(RETRACT_FEEDRATE) #if !defined(RETRACT_FEEDRATE)
#error DEPENDENCY ERROR: Missing setting RETRACT_FEEDRATE #error DEPENDENCY ERROR: Missing setting RETRACT_FEEDRATE
#endif #endif
#if DISABLED(RETRACT_ZLIFT) #if !defined(RETRACT_ZLIFT)
#error DEPENDENCY ERROR: Missing setting RETRACT_ZLIFT #error DEPENDENCY ERROR: Missing setting RETRACT_ZLIFT
#endif #endif
#if DISABLED(RETRACT_RECOVER_LENGTH) #if !defined(RETRACT_RECOVER_LENGTH)
#error DEPENDENCY ERROR: Missing setting RETRACT_RECOVER_LENGTH #error DEPENDENCY ERROR: Missing setting RETRACT_RECOVER_LENGTH
#endif #endif
#if DISABLED(RETRACT_RECOVER_LENGTH_SWAP) #if !defined(RETRACT_RECOVER_LENGTH_SWAP)
#error DEPENDENCY ERROR: Missing setting RETRACT_RECOVER_LENGTH_SWAP #error DEPENDENCY ERROR: Missing setting RETRACT_RECOVER_LENGTH_SWAP
#endif #endif
#if DISABLED(RETRACT_RECOVER_FEEDRATE) #if !defined(RETRACT_RECOVER_FEEDRATE)
#error DEPENDENCY ERROR: Missing setting RETRACT_RECOVER_FEEDRATE #error DEPENDENCY ERROR: Missing setting RETRACT_RECOVER_FEEDRATE
#endif #endif
#endif #endif
#if ENABLED(DUAL_X_CARRIAGE) #if defined(DUAL_X_CARRIAGE)
#if DISABLED(X2_MIN_POS) #if !defined(X2_MIN_POS)
#error DEPENDENCY ERROR: Missing setting X2_MIN_POS #error DEPENDENCY ERROR: Missing setting X2_MIN_POS
#endif #endif
#if DISABLED(X2_MAX_POS) #if !defined(X2_MAX_POS)
#error DEPENDENCY ERROR: Missing setting X2_MAX_POS #error DEPENDENCY ERROR: Missing setting X2_MAX_POS
#endif #endif
#if DISABLED(X2_HOME_DIR) #if !defined(X2_HOME_DIR)
#error DEPENDENCY ERROR: Missing setting X2_HOME_DIR #error DEPENDENCY ERROR: Missing setting X2_HOME_DIR
#endif #endif
#if DISABLED(X2_HOME_POS) #if !defined(X2_HOME_POS)
#error DEPENDENCY ERROR: Missing setting X2_HOME_POS #error DEPENDENCY ERROR: Missing setting X2_HOME_POS
#endif #endif
#if DISABLED(DEFAULT_DUAL_X_CARRIAGE_MODE) #if !defined(DEFAULT_DUAL_X_CARRIAGE_MODE)
#error DEPENDENCY ERROR: Missing setting DEFAULT_DUAL_X_CARRIAGE_MODE #error DEPENDENCY ERROR: Missing setting DEFAULT_DUAL_X_CARRIAGE_MODE
#endif #endif
#if DISABLED(TOOLCHANGE_PARK_ZLIFT) #if !defined(TOOLCHANGE_PARK_ZLIFT)
#error DEPENDENCY ERROR: Missing setting TOOLCHANGE_PARK_ZLIFT #error DEPENDENCY ERROR: Missing setting TOOLCHANGE_PARK_ZLIFT
#endif #endif
#if DISABLED(TOOLCHANGE_UNPARK_ZLIFT) #if !defined(TOOLCHANGE_UNPARK_ZLIFT)
#error DEPENDENCY ERROR: Missing setting TOOLCHANGE_UNPARK_ZLIFT #error DEPENDENCY ERROR: Missing setting TOOLCHANGE_UNPARK_ZLIFT
#endif #endif
#if DISABLED(DEFAULT_DUPLICATION_X_OFFSET) #if !defined(DEFAULT_DUPLICATION_X_OFFSET)
#error DEPENDENCY ERROR: Missing setting DEFAULT_DUPLICATION_X_OFFSET #error DEPENDENCY ERROR: Missing setting DEFAULT_DUPLICATION_X_OFFSET
#endif #endif
#endif #endif
#if ENABLED(Y_DUAL_STEPPER_DRIVERS) #if defined(Y_DUAL_STEPPER_DRIVERS)
#if DISABLED(INVERT_Y2_VS_Y_DIR) #if !defined(INVERT_Y2_VS_Y_DIR)
#error DEPENDENCY ERROR: Missing setting INVERT_Y2_VS_Y_DIR #error DEPENDENCY ERROR: Missing setting INVERT_Y2_VS_Y_DIR
#endif #endif
#endif #endif
//sensors //sensors
#if ENABLED(FILAMENT_SENSOR) #if defined(FILAMENT_SENSOR)
#if DISABLED(FILAMENT_SENSOR_EXTRUDER_NUM) #if !defined(FILAMENT_SENSOR_EXTRUDER_NUM)
#error DEPENDENCY ERROR: Missing setting FILAMENT_SENSOR_EXTRUDER_NUM #error DEPENDENCY ERROR: Missing setting FILAMENT_SENSOR_EXTRUDER_NUM
#endif #endif
#if DISABLED(MEASUREMENT_DELAY_CM) #if !defined(MEASUREMENT_DELAY_CM)
#error DEPENDENCY ERROR: Missing setting MEASUREMENT_DELAY_CM #error DEPENDENCY ERROR: Missing setting MEASUREMENT_DELAY_CM
#endif #endif
#if DISABLED(DEFAULT_NOMINAL_FILAMENT_DIA) #if !defined(DEFAULT_NOMINAL_FILAMENT_DIA)
#error DEPENDENCY ERROR: Missing setting DEFAULT_NOMINAL_FILAMENT_DIA #error DEPENDENCY ERROR: Missing setting DEFAULT_NOMINAL_FILAMENT_DIA
#endif #endif
#if DISABLED(MEASURED_UPPER_LIMIT) #if !defined(MEASURED_UPPER_LIMIT)
#error DEPENDENCY ERROR: Missing setting MEASURED_UPPER_LIMIT #error DEPENDENCY ERROR: Missing setting MEASURED_UPPER_LIMIT
#endif #endif
#if DISABLED(MEASURED_LOWER_LIMIT) #if !defined(MEASURED_LOWER_LIMIT)
#error DEPENDENCY ERROR: Missing setting MEASURED_LOWER_LIMIT #error DEPENDENCY ERROR: Missing setting MEASURED_LOWER_LIMIT
#endif #endif
#if DISABLED(MAX_MEASUREMENT_DELAY) #if !defined(MAX_MEASUREMENT_DELAY)
#error DEPENDENCY ERROR: Missing setting MAX_MEASUREMENT_DELAY #error DEPENDENCY ERROR: Missing setting MAX_MEASUREMENT_DELAY
#endif #endif
#if DISABLED(DEFAULT_MEASURED_FILAMENT_DIA) #if !defined(DEFAULT_MEASURED_FILAMENT_DIA)
#error DEPENDENCY ERROR: Missing setting DEFAULT_MEASURED_FILAMENT_DIA #error DEPENDENCY ERROR: Missing setting DEFAULT_MEASURED_FILAMENT_DIA
#endif #endif
#endif #endif
#if ENABLED(FILAMENT_RUNOUT_SENSOR) #if defined(FILAMENT_RUNOUT_SENSOR)
#if DISABLED(FILRUNOUT_PIN_INVERTING) #if !defined(FILRUNOUT_PIN_INVERTING)
#error DEPENDENCY ERROR: Missing setting FILRUNOUT_PIN_INVERTING #error DEPENDENCY ERROR: Missing setting FILRUNOUT_PIN_INVERTING
#endif #endif
#if DISABLED(ENDSTOPPULLUP_FIL_RUNOUT) #if !defined(ENDSTOPPULLUP_FIL_RUNOUT)
#error DEPENDENCY ERROR: Missing setting ENDSTOPPULLUP_FIL_RUNOUT #error DEPENDENCY ERROR: Missing setting ENDSTOPPULLUP_FIL_RUNOUT
#endif #endif
#if DISABLED(FILAMENT_RUNOUT_SCRIPT) #if !defined(FILAMENT_RUNOUT_SCRIPT)
#error DEPENDENCY ERROR: Missing setting FILAMENT_RUNOUT_SCRIPT #error DEPENDENCY ERROR: Missing setting FILAMENT_RUNOUT_SCRIPT
#endif #endif
#endif #endif
#if ENABLED(POWER_CONSUMPTION) #if defined(POWER_CONSUMPTION)
#if DISABLED(POWER_VOLTAGE) #if !defined(POWER_VOLTAGE)
#error DEPENDENCY ERROR: Missing setting POWER_VOLTAGE #error DEPENDENCY ERROR: Missing setting POWER_VOLTAGE
#endif #endif
#if DISABLED(POWER_SENSITIVITY) #if !defined(POWER_SENSITIVITY)
#error DEPENDENCY ERROR: Missing setting POWER_SENSITIVITY #error DEPENDENCY ERROR: Missing setting POWER_SENSITIVITY
#endif #endif
#if DISABLED(POWER_OFFSET) #if !defined(POWER_OFFSET)
#error DEPENDENCY ERROR: Missing setting POWER_OFFSET #error DEPENDENCY ERROR: Missing setting POWER_OFFSET
#endif #endif
#if DISABLED(POWER_ZERO) #if !defined(POWER_ZERO)
#error DEPENDENCY ERROR: Missing setting POWER_ZERO #error DEPENDENCY ERROR: Missing setting POWER_ZERO
#endif #endif
#if DISABLED(POWER_ERROR) #if !defined(POWER_ERROR)
#error DEPENDENCY ERROR: Missing setting POWER_ERROR #error DEPENDENCY ERROR: Missing setting POWER_ERROR
#endif #endif
#if DISABLED(POWER_EFFICIENCY) #if !defined(POWER_EFFICIENCY)
#error DEPENDENCY ERROR: Missing setting POWER_EFFICIENCY #error DEPENDENCY ERROR: Missing setting POWER_EFFICIENCY
#endif #endif
#endif #endif
//addon //addon
#if ENABLED(SDSUPPORT) #if defined(SDSUPPORT)
#if DISABLED(SD_FINISHED_STEPPERRELEASE) #if !defined(SD_FINISHED_STEPPERRELEASE)
#error DEPENDENCY ERROR: Missing setting SD_FINISHED_STEPPERRELEASE #error DEPENDENCY ERROR: Missing setting SD_FINISHED_STEPPERRELEASE
#endif #endif
#if DISABLED(SD_FINISHED_RELEASECOMMAND) #if !defined(SD_FINISHED_RELEASECOMMAND)
#error DEPENDENCY ERROR: Missing setting SD_FINISHED_RELEASECOMMAND #error DEPENDENCY ERROR: Missing setting SD_FINISHED_RELEASECOMMAND
#endif #endif
#if ENABLED(SD_SETTINGS) #if defined(SD_SETTINGS)
#if DISABLED(SD_CFG_SECONDS) #if !defined(SD_CFG_SECONDS)
#error DEPENDENCY ERROR: Missing setting SD_CFG_SECONDS #error DEPENDENCY ERROR: Missing setting SD_CFG_SECONDS
#endif #endif
#if DISABLED(CFG_SD_FILE) #if !defined(CFG_SD_FILE)
#error DEPENDENCY ERROR: Missing setting CFG_SD_FILE #error DEPENDENCY ERROR: Missing setting CFG_SD_FILE
#endif #endif
#if DISABLED(CFG_SD_MAX_KEY_LEN) #if !defined(CFG_SD_MAX_KEY_LEN)
#error DEPENDENCY ERROR: Missing setting CFG_SD_MAX_KEY_LEN #error DEPENDENCY ERROR: Missing setting CFG_SD_MAX_KEY_LEN
#endif #endif
#if DISABLED(CFG_SD_MAX_VALUE_LEN) #if !defined(CFG_SD_MAX_VALUE_LEN)
#error DEPENDENCY ERROR: Missing setting CFG_SD_MAX_VALUE_LEN #error DEPENDENCY ERROR: Missing setting CFG_SD_MAX_VALUE_LEN
#endif #endif
#endif #endif
#endif #endif
#if DISABLED(DISPLAY_CHARSET_HD44780_JAPAN) && DISABLED(DISPLAY_CHARSET_HD44780_WESTERN) && DISABLED(DISPLAY_CHARSET_HD44780_CYRILLIC) #if !defined(DISPLAY_CHARSET_HD44780_JAPAN) && !defined(DISPLAY_CHARSET_HD44780_WESTERN) && !defined(DISPLAY_CHARSET_HD44780_CYRILLIC)
#error DEPENDENCY ERROR: Missing setting DISPLAY_CHARSET_HD44780_JAPAN or DISPLAY_CHARSET_HD44780_WESTERN or DISPLAY_CHARSET_HD44780_CYRILLIC #error DEPENDENCY ERROR: Missing setting DISPLAY_CHARSET_HD44780_JAPAN or DISPLAY_CHARSET_HD44780_WESTERN or DISPLAY_CHARSET_HD44780_CYRILLIC
#endif #endif
#if ENABLED(SHOW_BOOTSCREEN) #if defined(SHOW_BOOTSCREEN)
#if DISABLED(STRING_SPLASH_LINE1) #if !defined(STRING_SPLASH_LINE1)
#error DEPENDENCY ERROR: Missing setting STRING_SPLASH_LINE1 #error DEPENDENCY ERROR: Missing setting STRING_SPLASH_LINE1
#endif #endif
#if DISABLED(SPLASH_SCREEN_DURATION) #if !defined(SPLASH_SCREEN_DURATION)
#error DEPENDENCY ERROR: Missing setting SPLASH_SCREEN_DURATION #error DEPENDENCY ERROR: Missing setting SPLASH_SCREEN_DURATION
#endif #endif
#endif #endif
#if ENABLED(ENCODER_RATE_MULTIPLIER) #if ENABLED(ULTIPANEL)
#if DISABLED(ENCODER_10X_STEPS_PER_SEC) #if defined(ENCODER_RATE_MULTIPLIER)
#if !defined(ENCODER_10X_STEPS_PER_SEC)
#error DEPENDENCY ERROR: Missing setting ENCODER_10X_STEPS_PER_SEC #error DEPENDENCY ERROR: Missing setting ENCODER_10X_STEPS_PER_SEC
#endif #endif
#if DISABLED(ENCODER_100X_STEPS_PER_SEC) #if !defined(ENCODER_100X_STEPS_PER_SEC)
#error DEPENDENCY ERROR: Missing setting ENCODER_100X_STEPS_PER_SEC #error DEPENDENCY ERROR: Missing setting ENCODER_100X_STEPS_PER_SEC
#endif #endif
#endif
#endif #endif
#if MB(ALLIGATOR) #if MB(ALLIGATOR)
#if DISABLED(UI_VOLTAGE_LEVEL) #if !defined(UI_VOLTAGE_LEVEL)
#error DEPENDENCY ERROR: Missing setting UI_VOLTAGE_LEVEL #error DEPENDENCY ERROR: Missing setting UI_VOLTAGE_LEVEL
#endif #endif
#endif #endif
#if ENABLED(REPRAPWORLD_KEYPAD) #if defined(REPRAPWORLD_KEYPAD)
#if DISABLED(REPRAPWORLD_KEYPAD_MOVE_STEP) #if !defined(REPRAPWORLD_KEYPAD_MOVE_STEP)
#error DEPENDENCY ERROR: Missing setting REPRAPWORLD_KEYPAD_MOVE_STEP #error DEPENDENCY ERROR: Missing setting REPRAPWORLD_KEYPAD_MOVE_STEP
#endif #endif
#endif #endif
#if ENABLED(LCD_PROGRESS_BAR) #if ENABLED(ULTIPANEL)
#if DISABLED(PROGRESS_BAR_BAR_TIME) #if defined(LCD_PROGRESS_BAR)
#if !defined(PROGRESS_BAR_BAR_TIME)
#error DEPENDENCY ERROR: Missing setting PROGRESS_BAR_BAR_TIME #error DEPENDENCY ERROR: Missing setting PROGRESS_BAR_BAR_TIME
#endif #endif
#if DISABLED(PROGRESS_BAR_MSG_TIME) #if !defined(PROGRESS_BAR_MSG_TIME)
#error DEPENDENCY ERROR: Missing setting PROGRESS_BAR_MSG_TIME #error DEPENDENCY ERROR: Missing setting PROGRESS_BAR_MSG_TIME
#endif #endif
#if DISABLED(PROGRESS_MSG_EXPIRE) #if !defined(PROGRESS_MSG_EXPIRE)
#error DEPENDENCY ERROR: Missing setting PROGRESS_MSG_EXPIRE #error DEPENDENCY ERROR: Missing setting PROGRESS_MSG_EXPIRE
#endif #endif
#endif
#endif #endif
#if ENABLED(CHDK) #if defined(CHDK)
#if DISABLED(CHDK_DELAY) #if !defined(CHDK_DELAY)
#error DEPENDENCY ERROR: Missing setting CHDK_DELAY #error DEPENDENCY ERROR: Missing setting CHDK_DELAY
#endif #endif
#endif #endif
//adv motion //adv motion
#if ENABLED(DIGIPOT_I2C) #if defined(DIGIPOT_I2C)
#if DISABLED(DIGIPOT_I2C_NUM_CHANNELS) #if !defined(DIGIPOT_I2C_NUM_CHANNELS)
#error DEPENDENCY ERROR: Missing setting DIGIPOT_I2C_NUM_CHANNELS #error DEPENDENCY ERROR: Missing setting DIGIPOT_I2C_NUM_CHANNELS
#endif #endif
#if DISABLED(DIGIPOT_I2C_MOTOR_CURRENTS) #if !defined(DIGIPOT_I2C_MOTOR_CURRENTS)
#error DEPENDENCY ERROR: Missing setting DIGIPOT_I2C_MOTOR_CURRENTS #error DEPENDENCY ERROR: Missing setting DIGIPOT_I2C_MOTOR_CURRENTS
#endif #endif
#endif #endif
#if ENABLED(HAVE_TMCDRIVER) #if defined(HAVE_TMCDRIVER)
#if ENABLED(X_IS_TMC) #if defined(X_IS_TMC)
#if DISABLED(X_MAX_CURRENT) #if !defined(X_MAX_CURRENT)
#error DEPENDENCY ERROR: Missing setting X_MAX_CURRENT #error DEPENDENCY ERROR: Missing setting X_MAX_CURRENT
#endif #endif
#if DISABLED(X_SENSE_RESISTOR) #if !defined(X_SENSE_RESISTOR)
#error DEPENDENCY ERROR: Missing setting X_SENSE_RESISTOR #error DEPENDENCY ERROR: Missing setting X_SENSE_RESISTOR
#endif #endif
#if DISABLED(X_MICROSTEPS) #if !defined(X_MICROSTEPS)
#error DEPENDENCY ERROR: Missing setting X_MICROSTEPS #error DEPENDENCY ERROR: Missing setting X_MICROSTEPS
#endif #endif
#endif #endif
#if ENABLED(X2_IS_TMC) #if defined(X2_IS_TMC)
#if DISABLED(X2_MAX_CURRENT) #if !defined(X2_MAX_CURRENT)
#error DEPENDENCY ERROR: Missing setting X2_MAX_CURRENT #error DEPENDENCY ERROR: Missing setting X2_MAX_CURRENT
#endif #endif
#if DISABLED(X2_SENSE_RESISTOR) #if !defined(X2_SENSE_RESISTOR)
#error DEPENDENCY ERROR: Missing setting X2_SENSE_RESISTOR #error DEPENDENCY ERROR: Missing setting X2_SENSE_RESISTOR
#endif #endif
#if DISABLED(X2_MICROSTEPS) #if !defined(X2_MICROSTEPS)
#error DEPENDENCY ERROR: Missing setting X2_MICROSTEPS #error DEPENDENCY ERROR: Missing setting X2_MICROSTEPS
#endif #endif
#endif #endif
#if ENABLED(Y_IS_TMC) #if defined(Y_IS_TMC)
#if DISABLED(Y_MAX_CURRENT) #if !defined(Y_MAX_CURRENT)
#error DEPENDENCY ERROR: Missing setting Y_MAX_CURRENT #error DEPENDENCY ERROR: Missing setting Y_MAX_CURRENT
#endif #endif
#if DISABLED(Y_SENSE_RESISTOR) #if !defined(Y_SENSE_RESISTOR)
#error DEPENDENCY ERROR: Missing setting Y_SENSE_RESISTOR #error DEPENDENCY ERROR: Missing setting Y_SENSE_RESISTOR
#endif #endif
#if DISABLED(Y_MICROSTEPS) #if !defined(Y_MICROSTEPS)
#error DEPENDENCY ERROR: Missing setting Y_MICROSTEPS #error DEPENDENCY ERROR: Missing setting Y_MICROSTEPS
#endif #endif
#endif #endif
#if ENABLED(Y2_IS_TMC) #if defined(Y2_IS_TMC)
#if DISABLED(Y2_MAX_CURRENT) #if !defined(Y2_MAX_CURRENT)
#error DEPENDENCY ERROR: Missing setting Y2_MAX_CURRENT #error DEPENDENCY ERROR: Missing setting Y2_MAX_CURRENT
#endif #endif
#if DISABLED(Y2_SENSE_RESISTOR) #if !defined(Y2_SENSE_RESISTOR)
#error DEPENDENCY ERROR: Missing setting Y2_SENSE_RESISTOR #error DEPENDENCY ERROR: Missing setting Y2_SENSE_RESISTOR
#endif #endif
#if DISABLED(Y2_MICROSTEPS) #if !defined(Y2_MICROSTEPS)
#error DEPENDENCY ERROR: Missing setting Y2_MICROSTEPS #error DEPENDENCY ERROR: Missing setting Y2_MICROSTEPS
#endif #endif
#endif #endif
#if ENABLED(Z_IS_TMC) #if defined(Z_IS_TMC)
#if DISABLED(Z_MAX_CURRENT) #if !defined(Z_MAX_CURRENT)
#error DEPENDENCY ERROR: Missing setting Z_MAX_CURRENT #error DEPENDENCY ERROR: Missing setting Z_MAX_CURRENT
#endif #endif
#if DISABLED(Z_SENSE_RESISTOR) #if !defined(Z_SENSE_RESISTOR)
#error DEPENDENCY ERROR: Missing setting Z_SENSE_RESISTOR #error DEPENDENCY ERROR: Missing setting Z_SENSE_RESISTOR
#endif #endif
#if DISABLED(Z_MICROSTEPS) #if !defined(Z_MICROSTEPS)
#error DEPENDENCY ERROR: Missing setting Z_MICROSTEPS #error DEPENDENCY ERROR: Missing setting Z_MICROSTEPS
#endif #endif
#endif #endif
#if ENABLED(Z2_IS_TMC) #if defined(Z2_IS_TMC)
#if DISABLED(Z2_MAX_CURRENT) #if !defined(Z2_MAX_CURRENT)
#error DEPENDENCY ERROR: Missing setting Z2_MAX_CURRENT #error DEPENDENCY ERROR: Missing setting Z2_MAX_CURRENT
#endif #endif
#if DISABLED(Z2_SENSE_RESISTOR) #if !defined(Z2_SENSE_RESISTOR)
#error DEPENDENCY ERROR: Missing setting Z2_SENSE_RESISTOR #error DEPENDENCY ERROR: Missing setting Z2_SENSE_RESISTOR
#endif #endif
#if DISABLED(Z2_MICROSTEPS) #if !defined(Z2_MICROSTEPS)
#error DEPENDENCY ERROR: Missing setting Z2_MICROSTEPS #error DEPENDENCY ERROR: Missing setting Z2_MICROSTEPS
#endif #endif
#endif #endif
#if ENABLED(E0_IS_TMC) #if defined(E0_IS_TMC)
#if DISABLED(E0_MAX_CURRENT) #if !defined(E0_MAX_CURRENT)
#error DEPENDENCY ERROR: Missing setting E0_MAX_CURRENT #error DEPENDENCY ERROR: Missing setting E0_MAX_CURRENT
#endif #endif
#if DISABLED(E0_SENSE_RESISTOR) #if !defined(E0_SENSE_RESISTOR)
#error DEPENDENCY ERROR: Missing setting E0_SENSE_RESISTOR #error DEPENDENCY ERROR: Missing setting E0_SENSE_RESISTOR
#endif #endif
#if DISABLED(E0_MICROSTEPS) #if !defined(E0_MICROSTEPS)
#error DEPENDENCY ERROR: Missing setting E0_MICROSTEPS #error DEPENDENCY ERROR: Missing setting E0_MICROSTEPS
#endif #endif
#endif #endif
#if ENABLED(E1_IS_TMC) #if defined(E1_IS_TMC)
#if DISABLED(E1_MAX_CURRENT) #if !defined(E1_MAX_CURRENT)
#error DEPENDENCY ERROR: Missing setting E1_MAX_CURRENT #error DEPENDENCY ERROR: Missing setting E1_MAX_CURRENT
#endif #endif
#if DISABLED(E1_SENSE_RESISTOR) #if !defined(E1_SENSE_RESISTOR)
#error DEPENDENCY ERROR: Missing setting E1_SENSE_RESISTOR #error DEPENDENCY ERROR: Missing setting E1_SENSE_RESISTOR
#endif #endif
#if DISABLED(E1_MICROSTEPS) #if !defined(E1_MICROSTEPS)
#error DEPENDENCY ERROR: Missing setting E1_MICROSTEPS #error DEPENDENCY ERROR: Missing setting E1_MICROSTEPS
#endif #endif
#endif #endif
#if ENABLED(E2_IS_TMC) #if defined(E2_IS_TMC)
#if DISABLED(E2_MAX_CURRENT) #if !defined(E2_MAX_CURRENT)
#error DEPENDENCY ERROR: Missing setting E2_MAX_CURRENT #error DEPENDENCY ERROR: Missing setting E2_MAX_CURRENT
#endif #endif
#if DISABLED(E2_SENSE_RESISTOR) #if !defined(E2_SENSE_RESISTOR)
#error DEPENDENCY ERROR: Missing setting E2_SENSE_RESISTOR #error DEPENDENCY ERROR: Missing setting E2_SENSE_RESISTOR
#endif #endif
#if DISABLED(E2_MICROSTEPS) #if !defined(E2_MICROSTEPS)
#error DEPENDENCY ERROR: Missing setting E2_MICROSTEPS #error DEPENDENCY ERROR: Missing setting E2_MICROSTEPS
#endif #endif
#endif #endif
#if ENABLED(E3_IS_TMC) #if defined(E3_IS_TMC)
#if DISABLED(E3_MAX_CURRENT) #if !defined(E3_MAX_CURRENT)
#error DEPENDENCY ERROR: Missing setting E3_MAX_CURRENT #error DEPENDENCY ERROR: Missing setting E3_MAX_CURRENT
#endif #endif
#if DISABLED(E3_SENSE_RESISTOR) #if !defined(E3_SENSE_RESISTOR)
#error DEPENDENCY ERROR: Missing setting E3_SENSE_RESISTOR #error DEPENDENCY ERROR: Missing setting E3_SENSE_RESISTOR
#endif #endif
#if DISABLED(E3_MICROSTEPS) #if !defined(E3_MICROSTEPS)
#error DEPENDENCY ERROR: Missing setting E3_MICROSTEPS #error DEPENDENCY ERROR: Missing setting E3_MICROSTEPS
#endif #endif
#endif #endif
#endif #endif
#if ENABLED(HAVE_L6470DRIVER) #if defined(HAVE_L6470DRIVER)
#if ENABLED(X_IS_L6470) #if defined(X_IS_L6470)
#if DISABLED(X_MICROSTEPS) #if !defined(X_MICROSTEPS)
#error DEPENDENCY ERROR: Missing setting X_MICROSTEPS #error DEPENDENCY ERROR: Missing setting X_MICROSTEPS
#endif #endif
#if DISABLED(X_K_VAL) #if !defined(X_K_VAL)
#error DEPENDENCY ERROR: Missing setting X_K_VAL #error DEPENDENCY ERROR: Missing setting X_K_VAL
#endif #endif
#if DISABLED(X_OVERCURRENT) #if !defined(X_OVERCURRENT)
#error DEPENDENCY ERROR: Missing setting X_OVERCURRENT #error DEPENDENCY ERROR: Missing setting X_OVERCURRENT
#endif #endif
#if DISABLED(X_STALLCURRENT) #if !defined(X_STALLCURRENT)
#error DEPENDENCY ERROR: Missing setting X_STALLCURRENT #error DEPENDENCY ERROR: Missing setting X_STALLCURRENT
#endif #endif
#endif #endif
#if ENABLED(X2_IS_L6470) #if defined(X2_IS_L6470)
#if DISABLED(X2_MICROSTEPS) #if !defined(X2_MICROSTEPS)
#error DEPENDENCY ERROR: Missing setting X2_MICROSTEPS #error DEPENDENCY ERROR: Missing setting X2_MICROSTEPS
#endif #endif
#if DISABLED(X2_K_VAL) #if !defined(X2_K_VAL)
#error DEPENDENCY ERROR: Missing setting X2_K_VAL #error DEPENDENCY ERROR: Missing setting X2_K_VAL
#endif #endif
#if DISABLED(X2_OVERCURRENT) #if !defined(X2_OVERCURRENT)
#error DEPENDENCY ERROR: Missing setting X2_OVERCURRENT #error DEPENDENCY ERROR: Missing setting X2_OVERCURRENT
#endif #endif
#if DISABLED(X2_STALLCURRENT) #if !defined(X2_STALLCURRENT)
#error DEPENDENCY ERROR: Missing setting X2_STALLCURRENT #error DEPENDENCY ERROR: Missing setting X2_STALLCURRENT
#endif #endif
#endif #endif
#if ENABLED(Y_IS_L6470) #if defined(Y_IS_L6470)
#if DISABLED(Y_MICROSTEPS) #if !defined(Y_MICROSTEPS)
#error DEPENDENCY ERROR: Missing setting Y_MICROSTEPS #error DEPENDENCY ERROR: Missing setting Y_MICROSTEPS
#endif #endif
#if DISABLED(Y_K_VAL) #if !defined(Y_K_VAL)
#error DEPENDENCY ERROR: Missing setting Y_K_VAL #error DEPENDENCY ERROR: Missing setting Y_K_VAL
#endif #endif
#if DISABLED(Y_OVERCURRENT) #if !defined(Y_OVERCURRENT)
#error DEPENDENCY ERROR: Missing setting Y_OVERCURRENT #error DEPENDENCY ERROR: Missing setting Y_OVERCURRENT
#endif #endif
#if DISABLED(Y_STALLCURRENT) #if !defined(Y_STALLCURRENT)
#error DEPENDENCY ERROR: Missing setting Y_STALLCURRENT #error DEPENDENCY ERROR: Missing setting Y_STALLCURRENT
#endif #endif
#endif #endif
#if ENABLED(Y2_IS_L6470) #if defined(Y2_IS_L6470)
#if DISABLED(Y2_MICROSTEPS) #if !defined(Y2_MICROSTEPS)
#error DEPENDENCY ERROR: Missing setting Y2_MICROSTEPS #error DEPENDENCY ERROR: Missing setting Y2_MICROSTEPS
#endif #endif
#if DISABLED(Y2_K_VAL) #if !defined(Y2_K_VAL)
#error DEPENDENCY ERROR: Missing setting Y2_K_VAL #error DEPENDENCY ERROR: Missing setting Y2_K_VAL
#endif #endif
#if DISABLED(Y2_OVERCURRENT) #if !defined(Y2_OVERCURRENT)
#error DEPENDENCY ERROR: Missing setting Y2_OVERCURRENT #error DEPENDENCY ERROR: Missing setting Y2_OVERCURRENT
#endif #endif
#if DISABLED(Y2_STALLCURRENT) #if !defined(Y2_STALLCURRENT)
#error DEPENDENCY ERROR: Missing setting Y2_STALLCURRENT #error DEPENDENCY ERROR: Missing setting Y2_STALLCURRENT
#endif #endif
#endif #endif
#if ENABLED(Z_IS_L6470) #if defined(Z_IS_L6470)
#if DISABLED(Z_MICROSTEPS) #if !defined(Z_MICROSTEPS)
#error DEPENDENCY ERROR: Missing setting Z_MICROSTEPS #error DEPENDENCY ERROR: Missing setting Z_MICROSTEPS
#endif #endif
#if DISABLED(Z_K_VAL) #if !defined(Z_K_VAL)
#error DEPENDENCY ERROR: Missing setting Z_K_VAL #error DEPENDENCY ERROR: Missing setting Z_K_VAL
#endif #endif
#if DISABLED(Z_OVERCURRENT) #if !defined(Z_OVERCURRENT)
#error DEPENDENCY ERROR: Missing setting Z_OVERCURRENT #error DEPENDENCY ERROR: Missing setting Z_OVERCURRENT
#endif #endif
#if DISABLED(Z_STALLCURRENT) #if !defined(Z_STALLCURRENT)
#error DEPENDENCY ERROR: Missing setting Z_STALLCURRENT #error DEPENDENCY ERROR: Missing setting Z_STALLCURRENT
#endif #endif
#endif #endif
#if ENABLED(Z2_IS_L6470) #if defined(Z2_IS_L6470)
#if DISABLED(Z2_MICROSTEPS) #if !defined(Z2_MICROSTEPS)
#error DEPENDENCY ERROR: Missing setting Z2_MICROSTEPS #error DEPENDENCY ERROR: Missing setting Z2_MICROSTEPS
#endif #endif
#if DISABLED(Z2_K_VAL) #if !defined(Z2_K_VAL)
#error DEPENDENCY ERROR: Missing setting Z2_K_VAL #error DEPENDENCY ERROR: Missing setting Z2_K_VAL
#endif #endif
#if DISABLED(Z2_OVERCURRENT) #if !defined(Z2_OVERCURRENT)
#error DEPENDENCY ERROR: Missing setting Z2_OVERCURRENT #error DEPENDENCY ERROR: Missing setting Z2_OVERCURRENT
#endif #endif
#if DISABLED(Z2_STALLCURRENT) #if !defined(Z2_STALLCURRENT)
#error DEPENDENCY ERROR: Missing setting Z2_STALLCURRENT #error DEPENDENCY ERROR: Missing setting Z2_STALLCURRENT
#endif #endif
#endif #endif
#if ENABLED(E0_IS_L6470) #if defined(E0_IS_L6470)
#if DISABLED(E0_MICROSTEPS) #if !defined(E0_MICROSTEPS)
#error DEPENDENCY ERROR: Missing setting E0_MICROSTEPS #error DEPENDENCY ERROR: Missing setting E0_MICROSTEPS
#endif #endif
#if DISABLED(E0_K_VAL) #if !defined(E0_K_VAL)
#error DEPENDENCY ERROR: Missing setting E0_K_VAL #error DEPENDENCY ERROR: Missing setting E0_K_VAL
#endif #endif
#if DISABLED(E0_OVERCURRENT) #if !defined(E0_OVERCURRENT)
#error DEPENDENCY ERROR: Missing setting E0_OVERCURRENT #error DEPENDENCY ERROR: Missing setting E0_OVERCURRENT
#endif #endif
#if DISABLED(E0_STALLCURRENT) #if !defined(E0_STALLCURRENT)
#error DEPENDENCY ERROR: Missing setting E0_STALLCURRENT #error DEPENDENCY ERROR: Missing setting E0_STALLCURRENT
#endif #endif
#endif #endif
#if ENABLED(E1_IS_L6470) #if defined(E1_IS_L6470)
#if DISABLED(E1_MICROSTEPS) #if !defined(E1_MICROSTEPS)
#error DEPENDENCY ERROR: Missing setting E1_MICROSTEPS #error DEPENDENCY ERROR: Missing setting E1_MICROSTEPS
#endif #endif
#if DISABLED(E1_K_VAL) #if !defined(E1_K_VAL)
#error DEPENDENCY ERROR: Missing setting E1_K_VAL #error DEPENDENCY ERROR: Missing setting E1_K_VAL
#endif #endif
#if DISABLED(E1_OVERCURRENT) #if !defined(E1_OVERCURRENT)
#error DEPENDENCY ERROR: Missing setting E1_OVERCURRENT #error DEPENDENCY ERROR: Missing setting E1_OVERCURRENT
#endif #endif
#if DISABLED(E1_STALLCURRENT) #if !defined(E1_STALLCURRENT)
#error DEPENDENCY ERROR: Missing setting E1_STALLCURRENT #error DEPENDENCY ERROR: Missing setting E1_STALLCURRENT
#endif #endif
#endif #endif
#if ENABLED(E2_IS_L6470) #if defined(E2_IS_L6470)
#if DISABLED(E2_MICROSTEPS) #if !defined(E2_MICROSTEPS)
#error DEPENDENCY ERROR: Missing setting E2_MICROSTEPS #error DEPENDENCY ERROR: Missing setting E2_MICROSTEPS
#endif #endif
#if DISABLED(E2_K_VAL) #if !defined(E2_K_VAL)
#error DEPENDENCY ERROR: Missing setting E2_K_VAL #error DEPENDENCY ERROR: Missing setting E2_K_VAL
#endif #endif
#if DISABLED(E2_OVERCURRENT) #if !defined(E2_OVERCURRENT)
#error DEPENDENCY ERROR: Missing setting E2_OVERCURRENT #error DEPENDENCY ERROR: Missing setting E2_OVERCURRENT
#endif #endif
#if DISABLED(E2_STALLCURRENT) #if !defined(E2_STALLCURRENT)
#error DEPENDENCY ERROR: Missing setting E2_STALLCURRENT #error DEPENDENCY ERROR: Missing setting E2_STALLCURRENT
#endif #endif
#endif #endif
#if ENABLED(E3_IS_L6470) #if defined(E3_IS_L6470)
#if DISABLED(E3_MICROSTEPS) #if !defined(E3_MICROSTEPS)
#error DEPENDENCY ERROR: Missing setting E3_MICROSTEPS #error DEPENDENCY ERROR: Missing setting E3_MICROSTEPS
#endif #endif
#if DISABLED(E3_K_VAL) #if !defined(E3_K_VAL)
#error DEPENDENCY ERROR: Missing setting E3_K_VAL #error DEPENDENCY ERROR: Missing setting E3_K_VAL
#endif #endif
#if DISABLED(E3_OVERCURRENT) #if !defined(E3_OVERCURRENT)
#error DEPENDENCY ERROR: Missing setting E3_OVERCURRENT #error DEPENDENCY ERROR: Missing setting E3_OVERCURRENT
#endif #endif
#if DISABLED(E3_STALLCURRENT) #if !defined(E3_STALLCURRENT)
#error DEPENDENCY ERROR: Missing setting E3_STALLCURRENT #error DEPENDENCY ERROR: Missing setting E3_STALLCURRENT
#endif #endif
#endif #endif
#endif #endif
//buffer //buffer
#if DISABLED(BLOCK_BUFFER_SIZE) #if !defined(BLOCK_BUFFER_SIZE)
#error DEPENDENCY ERROR: Missing setting BLOCK_BUFFER_SIZE #error DEPENDENCY ERROR: Missing setting BLOCK_BUFFER_SIZE
#endif #endif
#if DISABLED(MAX_CMD_SIZE) #if !defined(MAX_CMD_SIZE)
#error DEPENDENCY ERROR: Missing setting MAX_CMD_SIZE #error DEPENDENCY ERROR: Missing setting MAX_CMD_SIZE
#endif #endif
#if DISABLED(BUFSIZE) #if !defined(BUFSIZE)
#error DEPENDENCY ERROR: Missing setting BUFSIZE #error DEPENDENCY ERROR: Missing setting BUFSIZE
#endif #endif
#if DISABLED(NUM_POSITON_SLOTS) #if !defined(NUM_POSITON_SLOTS)
#error DEPENDENCY ERROR: Missing setting NUM_POSITON_SLOTS #error DEPENDENCY ERROR: Missing setting NUM_POSITON_SLOTS
#endif #endif
#if DISABLED(DROP_SEGMENTS) #if !defined(DROP_SEGMENTS)
#error DEPENDENCY ERROR: Missing setting DROP_SEGMENTS #error DEPENDENCY ERROR: Missing setting DROP_SEGMENTS
#endif #endif
#if DISABLED(DROP_SEGMENTS) #if !defined(DROP_SEGMENTS)
#error DEPENDENCY ERROR: Missing setting DROP_SEGMENTS #error DEPENDENCY ERROR: Missing setting DROP_SEGMENTS
#endif #endif
#if DISABLED(DEFAULT_MINSEGMENTTIME) #if !defined(DEFAULT_MINSEGMENTTIME)
#error DEPENDENCY ERROR: Missing setting DEFAULT_MINSEGMENTTIME #error DEPENDENCY ERROR: Missing setting DEFAULT_MINSEGMENTTIME
#endif #endif
#if DISABLED(MM_PER_ARC_SEGMENT) #if !defined(MM_PER_ARC_SEGMENT)
#error DEPENDENCY ERROR: Missing setting MM_PER_ARC_SEGMENT #error DEPENDENCY ERROR: Missing setting MM_PER_ARC_SEGMENT
#endif #endif
#if DISABLED(N_ARC_CORRECTION) #if !defined(N_ARC_CORRECTION)
#error DEPENDENCY ERROR: Missing setting N_ARC_CORRECTION #error DEPENDENCY ERROR: Missing setting N_ARC_CORRECTION
#endif #endif
//Machines
#if !defined(X_MIN_ENDSTOP_LOGIC)
#error DEPENDENCY ERROR: Missing setting X_MIN_ENDSTOP_LOGIC
#endif
#if !defined(Y_MIN_ENDSTOP_LOGIC)
#error DEPENDENCY ERROR: Missing setting Y_MIN_ENDSTOP_LOGIC
#endif
#if !defined(Z_MIN_ENDSTOP_LOGIC)
#error DEPENDENCY ERROR: Missing setting Z_MIN_ENDSTOP_LOGIC
#endif
#if !defined(Z2_MIN_ENDSTOP_LOGIC)
#error DEPENDENCY ERROR: Missing setting Z2_MIN_ENDSTOP_LOGIC
#endif
#if !defined(X_MAX_ENDSTOP_LOGIC)
#error DEPENDENCY ERROR: Missing setting X_MAX_ENDSTOP_LOGIC
#endif
#if !defined(Y_MAX_ENDSTOP_LOGIC)
#error DEPENDENCY ERROR: Missing setting Y_MAX_ENDSTOP_LOGIC
#endif
#if !defined(Z_MAX_ENDSTOP_LOGIC)
#error DEPENDENCY ERROR: Missing setting Z_MAX_ENDSTOP_LOGIC
#endif
#if !defined(Z2_MAX_ENDSTOP_LOGIC)
#error DEPENDENCY ERROR: Missing setting Z2_MAX_ENDSTOP_LOGIC
#endif
#if !defined(Z_PROBE_ENDSTOP_LOGIC)
#error DEPENDENCY ERROR: Missing setting Z_PROBE_ENDSTOP_LOGIC
#endif
#if !defined(E_MIN_ENDSTOP_LOGIC)
#error DEPENDENCY ERROR: Missing setting E_MIN_ENDSTOP_LOGIC
#endif
#if !defined(X_HOME_DIR)
#error DEPENDENCY ERROR: Missing setting X_HOME_DIR
#endif
#if !defined(Y_HOME_DIR)
#error DEPENDENCY ERROR: Missing setting Y_HOME_DIR
#endif
#if !defined(Z_HOME_DIR)
#error DEPENDENCY ERROR: Missing setting Z_HOME_DIR
#endif
#if !defined(E_HOME_DIR)
#error DEPENDENCY ERROR: Missing setting E_HOME_DIR
#endif
#if !defined(X_ENABLE_ON)
#error DEPENDENCY ERROR: Missing setting X_ENABLE_ON
#endif
#if !defined(Y_ENABLE_ON)
#error DEPENDENCY ERROR: Missing setting Y_ENABLE_ON
#endif
#if !defined(Z_ENABLE_ON)
#error DEPENDENCY ERROR: Missing setting Z_ENABLE_ON
#endif
#if !defined(E_ENABLE_ON)
#error DEPENDENCY ERROR: Missing setting E_ENABLE_ON
#endif
#if !defined(INVERT_X_STEP_PIN)
#error DEPENDENCY ERROR: Missing setting INVERT_X_STEP_PIN
#endif
#if !defined(INVERT_Y_STEP_PIN)
#error DEPENDENCY ERROR: Missing setting INVERT_Y_STEP_PIN
#endif
#if !defined(INVERT_Z_STEP_PIN)
#error DEPENDENCY ERROR: Missing setting INVERT_Z_STEP_PIN
#endif
#if !defined(INVERT_E_STEP_PIN)
#error DEPENDENCY ERROR: Missing setting INVERT_E_STEP_PIN
#endif
#if !defined(INVERT_X_DIR)
#error DEPENDENCY ERROR: Missing setting INVERT_X_DIR
#endif
#if !defined(INVERT_Y_DIR)
#error DEPENDENCY ERROR: Missing setting INVERT_Y_DIR
#endif
#if !defined(INVERT_Z_DIR)
#error DEPENDENCY ERROR: Missing setting INVERT_Z_DIR
#endif
#if !defined(INVERT_E0_DIR)
#error DEPENDENCY ERROR: Missing setting INVERT_E0_DIR
#endif
#if !defined(INVERT_E1_DIR)
#error DEPENDENCY ERROR: Missing setting INVERT_E1_DIR
#endif
#if !defined(INVERT_E2_DIR)
#error DEPENDENCY ERROR: Missing setting INVERT_E2_DIR
#endif
#if !defined(INVERT_E3_DIR)
#error DEPENDENCY ERROR: Missing setting INVERT_E3_DIR
#endif
#if !defined(DISABLE_X)
#error DEPENDENCY ERROR: Missing setting DISABLE_X
#endif
#if !defined(DISABLE_Y)
#error DEPENDENCY ERROR: Missing setting DISABLE_Y
#endif
#if !defined(DISABLE_Z)
#error DEPENDENCY ERROR: Missing setting DISABLE_Z
#endif
#if !defined(DISABLE_E)
#error DEPENDENCY ERROR: Missing setting DISABLE_E
#endif
#if !defined(DISABLE_INACTIVE_EXTRUDER)
#error DEPENDENCY ERROR: Missing setting DISABLE_INACTIVE_EXTRUDER
#endif
#if !defined(X_MAX_POS)
#error DEPENDENCY ERROR: Missing setting X_MAX_POS
#endif
#if !defined(X_MIN_POS)
#error DEPENDENCY ERROR: Missing setting X_MIN_POS
#endif
#if !defined(Y_MAX_POS)
#error DEPENDENCY ERROR: Missing setting Y_MAX_POS
#endif
#if !defined(Y_MIN_POS)
#error DEPENDENCY ERROR: Missing setting Y_MIN_POS
#endif
#if !defined(Z_MAX_POS)
#error DEPENDENCY ERROR: Missing setting Z_MAX_POS
#endif
#if !defined(Z_MIN_POS)
#error DEPENDENCY ERROR: Missing setting Z_MIN_POS
#endif
#if !defined(E_MIN_POS)
#error DEPENDENCY ERROR: Missing setting E_MIN_POS
#endif
#if !defined(AXIS_RELATIVE_MODES)
#error DEPENDENCY ERROR: Missing setting AXIS_RELATIVE_MODES
#endif
#if !defined(DEFAULT_AXIS_STEPS_PER_UNIT)
#error DEPENDENCY ERROR: Missing setting DEFAULT_AXIS_STEPS_PER_UNIT
#endif
#if ENABLED(ULTIPANEL) && !defined(MANUAL_FEEDRATE)
#error DEPENDENCY ERROR: Missing setting MANUAL_FEEDRATE
#endif
#if !defined(DEFAULT_MINTRAVELFEEDRATE)
#error DEPENDENCY ERROR: Missing setting DEFAULT_MINTRAVELFEEDRATE
#endif
#if !defined(MINIMUM_PLANNER_SPEED)
#error DEPENDENCY ERROR: Missing setting MINIMUM_PLANNER_SPEED
#endif
#if !defined(DEFAULT_MAX_ACCELERATION)
#error DEPENDENCY ERROR: Missing setting DEFAULT_MAX_ACCELERATION
#endif
#if !defined(DEFAULT_RETRACT_ACCELERATION)
#error DEPENDENCY ERROR: Missing setting DEFAULT_RETRACT_ACCELERATION
#endif
#if !defined(DEFAULT_ACCELERATION)
#error DEPENDENCY ERROR: Missing setting DEFAULT_ACCELERATION
#endif
#if !defined(DEFAULT_TRAVEL_ACCELERATION)
#error DEPENDENCY ERROR: Missing setting DEFAULT_TRAVEL_ACCELERATION
#endif
#if !defined(DEFAULT_XYJERK)
#error DEPENDENCY ERROR: Missing setting DEFAULT_XYJERK
#endif
#if !defined(DEFAULT_ZJERK)
#error DEPENDENCY ERROR: Missing setting DEFAULT_ZJERK
#endif
#if !defined(HOMING_FEEDRATE)
#error DEPENDENCY ERROR: Missing setting HOMING_FEEDRATE
#endif
#if !defined(X_HOME_BUMP_MM)
#error DEPENDENCY ERROR: Missing setting X_HOME_BUMP_MM
#endif
#if !defined(Y_HOME_BUMP_MM)
#error DEPENDENCY ERROR: Missing setting Y_HOME_BUMP_MM
#endif
#if !defined(Z_HOME_BUMP_MM)
#error DEPENDENCY ERROR: Missing setting Z_HOME_BUMP_MM
#endif
#if !defined(HOMING_BUMP_DIVISOR)
#error DEPENDENCY ERROR: Missing setting HOMING_BUMP_DIVISOR
#endif
#if !defined(LEFT_PROBE_BED_POSITION)
#error DEPENDENCY ERROR: Missing setting LEFT_PROBE_BED_POSITION
#endif
#if !defined(RIGHT_PROBE_BED_POSITION)
#error DEPENDENCY ERROR: Missing setting RIGHT_PROBE_BED_POSITION
#endif
#if !defined(FRONT_PROBE_BED_POSITION)
#error DEPENDENCY ERROR: Missing setting FRONT_PROBE_BED_POSITION
#endif
#if !MECH(DELTA)
#if !defined(XY_TRAVEL_SPEED)
#error DEPENDENCY ERROR: Missing setting XY_TRAVEL_SPEED
#endif
#endif
#if ENABLED(MANUAL_HOME_POSITIONS)
#if !defined(MANUAL_X_HOME_POS)
#error DEPENDENCY ERROR: Missing setting MANUAL_X_HOME_POS
#endif
#if !defined(MANUAL_Y_HOME_POS)
#error DEPENDENCY ERROR: Missing setting MANUAL_Y_HOME_POS
#endif
#if !defined(MANUAL_Z_HOME_POS)
#error DEPENDENCY ERROR: Missing setting MANUAL_Z_HOME_POS
#endif
#endif
#if MECH(COREXY) || MECH(COREXZ)
#if !defined(COREX_YZ_FACTOR)
#error DEPENDENCY ERROR: Missing setting COREX_YZ_FACTOR
#endif
#endif
#if MECH(SCARA)
#if !defined(LINKAGE_1)
#error DEPENDENCY ERROR: Missing setting LINKAGE_1
#endif
#if !defined(LINKAGE_2)
#error DEPENDENCY ERROR: Missing setting LINKAGE_2
#endif
#if !defined(SCARA_OFFSET_X)
#error DEPENDENCY ERROR: Missing setting SCARA_OFFSET_X
#endif
#if !defined(SCARA_OFFSET_Y)
#error DEPENDENCY ERROR: Missing setting SCARA_OFFSET_Y
#endif
#if !defined(SCARA_RAD2DEG)
#error DEPENDENCY ERROR: Missing setting SCARA_RAD2DEG
#endif
#if !defined(THETA_HOMING_OFFSET)
#error DEPENDENCY ERROR: Missing setting THETA_HOMING_OFFSET
#endif
#if !defined(PSI_HOMING_OFFSET)
#error DEPENDENCY ERROR: Missing setting PSI_HOMING_OFFSET
#endif
#endif
#if MECH(DELTA)
#if !defined(DEFAULT_DELTA_DIAGONAL_ROD)
#error DEPENDENCY ERROR: Missing setting DEFAULT_DELTA_DIAGONAL_ROD
#endif
#if !defined(DELTA_SMOOTH_ROD_OFFSET)
#error DEPENDENCY ERROR: Missing setting DELTA_SMOOTH_ROD_OFFSET
#endif
#if !defined(DELTA_CARRIAGE_OFFSET)
#error DEPENDENCY ERROR: Missing setting DELTA_CARRIAGE_OFFSET
#endif
#if !defined(PRINTER_RADIUS)
#error DEPENDENCY ERROR: Missing setting PRINTER_RADIUS
#endif
#if !defined(DEFAULT_DELTA_RADIUS)
#error DEPENDENCY ERROR: Missing setting DEFAULT_DELTA_RADIUS
#endif
#if !defined(AUTOCAL_TRAVELRATE)
#error DEPENDENCY ERROR: Missing setting AUTOCAL_TRAVELRATE
#endif
#if !defined(AUTOCAL_PROBERATE)
#error DEPENDENCY ERROR: Missing setting AUTOCAL_PROBERATE
#endif
#if !defined(AUTOCALIBRATION_PRECISION)
#error DEPENDENCY ERROR: Missing setting AUTOCALIBRATION_PRECISION
#endif
#if !defined(TOWER_A_ENDSTOP_ADJ)
#error DEPENDENCY ERROR: Missing setting TOWER_A_ENDSTOP_ADJ
#endif
#if !defined(TOWER_B_ENDSTOP_ADJ)
#error DEPENDENCY ERROR: Missing setting TOWER_B_ENDSTOP_ADJ
#endif
#if !defined(TOWER_C_ENDSTOP_ADJ)
#error DEPENDENCY ERROR: Missing setting TOWER_C_ENDSTOP_ADJ
#endif
#if !defined(TOWER_A_POSITION_ADJ)
#error DEPENDENCY ERROR: Missing setting TOWER_A_POSITION_ADJ
#endif
#if !defined(TOWER_B_POSITION_ADJ)
#error DEPENDENCY ERROR: Missing setting TOWER_B_POSITION_ADJ
#endif
#if !defined(TOWER_C_POSITION_ADJ)
#error DEPENDENCY ERROR: Missing setting TOWER_C_POSITION_ADJ
#endif
#if !defined(TOWER_A_RADIUS_ADJ)
#error DEPENDENCY ERROR: Missing setting TOWER_A_RADIUS_ADJ
#endif
#if !defined(TOWER_B_RADIUS_ADJ)
#error DEPENDENCY ERROR: Missing setting TOWER_B_RADIUS_ADJ
#endif
#if !defined(TOWER_C_RADIUS_ADJ)
#error DEPENDENCY ERROR: Missing setting TOWER_C_RADIUS_ADJ
#endif
#if !defined(TOWER_A_DIAGROD_ADJ)
#error DEPENDENCY ERROR: Missing setting TOWER_A_DIAGROD_ADJ
#endif
#if !defined(TOWER_B_DIAGROD_ADJ)
#error DEPENDENCY ERROR: Missing setting TOWER_B_DIAGROD_ADJ
#endif
#if !defined(TOWER_C_DIAGROD_ADJ)
#error DEPENDENCY ERROR: Missing setting TOWER_C_DIAGROD_ADJ
#endif
#if !defined(Z_PROBE_OFFSET)
#error DEPENDENCY ERROR: Missing setting Z_PROBE_OFFSET
#endif
#if !defined(Z_PROBE_DEPLOY_START_LOCATION)
#error DEPENDENCY ERROR: Missing setting Z_PROBE_DEPLOY_START_LOCATION
#endif
#if !defined(Z_PROBE_DEPLOY_END_LOCATION)
#error DEPENDENCY ERROR: Missing setting Z_PROBE_DEPLOY_END_LOCATION
#endif
#if !defined(Z_PROBE_RETRACT_START_LOCATION)
#error DEPENDENCY ERROR: Missing setting Z_PROBE_RETRACT_START_LOCATION
#endif
#if !defined(Z_PROBE_RETRACT_END_LOCATION)
#error DEPENDENCY ERROR: Missing setting Z_PROBE_RETRACT_END_LOCATION
#endif
#if !defined(Z_RAISE_BETWEEN_PROBINGS)
#error DEPENDENCY ERROR: Missing setting Z_RAISE_BETWEEN_PROBINGS
#endif
#if !defined(AUTO_BED_LEVELING_GRID_POINTS)
#error DEPENDENCY ERROR: Missing setting AUTO_BED_LEVELING_GRID_POINTS
#endif
#endif
#endif #endif
\ No newline at end of file
...@@ -5217,12 +5217,6 @@ DaveX plan for Teensylu/printrboard-type pinouts (ref teensylu & sprinter) for a ...@@ -5217,12 +5217,6 @@ DaveX plan for Teensylu/printrboard-type pinouts (ref teensylu & sprinter) for a
#endif #endif
/****************************************************************************************/ /****************************************************************************************/
/****************************************************************************************
************************************* FEATURE *******************************************
****************************************************************************************/
#if HOTENDS == 1 #if HOTENDS == 1
#undef ORIG_HEATER_1_PIN #undef ORIG_HEATER_1_PIN
#undef ORIG_HEATER_2_PIN #undef ORIG_HEATER_2_PIN
...@@ -5252,67 +5246,9 @@ DaveX plan for Teensylu/printrboard-type pinouts (ref teensylu & sprinter) for a ...@@ -5252,67 +5246,9 @@ DaveX plan for Teensylu/printrboard-type pinouts (ref teensylu & sprinter) for a
#define ORIG_TEMP_3_PIN -1 #define ORIG_TEMP_3_PIN -1
#endif #endif
#if ENABLED(MKR4)
#if (EXTRUDERS == 2) && (DRIVER_EXTRUDERS == 1) // Use this for one driver and two extruder
#define E0E1_CHOICE_PIN 5
#elif (EXTRUDERS == 3) && (DRIVER_EXTRUDERS == 1) // Use this for one driver and 3 extruder
#define E0E1_CHOICE_PIN 5
#define E0E2_CHOICE_PIN 6
#elif (EXTRUDERS == 4) && (DRIVER_EXTRUDERS == 1) // Use this for one driver and 4 extruder
#define E0E1_CHOICE_PIN 4
#define E0E2_CHOICE_PIN 5
#define E0E3_CHOICE_PIN 6
#elif (EXTRUDERS == 3) && (DRIVER_EXTRUDERS == 2) // Use this for two driver and 3 extruder
#define E0E2_CHOICE_PIN 5
#elif (EXTRUDERS == 4) && (DRIVER_EXTRUDERS == 2) // Use this for two driver and 4 extruder
#define E0E2_CHOICE_PIN 5
#define E1E3_CHOICE_PIN 6
#endif //EXTRUDERS
#endif //MKR4
#if ENABLED(NPR2)
#define E_MIN_PIN -1
#endif
#if ENABLED(LASERBEAM)
#define LASER_PWR_PIN 41
#define LASER_TTL_PIN 42
#endif
#if ENABLED(FILAMENT_RUNOUT_SENSOR)
#define FILRUNOUT_PIN -1
#endif
#if ENABLED(FILAMENT_SENSOR)
#define FILWIDTH_PIN -1 // ANALOG NUMBERING
#endif
#if ENABLED(POWER_CONSUMPTION)
#define POWER_CONSUMPTION_PIN -1 // ANALOG NUMBERING
#endif
#if ENABLED(PHOTOGRAPH)
#define PHOTOGRAPH_PIN -1
#endif
#if ENABLED(CHDK)
#define CHDK_PIN -1
#endif
#if ENABLED(CONTROLLERFAN)
#define CONTROLLERFAN_PIN -1
#endif
#if ENABLED(EXTRUDER_AUTO_FAN)
#define EXTRUDER_0_AUTO_FAN_PIN -1
#define EXTRUDER_1_AUTO_FAN_PIN -1
#define EXTRUDER_2_AUTO_FAN_PIN -1
#define EXTRUDER_3_AUTO_FAN_PIN -1
#endif
/****************************************************************************************/ /****************************************************************************************/
#include "Configuration_Pins.h"
/****************************************************************************************/
#include "pins2tool.h"
//List of pins which to ignore when asked to change by gcode, 0 and 1 are RX and TX, do not mess with those! //List of pins which to ignore when asked to change by gcode, 0 and 1 are RX and TX, do not mess with those!
#define _E0_PINS E0_STEP_PIN, E0_DIR_PIN, E0_ENABLE_PIN, HEATER_0_PIN, analogInputToDigitalPin(TEMP_0_PIN), #define _E0_PINS E0_STEP_PIN, E0_DIR_PIN, E0_ENABLE_PIN, HEATER_0_PIN, analogInputToDigitalPin(TEMP_0_PIN),
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment