Skip to the content
PCBKitNew board
2 layers106.5 × 125.4 mmRP2040 KBD, the printed circuit board in 3D

Simple Number Pad based on RP2040

Size
106.5 × 125.4 mm
Copper layers
2
Thickness
1.6 mm
Parts
120
Nets
110
Pads
669
Tracks, vias
1,638, 486
Pours
1
Routed
Yes
KiCad
KiCad 7 (file 20221018)
Created
4 Mar 2024
Updated
26 Mar 2024

Overview

RP2040 KBD is an open-source printed circuit board by jay94ks, from the jay94ks/simple-np repository on GitHub, published under the MIT licence. It is a 2-layer board of 106.5 × 125.4 mm with 120 parts on 110 nets, routed with 1,638 tracks and 486 vias.

It is built around the RP2040, 74HC595 and AMS1117-5.0, with the XC6220B331MR, 1N4148WS and 1N5819WS among its other parts. Its parts include 36 diodes, 27 resistors, 25 switches, 20 capacitors and 5 ICs. It belongs with the RP2040 boards of this library.

Main components

7

README

README.md

Simple Number Pad

License

  • This repository: MIT, partially GPL-v3 due to TFT library.
  • TFT library: GPL-v3, ST7735_TFT_PICO

Video

Schematic

See hw/pdf/*.pdf files to read more details.

Features

  • MCU: RP2040, 133MHz Dual core.
  • 5 keys for user-defined functions.
  • 17 keys for number pad.
  • TFT display for calculator if no HID attached.
  • 2 macro control keys, RECORD and PLAY.

Plans for future features

  • A flash memory to store user configurations? (currently, they're stored at SRAM of MCU only, so, volatile)
  • I2C or SPI extension port?
  • A little game that runs on the TFT display?
  • Anything else...

Firmware

Current planed features are implemented. Now, calculator mode will be implemented soon.

tinyusb RX callback.

Don't use 0.15.0 distribution that included on pico-sdk. Update its branch to above version, then it works perfectly.

Parts

120
QtyValueFootprintReferences
241N4148WSDiode_SMD:D_SOD-323D10, D11, D12, D13, D14, D15, D16, D17, D18, D19, D20, D21, D22, D23, D24, D25 +8
24~Keyboard_SW:Kailh_socket_MX_optional_reversibleSW2, SW10, SW11, SW12, SW13, SW14, SW15, SW16, SW17, SW18, SW19, SW20, SW21, SW22, SW23, SW24 +8
9100nFCapacitor_SMD:C_0603_1608MetricC1, C2, C3, C5, C6, C7, C12, C14, C20
81kResistor_SMD:R_0603_1608MetricR20, R21, R22, R23, R24, R25, R28, R29
8LEDLED_SMD:LED_0805_2012MetricD31, D32, D33, D34, D35, D36, D37, D38
710kResistor_SMD:R_0603_1608MetricR1, R5, R8, R13, R18, R26, R27
410uFCapacitor_SMD:C_0603_1608MetricC4, C8, C9, C11
42.2uFCapacitor_SMD:C_0603_1608MetricC13, C17, C18, C19
31N5819WSDiode_SMD:D_SOD-323D1, D2, D3
2100kResistor_SMD:R_0603_1608MetricR6, R12
226pFCapacitor_SMD:C_0603_1608MetricC15, C16
25.1kResistor_SMD:R_0603_1608MetricR2, R3
25.6kResistor_SMD:R_0603_1608MetricR4, R7
26.8Resistor_SMD:R_0603_1608MetricR16, R17
11Resistor_SMD:R_0603_1608MetricR15
1100Resistor_SMD:R_0603_1608MetricR19
112MHzCrystal:Crystal_SMD_3225-4Pin_3.2x2.5mmY1
11nFCapacitor_SMD:C_0603_1608MetricC10
1200Resistor_SMD:R_0603_1608MetricR14
1200kResistor_SMD:R_0603_1608MetricR11
12N7002Package_TO_SOT_SMD:SOT-23Q1
174HC595Package_SO:SOP-16_4.55x10.3mm_P1.27mmU5
1AMS1117-5.0Package_TO_SOT_SMD:SOT-223-3_TabPin2U1
1BAT54CPackage_TO_SOT_SMD:SOT-23D6
1BAT_9VConnector_PinSocket_2.54mm:PinSocket_1x02_P2.54mm_HorizontalJ1
1RP2040Package_DFN_QFN:QFN-56-1EP_7x7mm_P0.4mm_EP3.2x3.2mmU4
1SWDConnector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ2
1SW_PushButton_Switch_SMD:SW_Push_SPST_NO_Alps_SKRKSW1
1TFT_LCDConnector_PinSocket_2.54mm:PinSocket_1x08_P2.54mm_VerticalJ4
1TFT_VCC_SELConnector_PinSocket_2.54mm:PinSocket_1x03_P2.54mm_VerticalJP1
1USB_C_Receptacle_USB2.0Connector_USB:USB_C_Receptacle_Palconn_UTC16-GJ3
1W25Q128JVSSPackage_SO:SOIC-8_5.23x5.23mm_P1.27mmU3
1XC6220B331MRPackage_TO_SOT_SMD:SOT-23-5U2

Questions

How big is the RP2040 KBD PCB?

It measures 106.5 × 125.4 mm and has 2 copper layers, 1.6 mm thick.

What parts does the RP2040 KBD use?

120 parts, built around the RP2040, 74HC595, AMS1117-5.0 and XC6220B331MR. 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 KBD KiCad files?

From the jay94ks/simple-np repository on GitHub, at the commit this page was made from: the board is hw/RP2040_KBD.kicad_pcb and its schematic hw/KEY_ARRAY.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the RP2040 KBD 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).

Similar boards

  • 2 layers40.6 × 51 mmRP2040 TB, the printed circuit board in 3D

    RP2040 TB

    jay94ks/elecdev

    My own custom development boards

    50 partsMIT
  • 2 layers70 × 110 mmQuantizer control, the printed circuit board in 3D

    Quantizer control

    lennartquerter/euro-rack-synth

    Lenimal Github for DIY for a Eurorack Synth

    106 parts13
  • 2 layers50.8 × 81.6 mmRp2040 v0, the printed circuit board in 3D

    Rp2040 v0

    BradleyConn/bc_flight_computer

    Thrust Vector Controlled Rocket Flight Computer Utilizing RP2040 MCU

    133 parts
  • 2 layers53 × 53 mmHair electrolysis machine, the printed circuit board in 3D

    Hair electrolysis machine

    anabelle2001/hair-electrolysis-machine-hardware

    KiCad hardware design for a DIY galvanic hair electrolysis machine

    95 partsCERN-OHL-P-2.0
  • 4 layers60.5 × 60 mmBusPirate-5-rev10, the printed circuit board in 3D

    BusPirate-5-rev10

    DangerousPrototypes/BusPirate5-hardware

    Bus Pirate Hardware and accessories for v5 and higher

    220 parts125MIT