Browse Source

🐛 Update M913, M914 report

Followup to #11248, #11249, #23400
Scott Lahteine 2 years ago
parent
commit
d4fd39f05f
2 changed files with 23 additions and 23 deletions
  1. 19
    19
      Marlin/src/gcode/feature/trinamic/M911-M914.cpp
  2. 4
    4
      Marlin/src/module/settings.cpp

+ 19
- 19
Marlin/src/gcode/feature/trinamic/M911-M914.cpp View File

284
 
284
 
285
     bool report = true;
285
     bool report = true;
286
     #if AXIS_IS_TMC(X2) || AXIS_IS_TMC(Y2) || AXIS_IS_TMC(Z2) || AXIS_IS_TMC(Z3) || AXIS_IS_TMC(Z4)
286
     #if AXIS_IS_TMC(X2) || AXIS_IS_TMC(Y2) || AXIS_IS_TMC(Z2) || AXIS_IS_TMC(Z3) || AXIS_IS_TMC(Z4)
287
-      const int8_t index = parser.byteval('I', -1);
287
+      const uint8_t index = parser.byteval('I');
288
     #elif AXIS_IS_TMC(X) || AXIS_IS_TMC(Y) || AXIS_IS_TMC(Z)
288
     #elif AXIS_IS_TMC(X) || AXIS_IS_TMC(Y) || AXIS_IS_TMC(Z)
289
-      constexpr int8_t index = -1;
289
+      constexpr uint8_t index = 0;
290
     #endif
290
     #endif
291
     LOOP_LOGICAL_AXES(i) if (int32_t value = parser.longval(AXIS_CHAR(i))) {
291
     LOOP_LOGICAL_AXES(i) if (int32_t value = parser.longval(AXIS_CHAR(i))) {
292
       report = false;
292
       report = false;
293
       switch (i) {
293
       switch (i) {
294
         #if X_HAS_STEALTHCHOP || X2_HAS_STEALTHCHOP
294
         #if X_HAS_STEALTHCHOP || X2_HAS_STEALTHCHOP
295
           case X_AXIS:
295
           case X_AXIS:
296
-            TERN_(X_HAS_STEALTHCHOP,  if (index < 0 || index == 0) TMC_SET_PWMTHRS(X,X));
297
-            TERN_(X2_HAS_STEALTHCHOP, if (index < 0 || index == 1) TMC_SET_PWMTHRS(X,X2));
296
+            TERN_(X_HAS_STEALTHCHOP,  if (index < 2) TMC_SET_PWMTHRS(X,X));
297
+            TERN_(X2_HAS_STEALTHCHOP, if (!(index & 1)) TMC_SET_PWMTHRS(X,X2));
298
             break;
298
             break;
299
         #endif
299
         #endif
300
 
300
 
301
         #if Y_HAS_STEALTHCHOP || Y2_HAS_STEALTHCHOP
301
         #if Y_HAS_STEALTHCHOP || Y2_HAS_STEALTHCHOP
302
           case Y_AXIS:
302
           case Y_AXIS:
303
-            TERN_(Y_HAS_STEALTHCHOP,  if (index < 0 || index == 0) TMC_SET_PWMTHRS(Y,Y));
304
-            TERN_(Y2_HAS_STEALTHCHOP, if (index < 0 || index == 1) TMC_SET_PWMTHRS(Y,Y2));
303
+            TERN_(Y_HAS_STEALTHCHOP,  if (index < 2) TMC_SET_PWMTHRS(Y,Y));
304
+            TERN_(Y2_HAS_STEALTHCHOP, if (!(index & 1)) TMC_SET_PWMTHRS(Y,Y2));
305
             break;
305
             break;
306
         #endif
306
         #endif
307
 
307
 
308
         #if Z_HAS_STEALTHCHOP || Z2_HAS_STEALTHCHOP || Z3_HAS_STEALTHCHOP || Z4_HAS_STEALTHCHOP
308
         #if Z_HAS_STEALTHCHOP || Z2_HAS_STEALTHCHOP || Z3_HAS_STEALTHCHOP || Z4_HAS_STEALTHCHOP
309
           case Z_AXIS:
309
           case Z_AXIS:
310
-            TERN_(Z_HAS_STEALTHCHOP,  if (index < 0 || index == 0) TMC_SET_PWMTHRS(Z,Z));
311
-            TERN_(Z2_HAS_STEALTHCHOP, if (index < 0 || index == 1) TMC_SET_PWMTHRS(Z,Z2));
312
-            TERN_(Z3_HAS_STEALTHCHOP, if (index < 0 || index == 2) TMC_SET_PWMTHRS(Z,Z3));
313
-            TERN_(Z4_HAS_STEALTHCHOP, if (index < 0 || index == 3) TMC_SET_PWMTHRS(Z,Z4));
310
+            TERN_(Z_HAS_STEALTHCHOP,  if (index < 2) TMC_SET_PWMTHRS(Z,Z));
311
+            TERN_(Z2_HAS_STEALTHCHOP, if (!index || index == 2) TMC_SET_PWMTHRS(Z,Z2));
312
+            TERN_(Z3_HAS_STEALTHCHOP, if (!index || index == 3) TMC_SET_PWMTHRS(Z,Z3));
313
+            TERN_(Z4_HAS_STEALTHCHOP, if (!index || index == 4) TMC_SET_PWMTHRS(Z,Z4));
314
             break;
314
             break;
315
         #endif
315
         #endif
316
 
316
 
401
 
401
 
402
     #if X2_HAS_STEALTHCHOP || Y2_HAS_STEALTHCHOP || Z2_HAS_STEALTHCHOP
402
     #if X2_HAS_STEALTHCHOP || Y2_HAS_STEALTHCHOP || Z2_HAS_STEALTHCHOP
403
       say_M913(forReplay);
403
       say_M913(forReplay);
404
-      SERIAL_ECHOPGM(" I1");
404
+      SERIAL_ECHOPGM(" I2");
405
       #if X2_HAS_STEALTHCHOP
405
       #if X2_HAS_STEALTHCHOP
406
         SERIAL_ECHOPGM_P(SP_X_STR, stepperX2.get_pwm_thrs());
406
         SERIAL_ECHOPGM_P(SP_X_STR, stepperX2.get_pwm_thrs());
407
       #endif
407
       #endif
416
 
416
 
417
     #if Z3_HAS_STEALTHCHOP
417
     #if Z3_HAS_STEALTHCHOP
418
       say_M913(forReplay);
418
       say_M913(forReplay);
419
-      SERIAL_ECHOLNPGM(" I2 Z", stepperZ3.get_pwm_thrs());
419
+      SERIAL_ECHOLNPGM(" I3 Z", stepperZ3.get_pwm_thrs());
420
     #endif
420
     #endif
421
 
421
 
422
     #if Z4_HAS_STEALTHCHOP
422
     #if Z4_HAS_STEALTHCHOP
423
       say_M913(forReplay);
423
       say_M913(forReplay);
424
-      SERIAL_ECHOLNPGM(" I3 Z", stepperZ4.get_pwm_thrs());
424
+      SERIAL_ECHOLNPGM(" I4 Z", stepperZ4.get_pwm_thrs());
425
     #endif
425
     #endif
426
 
426
 
427
     #if I_HAS_STEALTHCHOP
427
     #if I_HAS_STEALTHCHOP
521
         #if Z_SENSORLESS
521
         #if Z_SENSORLESS
522
           case Z_AXIS:
522
           case Z_AXIS:
523
             if (index < 2) stepperZ.homing_threshold(value);
523
             if (index < 2) stepperZ.homing_threshold(value);
524
-            TERN_(Z2_SENSORLESS, if (index == 0 || index == 2) stepperZ2.homing_threshold(value));
525
-            TERN_(Z3_SENSORLESS, if (index == 0 || index == 3) stepperZ3.homing_threshold(value));
526
-            TERN_(Z4_SENSORLESS, if (index == 0 || index == 4) stepperZ4.homing_threshold(value));
524
+            TERN_(Z2_SENSORLESS, if (!index || index == 2) stepperZ2.homing_threshold(value));
525
+            TERN_(Z3_SENSORLESS, if (!index || index == 3) stepperZ3.homing_threshold(value));
526
+            TERN_(Z4_SENSORLESS, if (!index || index == 4) stepperZ4.homing_threshold(value));
527
             break;
527
             break;
528
         #endif
528
         #endif
529
         #if I_SENSORLESS
529
         #if I_SENSORLESS
589
 
589
 
590
     #if X2_SENSORLESS || Y2_SENSORLESS || Z2_SENSORLESS
590
     #if X2_SENSORLESS || Y2_SENSORLESS || Z2_SENSORLESS
591
       say_M914(forReplay);
591
       say_M914(forReplay);
592
-      SERIAL_ECHOPGM(" I1");
592
+      SERIAL_ECHOPGM(" I2");
593
       #if X2_SENSORLESS
593
       #if X2_SENSORLESS
594
         SERIAL_ECHOPGM_P(SP_X_STR, stepperX2.homing_threshold());
594
         SERIAL_ECHOPGM_P(SP_X_STR, stepperX2.homing_threshold());
595
       #endif
595
       #endif
604
 
604
 
605
     #if Z3_SENSORLESS
605
     #if Z3_SENSORLESS
606
       say_M914(forReplay);
606
       say_M914(forReplay);
607
-      SERIAL_ECHOLNPGM(" I2 Z", stepperZ3.homing_threshold());
607
+      SERIAL_ECHOLNPGM(" I3 Z", stepperZ3.homing_threshold());
608
     #endif
608
     #endif
609
 
609
 
610
     #if Z4_SENSORLESS
610
     #if Z4_SENSORLESS
611
       say_M914(forReplay);
611
       say_M914(forReplay);
612
-      SERIAL_ECHOLNPGM(" I3 Z", stepperZ4.homing_threshold());
612
+      SERIAL_ECHOLNPGM(" I4 Z", stepperZ4.homing_threshold());
613
     #endif
613
     #endif
614
 
614
 
615
     #if I_SENSORLESS
615
     #if I_SENSORLESS

+ 4
- 4
Marlin/src/module/settings.cpp View File

433
   //
433
   //
434
   // HAS_TRINAMIC_CONFIG
434
   // HAS_TRINAMIC_CONFIG
435
   //
435
   //
436
-  per_stepper_uint16_t tmc_stepper_current;             // M906 X Y Z I J K U V W X2 Y2 Z2 Z3 Z4 E0 E1 E2 E3 E4 E5
437
-  per_stepper_uint32_t tmc_hybrid_threshold;            // M913 X Y Z I J K U V W X2 Y2 Z2 Z3 Z4 E0 E1 E2 E3 E4 E5
438
-  mot_stepper_int16_t tmc_sgt;                          // M914 X Y Z I J K U V W X2 Y2 Z2 Z3 Z4
439
-  per_stepper_bool_t tmc_stealth_enabled;               // M569 X Y Z I J K U V W X2 Y2 Z2 Z3 Z4 E0 E1 E2 E3 E4 E5
436
+  per_stepper_uint16_t tmc_stepper_current;             // M906 X Y Z...
437
+  per_stepper_uint32_t tmc_hybrid_threshold;            // M913 X Y Z...
438
+  mot_stepper_int16_t tmc_sgt;                          // M914 X Y Z...
439
+  per_stepper_bool_t tmc_stealth_enabled;               // M569 X Y Z...
440
 
440
 
441
   //
441
   //
442
   // LIN_ADVANCE
442
   // LIN_ADVANCE

Loading…
Cancel
Save