Controller boards with integrated TMC drivers

My replicape died, so I’m doing an inventory of all the 32-bit boards I can find in current production (or about to be released) with TMC stepper drivers integrated onto the board, rather than on a “stepstick” or in a completely external pack.

Board CPU Freq Drivers Firmware Current ~Price (USD)
Duet 2 Maestro 120Mhz 5xTMC2224 RRF 1.6A $130
Duet 2 Wifi 120Mhz 5xTMC2660 RRF 2.4A $170
Duet 2 Wifi clone 120Mhz TMC2660 RRF 2.4A $110
Duet 2 Ethernet 120Mhz 5xTMC2660 RRF 2.4A $180
Duet 3 6HC 300 Mhz 6xTMC5160 RRF 4.45A $230
Duet 3 Mini 5+ 120Mhz 5xTMC2209 RRF 1.4A
Kinetica G2C 120 Mhz 4x TMC2209 RRF 2.8A? $79 (wifi)
Prusa Buddy ? 4x TMC2209 Custom Marlin 2 (bootlocked) ? $97
Replicape 1GHz TMC2100 Klipper 1.2A (cooled) $100 + $70 BBB
Smoothieboard v2-prime 204Mhz TMC2660 Smoothieware 2.8A unreleased
Smoothieboard v2-pro 204Mhz 3xTMC2160 / 2xTMC2660 Smoothieware 5A / 2.8A unreleased
BIGTREETECH SKR Mini E3 V1.2 72Mhz 4x TMC2209 Marlin 2.8A? $30
BIGTREETECH SKR Mini E3 V2.0 72Mhz 4x TMC2209 Marlin 2.8A? $45
FYSETC Cheetah v1.1b ? 4x TMC2209 Marlin ? $29
Eryone ??? 72Mhz 5x TMC2208 ? 2A $39? unreleased?

Am I missing any that match those criteria?


Bigtreetech skr mini E3 v1.2. has tmc2209 and an lpc1768. I just did a conversation on my Talos3D Spartan (from the gt2560 it was originally running). Works well, and there is a hack to use the full 512 storage on the chip.

1 Like

Updated, thank you!

Not sure this has been released; I don’t see it on ebay or amazon as suggested in the HaD build log, but I added it to the table anyway.

I wanted to look that up…

This is now implemented upstream in the main Marlin repo. In platformio.ini , you’ll have four environment options:

  • STM32F103RC_bigtree … RCT6 with 256K
  • STM32F103RC_bigtree_USB … RCT6 with 256K (USB)
  • STM32F103RC_bigtree_512K … RCT6 with 512K
  • STM32F103RC_bigtree_512K_USB … RCT6 with 512K (USB)

Here “USB” means exporting both a serial console and also exporting the SD card as a mass storage device; the builds that don’t say “USB” still have the normal serial console.

But see also that it is no longer the default:

I’ve used it with the USB version. Works fine. I think some people were experiencing issues, and I can’t recall the reason. But it’s nice if you’re using octoprint for a printer, because then you can do firmware upgrades by pushing the firmware.bin directly to the SD card from the Pi. Then just reboot, and you’re upgraded when the board loads the bin file.

1 Like

I definitely ran into this problem when using the _USB version to pid tune:

It’s not that hard to move the microsd card back and forth, even if it’s not quite as convenient. The mini-USB (really‽ In 2020‽) cable they sent is too short for my use, and I had put away most of my other mini-USB cables somewhere.

Oh, look, someone figured out why. Nifty! So when I’m done tuning I can put it back.

@Eclsnowman do you know the current capacity of the Kinetica G2C? Is that what you mentioned having one of at Replacing Herculien controller board - what is the best choice in 2020 ? Do they have other boards with integrated drivers that you know of?

It uses the TMC 2209 drivers, so I assume current would be limited by those. I’m not using it currently on my Eustathios or HercuLien. It’s currently in my Delta printer. But it’s working really well there. But I am using an Aztec X5 Mini with socketed TMC 2209’s from Panucatt on my BoxR printer and current hasn’t been an issue there, and the XY gantry on that one has a bit of weight. I’m using it entirely in stealth shop with no skip steps.

I’m really liking the G2C board on the Delta, and having the paneldue certainly is nice. Although honestly I find I run it from my web browser way more than from the touch screen, so I think that that cost could be avoided if you didn’t need to run it at the machine. And Roy has an adapter for the G2C board that allows you to run a standard graphical LCD.

1 Like

1 Like

Well, current limit is basically always max(chipsetLimit, implementationThermalMax) so it’s unlikely to be more than 2.8A but I don’t know the thermal analysis that Panucatt has done for their implementation. So I’d rather not put a guess there that Panucatt isn’t standing behind. I tried to only put current limits into the table that I could find documentation of some sort that came from what I understood to be someone responsible for design… :slight_smile:

But overall, integrated was precisely because it’s usually better for overall current capacity at least if done right; the massive heatsinks on the high-current stepsticks feel to me like a hack.

I’ve added a firmware column to the table. Probably a bunch of these can run multiple firmwares and I should update the table.

The G2C has some nice vias and heat sinking pads so I think it should be able to push the current as far as is reasonable with those drivers anyway. I like socketed drivers for the ability to swap them out when the new hotness comes along. But I agree there really isn’t a substitute for the thermals you get with nice integrated stepper drivers on a board with good heat sinking capacity.

That’s one reason I’ve always appreciated Roy’s hardware designs, they’re built like a brick $#!+ house. I’ve overdriven the MOSFET for one of my heated beds at 24 volts with one of his boards for more than 5 years, with zero issues. I keep telling myself as soon as it fails I’m going to switch that particular printer over to an SSR with 120-volt bed. But it just refuses to die even though I’m running the bed at around 130% of its rated capacity.

1 Like

Good enough, “2.8A?” makes sense to me then. It seems unlikely that Roy did less work on thermal management than BTT, given their relative reputations! :wink:

The only difficulty with Roy is that sometimes he can go MIA for a little while from a support standpoint. Less so for me because I know a few more ways of getting a hold of him, and I worked with them on projects and testing a lot of his prototype boards for years. But I think being a small shop and having to do all the work himself (design, documentation, tech support, sales, etc) sometimes taxes his energy. Good thing is there’s a lot of resources out there and for the most part most of my questions end up being software related not hardware anyway.

1 Like

10 posts were merged into an existing topic: Cantilever printer design based on leftovers

BTT is coming out with a new version of SKR MINI, V2. Hardware UART support for the 2209 instead of bit-banging, four layer board with better thermal handling, protection from shorted thermistor, and more. Looks like still mini-usb instead of micro.

Unfortunately they are still mixing port pinout, which makes it hard for grbl-LPC. Only stepper channels X, Y and E0 would probably work.

Works fine for Marlin, though! When I glanced at grbl-LPC source it looked like changing some macros to functions and building them out would be all that would be required to add that functionality, but I didn’t need to do it so I didn’t go down that rabbit hole. :slight_smile:

Sure it would be possible to rewrite grbl-LPC, but it would be a lot of work and move it far away from the upstream branch. On the hardware side it would be rather simple to just use different pins and route them accordingly (if BTT was aware of the problem).

Noting that this is in the 3D Printing: Electronics category — is grbl-LPC normally used for 3D printers?