Trinamic 2660 VS 2209
-
Over the last couple years Trinamic has released a few new stepper drivers to the community. How do these stack up to older drivers like the TMC2660 in the duet wifi for example? One particular chip I'd like to compare to is the TMC2209. Does this chip offer any benefits that would translate directly to print quality in any way? Is the claim that the 2209 is a superior chip have any merit? Is it true that the 2660 is simply a repurposed CNC chip? Does the communications protocol matter for what we're doing (SPI vs UART)? What is the true benefits of StealthChop? When should it be used in favor of SpreadCycle etc?
The purpose of my question is to better understand how stepper drivers are implemented into 32bit microcontroller architectures and whether newer chips are truly better or are there other factors at play such as the quality of implementation.
-
In summary:
- SPI is better than UART (RRF handles both, so we know), in particular it's faster
- TMC2660 handles higher motor current
- TMC2209 supports interpolation to x256 microstepping from any input microstepping; TMC2660 only from x16
- TMC2209 supports standstill current reduction, which IMO is its biggest advantage compared to TMC2660
- StealthChop only exists to reduce noise. If noise isn't that important, it's safer to turn it off, to avoid the risk of missed steps. My TMC2660-powered delta is so quiet during printing that I have to look at it to make sure it is still running - it's only noisy during homing (due to mid-band resonance I think). So personally I don't put much value on stealthChop.
Perhaps best of all is TMC5160, which we use on Duet 3. We use TMC2209 on the Duet 3 Tool Board, where space is important, high current is not, and the lower speed of UART communication doesn't matter.
-
@dc42 said in Trinamic 2660 VS 2209:
TMC2660 only from x16
I have to ask, I hope I'm not polluting the thread too much, how does this interpolation works exactly?
With x16 without interpolation, I do 1 step, it moves a 200 steps/revolution stepper by 1/3200 of revolution. I do another step, it moves another 1/32000.
Now, if I turn interpolation, what happens when I move 1 step? My understanding is that it would now not move by 1/3200 but it will move 16 times 1/51200 of a revolution (effectively moving finally to 1/3200) ? I did not manage to confirm this but it does not make much sense, from a standstill this interpolation would make sense as it would allow for smaller jerk and smoother start but what's the point of that during run?
-
@arhi said in Trinamic 2660 VS 2209:
but what's the point of that during run?
you'll have a current that is a lot closer to a true sine wave resulting in less both electrical and audible noise as well as less variation in tourque. and unicorns.
-
@dc42 how does RRF utilize spi? Why does speed matter?
-
@arhi said in Trinamic 2660 VS 2209:
With x16 without interpolation, I do 1 step, it moves a 200 steps/revolution stepper by 1/3200 of revolution. I do another step, it moves another 1/32000.
That statement does not specify the timing between the steps. The Trinamic chip keeps a "running average" of the rate (e.g. speed) at which steps are arriving, and adjust the 256 substep rate to match as things change. Particularly as they change, in fact. Interpolation is a tiny bit less important when "running steadily" and a tiny bit more important when changing speed. Which 3D printers do a lot.
That is what results in smoother, quieter, motion.
-
Thereis an another difference (related to current vs temperature) :
TMC2209 : typ Rdson 170 milliohms at 25°C
TMC2660 : typ Rdson 63 and 93 milliohms at 25°CIt's explain why the 2660 handle more current, in practice for the same current the 2660 heat less than 2209.
For my printer I had to put fan on TMC2209 and now with the TMC2660 no more fan needed.