Fix M503 output for M907 motor current (#19777)
Co-authored-by: Scott Lahteine <github@thinkyhead.com>
This commit is contained in:
parent
25bb249ac6
commit
32ca42ead3
|
@ -3719,19 +3719,25 @@ void MarlinSettings::reset() {
|
|||
CONFIG_ECHO_HEADING("Stepper motor currents:");
|
||||
CONFIG_ECHO_START();
|
||||
#if HAS_MOTOR_CURRENT_PWM
|
||||
SERIAL_ECHOLNPAIR_P(
|
||||
PSTR(" M907 X"), stepper.motor_current_setting[0]
|
||||
, SP_Z_STR, stepper.motor_current_setting[1]
|
||||
, SP_E_STR, stepper.motor_current_setting[2]
|
||||
SERIAL_ECHOLNPAIR_P( // PWM-based has 3 values:
|
||||
PSTR(" M907 X"), stepper.motor_current_setting[0] // X and Y
|
||||
, SP_Z_STR, stepper.motor_current_setting[1] // Z
|
||||
, SP_E_STR, stepper.motor_current_setting[2] // E
|
||||
);
|
||||
#elif HAS_MOTOR_CURRENT_SPI
|
||||
SERIAL_ECHOPGM(" M907");
|
||||
LOOP_L_N(q, MOTOR_CURRENT_COUNT) {
|
||||
SERIAL_CHAR(' ');
|
||||
SERIAL_CHAR(axis_codes[q]);
|
||||
SERIAL_ECHOPGM(" M907"); // SPI-based has 5 values:
|
||||
LOOP_XYZE(q) { // X Y Z E (map to X Y Z E0 by default)
|
||||
SERIAL_CHAR(' ', axis_codes[q]);
|
||||
SERIAL_ECHO(stepper.motor_current_setting[q]);
|
||||
}
|
||||
SERIAL_CHAR(' ', 'B'); // B (maps to E1 by default)
|
||||
SERIAL_ECHOLN(stepper.motor_current_setting[4]);
|
||||
#endif
|
||||
#elif HAS_MOTOR_CURRENT_I2C // i2c-based has any number of values
|
||||
// Values sent over i2c are not stored.
|
||||
// Indexes map directly to drivers, not axes.
|
||||
#elif HAS_MOTOR_CURRENT_DAC // DAC-based has 4 values, for X Y Z E
|
||||
// Values sent over i2c are not stored. Uses indirect mapping.
|
||||
#endif
|
||||
|
||||
/**
|
||||
|
|
|
@ -2962,7 +2962,7 @@ void Stepper::report_positions() {
|
|||
#if HAS_MOTOR_CURRENT_SPI || HAS_MOTOR_CURRENT_PWM
|
||||
|
||||
void Stepper::set_digipot_current(const uint8_t driver, const int16_t current) {
|
||||
if (WITHIN(driver, 0, COUNT(motor_current_setting) - 1))
|
||||
if (WITHIN(driver, 0, MOTOR_CURRENT_COUNT - 1))
|
||||
motor_current_setting[driver] = current; // update motor_current_setting
|
||||
|
||||
if (!initialized) return;
|
||||
|
|
|
@ -112,7 +112,7 @@
|
|||
#define E1_MS2_PIN 64
|
||||
|
||||
#define DIGIPOTSS_PIN 38
|
||||
#define DIGIPOT_CHANNELS { 4,5,3,0,1 } // X Y Z E0 E1 digipot channels to stepper driver mapping
|
||||
#define DIGIPOT_CHANNELS { 4, 5, 3, 0, 1 } // X Y Z E0 E1 digipot channels to stepper driver mapping
|
||||
#ifndef DIGIPOT_MOTOR_CURRENT
|
||||
#define DIGIPOT_MOTOR_CURRENT { 135,135,135,135,135 } // Values 0-255 (RAMBO 135 = ~0.75A, 185 = ~1A)
|
||||
#endif
|
||||
|
|
|
@ -92,7 +92,7 @@
|
|||
#define E1_MS2_PIN 64
|
||||
|
||||
#define DIGIPOTSS_PIN 38
|
||||
#define DIGIPOT_CHANNELS {4,5,3,0,1} // X Y Z E0 E1 digipot channels to stepper driver mapping
|
||||
#define DIGIPOT_CHANNELS { 4, 5, 3, 0, 1 } // X Y Z E0 E1 digipot channels to stepper driver mapping
|
||||
|
||||
//
|
||||
// Temperature Sensors
|
||||
|
|
|
@ -85,7 +85,7 @@
|
|||
// Steppers
|
||||
//
|
||||
#define DIGIPOTSS_PIN 22
|
||||
#define DIGIPOT_CHANNELS { 4, 5, 3, 0, 1 }
|
||||
#define DIGIPOT_CHANNELS { 4, 5, 3, 0, 1 }
|
||||
|
||||
//
|
||||
// Temperature Sensors
|
||||
|
|
Loading…
Reference in a new issue