5x5
dijkstrw·5x5·schematic/5x5.kicad_pcb
About the 5x5 PCB
5x5 is an open source STM32 PCB design by dijkstrw, published on GitHub under the BSD-3-Clause license. It is a 2-layer board measuring 100 × 100 mm, with 85 components from 24 distinct parts.
Its main chip is the STM32F103C8, from the STM32 family. Other key parts include the MAX3207E and LD1117S33CTR. By type, the board carries 28 diodes, 25 switches, 13 capacitors, 11 resistors, 3 ICs and 3 connectors.
It belongs with the keyboards designs in this gallery.
From the project
A custom 5x5 keyboard
This is my first custom keyboard, a 5x5 cherry mx matrix based on the STM32F1 with libopencm3. The project contains firmware, schematics and a board layout in kicad.
This project is intended as a platform for custom keyboard development. It supports: - usb keyboard scancodes - bios boot and nkro - system / consumer codes - generation of mouse events - usb serial interface - an automouse mode for fast-clicking - programmable macro keys via serial - storing current configuration in "userflash"

Main components on the 5x5
5x5 bill of materials (BOM)
85 components, 24 distinct parts.
| Qty | Part | Footprint | Refs |
|---|---|---|---|
| 1 | MAX3207E | SOT-23-6 | U1 |
| 1 | STM32F103C8 | LQFP-48_7x7mm_Pitch0.5mm | U2 |
| 1 | LD1117S33CTR | SOT-223 | U3 |
| 1 | 16M | Crystal_HC49-U_Vertical | Y1 |
| 1 | USB-B | FCI-10118193-0001LF | P2 |
| 1 | I2CI | Harwin-M702-230642 | P5 |
| 1 | I2CO | Harwin-M702-230642 | P6 |
| 25 | SW | CHERRY_PCB_100H | SW11, SW12, SW13, SW14, SW15, SW21, SW22, SW23 +17 |
| 3 | Led_Small | LED-0805 | D1, D2, D3 |
| 25 | 1N4148 | CHERRY_MX_DIODE | D11, D12, D13, D14, D15, D21, D22, D23 +17 |
| 1 | bead | C_0805 | L1 |
| 1 | 100n | C_1206 | C1 |
| 2 | 10u | C_1206 | C2, C12 |
| 5 | 100n | C_0805 | C3, C4, C5, C11, C13 |
| 2 | 1u | C_1206 | C6, C10 |
| 1 | 1n | C_1206 | C7 |
| 2 | 20p | C_0805 | C8, C9 |
| 1 | 10k | R_0805 | R1 |
| 1 | 0 | R_0805 | R2 |
| 2 | 22 | R_0805 | R3, R4 |
Show 4 more
| Qty | Part | Footprint | Refs |
|---|---|---|---|
| 3 | 1k | R_0805 | R5, R6, R7 |
| 1 | 1k5 | R_0805 | R8 |
| 1 | 33 | R_0805 | R9 |
| 2 | 4k7 | R_0805 | R10, R11 |
5x5 design files
The KiCad project lives in the dijkstrw/5x5 repository on GitHub; these links point at the commit this page was built from.
- Layoutschematic/5x5.kicad_pcb
5x5: common questions
What microcontroller does the 5x5 use?
The 5x5 is built around the STM32F103C8, from the STM32 family.
How big is the 5x5 PCB?
The 5x5 measures 100 × 100 mm, has 2 copper layers and is 1.6 mm thick.
How many components are on the 5x5?
85 components, from 24 distinct parts. The full bill of materials is listed on this page.
Where can I download the 5x5 design files?
From the dijkstrw/5x5 repository on GitHub, which has the KiCad layout; the links under Design files point to each one.
Can I use the 5x5 design in my own project?
Yes, under the terms of its BSD-3-Clause license, which dijkstrw chose for the repository.
Can I test firmware for the 5x5 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
Type g
google
169 × 30 mm24 parts2LApache-2.02.9kSTM32
Base
google
52.3 × 52.3 mm36 parts2LApache-2.02.9kSTM32
Type a
google
150 × 30 mm14 parts2LApache-2.02.9kSTM32
Main panel
google
234 × 84 mm26 parts4LApache-2.02.9kSTM32
Type c
google
188 × 30 mm17 parts2LApache-2.02.9k