
3D Printer Mainboard STM32
m47812/Custom-3D-Printer-Controller
A fully custom 3D Printer controller board based on an stm32f7 controller with TMC2209 stepper drivers

A fully custom 3D Printer controller board based on an stm32f7 controller with TMC2209 stepper drivers
Mupi is an open-source printed circuit board by m47812, from the m47812/Custom-3D-Printer-Controller repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 50 × 130 mm with 84 parts on 61 nets, routed with 497 tracks and 68 vias.
It is built around the GZ2012D101TF. Its parts include 37 resistors, 16 capacitors, 15 switches, 8 diodes and 1 IC. It belongs with the robots and motor control boards and the STM32 and AVR (ATmega, ATtiny) boards of this library.
A fully custom 3D Printer controller board based on a stm32f7 controller with TMC2209 stepper drivers
This Repo contains the design files for a fully custom 3D printer controller board. It is equipped with an STM32F7 Controller and uses custom-made TMC2209 Driver PCBs (also included in the Repo). The PCB was designed for using JLCPCBs Assembly service, so most of the SMD parts can directly be assembled by them. The Controller PCB is a two layer board, which makes production for hobby projects more affordable.
The Project contains 3 Folders with KiCad design files.
I designed this 3D printer controller as a hobby project, for my own 3D printer. The original plan was to build a custom hardware and custom firmware. Throughout the project my colleague and I have moved to a different printer design which resulted in the stop of the firmware project. The PCB was produced at JLCPCB and I did some tests with it. I've decided to make the project open source for anyone who would like to build their own 3D printer electronics. The project may serve as a starting point or something to enhance, modify and customize.
Since the project was not continued on the firmware side, I did not have the possibility of testing all features to a full degree. My tests manly focused on using the
the motor drivers together with the STM32. I haven't found any problems so far with the PCB, but I would advise looking over it yourself before you order it.
I would recommend using the board with Marlin firmware. It will require some manual adaptations to be able to use Marlin. Since I haven't used Marlin in my own project, I can not provide these adaptations here.
| Qty | Value | Footprint | References |
|---|---|---|---|
| 16 | 100n | Capacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolder | C101, C102, C103, C104, C105, C201, C202, C203, C204, C205, C206, C207, C208, C209, C210, C211 |
| 13 | 1k | Resistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolder | R201, R203, R204, R205, R206, R211, R214, R215, R216, R217, R218, R219, R224 |
| 11 | 100k | Resistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolder | R202, R207, R208, R209, R210, R212, R220, R221, R222, R223, R225 |
| 10 | Button | Button_Switch_SMD:SW_SPST_TL3342 | SW201, SW203, SW204, SW205, SW209, SW210, SW211, SW212, SW213, SW214 |
| 8 | 1.5k | Resistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolder | R301, R302, R303, R304, R305, R306, R307, R308 |
| 7 | LED | LED_THT:LED_D3.0mm | D302, D303, D304, D305, D306, D307, D308 |
| 4 | 10k | Resistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolder | R101, R102, R103, R104 |
| 4 | MountingHole_Pad | MountingHole:MountingHole_3.2mm_M3_Pad_Via | H101, H102, H103, H104 |
| 1 | 2k | Resistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolder | R213 |
| 1 | 74HCS595 | Package_SO:SOIC-16_3.9x9.9mm_P1.27mm | U301 |
| 1 | Arduino_Nano_v3.x | Module:Arduino_Nano | A101 |
| 1 | GZ2012D101TF | Resistor_SMD:R_0805_2012Metric | FB101 |
| 1 | Hand | Button_Switch_SMD:SW_SPST_TL3342 | SW202 |
| 1 | LED | LED_SMD:LED_0603_1608Metric | D301 |
| 1 | Rotary_Encoder | Rotary_Encoder:RotaryEncoder_Alps_EC12E_Vertical_H20mm | SW101 |
| 1 | Screw_Terminal_01x06 | TerminalBlock_Phoenix:TerminalBlock_Phoenix_MPT-0,5-6-2.54_1x06_P2.54mm_Horizontal | J101 |
| 1 | X | Button_Switch_SMD:SW_SPST_TL3342 | SW206 |
| 1 | Y | Button_Switch_SMD:SW_SPST_TL3342 | SW207 |
| 1 | Z | Button_Switch_SMD:SW_SPST_TL3342 | SW208 |
It measures 50 × 130 mm and has 2 copper layers, 1.6 mm thick.
84 parts, built around the GZ2012D101TF. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
From the m47812/Custom-3D-Printer-Controller repository on GitHub, at the commit this page was made from: the board is 3D_Printer_Handheld/Mupi.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.
Its repository publishes it under the GPL-3.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

m47812/Custom-3D-Printer-Controller
A fully custom 3D Printer controller board based on an stm32f7 controller with TMC2209 stepper drivers

m47812/Custom-3D-Printer-Controller
A fully custom 3D Printer controller board based on an stm32f7 controller with TMC2209 stepper drivers



ts-manuel/iMX6-Demo-Board
Demo board for the i.MX6ULL Single-Core Processor with Arm Cortex-A7 Core

partio-scout/scoms-tacnpr
TACNPR by Scoms -- Open hardware high-speed Ethernet/IP data radio for the 433 MHz HAM band, binary-compatible with the original NPR by F4HDK.

hatlabs/HALMET-hardware
Hat Labs Marine Engine & Tank interface hardware design files



shachi-lab/greaseweazle-v41-plus
Greaseweazle V4.1 based compatible board design for 3.5/5.25-inch FDDs