Keyboard

brainsmoke·keyboard·pcb/project/project.kicad_pcb

Keyboard PCB layout, top view — open source STM32 board by brainsmoke
Simulate this board

About the Keyboard PCB

Keyboard is an open source STM32 PCB design by brainsmoke, published on GitHub. It is a 2-layer board measuring 357 × 125 mm, with 310 components from 293 distinct parts.

Its main chip is the C81720, from the STM32 family. Other key parts include the C7519, C51118 and C2678539. By type, the board carries 88 switches, 87 LEDs, 87 diodes, 17 capacitors, 15 resistors and 14 ICs.

It belongs with the keyboards designs in this gallery.

From the project

TODO: find keycaps which look good with AND without backlight

Keyboard, from the project README
From the project README

Main components on the Keyboard

Keyboard bill of materials (BOM)

310 components, 293 distinct parts — part numbers from the project's BOM.

QtyPartRefs
1
C7519
USBLC6-2SC6
U1
1
C81720
STM32F072C8Tx
U2
1
C51118
AP2112K-3.3
U3
1
C2678539
TLC5916_0
U4
1
C2678539
TLC5916_1
U5
1
C2678539
TLC5916_2
U6
1
C2678539
TLC5916_3
U7
1
C2678539
TLC5916_4
U8
1
C2678539
TLC5916_5
U9
1
C2678539
TLC5916_6
U10
1
C2678539
TLC5916_7
U11
1
C2678539
TLC5916_8
U12
1
C2678539
TLC5916_9
U13
1
C2678539
TLC5916_10
U14
1
C165948
USB_C_Receptacle_USB2.0
J1
1
Conn_01x03_Male
J2
1
key_esc
SW1
1
key_tilde
SW2
1
key_leftcontrol
SW3
1
key_tab
SW4
Show 273 more
QtyPartRefs
1
key_capslock
SW5
1
key_leftshift
SW6
1
key_1
SW7
1
key_fn
SW8
1
key_q
SW9
1
key_a
SW10
1
key_f1
SW11
1
key_2
SW12
1
key_z
SW13
1
key_w
SW14
1
key_alt
SW15
1
key_s
SW16
1
key_f2
SW17
1
key_3
SW18
1
key_x
SW19
1
key_e
SW20
1
key_d
SW21
1
key_f3
SW22
1
key_4
SW23
1
key_c
SW24
1
key_r
SW25
1
key_f
SW26
1
key_f4
SW27
1
key_5
SW28
1
key_v
SW29
1
key_t
SW30
1
key_g
SW31
1
key_6
SW32
1
key_b
SW33
1
key_space
SW34
1
key_f5
SW35
1
key_y
SW36
1
key_h
SW37
1
key_7
SW38
1
key_n
SW39
1
key_f6
SW40
1
key_u
SW41
1
key_j
SW42
1
key_8
SW43
1
key_m
SW44
1
key_f7
SW45
1
key_i
SW46
1
key_k
SW47
1
key_9
SW48
1
key_comma
SW49
1
key_f8
SW50
1
key_o
SW51
1
key_l
SW52
1
key_0
SW53
1
key_altgr
SW54
1
key_dot
SW55
1
key_p
SW56
1
key_semicolon
SW57
1
key_f9
SW58
1
key_minus
SW59
1
key_slash
SW60
1
key_win
SW61
1
key_openbracket
SW62
1
key_quote
SW63
1
key_f10
SW64
1
key_equals
SW65
1
key_closebracket
SW66
1
key_menu
SW67
1
key_f11
SW68
1
key_rightshift
SW69
1
key_enter
SW70
1
key_backspace
SW71
1
key_backslash
SW72
1
key_rightcontrol
SW73
1
key_f12
SW74
1
key_printscreen
SW75
1
key_insert
SW76
1
key_delete
SW77
1
key_left
SW78
1
key_scrollock
SW79
1
key_home
SW80
1
key_end
SW81
1
key_up
SW82
1
key_down
SW83
1
key_pause
SW84
1
key_pageup
SW85
1
key_pagedown
SW86
1
key_right
SW87
1
C318893
SW_SPST
SW88
1
LED_esc
LED1
1
LED_tilde
LED2
1
LED_leftcontrol
LED3
1
LED_tab
LED4
1
LED_capslock
LED5
1
LED_leftshift
LED6
1
LED_1
LED7
1
LED_fn
LED8
1
LED_q
LED9
1
LED_a
LED10
1
LED_f1
LED11
1
LED_2
LED12
1
LED_z
LED13
1
LED_w
LED14
1
LED_alt
LED15
1
LED_s
LED16
1
LED_f2
LED17
1
LED_3
LED18
1
LED_x
LED19
1
LED_e
LED20
1
LED_d
LED21
1
LED_f3
LED22
1
LED_4
LED23
1
LED_c
LED24
1
LED_r
LED25
1
LED_f
LED26
1
LED_f4
LED27
1
LED_5
LED28
1
LED_v
LED29
1
LED_t
LED30
1
LED_g
LED31
1
LED_6
LED32
1
LED_b
LED33
1
LED_space
LED34
1
LED_f5
LED35
1
LED_y
LED36
1
LED_h
LED37
1
LED_7
LED38
1
LED_n
LED39
1
LED_f6
LED40
1
LED_u
LED41
1
LED_j
LED42
1
LED_8
LED43
1
LED_m
LED44
1
LED_f7
LED45
1
LED_i
LED46
1
LED_k
LED47
1
LED_9
LED48
1
LED_comma
LED49
1
LED_f8
LED50
1
LED_o
LED51
1
LED_l
LED52
1
LED_0
LED53
1
LED_altgr
LED54
1
LED_dot
LED55
1
LED_p
LED56
1
LED_semicolon
LED57
1
LED_f9
LED58
1
LED_minus
LED59
1
LED_slash
LED60
1
LED_win
LED61
1
LED_openbracket
LED62
1
LED_quote
LED63
1
LED_f10
LED64
1
LED_equals
LED65
1
LED_closebracket
LED66
1
LED_menu
LED67
1
LED_f11
LED68
1
LED_rightshift
LED69
1
LED_enter
LED70
1
LED_backspace
LED71
1
LED_backslash
LED72
1
LED_rightcontrol
LED73
1
LED_f12
LED74
1
LED_printscreen
LED75
1
LED_insert
LED76
1
LED_delete
LED77
1
LED_left
LED78
1
LED_scrollock
LED79
1
LED_home
LED80
1
LED_end
LED81
1
LED_up
LED82
1
LED_down
LED83
1
LED_pause
LED84
1
LED_pageup
LED85
1
LED_pagedown
LED86
1
LED_right
LED87
1
C81598
d_esc
D1
1
C81598
d_tilde
D2
1
C81598
d_leftcontrol
D3
1
C81598
d_tab
D4
1
C81598
d_capslock
D5
1
C81598
d_leftshift
D6
1
C81598
d_1
D7
1
C81598
d_fn
D8
1
C81598
d_q
D9
1
C81598
d_a
D10
1
C81598
d_f1
D11
1
C81598
d_2
D12
1
C81598
d_z
D13
1
C81598
d_w
D14
1
C81598
d_alt
D15
1
C81598
d_s
D16
1
C81598
d_f2
D17
1
C81598
d_3
D18
1
C81598
d_x
D19
1
C81598
d_e
D20
1
C81598
d_d
D21
1
C81598
d_f3
D22
1
C81598
d_4
D23
1
C81598
d_c
D24
1
C81598
d_r
D25
1
C81598
d_f
D26
1
C81598
d_f4
D27
1
C81598
d_5
D28
1
C81598
d_v
D29
1
C81598
d_t
D30
1
C81598
d_g
D31
1
C81598
d_6
D32
1
C81598
d_b
D33
1
C81598
d_space
D34
1
C81598
d_f5
D35
1
C81598
d_y
D36
1
C81598
d_h
D37
1
C81598
d_7
D38
1
C81598
d_n
D39
1
C81598
d_f6
D40
1
C81598
d_u
D41
1
C81598
d_j
D42
1
C81598
d_8
D43
1
C81598
d_m
D44
1
C81598
d_f7
D45
1
C81598
d_i
D46
1
C81598
d_k
D47
1
C81598
d_9
D48
1
C81598
d_comma
D49
1
C81598
d_f8
D50
1
C81598
d_o
D51
1
C81598
d_l
D52
1
C81598
d_0
D53
1
C81598
d_altgr
D54
1
C81598
d_dot
D55
1
C81598
d_p
D56
1
C81598
d_semicolon
D57
1
C81598
d_f9
D58
1
C81598
d_minus
D59
1
C81598
d_slash
D60
1
C81598
d_win
D61
1
C81598
d_openbracket
D62
1
C81598
d_quote
D63
1
C81598
d_f10
D64
1
C81598
d_equals
D65
1
C81598
d_closebracket
D66
1
C81598
d_menu
D67
1
C81598
d_f11
D68
1
C81598
d_rightshift
D69
1
C81598
d_enter
D70
1
C81598
d_backspace
D71
1
C81598
d_backslash
D72
1
C81598
d_rightcontrol
D73
1
C81598
d_f12
D74
1
C81598
d_printscreen
D75
1
C81598
d_insert
D76
1
C81598
d_delete
D77
1
C81598
d_left
D78
1
C81598
d_scrollock
D79
1
C81598
d_home
D80
1
C81598
d_end
D81
1
C81598
d_up
D82
1
C81598
d_down
D83
1
C81598
d_pause
D84
1
C81598
d_pageup
D85
1
C81598
d_pagedown
D86
1
C81598
d_right
D87
5
C52923
1uF
C1, C2, C3, C4, C10
12
C1525
100nF
C5, C6, C7, C8, C9, C11, C12, C13 +4
2
C25741
100k
R1, R4
2
C25905
5k1
R2, R3
1
C25905
REXT_0
R5
1
C25905
REXT_1
R6
1
C25905
REXT_2
R7
1
C25905
REXT_3
R8
1
C25905
REXT_4
R9
1
C25905
REXT_5
R10
1
C25905
REXT_6
R11
1
C25905
REXT_7
R12
1
C25905
REXT_8
R13
1
C25905
REXT_9
R14
1
C25905
REXT_10
R15

Keyboard design files

The KiCad project lives in the brainsmoke/keyboard repository on GitHub; these links point at the commit this page was built from.

Keyboard: common questions

What microcontroller does the Keyboard use?

The Keyboard is built around the C81720, from the STM32 family.

How big is the Keyboard PCB?

The Keyboard measures 357 × 125 mm, has 2 copper layers and is 1.6 mm thick.

How many components are on the Keyboard?

310 components, from 293 distinct parts, with part numbers taken from the project's own BOM. The full bill of materials is listed on this page.

Where can I download the Keyboard design files?

From the brainsmoke/keyboard repository on GitHub, which has the KiCad layout, the schematic and the BOM; the links under Design files point to each one.

Can I use the Keyboard design in my own project?

The repository has no license, so all rights stay with brainsmoke. Use it as a reference, and ask the author before reusing the design.

Can I test firmware for the Keyboard 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