BLDC-Motor-Controller-STM32
yussufadel8·BLDC-Motor-Controller-STM32
About the BLDC-Motor-Controller-STM32 PCB
BLDC-Motor-Controller-STM32 is an open source STM32 PCB design by yussufadel8, published on GitHub under the MIT license. It is a 2-layer board measuring 85 × 65 mm, with 128 components from 38 distinct parts.
Its main chip is the STM32F103RDTx, from the STM32 family. Other key parts include the Buck Converter, AMS1117-3.3, STM32G431C8Tx, CH340C and IR2104. By type, the board carries 51 capacitors, 40 resistors, 9 diodes, 8 ICs, 6 transistors and 5 connectors.
It belongs with the robotics & motion, usb & debug tools and power & battery designs in this gallery.
From the project
Two-layer 3-phase BLDC controller in KiCad — STM32G431 FOC MCU with on-board STM32F103 SWD debugger, IR2104 half-bridges, and 3-shunt current sensing via the G431's internal op-amps.
A three-phase BLDC motor driver board designed in KiCad 10. The board pairs an STM32G431 motor-control MCU with an on-board STM32F103 debug/programmer bridge, three IR2104-driven half-bridges, and low-side shunt current sensing on all three phases.
The schematic is hierarchical, rooted at BLDCProject.kicadsch:
- CH1 / CH2 / CH3 — PWM inputs to the three gate drivers - SD — global shutdown to all IR2104s - ISENS{U,V,W}{P,N} — differential shunt taps; ISENSOP are the op-amp outputs - PHASE{U,V,W} — half-bridge outputs to the motor terminal - BATTSENS — battery voltage divider to ADC -…

Main components on the BLDC-Motor-Controller-STM32
BLDC-Motor-Controller-STM32 bill of materials (BOM)
128 components, 38 distinct parts.
| Qty | Part | Footprint | Refs |
|---|---|---|---|
| 1 | Buck Converter | SOIC-8-1EP_3.9x4.9mm_P1.27mm_EP2.29x3mm_ThermalVias | U1 |
| 1 | AMS1117-3.3 | SOT-223-3_TabPin2 | U2 |
| 1 | STM32F103RDTx | LQFP-64_10x10mm_P0.5mm | U3 |
| 1 | STM32G431C8Tx | LQFP-48_7x7mm_P0.5mm | U4 |
| 1 | CH340C | SOIC-16_3.9x9.9mm_P1.27mm | U5 |
| 3 | IR2104 | SOIC-8_3.9x4.9mm_P1.27mm | U6, U7, U8 |
| 6 | RU3560L | TO-252-2 | Q1, Q2, Q3, Q4, Q5, Q6 |
| 2 | 8Mhz | Crystal_SMD_5032-2Pin_5.0x3.2mm_HandSoldering | Y1, Y2 |
| 1 | Battery Connector | DEANS | J1 |
| 1 | Conn_01x04_Pin | PinHeader_1x04_P2.54mm_Horizontal | J2 |
| 1 | Screw_Terminal_01x03 | TerminalBlock_MetzConnect_Type703_RT10N03HGLU_1x03_P9.52mm_Horizontal | J3 |
| 2 | USB_B_Micro | USB_Micro-B_Wuerth_629105150521 | J4, J5 |
| 1 | Fuse_Small | FUSE_0154004.DR | F1 |
| 2 | SW_SPDT | SS-12D10G5_XKB | SW1, SW2 |
| 6 | 1N5819WS | D_SOD-323 | D1, D3, D4, D9, D10, D11 |
| 3 | RED | LED_0603_1608Metric_Pad1.05x0.95mm_HandSolder | D2, D6, D7 |
| 2 | FerriteBead | L_0805_2012Metric_Pad1.05x1.20mm_HandSolder | FB1, FB2 |
| 2 | 68uH | IND_SIDMP-SP0730-100M | L1, L2 |
| 2 | 470uF | CAPPRD350W60D800H2000 | C1, C2 |
| 9 | 1uF | C_0805_2012Metric_Pad1.18x1.45mm_HandSolder | C3, C19, C20, C29, C30, C32, C39, C47 +1 |
Show 18 more
| Qty | Part | Footprint | Refs |
|---|---|---|---|
| 5 | 10uF | C_0805_2012Metric_Pad1.18x1.45mm_HandSolder | C4, C5, C16, C23, C40 |
| 4 | 10nF | C_0805_2012Metric_Pad1.18x1.45mm_HandSolder | C6, C18, C28, C31 |
| 1 | 1.5nF | C_0603_1608Metric_Pad1.08x0.95mm_HandSolder | C7 |
| 4 | 22uF | C_0805_2012Metric_Pad1.18x1.45mm_HandSolder | C8, C9, C12, C13 |
| 19 | 100nF | C_0805_2012Metric_Pad1.18x1.45mm_HandSolder | C10, C11, C14, C15, C17, C24, C25, C26 +11 |
| 4 | 22pF | C_0805_2012Metric_Pad1.18x1.45mm_HandSolder | C21, C22, C34, C35 |
| 3 | 1uF | C_1210_3225Metric_Pad1.33x2.70mm_HandSolder | C42, C48, C50 |
| 1 | 100K | R_1206_3216Metric_Pad1.30x1.75mm_HandSolder | R1 |
| 2 | 43K | R_1206_3216Metric_Pad1.30x1.75mm_HandSolder | R2, R4 |
| 13 | 10K | R_0805_2012Metric_Pad1.20x1.40mm_HandSolder | R3, R5, R6, R16, R18, R21, R25, R26 +5 |
| 3 | 1k | R_1206_3216Metric_Pad1.30x1.75mm_HandSolder | R7, R13, R14 |
| 1 | 1R | R_1210_3225Metric_Pad1.30x2.65mm_HandSolder | R8 |
| 4 | 1.5K | R_0805_2012Metric_Pad1.20x1.40mm_HandSolder | R17, R31, R32, R33 |
| 3 | 22K | R_1206_3216Metric_Pad1.30x1.75mm_HandSolder | R19, R27, R29 |
| 3 | 2.2K | R_0805_2012Metric_Pad1.20x1.40mm_HandSolder | R20, R28, R30 |
| 6 | 10R | R_0805_2012Metric_Pad1.20x1.40mm_HandSolder | R22, R23, R34, R35, R39, R40 |
| 3 | R010 | R_2512_6332Metric_Pad1.40x3.35mm_HandSolder | R24, R38, R43 |
| 1 | 47k | R_0805_2012Metric_Pad1.20x1.40mm_HandSolder | R44 |
BLDC-Motor-Controller-STM32 design files
The KiCad project lives in the yussufadel8/BLDC-Motor-Controller-STM32 repository on GitHub; these links point at the commit this page was built from.
- LayoutBLDC_Project.kicad_pcb
- SchematicBLDC_Project.kicad_sch
BLDC-Motor-Controller-STM32: common questions
What microcontroller does the BLDC-Motor-Controller-STM32 use?
The BLDC-Motor-Controller-STM32 is built around the STM32F103RDTx, from the STM32 family.
How big is the BLDC-Motor-Controller-STM32 PCB?
The BLDC-Motor-Controller-STM32 measures 85 × 65 mm, has 2 copper layers and is 1.6 mm thick.
How many components are on the BLDC-Motor-Controller-STM32?
128 components, from 38 distinct parts. The full bill of materials is listed on this page.
Where can I download the BLDC-Motor-Controller-STM32 design files?
From the yussufadel8/BLDC-Motor-Controller-STM32 repository on GitHub, which has the KiCad layout and the schematic; the links under Design files point to each one.
Can I use the BLDC-Motor-Controller-STM32 design in my own project?
Yes, under the terms of its MIT license, which yussufadel8 chose for the repository.
Can I test firmware for the BLDC-Motor-Controller-STM32 without the hardware?
Yes. HardLabs builds a simulation of the board from its netlist and BOM, so you can run and debug STM32 firmware against it before you order a PCB.
Similar boards
STM32
LumenPnP Motherboard
opulo-inc
149 × 95 mm296 parts4LCC-BY-SA-4.03.7kSTM32
AxxSolder
AxxAxx
39 × 82.5 mm122 parts2LGPL-3.01.7kSTM32
LibreVNA
jankae
122 × 98 mm592 parts6LGPL-3.01.6kSTM32
AIOC
skuep
21 × 31.5 mm47 parts2LMIT1.4kSTM32
Ferris
pierrechevalier83
208.8 × 86.8 mm102 parts2LSHL-2.11.3kSTM32
176 pin board
rusefi
61.8 × 73.2 mm76 parts2LGPL-3.01.2k