The movements made by a 3D printer may look simple, but they’re actually quite complicated to coordinate. The G-code instructions that tell the printer what to do may say something akin to “make a 50 millimeter radius arc from point A to point B,” but the 3D printer’s firmware has to interpret that, along with settings like acceleration and extrusion rate, and use the information to tell the stepper motors exactly how much to move. If your 3D printer is open source then you have a few options for firmware, and Marlin is one of the most popular. And now you can run it on a 32-bit STM32 microcontroller.
The STMicroelectronics STM32 line of MCUs are based on the Arm Cortex-M series of processors. The STM32F103VCT6 chip used for this project has an ARm Cortex-M3 running at 72MHz, and is much more capable than the 8-bit MCU that are usually used to run Marlin. To use the more powerful MCU, Hackaday.io user Robert built a custom 3D printer control board as well as the firmware to run it. That custom board only ends up costing a little bit more than regular 8-bit boards, but is much more robust.
Aside from the STM32 microcontroller, the board has five TMC2208 silent stepper motor drivers built in, as well as all of the standard connections you’d expect on a modern 3D printer control board. That includes support for dual extruders, a 400 watt heated bed, power loss-detection, a micro USB connection, a MicroSD card slot, digital current control, endstops, and auto-leveling probes. The control board and firmware are both open source, and the firmware can be installed with an easy-to-use IDE tool. If you want to run Marlin on a 32-bit processor, this is a exactly what you’re looking for.