

RP2040 Board V1.0
42/36 key ergo split keyboard using a RP2040
- Size
- 144 × 98 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 92
- Nets
- 81
- Pads
- 383
- Tracks, vias
- 836, 64
- Pours
- 1
- Routed
- Yes
- KiCad
- KiCad 6 (file 20211014)
- Created
- 30 Aug 2022
- Updated
- 1 Sep 2022
Overview
RP2040 Board V1.0 is an open-source printed circuit board by MReavley, from the MReavley/CyberSliceKeyboard repository on GitHub, published under the MIT licence. It is a 2-layer board of 144 × 98 mm with 92 parts on 81 nets, routed with 836 tracks and 64 vias.
It is built around the RP2040, W25Q128JVSIQ and AMS1117-3.3. Its parts include 23 switches, 22 diodes, 16 capacitors, 13 resistors and 5 connectors. It belongs with the keyboards and input boards and the RP2040 boards of this library.
Main components
3RP2040
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 FLASHAMS1117-3.3
SOT-223-40℃~+125℃ 0.003%Vout 1 1.1V@(800mA) 15V 1A 3.3V 5mA 72dB@(120Hz) Fixed Over Current Protection、Short Circuit Protection、Thermal shutdown Positive SOT-223 Voltage Regulators - Linear, Low Drop Out (LDO) Regulators ROHSAdvanced Monolithic SystemsVoltage Regulators - Linear, Low Drop Out (LDO) Regulators
README
README.mdCyberSlice Keyboard
42/36 key split keyboard using RP2040, with the same layout (in 36 key configuration) as my previous design, the Slice 36. The goal was primarily to experience designing a microcontroller directly on the PCB, but I also wanted to try to take advantage of the large number of GPIO pins on the RP2040. There are 8 additional GPIO (2 analog capable) on the PCB with the intention of adding functionality through magnetic pogo connectors, but that is still a work in progress.
Features
- Reversible PCB designed for PCB assembly services
- RP2040 per side, with 16MB of flash
- Laser cut aluminium plate, custom designed 3D printed case with magnets
- Footprints for magnetic pogo connectors on each side
- Breakaway tabs convert from 42 to 36 key

If you want to build:
This board is just a prototype, and there are a couple pointers to watch out for:
Reversible PCB: Since the PCB is reversible, solder on the trrs connector on opposite sides of the PCB for each half. The USB-C connector for the left half will be on the bottom side, which does necessitate taller rubber feet unfortunately.
Components on the rear:
These components will not be assembled by basic PCBa, but the parts can be scavenged from spare assembled PCBs (per side)
- C7 (100nF 0603 MLCC capacitor)
- R1 and R2 (5.1k 0603 resistors)
- R12 and R13 (Optional, 4.7k 0603 pullups for split over I2C, not needed for UART)
Additional components:
- PJ320D trrs connectors (x1 per side), solder on opposite side of PCB for the different halves
- 2.54mm magnetic pogo connectors (5 contacts) (2x per side) (optional, can solder directly instead)
- 6mm diameter x 3mm height magnets x6 per side for case (optional, can use screw holes instead)
Reset and boot switches may need to be renamed in the BOM file (not using SW1 and SW2) for them to be auto-selected by PCBa service
- Otherwise shorting the pads on the PCB will have the same effect
Case:
- Tolerances were very loose on my case, but this does depend on the printer
- Ideally, one would redesign the plate to mount directly to the case (add screw holes)
- Tolerance for the magnet holes can be a bit too tight, probably increase from 6 to 6.1 or 6.2mm diameter
Things to improve
- Rename the reset and boot switches from SW1 and SW2 to something else to not clash with the names of the switches (caused me to make a mistake in my order)
- Shift the few SMD parts on the back side to the front for PCBa
- Add a few more LEDs for status indicators on the PCB itself
- Change the plate the design for better mounting of PCB and plate to case, or alternatively integrate the plate into the case
Parts
92| Qty | Value | Footprint | References |
|---|---|---|---|
| 21 | Cherry_Doublesided | MxSwitches:SW_MX_reversible | Sw1, Sw2, Sw3, Sw4, Sw10, Sw11, Sw12, Sw13, Sw14, Sw15, Sw16, Sw17, Sw18, Sw19, Sw20, Sw21 +5 |
| 21 | D | Diode_SMD:D_SOD-323_HandSoldering | D2, D3, D4, D10, D11, D12, D13, D14, D15, D16, D17, D18, D19, D20, D21, D22 +5 |
| 9 | 100n | Capacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolder | C7, C8, C9, C10, C11, C12, C13, C14, C15 |
| 8 | , , , , , , , | ||
| 3 | 1k | Resistor_SMD:R_0603_1608Metric | R3, R4, R6 |
| 3 | 5.1k | Resistor_SMD:R_0603_1608Metric | R1, R2, R11 |
| 2 | 1u | Capacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolder | C6, C16 |
| 2 | 22u | Capacitor_SMD:C_0603_1608Metric | C1, C2 |
| 2 | 27 | Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | R7, R8 |
| 2 | 27p | Capacitor_SMD:C_0603_1608Metric | C4, C5 |
| 2 | 5.1k | Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | R9, R10 |
| 2 | AudioJack4 | Connector_Audio:Jack_3.5mm_PJ320D_Horizontal | J2, J3 |
| 2 | Conn_01x05_MountingPin | Magnet:Magnet 5pin 2.54mm pitch through hole | J4, J5 |
| 2 | DNP | Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolder | R12, R13 |
| 2 | SW_SPST | Button_Switch_SMD:SW_SPST_PTS810 | SW1, SW2 |
| 1 | 100n | Capacitor_SMD:C_0603_1608Metric | C3 |
| 1 | 12MHz | Crystal:Crystal_SMD_3225-4Pin_3.2x2.5mm | Y1 |
| 1 | AMS1117-3.3 | Package_TO_SOT_SMD:SOT-223-3_TabPin2 | U1 |
| 1 | DNP | Resistor_SMD:R_0603_1608Metric | R5 |
| 1 | RED | LED_SMD:LED_0603_1608Metric | D1 |
| 1 | RP2040 | RP2040:RP2040 | U3 |
| 1 | USB_C_Receptacle_USB2.0 | Connector_USB:USB_C_Receptacle_HRO_TYPE-C-31-M-12 | J1 |
| 1 | W25Q128JVS | Package_SO:SOIC-8_5.23x5.23mm_P1.27mm | U2 |
The 91 most common of 92 parts.
Similar boards
- 2 layers78 × 60 mm

- 4 layers72.6 × 170 mm

OpenJBOD RP2040
OpenJBOD/rp2040
This repository contains the hardware design files OpenJBOD RP2040 Baseboard.
129 parts87CERN-OHL-P-2.0 - 2 layers352.5 × 120 mm

PyKey87
jpconstantineau/PyKey60
The PyKey60 is a custom programmable mechanical keyboard with a standard ANSI 60% keyboard layout compatible with any cases made for the GH60. The PyKey60 uses mechanical switches (Cherry MX type).
310 parts57 - 2 layers36 × 43 mm

Asac fc rev a
victorhook/asac-fc
asac fc is an rp2040 based flight controller made for FPV drone flying
119 parts52GPL-3.0 - 2 layers55.4 × 34.5 mm

- 4 layers44.2 × 84.5 mm

- 2 layers95 × 67 mm

1e3c0a280b22034a487261aa2451d276e8631e8a0f44761d6a49a571b81d7071
autonomous-ai/autonomous-circuit
Chat with AI, get a verified PCB and a fab packet you can order.
51 parts14MIT - 4 layers52.3 × 25.3 mm

Hackducky
souptik-samanta/Hackducky
Our board is powered by the reliable Raspberry Pi RP2040 microcontroller and includes 16 MB of flash storage, giving plenty of room for scripts and firmware.
83 parts13
Questions
How big is the RP2040 Board V1.0 PCB?
It measures 144 × 98 mm and has 2 copper layers, 1.6 mm thick.
What parts does the RP2040 Board V1.0 use?
92 parts, built around the RP2040, W25Q128JVSIQ and AMS1117-3.3. 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 RP2040 Board V1.0 KiCad files?
From the MReavley/CyberSliceKeyboard repository on GitHub, at the commit this page was made from: the board is Kicad/RP2040 Board V1.0.kicad_pcb and its schematic Kicad/RP2040 Board V1.0.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the RP2040 Board V1.0 design in my own project?
Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).