Aux motor driver


I am currently soldering a Farmduino board myself. Burning the firmware for all 3 MCs worked and the X, Y and Z motors can be moved.

Now the question arises how I can test the driver for the auxillary motor. With the web frontend, only the axis motors can be moved.

Does anyone have any advice?

The only info, I found was: Moving auxiliary motor
Is that really the latest state of affairs?

Best regards,


Look at the source code and you won’t see any code supporting AUX motor movement, parameters, encoders, stall detection, etc.

Hi there,

there is a simple solution. At least in the event that you only want to test the driver hardware.

The individual motor drivers are controlled via 4 pins per axis.
In the source code file Movement.cpp, 3 of these 4 pins are defined in the loadSettings () method. The 4th pin is a ChipSelect that is assigned to the respective axis in TMS2130.h.

The AUX ChipSelect pin is missing in the definition of all pins and has to be added in pins.h:
#define AUX_CHIP_SELECT 43

If you then swap the line e.g. in Movement.cpp
axisZ.loadPinNumbers (Z_STEP_PIN, Z_DIR_PIN, Z_ENABLE_PIN, Z_MIN_PIN, Z_MAX_PIN, 0, 0, 0);
axisZ.loadPinNumbers (AUX_STEP_PIN, AUX_DIR_PIN, AUX_ENABLE_PIN, Z_MIN_PIN, Z_MAX_PIN, 0, 0, 0);

and in TMS2130.h the line
static TMC2130_Basics TMC2130Z (Z_CHIP_SELECT);
static TMC2130_Basics TMC2130Z (AUX_CHIP_SELECT);

after uploading the newly compiled firmware, the AUX MOTOR driver will be used for the Z-axis.

The whole thing can also be interesting if you are not using an auxiliary motor, but one of the axis drivers should have burned out. In this way, the AUX driver can be configured as a redundant replacement for the defective driver.

1 Like

Yes, of course ! Custom firmware :slight_smile:

1 Like