Skip to content

Commit 258a2ed

Browse files
committed
🎨 Apply _TERN where possible
1 parent 98dcb9e commit 258a2ed

File tree

5 files changed

+57
-158
lines changed

5 files changed

+57
-158
lines changed

Marlin/src/gcode/calibrate/G28.cpp

+11-17
Original file line numberDiff line numberDiff line change
@@ -82,15 +82,13 @@
8282

8383
#if ENABLED(SENSORLESS_HOMING)
8484
sensorless_t stealth_states {
85-
LINEAR_AXIS_LIST(tmc_enable_stallguard(stepperX), tmc_enable_stallguard(stepperY), false, false, false, false)
86-
, false
87-
#if AXIS_HAS_STALLGUARD(X2)
88-
|| tmc_enable_stallguard(stepperX2)
89-
#endif
90-
, false
91-
#if AXIS_HAS_STALLGUARD(Y2)
92-
|| tmc_enable_stallguard(stepperY2)
93-
#endif
85+
LINEAR_AXIS_LIST(
86+
TERN0(X_SENSORLESS, tmc_enable_stallguard(stepperX)),
87+
TERN0(Y_SENSORLESS, tmc_enable_stallguard(stepperY)),
88+
false, false, false, false
89+
)
90+
, TERN0(X2_SENSORLESS, tmc_enable_stallguard(stepperX2))
91+
, TERN0(Y2_SENSORLESS, tmc_enable_stallguard(stepperY2))
9492
};
9593
#endif
9694

@@ -101,14 +99,10 @@
10199
current_position.set(0.0, 0.0);
102100

103101
#if ENABLED(SENSORLESS_HOMING) && DISABLED(ENDSTOPS_ALWAYS_ON_DEFAULT)
104-
tmc_disable_stallguard(stepperX, stealth_states.x);
105-
tmc_disable_stallguard(stepperY, stealth_states.y);
106-
#if AXIS_HAS_STALLGUARD(X2)
107-
tmc_disable_stallguard(stepperX2, stealth_states.x2);
108-
#endif
109-
#if AXIS_HAS_STALLGUARD(Y2)
110-
tmc_disable_stallguard(stepperY2, stealth_states.y2);
111-
#endif
102+
TERN_(X_SENSORLESS, tmc_disable_stallguard(stepperX, stealth_states.x));
103+
TERN_(X2_SENSORLESS, tmc_disable_stallguard(stepperX2, stealth_states.x2));
104+
TERN_(Y_SENSORLESS, tmc_disable_stallguard(stepperY, stealth_states.y));
105+
TERN_(Y2_SENSORLESS, tmc_disable_stallguard(stepperY2, stealth_states.y2));
112106
#endif
113107
}
114108

Marlin/src/gcode/feature/trinamic/M911-M914.cpp

+22-66
Original file line numberDiff line numberDiff line change
@@ -457,92 +457,48 @@
457457
switch (i) {
458458
#if X_SENSORLESS
459459
case X_AXIS:
460-
#if AXIS_HAS_STALLGUARD(X)
461-
if (index < 2) stepperX.homing_threshold(value);
462-
#endif
463-
#if AXIS_HAS_STALLGUARD(X2)
464-
if (!(index & 1)) stepperX2.homing_threshold(value);
465-
#endif
460+
if (index < 2) stepperX.homing_threshold(value);
461+
TERN_(X2_SENSORLESS, if (!(index & 1)) stepperX2.homing_threshold(value));
466462
break;
467463
#endif
468464
#if Y_SENSORLESS
469465
case Y_AXIS:
470-
#if AXIS_HAS_STALLGUARD(Y)
471-
if (index < 2) stepperY.homing_threshold(value);
472-
#endif
473-
#if AXIS_HAS_STALLGUARD(Y2)
474-
if (!(index & 1)) stepperY2.homing_threshold(value);
475-
#endif
466+
if (index < 2) stepperY.homing_threshold(value);
467+
TERN_(Y2_SENSORLESS, if (!(index & 1)) stepperY2.homing_threshold(value));
476468
break;
477469
#endif
478470
#if Z_SENSORLESS
479471
case Z_AXIS:
480-
#if AXIS_HAS_STALLGUARD(Z)
481-
if (index < 2) stepperZ.homing_threshold(value);
482-
#endif
483-
#if AXIS_HAS_STALLGUARD(Z2)
484-
if (index == 0 || index == 2) stepperZ2.homing_threshold(value);
485-
#endif
486-
#if AXIS_HAS_STALLGUARD(Z3)
487-
if (index == 0 || index == 3) stepperZ3.homing_threshold(value);
488-
#endif
489-
#if AXIS_HAS_STALLGUARD(Z4)
490-
if (index == 0 || index == 4) stepperZ4.homing_threshold(value);
491-
#endif
472+
if (index < 2) stepperZ.homing_threshold(value);
473+
TERN_(Z2_SENSORLESS, if (index == 0 || index == 2) stepperZ2.homing_threshold(value));
474+
TERN_(Z3_SENSORLESS, if (index == 0 || index == 3) stepperZ3.homing_threshold(value));
475+
TERN_(Z4_SENSORLESS, if (index == 0 || index == 4) stepperZ4.homing_threshold(value));
492476
break;
493477
#endif
494-
#if I_SENSORLESS && AXIS_HAS_STALLGUARD(I)
478+
#if I_SENSORLESS
495479
case I_AXIS: stepperI.homing_threshold(value); break;
496480
#endif
497-
#if J_SENSORLESS && AXIS_HAS_STALLGUARD(J)
481+
#if J_SENSORLESS
498482
case J_AXIS: stepperJ.homing_threshold(value); break;
499483
#endif
500-
#if K_SENSORLESS && AXIS_HAS_STALLGUARD(K)
484+
#if K_SENSORLESS
501485
case K_AXIS: stepperK.homing_threshold(value); break;
502486
#endif
503487
}
504488
}
505489

506490
if (report) {
507-
#if X_SENSORLESS
508-
#if AXIS_HAS_STALLGUARD(X)
509-
tmc_print_sgt(stepperX);
510-
#endif
511-
#if AXIS_HAS_STALLGUARD(X2)
512-
tmc_print_sgt(stepperX2);
513-
#endif
514-
#endif
515-
#if Y_SENSORLESS
516-
#if AXIS_HAS_STALLGUARD(Y)
517-
tmc_print_sgt(stepperY);
518-
#endif
519-
#if AXIS_HAS_STALLGUARD(Y2)
520-
tmc_print_sgt(stepperY2);
521-
#endif
522-
#endif
523-
#if Z_SENSORLESS
524-
#if AXIS_HAS_STALLGUARD(Z)
525-
tmc_print_sgt(stepperZ);
526-
#endif
527-
#if AXIS_HAS_STALLGUARD(Z2)
528-
tmc_print_sgt(stepperZ2);
529-
#endif
530-
#if AXIS_HAS_STALLGUARD(Z3)
531-
tmc_print_sgt(stepperZ3);
532-
#endif
533-
#if AXIS_HAS_STALLGUARD(Z4)
534-
tmc_print_sgt(stepperZ4);
535-
#endif
536-
#endif
537-
#if I_SENSORLESS && AXIS_HAS_STALLGUARD(I)
538-
tmc_print_sgt(stepperI);
539-
#endif
540-
#if J_SENSORLESS && AXIS_HAS_STALLGUARD(J)
541-
tmc_print_sgt(stepperJ);
542-
#endif
543-
#if K_SENSORLESS && AXIS_HAS_STALLGUARD(K)
544-
tmc_print_sgt(stepperK);
545-
#endif
491+
TERN_(X_SENSORLESS, tmc_print_sgt(stepperX));
492+
TERN_(X2_SENSORLESS, tmc_print_sgt(stepperX2));
493+
TERN_(Y_SENSORLESS, tmc_print_sgt(stepperY));
494+
TERN_(Y2_SENSORLESS, tmc_print_sgt(stepperY2));
495+
TERN_(Z_SENSORLESS, tmc_print_sgt(stepperZ));
496+
TERN_(Z2_SENSORLESS, tmc_print_sgt(stepperZ2));
497+
TERN_(Z3_SENSORLESS, tmc_print_sgt(stepperZ3));
498+
TERN_(Z4_SENSORLESS, tmc_print_sgt(stepperZ4));
499+
TERN_(I_SENSORLESS, tmc_print_sgt(stepperI));
500+
TERN_(J_SENSORLESS, tmc_print_sgt(stepperJ));
501+
TERN_(K_SENSORLESS, tmc_print_sgt(stepperK));
546502
}
547503
}
548504

Marlin/src/inc/SanityCheck.h

+2-2
Original file line numberDiff line numberDiff line change
@@ -1655,9 +1655,9 @@ static_assert(Y_MAX_LENGTH >= Y_BED_SIZE, "Movement bounds (Y_MIN_POS, Y_MAX_POS
16551655
* Require pin options and pins to be defined
16561656
*/
16571657
#if ENABLED(SENSORLESS_PROBING)
1658-
#if ENABLED(DELTA) && !(AXIS_HAS_STALLGUARD(X) && AXIS_HAS_STALLGUARD(Y) && AXIS_HAS_STALLGUARD(Z))
1658+
#if ENABLED(DELTA) && !(X_SENSORLESS && Y_SENSORLESS && Z_SENSORLESS)
16591659
#error "SENSORLESS_PROBING requires TMC2130/2160/2209/5130/5160 drivers on X, Y, and Z."
1660-
#elif !AXIS_HAS_STALLGUARD(Z)
1660+
#elif !Z_SENSORLESS
16611661
#error "SENSORLESS_PROBING requires a TMC2130/2160/2209/5130/5160 driver on Z."
16621662
#endif
16631663
#elif ENABLED(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN)

Marlin/src/module/motion.cpp

+10-30
Original file line numberDiff line numberDiff line change
@@ -1359,9 +1359,7 @@ void prepare_line_to_destination() {
13591359
#if X_SENSORLESS
13601360
case X_AXIS:
13611361
stealth_states.x = tmc_enable_stallguard(stepperX);
1362-
#if AXIS_HAS_STALLGUARD(X2)
1363-
stealth_states.x2 = tmc_enable_stallguard(stepperX2);
1364-
#endif
1362+
TERN_(X2_SENSORLESS, stealth_states.x2 = tmc_enable_stallguard(stepperX2));
13651363
#if ANY(CORE_IS_XY, MARKFORGED_XY, MARKFORGED_YX) && Y_SENSORLESS
13661364
stealth_states.y = tmc_enable_stallguard(stepperY);
13671365
#elif CORE_IS_XZ && Z_SENSORLESS
@@ -1372,9 +1370,7 @@ void prepare_line_to_destination() {
13721370
#if Y_SENSORLESS
13731371
case Y_AXIS:
13741372
stealth_states.y = tmc_enable_stallguard(stepperY);
1375-
#if AXIS_HAS_STALLGUARD(Y2)
1376-
stealth_states.y2 = tmc_enable_stallguard(stepperY2);
1377-
#endif
1373+
TERN_(Y2_SENSORLESS, stealth_states.y2 = tmc_enable_stallguard(stepperY2));
13781374
#if ANY(CORE_IS_XY, MARKFORGED_XY, MARKFORGED_YX) && X_SENSORLESS
13791375
stealth_states.x = tmc_enable_stallguard(stepperX);
13801376
#elif CORE_IS_YZ && Z_SENSORLESS
@@ -1385,15 +1381,9 @@ void prepare_line_to_destination() {
13851381
#if Z_SENSORLESS
13861382
case Z_AXIS:
13871383
stealth_states.z = tmc_enable_stallguard(stepperZ);
1388-
#if AXIS_HAS_STALLGUARD(Z2)
1389-
stealth_states.z2 = tmc_enable_stallguard(stepperZ2);
1390-
#endif
1391-
#if AXIS_HAS_STALLGUARD(Z3)
1392-
stealth_states.z3 = tmc_enable_stallguard(stepperZ3);
1393-
#endif
1394-
#if AXIS_HAS_STALLGUARD(Z4)
1395-
stealth_states.z4 = tmc_enable_stallguard(stepperZ4);
1396-
#endif
1384+
TERN_(Z2_SENSORLESS, stealth_states.z2 = tmc_enable_stallguard(stepperZ2));
1385+
TERN_(Z3_SENSORLESS, stealth_states.z3 = tmc_enable_stallguard(stepperZ3));
1386+
TERN_(Z4_SENSORLESS, stealth_states.z4 = tmc_enable_stallguard(stepperZ4));
13971387
#if CORE_IS_XZ && X_SENSORLESS
13981388
stealth_states.x = tmc_enable_stallguard(stepperX);
13991389
#elif CORE_IS_YZ && Y_SENSORLESS
@@ -1445,9 +1435,7 @@ void prepare_line_to_destination() {
14451435
#if X_SENSORLESS
14461436
case X_AXIS:
14471437
tmc_disable_stallguard(stepperX, enable_stealth.x);
1448-
#if AXIS_HAS_STALLGUARD(X2)
1449-
tmc_disable_stallguard(stepperX2, enable_stealth.x2);
1450-
#endif
1438+
TERN_(X2_SENSORLESS, tmc_disable_stallguard(stepperX2, enable_stealth.x2));
14511439
#if ANY(CORE_IS_XY, MARKFORGED_XY, MARKFORGED_YX) && Y_SENSORLESS
14521440
tmc_disable_stallguard(stepperY, enable_stealth.y);
14531441
#elif CORE_IS_XZ && Z_SENSORLESS
@@ -1458,9 +1446,7 @@ void prepare_line_to_destination() {
14581446
#if Y_SENSORLESS
14591447
case Y_AXIS:
14601448
tmc_disable_stallguard(stepperY, enable_stealth.y);
1461-
#if AXIS_HAS_STALLGUARD(Y2)
1462-
tmc_disable_stallguard(stepperY2, enable_stealth.y2);
1463-
#endif
1449+
TERN_(Y2_SENSORLESS, tmc_disable_stallguard(stepperY2, enable_stealth.y2));
14641450
#if ANY(CORE_IS_XY, MARKFORGED_XY, MARKFORGED_YX) && X_SENSORLESS
14651451
tmc_disable_stallguard(stepperX, enable_stealth.x);
14661452
#elif CORE_IS_YZ && Z_SENSORLESS
@@ -1471,15 +1457,9 @@ void prepare_line_to_destination() {
14711457
#if Z_SENSORLESS
14721458
case Z_AXIS:
14731459
tmc_disable_stallguard(stepperZ, enable_stealth.z);
1474-
#if AXIS_HAS_STALLGUARD(Z2)
1475-
tmc_disable_stallguard(stepperZ2, enable_stealth.z2);
1476-
#endif
1477-
#if AXIS_HAS_STALLGUARD(Z3)
1478-
tmc_disable_stallguard(stepperZ3, enable_stealth.z3);
1479-
#endif
1480-
#if AXIS_HAS_STALLGUARD(Z4)
1481-
tmc_disable_stallguard(stepperZ4, enable_stealth.z4);
1482-
#endif
1460+
TERN_(Z2_SENSORLESS, tmc_disable_stallguard(stepperZ2, enable_stealth.z2));
1461+
TERN_(Z3_SENSORLESS, tmc_disable_stallguard(stepperZ3, enable_stealth.z3));
1462+
TERN_(Z4_SENSORLESS, tmc_disable_stallguard(stepperZ4, enable_stealth.z4));
14831463
#if CORE_IS_XZ && X_SENSORLESS
14841464
tmc_disable_stallguard(stepperX, enable_stealth.x);
14851465
#elif CORE_IS_YZ && Y_SENSORLESS

Marlin/src/module/stepper/trinamic.cpp

+12-43
Original file line numberDiff line numberDiff line change
@@ -906,49 +906,18 @@ void reset_trinamic_drivers() {
906906
#endif
907907

908908
#if USE_SENSORLESS
909-
#if X_SENSORLESS
910-
stepperX.homing_threshold(X_STALL_SENSITIVITY);
911-
#if AXIS_HAS_STALLGUARD(X2)
912-
stepperX2.homing_threshold(CAT(TERN(X2_SENSORLESS, X2, X), _STALL_SENSITIVITY));
913-
#endif
914-
#endif
915-
#if Y_SENSORLESS
916-
stepperY.homing_threshold(Y_STALL_SENSITIVITY);
917-
#if AXIS_HAS_STALLGUARD(Y2)
918-
stepperY2.homing_threshold(CAT(TERN(Y2_SENSORLESS, Y2, Y), _STALL_SENSITIVITY));
919-
#endif
920-
#endif
921-
#if Z_SENSORLESS
922-
stepperZ.homing_threshold(Z_STALL_SENSITIVITY);
923-
#if AXIS_HAS_STALLGUARD(Z2)
924-
stepperZ2.homing_threshold(CAT(TERN(Z2_SENSORLESS, Z2, Z), _STALL_SENSITIVITY));
925-
#endif
926-
#if AXIS_HAS_STALLGUARD(Z3)
927-
stepperZ3.homing_threshold(CAT(TERN(Z3_SENSORLESS, Z3, Z), _STALL_SENSITIVITY));
928-
#endif
929-
#if AXIS_HAS_STALLGUARD(Z4)
930-
stepperZ4.homing_threshold(CAT(TERN(Z4_SENSORLESS, Z4, Z), _STALL_SENSITIVITY));
931-
#endif
932-
#endif
933-
#if I_SENSORLESS
934-
stepperI.homing_threshold(I_STALL_SENSITIVITY);
935-
#if AXIS_HAS_STALLGUARD(I)
936-
stepperI.homing_threshold(CAT(TERN(I_SENSORLESS, I, I), _STALL_SENSITIVITY));
937-
#endif
938-
#endif
939-
#if J_SENSORLESS
940-
stepperJ.homing_threshold(J_STALL_SENSITIVITY);
941-
#if AXIS_HAS_STALLGUARD(J)
942-
stepperJ.homing_threshold(CAT(TERN(J_SENSORLESS, J, J), _STALL_SENSITIVITY));
943-
#endif
944-
#endif
945-
#if K_SENSORLESS
946-
stepperK.homing_threshold(K_STALL_SENSITIVITY);
947-
#if AXIS_HAS_STALLGUARD(K)
948-
stepperK.homing_threshold(CAT(TERN(K_SENSORLESS, K, K), _STALL_SENSITIVITY));
949-
#endif
950-
#endif
951-
#endif // USE SENSORLESS
909+
TERN_(X_SENSORLESS, stepperX.homing_threshold(X_STALL_SENSITIVITY));
910+
TERN_(X2_SENSORLESS, stepperX2.homing_threshold(CAT(TERN(X2_SENSORLESS, X2, X), _STALL_SENSITIVITY)));
911+
TERN_(Y_SENSORLESS, stepperY.homing_threshold(Y_STALL_SENSITIVITY));
912+
TERN_(Y2_SENSORLESS, stepperY2.homing_threshold(CAT(TERN(Y2_SENSORLESS, Y2, Y), _STALL_SENSITIVITY)));
913+
TERN_(Z_SENSORLESS, stepperZ.homing_threshold(Z_STALL_SENSITIVITY));
914+
TERN_(Z2_SENSORLESS, stepperZ2.homing_threshold(CAT(TERN(Z2_SENSORLESS, Z2, Z), _STALL_SENSITIVITY)));
915+
TERN_(Z3_SENSORLESS, stepperZ3.homing_threshold(CAT(TERN(Z3_SENSORLESS, Z3, Z), _STALL_SENSITIVITY)));
916+
TERN_(Z4_SENSORLESS, stepperZ4.homing_threshold(CAT(TERN(Z4_SENSORLESS, Z4, Z), _STALL_SENSITIVITY)));
917+
TERN_(I_SENSORLESS, stepperI.homing_threshold(I_STALL_SENSITIVITY));
918+
TERN_(J_SENSORLESS, stepperJ.homing_threshold(J_STALL_SENSITIVITY));
919+
TERN_(K_SENSORLESS, stepperK.homing_threshold(K_STALL_SENSITIVITY));
920+
#endif
952921

953922
#ifdef TMC_ADV
954923
TMC_ADV()

0 commit comments

Comments
 (0)