

Custom keyboard
My try on a custom keyboard. I've always wanted to design a bigger PCB and case, and Keeb was the perfect opportunity. My challenge is a near-ISO keyboard layout.
- Size
- 385.9 × 133.7 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 192
- Nets
- 121
- Pads
- 739
- Tracks, vias
- 729, 80
- Pours
- 1
- Routed
- Yes
- KiCad
- KiCad 10.0 (file 20260206)
- Created
- 27 Jul 2026
- Updated
- 5 Aug 2026
Overview
Custom keyboard is an open-source printed circuit board by BenjaminDerProgrammierer, from the BenjaminDerProgrammierer/custom-keyboard repository on GitHub. It is a 2-layer board of 385.9 × 133.7 mm with 192 parts on 121 nets, routed with 729 tracks and 80 vias.
Its parts include 91 switches, 87 diodes and 1 IC. It belongs with the keyboards and input boards and the RP2040 boards of this library.
README
pcb/README.mdKiCAD project directory
Adding gerbers
- Go to File → Fabrication Outputs → Gerbers (.gbr)
- Select all layers (F.Cu, B.Cu, F.Silkscreen, B.Silkscreen, F.Mask, B.Mask, Edge.Cuts) and click Plot
- Then click Generate Drill Files to export the .drl file
- Zip the output folder and commit it alongside your .kicad_pcb and .kicad_sch files
Layout
For viewing the source layout, upload layout.json to https://www.keyboard-layout-editor.com/
Parts
192| Qty | Value | Footprint | References |
|---|---|---|---|
| 87 | 1N4148 | Diode_THT:D_DO-35_SOD27_P7.62mm_Horizontal | D1, D2, D10, D11, D12, D13, D14, D15, D16, D17, D18, D19, D20, D21, D22, D23 +71 |
| 75 | SW_Push | PCM_marbastlib-mx:SW_MX_1u | SW2, SW10, SW11, SW12, SW13, SW14, SW15, SW16, SW17, SW18, SW19, SW20, SW21, SW22, SW23, SW24 +59 |
| 9 | SW_Push | PCM_marbastlib-mx:SW_MX_1.25u | SW62, SW76, SW77, SW78, SW79, SW80, SW81, SW82, SW83 |
| 1 | ER_OLEDM0.91_1x-I2C | Display:ER_OLEDM0.91_1x-I2C | U1 |
| 1 | MX_stab | PCM_marbastlib-mx:STAB_MX_2.75u | S3 |
| 1 | MX_stab | PCM_marbastlib-mx:STAB_MX_ISO | S2 |
| 1 | MX_stab | PCM_marbastlib-mx:STAB_MX_5u | S4 |
| 1 | MX_stab | PCM_marbastlib-mx:STAB_MX_2u | S1 |
| 1 | RaspberryPi_Pico | Module:RaspberryPi_Pico_SMD | A1 |
| 1 | RotaryEncoder_Switch | Rotary_Encoder:RotaryEncoder_Alps_EC11E-Switch_Vertical_H20mm | SW1 |
| 1 | SW_Push | PCM_marbastlib-mx:SW_MX_1.75u | SW49 |
| 1 | SW_Push | PCM_marbastlib-mx:SW_MX_1.5u | SW32 |
The 180 most common of 192 parts.
Questions
How big is the Custom keyboard PCB?
It measures 385.9 × 133.7 mm and has 2 copper layers, 1.6 mm thick.
What parts does the Custom keyboard use?
192 parts. 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 Custom keyboard KiCad files?
From the BenjaminDerProgrammierer/custom-keyboard repository on GitHub, at the commit this page was made from: the board is pcb/custom_keyboard.kicad_pcb and its schematic pcb/custom_keyboard.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the Custom keyboard design in my own project?
Its repository states no licence, so its author keeps all rights: ask BenjaminDerProgrammierer before reusing the design.
Similar boards
- 2 layers121.5 × 136.5 mm

- 2 layers396.2 × 117.7 mm

Kbd sol
osiweb/unified_retro_keyboard
Project to provide keyboard replacements for various classic computers, as well as classic ASCII keyboard
192 parts122 - 2 layers120.5 × 46 mm

Kampela E1
Alzymologist/Kampela
Hardware signer and key storage for Substrate ecosystem
192 parts21GPL-3.0 - 2 layers106 × 122 mm

VolumeKnobPanalizedV1
18Markus1984/Volume-Knob
An Arduino pro micro project with a rotary encoder to control volume or mute the sound.
192 parts8 - 2 layers179.5 × 67 mm

Bms
mandraga/SombreroBms
A battery management system (BMS) for small vehicles mainly 36V and 48V (golf carts & quads).
192 parts4 - 2 layers372.1 × 113.8 mm

M0118 integrated usb
Cipulot/m0118_integrated_usb
Drop-in replacement USB-C PCB for the Apple M0118 powered by QMK and VIAL.
192 parts3MIT - 2 layers88.9 × 81.3 mm

- 2 layers70 × 122 mm

Filament dryer
petermaerki/2023_filament_dryer_git
This page is explains the physical aspects.
192 parts2