I decided to upgrade my stock i3 Mega from its original A4488 stepper driver to TMC2209 v3.0 from Eryone (amazon.ca).
So far the best source of infromation I had was this video1 and the informations I could get abour the close matches TM2208, TMC2209 assembled by other company or for different versions (v1.2…).
This How-To considers you want to keep the original firmware of your i3 Mega, and want to be minimally invasive.
1- Open the i3 Mega
First before putting your i3 Mega upside down , unscrew one of the motherboard fan bracket screw. Only one, you do not want to make it fall off, just allow you rotating the bracket later. See picture.
The two easiest way are to put the mega with screen facing against the table, and either removing the two lower feet or the transversal bar, then you can unscrew the bottom plate and have access to the mainboard behind its fan.
One surprise for me, one of the drivers was missing its dissipator …
You can then unscrew the 2 fan screw and put the fan away. It is also a good idea to disconnect it from the mainboard now, as you do not want it to start a break while hitting something if it starts when you calibrate the drivers later.
It is now a good time to take some note for latter if you want to reverse your mod.
I took the time to measure the Vref of all my current drivers:
Driver | X | Y | Z | E0 | E1 |
Mesured Vref on stock A4488 | 0.94 | 1.01 | 0.93 | 1.01 | 0.85 |
Expected Vref A4488 | 0.85 | 0.85 | 0.85 | 0.85 | 0.85 |
Also took a picture to make know the actual wire color order for later… Believe me it could became quite messy … so do it..
2- Replace your drivers
First take a step back to understand what we are doing…
TMC2209 v3.0 | VM | GND | M1B | M1A | M2A | M2B | VID | GND |
TMC2209 V2.1 | VM | GND | A2 | A1 | B1 | B2 | VID | GND |
TMC2208 V2.0 BIGTREETECH | VM | GND | M2B | M1B | M1A | M2A | VIO | GND |
TMC2225 V1.0 UART MKS | VM | GND | 2B | 2A | 1A | 1B | VDD | GND |
A4988 | VMOT | GND | 2B | 2A | 1A | 1B | VDD | GND |
DRV8825 | UMJ1 | GND | 2B | 1B | 1A | 2A | FLT | GND |
Trigorilla Motherboard | Vin | GND | 2B | 2A | 1A | 1B | VDD | GND |
TMC2209 v3.0 | EN | MS1 | MS2 | UART | PDN | SPR | STEP | DIR |
TMC2209 V2.1 | EN | MS1 | MS2 | TX | RX | CLK | STEP | DIR |
TMC2208 V2.0 | EN | MS1 | MS2 | NC | PDN | CLK | STEP | DIR |
TMC2225 V1.0 UART MKS | EN | MS1 | MS2 | R2 | UART | NC | STEP | DIR |
A4988 | EN | MS1 | MS2 | MS3 | RST | SLP | STEP | DIR |
DRV8825 | EN | M0 | M1 | M2 | RST | SLP | STP | DIR |
Trigorilla Motherboard | EN | MS1 | MS2 | MS3 | RS | SLP | STEP | DIR |
3- Rewire
The motor control is reversed in a TMC22xx (except BIGTREETECH TMC2208 v2.0 and MKS TMC2225 V1.0 UART from what I have seen), you need to either fix that using a firmware update, reversing the connectors (which will break/deform the connector on the main board or reverse the order of the wires on the connector itself. I go for this last one.
4- Setting your Vref
First, unless they updated those, do not believe the Eryone pictures on amazon and their own website 2their picture is wrong, see the actual measurement site here:
Driver TMC22xx | X | Y | Z | E0 | E1 |
Vref | 1.06 | 1.06 | 1.06 | 1.06 | 1.06 |
Second, what should be your setting for your stepper motor ? We get plenty of post with some personal recipes with trial and errors3 .
Second, while the printer is switched off, unplug your stepper motor, before trying to measure and set the Vref. Vref should be measured with the motors unplugged, or the value won’t be correct. Then switch off again the printer before plugging back the steppers. DO not plug or unplug the stepper from the board while powered on or you might burn the controllers..
The stock stepper motor should be Nema17 1.5A max. Then according to this post (see also here) , we should set it to Inom = Irms = 1.06.
I also got this 4 : The maximum settable motor current is 1.77A RMS (0.11 Ohm sense resistors), but the TMC21xx/TMC2208 SilentStepSticks can only be used up to 1.2A RMS.
Inom = Irms = (Vref * 1.77A) / 2.5V = Vref * 0.71
Vref = (Irms * 2.5V) / 1.77A = Irms * 1.41 = Imax
On some stepper motor drivers the maximum current (e.g. A4988) is set via Vref and on others the RMS current (e.g. TMC2xxx).4
TMC2209: A small heat sink placed on the top PCB side is suitable for currents up to 1A RMS. For higher currents use a heat sink that nearly fills the top PCB side and a cooling fan.4
For NEMA 17 motors from 3D printers the current is in general in the range of 0.5A to 0.8A RMS, which is a reference voltage (Vref) of 0.7V to 1.1V.4 This information and their calculator lead to believe that the vref should be equal to Imax on a TMC22xx which is the opposite of the previous statement.
5- remount the fan
you will experience a little issue with the dissipators, they are too long. You will need to bend a little the fan bracket. The fan will push on the dissipators, but no moving part will be in contact and also the dissipator are mounted on the board not on an IC circuit so no risk or breaking something .
Ideally, I want to change the way the fan works there , I am still at choosing between two possibilities :
https://www.thingiverse.com/thing:3399134
https://www.thingiverse.com/thing:4182423
6- Test
Small step test would be :
- put your i3 Mega bottom down 😉
- put your Y and X axis in the middle
- start your i3 Mega
- test the axis with the menu tools/axis, first with +/- 0.1 then 1 then 10
- test the stop motor funtion and see if you can manually move axis.
From there you should see if X, Y and Z are moving in the right direction.
You can then do an extrusion calibration as a test.
if all is good you can stop your i3, close the lead and start printing.
If motor does not move or not in the right direction, your wiring is bad. It could be simply a wire that got loose in the connector and you need to bend the safety pin to avoid him to slip away, or wrong order.
7- Reverse the lid and close
The next step to help cooling is to reverse the lid. You need to measure the position of the holes on the sides and drill 2 new aholes for that or just leave the center unattached.
References
- 1.Jak Wyciszyć Drukarkę 3D? – TMC2208, TMC2209 – DrukArtki #5. youtube. https://www.youtube.com/watch?v=efpZR1sLH6o.
- 2.Eryone TMC2209 V3.0. Eryone. https://www.eryone.com/TMC2209/show/83.html.
- 3.Definitive TMC2208 Vref settings . thingiverse.com. https://www.thingiverse.com/groups/anycubic-i3-mega/forums/general/topic:35708.
- 4.how-to-set-the-stepper-motor-current. watterott. https://learn.watterott.com/silentstepstick/faq/#how-to-set-the-stepper-motor-current.
What you’re referring with “v3.0” is the revision of the BOARD supplying the 2209 chip. So, in your case, Eryone’s PCB.
There is NO TMC2209 v3.0. According to Trinamic’s datasheet, the latest chip version is 1.03. See https://www.trinamic.com/fileadmin/assets/Products/ICs_Documents/TMC2209_Datasheet_V103.pdf, last page.
Telling about “TMC2209 v3.0” is exactly the same than saying “a direct-drive extuder is a direct extruder” : a misnomer, technical error. 😉
you are correct, this is the Eryone board revision, not the actual chip revision.
So did you end up leaving your vref at 1.06 for all the motors? Some others say to do 1.25 for the extruder and 1.15 for everything else. What are your thoughts on this?
I indeed kept the 1.06 value for all steppers as in my case they where all the same. It can happen on some printer that some steppers are different and might need a different setting.
From what I get, you did a simple drop in replacement of the drivers without modifying the firmware. Is this correct?
I’m looking to upgrade to TMC2209 drivers with UART which will require me to flash the firmware and connect a wire loom to work properly.
I’m wondering if you might have changed to the UART setup since you posted this.
I choose to keep it simple and left the UART aside.