Skip to content

Commit 4f65466

Browse files
sargonphinthinkyhead
authored andcommitted
🔧 HYBRID_THRESHOLD sanity checks (MarlinFirmware#26681)
1 parent 9b31193 commit 4f65466

File tree

1 file changed

+52
-3
lines changed

1 file changed

+52
-3
lines changed

Marlin/src/inc/SanityCheck.h

+52-3
Original file line numberDiff line numberDiff line change
@@ -3348,10 +3348,59 @@ static_assert(NUM_SERVOS <= NUM_SERVO_PLUGS, "NUM_SERVOS (or some servo index) i
33483348
#error "MARKFORGED requires both X and Y to use sensorless homing if either one does."
33493349
#endif
33503350

3351+
// TMC Hybrid Threshold
3352+
#if ENABLED(HYBRID_THRESHOLD)
3353+
#if !STEALTHCHOP_ENABLED
3354+
#error "Enable STEALTHCHOP_(XY|Z|E) to use HYBRID_THRESHOLD."
3355+
#elif defined(X_HYBRID_THRESHOLD) && X_HYBRID_THRESHOLD == 0
3356+
#error "X_HYBRID_THRESHOLD must be greater than 0."
3357+
#elif defined(X2_HYBRID_THRESHOLD) && X2_HYBRID_THRESHOLD == 0
3358+
#error "X2_HYBRID_THRESHOLD must be greater than 0."
3359+
#elif defined(Y_HYBRID_THRESHOLD) && Y_HYBRID_THRESHOLD == 0
3360+
#error "Y_HYBRID_THRESHOLD must be greater than 0."
3361+
#elif defined(Y2_HYBRID_THRESHOLD) && Y2_HYBRID_THRESHOLD == 0
3362+
#error "Y2_HYBRID_THRESHOLD must be greater than 0."
3363+
#elif defined(Z_HYBRID_THRESHOLD) && Z_HYBRID_THRESHOLD == 0
3364+
#error "Z_HYBRID_THRESHOLD must be greater than 0."
3365+
#elif defined(Z2_HYBRID_THRESHOLD) && Z2_HYBRID_THRESHOLD == 0
3366+
#error "Z2_HYBRID_THRESHOLD must be greater than 0."
3367+
#elif defined(Z3_HYBRID_THRESHOLD) && Z3_HYBRID_THRESHOLD == 0
3368+
#error "Z3_HYBRID_THRESHOLD must be greater than 0."
3369+
#elif defined(Z4_HYBRID_THRESHOLD) && Z4_HYBRID_THRESHOLD == 0
3370+
#error "Z4_HYBRID_THRESHOLD must be greater than 0."
3371+
#elif defined(I_HYBRID_THRESHOLD) && I_HYBRID_THRESHOLD == 0
3372+
#error "I_HYBRID_THRESHOLD must be greater than 0."
3373+
#elif defined(J_HYBRID_THRESHOLD) && J_HYBRID_THRESHOLD == 0
3374+
#error "J_HYBRID_THRESHOLD must be greater than 0."
3375+
#elif defined(K_HYBRID_THRESHOLD) && K_HYBRID_THRESHOLD == 0
3376+
#error "K_HYBRID_THRESHOLD must be greater than 0."
3377+
#elif defined(U_HYBRID_THRESHOLD) && U_HYBRID_THRESHOLD == 0
3378+
#error "U_HYBRID_THRESHOLD must be greater than 0."
3379+
#elif defined(V_HYBRID_THRESHOLD) && V_HYBRID_THRESHOLD == 0
3380+
#error "V_HYBRID_THRESHOLD must be greater than 0."
3381+
#elif defined(W_HYBRID_THRESHOLD) && W_HYBRID_THRESHOLD == 0
3382+
#error "W_HYBRID_THRESHOLD must be greater than 0."
3383+
#elif defined(E0_HYBRID_THRESHOLD) && E0_HYBRID_THRESHOLD == 0
3384+
#error "E0_HYBRID_THRESHOLD must be greater than 0."
3385+
#elif defined(E1_HYBRID_THRESHOLD) && E1_HYBRID_THRESHOLD == 0
3386+
#error "E1_HYBRID_THRESHOLD must be greater than 0."
3387+
#elif defined(E2_HYBRID_THRESHOLD) && E2_HYBRID_THRESHOLD == 0
3388+
#error "E2_HYBRID_THRESHOLD must be greater than 0."
3389+
#elif defined(E3_HYBRID_THRESHOLD) && E3_HYBRID_THRESHOLD == 0
3390+
#error "E3_HYBRID_THRESHOLD must be greater than 0."
3391+
#elif defined(E4_HYBRID_THRESHOLD) && E4_HYBRID_THRESHOLD == 0
3392+
#error "E4_HYBRID_THRESHOLD must be greater than 0."
3393+
#elif defined(E5_HYBRID_THRESHOLD) && E5_HYBRID_THRESHOLD == 0
3394+
#error "E5_HYBRID_THRESHOLD must be greater than 0."
3395+
#elif defined(E6_HYBRID_THRESHOLD) && E6_HYBRID_THRESHOLD == 0
3396+
#error "E6_HYBRID_THRESHOLD must be greater than 0."
3397+
#elif defined(E7_HYBRID_THRESHOLD) && E7_HYBRID_THRESHOLD == 0
3398+
#error "E7_HYBRID_THRESHOLD must be greater than 0."
3399+
#endif
3400+
#endif // HYBRID_THRESHOLD
3401+
33513402
// Other TMC feature requirements
3352-
#if ENABLED(HYBRID_THRESHOLD) && !STEALTHCHOP_ENABLED
3353-
#error "Enable STEALTHCHOP_(XY|Z|E) to use HYBRID_THRESHOLD."
3354-
#elif ENABLED(SENSORLESS_HOMING) && !HAS_STALLGUARD
3403+
#if ENABLED(SENSORLESS_HOMING) && !HAS_STALLGUARD
33553404
#error "SENSORLESS_HOMING requires TMC2130, TMC2160, TMC2209, TMC2660, or TMC5160 stepper drivers."
33563405
#elif ENABLED(SENSORLESS_PROBING) && !HAS_STALLGUARD
33573406
#error "SENSORLESS_PROBING requires TMC2130, TMC2160, TMC2209, TMC2660, or TMC5160 stepper drivers."

0 commit comments

Comments
 (0)