|
@@ -3719,19 +3719,25 @@ void MarlinSettings::reset() {
|
3719
|
3719
|
CONFIG_ECHO_HEADING("Stepper motor currents:");
|
3720
|
3720
|
CONFIG_ECHO_START();
|
3721
|
3721
|
#if HAS_MOTOR_CURRENT_PWM
|
3722
|
|
- SERIAL_ECHOLNPAIR_P(
|
3723
|
|
- PSTR(" M907 X"), stepper.motor_current_setting[0]
|
3724
|
|
- , SP_Z_STR, stepper.motor_current_setting[1]
|
3725
|
|
- , SP_E_STR, stepper.motor_current_setting[2]
|
|
3722
|
+ SERIAL_ECHOLNPAIR_P( // PWM-based has 3 values:
|
|
3723
|
+ PSTR(" M907 X"), stepper.motor_current_setting[0] // X and Y
|
|
3724
|
+ , SP_Z_STR, stepper.motor_current_setting[1] // Z
|
|
3725
|
+ , SP_E_STR, stepper.motor_current_setting[2] // E
|
3726
|
3726
|
);
|
3727
|
3727
|
#elif HAS_MOTOR_CURRENT_SPI
|
3728
|
|
- SERIAL_ECHOPGM(" M907");
|
3729
|
|
- LOOP_L_N(q, MOTOR_CURRENT_COUNT) {
|
3730
|
|
- SERIAL_CHAR(' ');
|
3731
|
|
- SERIAL_CHAR(axis_codes[q]);
|
|
3728
|
+ SERIAL_ECHOPGM(" M907"); // SPI-based has 5 values:
|
|
3729
|
+ LOOP_XYZE(q) { // X Y Z E (map to X Y Z E0 by default)
|
|
3730
|
+ SERIAL_CHAR(' ', axis_codes[q]);
|
3732
|
3731
|
SERIAL_ECHO(stepper.motor_current_setting[q]);
|
3733
|
3732
|
}
|
3734
|
|
- #endif
|
|
3733
|
+ SERIAL_CHAR(' ', 'B'); // B (maps to E1 by default)
|
|
3734
|
+ SERIAL_ECHOLN(stepper.motor_current_setting[4]);
|
|
3735
|
+ #endif
|
|
3736
|
+ #elif HAS_MOTOR_CURRENT_I2C // i2c-based has any number of values
|
|
3737
|
+ // Values sent over i2c are not stored.
|
|
3738
|
+ // Indexes map directly to drivers, not axes.
|
|
3739
|
+ #elif HAS_MOTOR_CURRENT_DAC // DAC-based has 4 values, for X Y Z E
|
|
3740
|
+ // Values sent over i2c are not stored. Uses indirect mapping.
|
3735
|
3741
|
#endif
|
3736
|
3742
|
|
3737
|
3743
|
/**
|