I don't have TMC2208 but I'm looking at maybe upgrading as well. But it should be pretty straightforward. Replace the old modules making sure the orientation is the same by looking at where the GND pin is. You also need to adjust the vref with the potentiometer on the modules, some say set it to 0.6-0.8 others say calculate the correct values yourself. I haven't looked too much into it so I can't give any instructions, but search around, I saw plenty of posts online talking about how to measure/calculate the vref when upgrading to TMC2208 for other printers and I assume they should apply to the A20T as well.
Looks like you only have 4 modules, that's enough for X+Y+Z and single extruder, but you have 3 extruders.
You might choose to only use the TMC2208 on X+Y+Z, and leave the extruders as default. Some say the extruders need more torque and therefore are better left stock, the TMC2208's silent operation supposedly means less torque, didn't look too much into it so I don't know if it's a real issue or just overblown. Just what I gathered from some quick googling earlier, when I got curious about upgrading to TMC2208 myself.
Also, there are some Marlin configuration options you should change in Configuration.h. I think these settings only exist in Marlin 2.x
As far as I can tell it will work even without changing them but not optimally.
Uncomment and change to TMC2208_STANDALONE as appropriate.
Code: Select all
/**
* Stepper Drivers
*
* These settings allow Marlin to tune stepper driver timing and enable advanced options for
* stepper drivers that support them. You may also override timing options in Configuration_adv.h.
*
* A4988 is assumed for unspecified drivers.
*
* Options: A4988, A5984, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
* TMC2130, TMC2130_STANDALONE, TMC2160, TMC2160_STANDALONE,
* TMC2208, TMC2208_STANDALONE, TMC2209, TMC2209_STANDALONE,
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
* TMC5130, TMC5130_STANDALONE, TMC5160, TMC5160_STANDALONE
* :['A4988', 'A5984', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2160', 'TMC2160_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC2209', 'TMC2209_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE', 'TMC5160', 'TMC5160_STANDALONE']
*/
#define X_DRIVER_TYPE TMC2208_STANDALONE
#define Y_DRIVER_TYPE TMC2208_STANDALONE
#define Z_DRIVER_TYPE TMC2208_STANDALONE
//#define X2_DRIVER_TYPE A4988
//#define Y2_DRIVER_TYPE A4988
//#define Z2_DRIVER_TYPE A4988
//#define Z3_DRIVER_TYPE A4988
#define E0_DRIVER_TYPE TMC2208_STANDALONE
#define E1_DRIVER_TYPE TMC2208_STANDALONE
#define E2_DRIVER_TYPE TMC2208_STANDALONE
Code: Select all
// Invert the stepper direction. Change (or reverse the motor connector) if an axis goes the wrong way.
#define INVERT_X_DIR false // Orig true
#define INVERT_Y_DIR false // Orig true
#define INVERT_Z_DIR true // Orig false
// @section extruder
// For direct drive extruder v9 set to true, for geared extruder set to false.
#define INVERT_E0_DIR true // Orig false
#define INVERT_E1_DIR true // Orig false
#define INVERT_E2_DIR true // Orig false