Skip to the content
2 layers41 × 31 mmSTM32, the printed circuit board in 3D

STM32F103 microcontroller board designed in KiCad – schematic, PCB layout and fabrication files

Size
41 × 31 mm
Copper layers
2
Thickness
1.6 mm
Parts
32
Nets
50
Pads
132
Tracks, vias
213, 25
Pours
4
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
16 Oct 2026
Updated
16 Oct 2026

Overview

STM32 is an open-source printed circuit board by micahpinto, from the micahpinto/stm32-dev-board repository on GitHub, published under the MIT licence. It is a 2-layer board of 41 × 31 mm with 32 parts on 50 nets, routed with 213 tracks and 25 vias.

It is built around the STM32F103C8T6 and AMS1117-3.3. Its parts include 13 capacitors, 5 resistors, 4 connectors, 2 ICs and 1 diode. It belongs with the microcontroller boards boards and the STM32 boards of this library.

Main components

2

README

README.md

STM32 Development Board

A compact 2-layer development board based on the STM32F103C8T6 microcontroller, designed in KiCad. Designed during my Master's as a hands-on project in microcontroller hardware and PCB design.

Status: Hardware design complete.

PCB 3D view

Features

  • MCU: STM32F103C8T6 (Arm Cortex-M3, 72 MHz, 64 KB Flash, 20 KB SRAM, LQFP48)
  • USB: Micro-B connector for 5 V power and USB full-speed device (1.5 kΩ pull-up on D+)
  • Power: AMS1117-3.3 LDO regulator (5 V USB input → 3.3 V)
  • Clock: 16 MHz HSE crystal with 10 pF load capacitors
  • Analog supply: VDDA filtered with a 120 Ω ferrite bead and decoupling capacitors
  • Programming: SWD header (3V3, SWDIO, SWCLK, GND)
  • Boot mode: BOOT0 slide switch to select the built-in bootloader
  • Interfaces: UART and I2C headers (with 1.5 kΩ I2C pull-ups)
  • Indicators: Red power LED
  • Mechanical: 4 × M2 mounting holes

MCU Pinout

FunctionPins
SWDPA13 (SWDIO), PA14 (SWCLK)
HSE crystalPD0 (OSC_IN), PD1 (OSC_OUT)
USBPA11 (D−), PA12 (D+)
USART1PB6 (TX), PB7 (RX)
I2C2PB10 (SCL), PB11 (SDA)

STM32 pinout

Schematic

Schematic

PCB Layout

PCB layout

Design Process

  1. Pin planning: configured SWD, HSE crystal, USB, UART and I2C in STM32CubeMX
  2. Schematic: MCU with 100 nF decoupling per supply pin plus bulk capacitance, ferrite-bead filtered VDDA, crystal load capacitors calculated from the crystal's load capacitance and estimated stray capacitance, USB D+ pull-up, LDO with input/output capacitors, BOOT0 switch
  3. ERC: electrical rules check passed
  4. Footprint assignment: 0402/0603/0805 SMD passives, 3D model added for the USB connector
  5. PCB layout: 2-layer board, solid ground plane on the bottom layer, decoupling capacitors placed close to each supply pin, crystal and load capacitors placed close to the MCU
  6. Routing: USB D+/D− routed as a short differential pair, 0.3 mm signal traces, 0.5 mm power traces, ground vias and copper pours around the regulator
  7. DRC: design rules check passed against the manufacturer's capabilities
  8. Fabrication outputs: Gerber file, drill file, BOM and component placement file

Programming Interface

  • SWD: connect an ST-Link to the SWD header for programming and debugging.
  • Bootloader: set BOOT0 high, reconnect power, then flash. Set BOOT0 back low to run the program.

Repository Contents

FolderContents
Hardware/KiCad project, schematic, PCB and custom footprint library
Firmware/stm32_pinout/STM32CubeMX pin configuration (stm32_pinout.ioc)
Fabrication/Gerber files, drill file, BOM, placement file, schematic PDF
images/Renders and screenshots

Tools

  • KiCad 6.0
  • STM32CubeIDE / STM32CubeMX

References

Parts

32
QtyValueFootprintReferences
5100nCapacitor_SMD:C_0402_1005MetricC1, C2, C3, C4, C8
41k5Resistor_SMD:R_0402_1005MetricR2, R3, R4, R5
4MountingHoleMountingHole:MountingHole_2.2mm_M2H1, H2, H3, H4
3Conn_01x04_PinConnector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ2, J3, J4
210pCapacitor_SMD:C_0402_1005MetricC9, C10
21µCapacitor_SMD:C_0402_1005MetricC6, C7
222µCapacitor_SMD:C_0805_2012MetricC11, C12
110kResistor_SMD:R_0402_1005MetricR1
110nCapacitor_SMD:C_0402_1005MetricC5
110µCapacitor_SMD:C_0603_1608MetricC13
1120RInductor_SMD:L_0603_1608MetricFB1
116MHzCrystal:Crystal_SMD_3225-4Pin_3.2x2.5mmY1
1AMS1117-3.3Package_TO_SOT_SMD:SOT-223-3_TabPin2U2
1REDLED_SMD:LED_0603_1608MetricD1
1STM32F103C8T6Package_QFP:LQFP-48_7x7mm_P0.5mmU1
1SW_SPDTLibrary:SW_SPDT_PCM12SW1
1USB_B_MicroConnector_USB:USB_Micro-B_Wuerth_629105150521J1

Similar boards

  • 2 layers68 × 40 mmStm32-io extend, the printed circuit board in 3D

    Stm32-io extend

    hardenedlinux/cheap-pcb

    Cheap PCB: Better understanding the current status of hardware supply chain

    44 parts170CC0-1.0
  • 2 layers99.1 × 58.4 mmHEAT, the printed circuit board in 3D

    HEAT

    milar111/HEAT

    An open-source STM32 SMD assembly station for precision soldering. Uses a custom Smart Pulse & Coast algorithm to drive 400W mains heaters via SSR. Features OLED UI, NTC feedback, and safety cooling.

    57 parts9
  • 2 layers71.3 × 25.4 mmUSB DALI, the printed circuit board in 3D

    USB DALI

    even-notodd/USB-DALI

    USB-DALI interface converter

    43 parts4
  • 2 layers78 × 60 mmDC Motor Controller, the printed circuit board in 3D

    DC Motor Controller

    minhle4397/Line-Follower-Robot-v2

    Improved Hardware and Firmware for Line Follower Robot

    53 parts3
  • 4 layers36 × 36 mmTrackMAG, the printed circuit board in 3D

    TrackMAG

    mupfdev/TrackMAG

    An open hardware development board primarily intended for the development of accessible input devices.

    58 parts3
  • 2 layers154.7 × 113 mmDeskMixer, the printed circuit board in 3D

    DeskMixer

    RaduAndre/DeskMixer

    DeskMixer is a software that allows control of application volumes with real sliders, and action mapping on buttons using arduino like platforms. The project was inspired originally by deej.

    113 parts3
  • 2 layers42 × 33 mmSTM32 course, the printed circuit board in 3D

    STM32 course

    abda-s/STM32-Phill-s-Lab-PCB-Course

    A beginner-friendly introduction to STM32 hardware design and KiCad

    32 parts2
  • 2 layers53.3 × 35.6 mmStm32 minimal dev, the printed circuit board in 3D

    Stm32 minimal dev

    amrithHN/stm32_minimal_dev

    stm32 based minimal dev board

    33 parts2GPL-3.0

Questions

How big is the STM32 PCB?

It measures 41 × 31 mm and has 2 copper layers, 1.6 mm thick.

What parts does the STM32 use?

32 parts, built around the STM32F103C8T6 and AMS1117-3.3. 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.

Where can I download the STM32 KiCad files?

From the micahpinto/stm32-dev-board repository on GitHub, at the commit this page was made from: the board is Hardware/STM32.kicad_pcb and its schematic Hardware/STM32.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the STM32 design in my own project?

Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).