Kaynağa Gözat

🐛 Update M913, M914 report

Followup to #11248, #11249, #23400
Scott Lahteine 2 yıl önce
ebeveyn
işleme
d4fd39f05f

+ 19
- 19
Marlin/src/gcode/feature/trinamic/M911-M914.cpp Dosyayı Görüntüle

@@ -284,33 +284,33 @@
284 284
 
285 285
     bool report = true;
286 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 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 290
     #endif
291 291
     LOOP_LOGICAL_AXES(i) if (int32_t value = parser.longval(AXIS_CHAR(i))) {
292 292
       report = false;
293 293
       switch (i) {
294 294
         #if X_HAS_STEALTHCHOP || X2_HAS_STEALTHCHOP
295 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 298
             break;
299 299
         #endif
300 300
 
301 301
         #if Y_HAS_STEALTHCHOP || Y2_HAS_STEALTHCHOP
302 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 305
             break;
306 306
         #endif
307 307
 
308 308
         #if Z_HAS_STEALTHCHOP || Z2_HAS_STEALTHCHOP || Z3_HAS_STEALTHCHOP || Z4_HAS_STEALTHCHOP
309 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 314
             break;
315 315
         #endif
316 316
 
@@ -401,7 +401,7 @@
401 401
 
402 402
     #if X2_HAS_STEALTHCHOP || Y2_HAS_STEALTHCHOP || Z2_HAS_STEALTHCHOP
403 403
       say_M913(forReplay);
404
-      SERIAL_ECHOPGM(" I1");
404
+      SERIAL_ECHOPGM(" I2");
405 405
       #if X2_HAS_STEALTHCHOP
406 406
         SERIAL_ECHOPGM_P(SP_X_STR, stepperX2.get_pwm_thrs());
407 407
       #endif
@@ -416,12 +416,12 @@
416 416
 
417 417
     #if Z3_HAS_STEALTHCHOP
418 418
       say_M913(forReplay);
419
-      SERIAL_ECHOLNPGM(" I2 Z", stepperZ3.get_pwm_thrs());
419
+      SERIAL_ECHOLNPGM(" I3 Z", stepperZ3.get_pwm_thrs());
420 420
     #endif
421 421
 
422 422
     #if Z4_HAS_STEALTHCHOP
423 423
       say_M913(forReplay);
424
-      SERIAL_ECHOLNPGM(" I3 Z", stepperZ4.get_pwm_thrs());
424
+      SERIAL_ECHOLNPGM(" I4 Z", stepperZ4.get_pwm_thrs());
425 425
     #endif
426 426
 
427 427
     #if I_HAS_STEALTHCHOP
@@ -521,9 +521,9 @@
521 521
         #if Z_SENSORLESS
522 522
           case Z_AXIS:
523 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 527
             break;
528 528
         #endif
529 529
         #if I_SENSORLESS
@@ -589,7 +589,7 @@
589 589
 
590 590
     #if X2_SENSORLESS || Y2_SENSORLESS || Z2_SENSORLESS
591 591
       say_M914(forReplay);
592
-      SERIAL_ECHOPGM(" I1");
592
+      SERIAL_ECHOPGM(" I2");
593 593
       #if X2_SENSORLESS
594 594
         SERIAL_ECHOPGM_P(SP_X_STR, stepperX2.homing_threshold());
595 595
       #endif
@@ -604,12 +604,12 @@
604 604
 
605 605
     #if Z3_SENSORLESS
606 606
       say_M914(forReplay);
607
-      SERIAL_ECHOLNPGM(" I2 Z", stepperZ3.homing_threshold());
607
+      SERIAL_ECHOLNPGM(" I3 Z", stepperZ3.homing_threshold());
608 608
     #endif
609 609
 
610 610
     #if Z4_SENSORLESS
611 611
       say_M914(forReplay);
612
-      SERIAL_ECHOLNPGM(" I3 Z", stepperZ4.homing_threshold());
612
+      SERIAL_ECHOLNPGM(" I4 Z", stepperZ4.homing_threshold());
613 613
     #endif
614 614
 
615 615
     #if I_SENSORLESS

+ 4
- 4
Marlin/src/module/settings.cpp Dosyayı Görüntüle

@@ -433,10 +433,10 @@ typedef struct SettingsDataStruct {
433 433
   //
434 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 442
   // LIN_ADVANCE

Loading…
İptal
Kaydet