Keyboard whiz
CRImier·MyKiCad·Reverse-engineering/keyboard_whiz/keyboard_whiz.kicad_pcb
About the Keyboard whiz PCB
Keyboard whiz is an open source RP2040/RP2350 PCB design by CRImier, published on GitHub under the GPL-3.0 license. It is a 2-layer board measuring 65 × 56 mm, with 74 components from 41 distinct parts.
Its main chip is the RP2040, from the RP2040/RP2350 family. Other key parts include the SL2.1A, AP1117-33, W25Q32JVSS and 74HC595. By type, the board carries 33 resistors, 20 capacitors, 13 connectors, 5 ICs, 2 diodes and 1 crystal.
It belongs with the keyboards and dev boards & breakouts designs in this gallery.
From the project
My KiCad boards. Can't be bothered uploading individually anymore, so here you go.
A keyboard matrix reverse-engineering tool - to help reverse-engineer laptop and other keyboards. Uses two MCP23017 expanders connected to the same I2C bus, requires a host with I2C port (i.e. a Raspberry Pi) to scan the keyboard rows&columns, detect keypresses and help user map the row&column combinations to keys. It can also be used as a GPIO expander over I2C.
Main components on the Keyboard whiz
Keyboard whiz bill of materials (BOM)
74 components, 41 distinct parts — part numbers from the project's BOM.
| Qty | Part | Footprint | Refs |
|---|---|---|---|
| 1 | SL2.1A 0x21 | SOIC-28W_7.5x17.9mm_P1.27mm | U1 |
| 1 | AP1117-33 0x22 | SOIC-28W_7.5x17.9mm_P1.27mm | U2 |
| 1 | W25Q32JVSS | SOIC-8_5.23x5.23mm_P1.27mm | U3 |
| 1 | RP2040 | RP2040-QFN-56 | U4 |
| 1 | 74HC595 AP1117-33 | SOT-223-3_TabPin2 | U5 |
| 1 | 12MHZ 12MHz | Crystal_SMD_3225-4Pin_3.2x2.5mm | Y1 |
| 1 | I2C | PinHeader_1x05_P2.54mm_Vertical | J1 |
| 1 | USB_C_RECEPTACLE_USB2.0 0.5mm | FPC_40_0.5mm | J2 |
| 1 | 0.8mm | FPC_40_0.8mm | J3 |
| 1 | 1mm | FPC_40_1mm | J4 |
| 1 | Raspberry_Pi_2_3 | RASPBERRY_PI_HAT | J5 |
| 1 | IO_o1 | PinHeader_1x08_P1.27mm_Vertical | J6 |
| 1 | IO_o2 | PinHeader_1x16_P1.27mm_Vertical | J7 |
| 1 | IO_o3 | PinHeader_1x08_P1.27mm_Vertical | J8 |
| 1 | USB_C_Receptacle_USB2.0 | USB_C_Receptacle_HRO_TYPE-C-31-M-12 | J9 |
| 1 | SWD | PinHeader_1x03_P2.54mm_Vertical | J10 |
| 1 | BOOT | PinHeader_1x02_P1.27mm_Vertical | J11 |
| 1 | QWIIC | JST_SH_SM04B-SRSS-TB_1x04-1MP_P1.00mm_Horizontal | J12 |
| 1 | IO_DT | PinHeader_1x07_P2.00mm_Vertical | J13 |
| 2 | 1N4148 | D_MiniMELF | D1, D2 |
Show 21 more
| Qty | Part | Footprint | Refs |
|---|---|---|---|
| 14 | 100NF 100nF | C_0603_1608Metric | C1, C2, C5, C6, C7, C8, C9, C10 +6 |
| 2 | 100NF Cc | C_0603_1608Metric | C3, C4 |
| 2 | 1UF 100nF | C_0603_1608Metric | C12, C16 |
| 2 | 18PF 100nF | C_0603_1608Metric | C19, C20 |
| 2 | 5K1 | R_0603_1608Metric | R1, R3 |
| 1 | C17477 0/F | R_0805_2012Metric | R2 |
| 1 | C21189 5K1 | R_0603_1608Metric | R4 |
| 2 | C21189 22R | R_0402_1005Metric | R5, R6 |
| 2 | C21189 1K | R_0603_1608Metric | R7, R8 |
| 1 | C21189 10K | R_0603_1608Metric | R9 |
| 2 | C21189 0R | R_0603_1608Metric | R10, R11 |
| 6 | 0R | R_0603_1608Metric | R12, R14, R15, R16, R17, R18 |
| 1 | C17477 0R | R_0603_1608Metric | R13 |
| 1 | 5K1 0/F | R_0805_2012Metric | R19 |
| 1 | A | R_0603_1608Metric | R20 |
| 1 | 5K1 B | R_0603_1608Metric | R21 |
| 1 | 5K1 0R | R_0603_1608Metric | R22 |
| 1 | C21189 0/F | R_0805_2012Metric | R23 |
| 1 | 10K | R_Array_Concave_4x0603 | RN1 |
| 1 | 4.7K 10K | R_Array_Concave_4x0603 | RN2 |
| 8 | R_Pack04 | R_Array_Concave_4x0603 | RN9, RN10, RN11, RN12, RN13, RN14, RN15, RN16 |
Keyboard whiz design files
The KiCad project lives in the CRImier/MyKiCad repository on GitHub; these links point at the commit this page was built from.
Keyboard whiz: common questions
What microcontroller does the Keyboard whiz use?
The Keyboard whiz is built around the RP2040, from the RP2040/RP2350 family.
How big is the Keyboard whiz PCB?
The Keyboard whiz measures 65 × 56 mm, has 2 copper layers and is 1.6 mm thick.
How many components are on the Keyboard whiz?
74 components, from 41 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 whiz design files?
From the CRImier/MyKiCad 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 whiz design in my own project?
Yes, under the terms of its GPL-3.0 license, which CRImier chose for the repository.
Can I test firmware for the Keyboard whiz without the hardware?
Yes. HardLabs builds a simulation of the board from its netlist and BOM, so you can run and debug RP2040/RP2350 firmware against it before you order a PCB.
More boards in MyKiCad
RP2040/RP2350
Vaio re
CRImier
75 × 65 mm274 parts4LGPL-3.0253RP2040/RP2350
Piano solenoid controller
CRImier
122.5 × 100 mm179 parts2LGPL-3.0253RP2040/RP2350
Zpn devboard
CRImier
100 × 100 mm160 parts4LGPL-3.0253RP2040/RP2350
Protoesp
CRImier
97.5 × 90 mm127 parts2LGPL-3.0253Friendp
CRImier
60 × 50 mm79 parts4LGPL-3.0253RP2040/RP2350
Blep audio
CRImier
60.6 × 24.1 mm75 parts2LGPL-3.0253RP2040/RP2350
Simple keeb reuser
CRImier
49 × 44 mm70 parts2LGPL-3.0253RP2040/RP2350
Zpui shld wg12864b
CRImier
65 × 56 mm55 parts2LGPL-3.0253RP2040/RP2350
Blep hackerboard
CRImier
60.6 × 24.1 mm54 parts2LGPL-3.0253Framework mobo lefthalf
CRImier
28 × 50 mm45 parts6LGPL-3.0253Usbc power breakout af
CRImier
46 × 46 mm37 parts2LGPL-3.0253
Similar boards
RP2040/RP2350
Open Book Abridged Edition
joeycastillo
85 × 115 mm29 parts2LCC-BY-SA-4.08.1kRP2040/RP2350
Corne
foostan
277.2 × 107.5 mm164 parts2LCC-BY-4.07.7kRP2040/RP2350
Corne
foostan
277.2 × 107.5 mm164 parts2LCC-BY-4.07.7kRP2040/RP2350
LogicAnalyzer
gusmanb
57 × 55.2 mm6 parts2LGPL-3.05.0kRP2040/RP2350
Jitx design
gusmanb
55.5 × 65 mm26 parts4LGPL-3.05.0kRP2040/RP2350
Pro V2
kata0510
290.1 × 130 mm270 parts2LMIT2.3k