I thought you actually had it there Jeff, but all the settings are identical.
Something is odd though, because M122 only shows the four first drivers. X, Y, Z & E:
X Y Z E
Enabled false false false false
Set current 800 800 800 800
RMS current 795 795 795 795
MAX current 1121 1121 1121 1121
Run current 25/31 25/31 25/31 25/31
Hold current 12/31 12/31 12/31 12/31
CS actual 12/31 12/31 12/31 12/31
PWM scale 14 14 14 14
vsense 1=.18 1=.18 1=.18 1=.18
stealthChop true true true true
msteps 16 16 16 16
tstep max max max max
PWM thresh.
[mm/s]
OT prewarn false false false false
triggered
OTP false false false false
off time 3 3 3 3
blank time 24 24 24 24
hysteresis
-end -1 -1 -1 -1
-start 1 1 1 1
Stallguard thrs
DRVSTATUS X Y Z E
The fifth one is definately enabled, since it runs in tandem with Y, just faster.
Sorry for the incoming code wall…
In configuration.h I have these steppers enabled:
#define X_DRIVER_TYPE TMC2208
#define Y_DRIVER_TYPE TMC2208
#define Z_DRIVER_TYPE TMC2208
#define E0_DRIVER_TYPE TMC2208
#define E1_DRIVER_TYPE TMC2208
Dual Steppers and dual endstops are enabled in config_adv.h:
#define X_DUAL_STEPPER_DRIVERS
#if ENABLED(X_DUAL_STEPPER_DRIVERS)
#define INVERT_X2_VS_X_DIR true // Set ‘true’ if X motors should rotate in opposite directions
#define X_DUAL_ENDSTOPS
#if ENABLED(X_DUAL_ENDSTOPS)
#define X2_USE_ENDSTOP XMAX
#define X2_ENDSTOP_ADJUSTMENT 0
#endif
#endif
#define Y_DUAL_STEPPER_DRIVERS
#if ENABLED(Y_DUAL_STEPPER_DRIVERS)
#define INVERT_Y2_VS_Y_DIR true // Set ‘true’ if Y motors should rotate in opposite directions
#define Y_DUAL_ENDSTOPS
#if ENABLED(Y_DUAL_ENDSTOPS)
#define Y2_USE_ENDSTOP YMAX
#define Y2_ENDSTOP_ADJUSTMENT 0
#endif
#endif
And finally I have these pin settings in pins_BTT_SKR_V1_4.h:
//
// Steppers
//
#define X_STEP_PIN P2_02
#define X_DIR_PIN P2_06
#define X_ENABLE_PIN P2_01
#ifndef X_CS_PIN
#define X_CS_PIN P1_10
#endif
#define Y_STEP_PIN P0_19
#define Y_DIR_PIN P0_20
#define Y_ENABLE_PIN P2_08
#ifndef Y_CS_PIN
#define Y_CS_PIN P1_09
#endif
#define Z_STEP_PIN P0_22
#define Z_DIR_PIN P2_11
#define Z_ENABLE_PIN P0_21
#ifndef Z_CS_PIN
#define Z_CS_PIN P1_08
#endif
#define E0_STEP_PIN P2_05
#define E0_DIR_PIN P2_05
#define E0_ENABLE_PIN P2_05
#ifndef E0_CS_PIN
#define E0_CS_PIN P2_05
#endif
#define E1_STEP_PIN P2_13
#define E1_DIR_PIN P0_11
#define E1_ENABLE_PIN P2_12
#ifndef E1_CS_PIN
#define E1_CS_PIN P1_04
#endif
#define E2_STEP_PIN P1_15
#define E2_DIR_PIN P1_14
#define E2_ENABLE_PIN P1_16
#ifndef E2_CS_PIN
#define E2_CS_PIN P1_01
#endif
Can you off the top of your head see anything wrong here?