

Keyboard
Eventually designing and building a synth
- Size
- 284.2 × 55.6 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 101
- Nets
- 87
- Pads
- 365
- Tracks, vias
- 836, 112
- Pours
- 1
- Routed
- Yes
- KiCad
- KiCad 8.0 (file 20240108)
- Created
- 2 Jan 2024
- Updated
- 26 Feb 2025
Overview
Keyboard is an open-source printed circuit board by paullj, from the paullj/synth repository on GitHub. It is a 2-layer board of 284.2 × 55.6 mm with 101 parts on 87 nets, routed with 836 tracks and 112 vias.
It is built around the RP2040, W25Q128JVSIQ and GH39FKSW, with the SRV05-4, XC6206P332MR and CD74HC4067SM96 among its other parts. Its parts include 55 switches, 16 capacitors, 9 resistors, 4 ICs and 3 connectors. It belongs with the keyboards and input and audio and music boards and the RP2040 boards of this library.
Main components
6RP2040
LQFN-56(7x7)12bit 133MHz 30 LQFN-56(7x7) Microcontrollers (MCU/MPU/SOC) ROHSRaspberry PiMicrocontrollers (MCU/MPU/SOC)W25Q128JVSIQ
SOIC-8-208mil-40℃~+85℃ 100,000 cycles 120ms@(32KB) 128Mbit 133MHz 1uA 2.7V~3.6V 20 Years 3ms Power-on reset、Hardware write protection、Software write protection、Write enable latch、Absolute write protection SPI SOIC-8-208mil NOR FLASH ROHSWinbondNOR FLASHGH39FKSW
SOT-23-3L-40℃~+85℃ 0.7% 1.8mV/Gs 15V 6mA ±100mT SOT-23-3L Linear Hall Sensors ROHSHiTrend TechLinear Hall SensorsSRV05-4
SOT-23-6L-55℃~+150℃ 15V 1pF 4A 5V 5uA 6V 80W ESD Four channels IEC 61000-4-2、IEC 61000-4-5 Unidirectional SOT-23-6L ESD and Surge Protection (TVS/ESD) ROHShongjiachengESD And Surge Protection (TVS/ESD)XC6206P332MR
SOT-23-40℃~+85℃@(Ta) 1 1uA 200mA 3.3V 6V Fixed Over Current Protection Positive SOT-23-3L Voltage Regulators - Linear, Low Drop Out (LDO) Regulators ROHSTorex SemiconductorVoltage Regulators - Linear, Low Drop Out (LDO) RegulatorsCD74HC4067SM96
SSOP-24-208mil-55℃~+125℃ 15ns 16 16:1 2V~6V 5pF 70Ω 89MHz SSOP-24-208mil Analog Switches, Multiplexers ROHSTexas InstrumentsAnalog Switches, Multiplexers
README
README.mdSynth
Note: This project is still in its early stages and is not ready for use. ie it doesn't do anything yet and this repo is fairly empty.
This repo is a monorepo composed of multiple projects that are used to make a synthesizer. The aim of the project is to learn embedded, lower level programming with Rust, and electronic engineering. It is very much a work in progress, I have no idea what I'm doing.
I am going to start with just a simple MIDI controller and see how that goes first. Eventually I would like to make a full groove box with a sequencer and a bunch of other stuff but that is a long way off.
synth-firmware: Firmware for custom board that sends MIDI messages over USBsynth-hardware: Hardware design files for the MIDI keyboard
Development
This project uses just as a task runner. Once installed run just in the repo root to see the available tasks. You will also need to install Rust and a few other dependencies, you can run just check-setup to check if you have everything installed.
Parts
101| Qty | Value | Footprint | References |
|---|---|---|---|
| 8 | 100nF | Capacitor_SMD:C_0402_1005Metric | C5, C7, C8, C9, C13, C14, C15, C16 |
| 6 | MountingHole | MountingHole:MountingHole_2.2mm_M2_DIN965_Pad | H1, H2, H3, H4, H5, H6 |
| 5 | 1uF | Capacitor_SMD:C_0402_1005Metric | C1, C2, C4, C6, C12 |
| 4 | 5.1k ohm | Resistor_SMD:R_0402_1005Metric | R1, R2, R8, R9 |
| 3 | 1k ohm | Resistor_SMD:R_0402_1005Metric | R6, R7, R10 |
| 3 | Fiducial | Fiducial:Fiducial_1mm_Mask2mm | FID1, FID2, FID3 |
| 2 | 22pF | Capacitor_SMD:C_0402_1005Metric | C10, C11 |
| 2 | 27 ohm | Resistor_SMD:R_0603_1608Metric | R4, R5 |
| 2 | A | Package_TO_SOT_SMD:SOT-23-3 | S13, S25 |
| 2 | A# | Package_TO_SOT_SMD:SOT-23-3 | S14, S26 |
| 2 | B | Package_TO_SOT_SMD:SOT-23-3 | S15, S27 |
| 2 | C | Package_TO_SOT_SMD:SOT-23-3 | S4, S16 |
| 2 | C# | Package_TO_SOT_SMD:SOT-23-3 | S5, S17 |
| 2 | CD74HC4067SM | Package_SO:SSOP-24_5.3x8.2mm_P0.65mm | AM1, AM2 |
| 2 | D | Package_TO_SOT_SMD:SOT-23-3 | S6, S18 |
| 2 | D# | Package_TO_SOT_SMD:SOT-23-3 | S7, S19 |
| 2 | E | Package_TO_SOT_SMD:SOT-23-3 | S8, S20 |
| 2 | F | Package_TO_SOT_SMD:SOT-23-3 | S9, S21 |
| 2 | F# | Package_TO_SOT_SMD:SOT-23-3 | S10, S22 |
| 2 | G | Package_TO_SOT_SMD:SOT-23-3 | S11, S23 |
| 2 | G# | Package_TO_SOT_SMD:SOT-23-3 | S12, S24 |
| 1 | 10uF | Capacitor_SMD:C_0603_1608Metric | C3 |
| 1 | 12MHz 20pF | Crystal:Crystal_SMD_3225-4Pin_3.2x2.5mm | Y1 |
| 1 | 6V 1.5A | Fuse:Fuse_1206_3216Metric | F1 |
| 1 | A#1 | KeyboardFootprints:Generic_MX_PCB_1u | K14 |
| 1 | A#2 | KeyboardFootprints:Generic_MX_PCB_1u | K26 |
| 1 | A1 | KeyboardFootprints:Generic_MX_PCB_2u | K13 |
| 1 | A2 | KeyboardFootprints:Generic_MX_PCB_2u | K25 |
| 1 | B1 | KeyboardFootprints:Generic_MX_PCB_2u | K15 |
| 1 | B2 | KeyboardFootprints:Generic_MX_PCB_2u | K27 |
| 1 | BOOTSELECT | Button_Switch_SMD:SW_SPST_TL3342 | SW2 |
| 1 | C#1 | KeyboardFootprints:Generic_MX_PCB_1u | K5 |
| 1 | C#2 | KeyboardFootprints:Generic_MX_PCB_1u | K17 |
| 1 | C1 | KeyboardFootprints:Generic_MX_PCB_2u | K4 |
| 1 | C2 | KeyboardFootprints:Generic_MX_PCB_2u | K16 |
| 1 | Conn_01x04 | Connector_JST:JST_SH_SM04B-SRSS-TB_1x04-1MP_P1.00mm_Horizontal | J2 |
| 1 | Conn_01x05 | Connector_PinHeader_2.54mm:PinHeader_1x05_P2.54mm_Vertical | J3 |
| 1 | D#1 | KeyboardFootprints:Generic_MX_PCB_1u | K7 |
| 1 | D#2 | KeyboardFootprints:Generic_MX_PCB_1u | K19 |
| 1 | D1 | KeyboardFootprints:Generic_MX_PCB_2u | K6 |
| 1 | D2 | KeyboardFootprints:Generic_MX_PCB_2u | K18 |
| 1 | DOWN | Package_TO_SOT_SMD:SOT-23-3 | S3 |
| 1 | DOWN | KeyboardFootprints:Generic_MX_PCB_1u | K3 |
| 1 | E1 | KeyboardFootprints:Generic_MX_PCB_2u | K8 |
| 1 | E2 | KeyboardFootprints:Generic_MX_PCB_2u | K20 |
| 1 | F#1 | KeyboardFootprints:Generic_MX_PCB_1u | K10 |
| 1 | F#2 | KeyboardFootprints:Generic_MX_PCB_1u | K22 |
| 1 | F1 | KeyboardFootprints:Generic_MX_PCB_2u | K9 |
| 1 | F2 | KeyboardFootprints:Generic_MX_PCB_2u | K21 |
| 1 | G#1 | KeyboardFootprints:Generic_MX_PCB_1u | K12 |
| 1 | G#2 | KeyboardFootprints:Generic_MX_PCB_1u | K24 |
| 1 | G1 | KeyboardFootprints:Generic_MX_PCB_2u | K11 |
| 1 | G2 | KeyboardFootprints:Generic_MX_PCB_2u | K23 |
| 1 | Power LED (Green) | LED_SMD:LED_0805_2012Metric | D1 |
| 1 | RP2040 | Package_DFN_QFN:QFN-56-1EP_7x7mm_P0.4mm_EP3.2x3.2mm | U1 |
| 1 | SELECT | Package_TO_SOT_SMD:SOT-23-3 | S1 |
| 1 | SHIFT | KeyboardFootprints:Generic_MX_PCB_1u | K1 |
| 1 | SRV05-4 | PCM_marbastlib-various:SOT-23-6-routable | U3 |
| 1 | UP | Package_TO_SOT_SMD:SOT-23-3 | S2 |
| 1 | UP | KeyboardFootprints:Generic_MX_PCB_1u | K2 |
| 1 | USB_C_Receptacle_USB2.0_16P | Connector_USB:USB_C_Receptacle_HRO_TYPE-C-31-M-12 | J1 |
| 1 | W25Q128JVS | Package_SO:SOIC-8_5.23x5.23mm_P1.27mm | U4 |
| 1 | XC6206P332MR | Package_TO_SOT_SMD:SOT-23 | U2 |
Questions
How big is the Keyboard PCB?
It measures 284.2 × 55.6 mm and has 2 copper layers, 1.6 mm thick.
What parts does the Keyboard use?
101 parts, built around the RP2040, W25Q128JVSIQ, GH39FKSW and SRV05-4. 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 Keyboard KiCad files?
From the paullj/synth repository on GitHub, at the commit this page was made from: the board is synth-hardware/pcb/Keyboard.kicad_pcb and its schematic synth-hardware/pcb/Keyboard.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the Keyboard design in my own project?
Its repository states no licence, so its author keeps all rights: ask paullj before reusing the design.
Similar boards
- 2 layers280 × 184.5 mm

- 2 layers63.5 × 58 mm

Latest
minipadKB/minipad
The PCB and case files for the minipad, an RP2040-based 2-3-key keypad for the rhythm game osu!.
39 parts52GPL-3.0 - 2 layers

- 2 layers346.1 × 93.7 mm

Sifrl main pcb
ramonimbao/SpaceInvadersFRL
An F-rowless TKL keyboard case, plate, and PCB that uses the HiTek Series 725 switches.
177 parts15 - 2 layers194.3 × 79 mm

- 2 layers440.5 × 124.9 mm

Gear85 hotswap flex cut, number pad
cosmosalad/Gear80
Gear80 is a 80% keyboard based on the rp2040.
335 parts7MIT - 2 layers269.9 × 93.1 mm

- 2 layers284.2 × 93.7 mm

Gear60 solder
cosmosalad/Gear60
Gear60 is a 60% multi-layout keyboard based on the rp2040.
198 parts4MIT