

Schaltplatte 6 Tasten
I made a custom 9-key macropad in a 3×3 layout, built with a Seeed Studio XIAO (SAMD21). Each switch has its own diode, wired as a 3×3 key matrix. It also features a small OLED display.
- Size
- 59.5 × 100 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 20
- Nets
- 23
- Pads
- 81
- Tracks, vias
- 164, 0
- Routed
- Yes
- KiCad
- KiCad 10.0 (file 20260206)
- Created
- 6 Aug 2026
- Updated
- 17 Aug 2026
Overview
Schaltplatte 6 Tasten is an open-source printed circuit board by javinwittig, from the javinwittig/Hackpad repository on GitHub. It is a 2-layer board of 59.5 × 100 mm with 20 parts on 23 nets, routed with 164 tracks and 0 vias.
Its parts include 9 diodes, 9 switches, 1 IC and 1 connector. It belongs with the lEDs and displays boards of this library.
README
README.mdHackpad
I made a custom 9-key macropad in a 3×3 layout, built with a Seeed Studio XIAO (SAMD21). Each switch has its own diode, wired as a 3×3 key matrix. It also features a small OLED display.
Features
- 9 mechanical keys in a 3×3 grid where each has its own diode
- Seeed Studio XIAO (SAMD21) as the controller
- small OLED display
- Custom KiCad PCB
- Custom case modeled in Fusion 360, with cutouts for USB-C and the display header
- Firmware based on KMK (CircuitPython)
Repository structure
| Folder | Contents |
|---|---|
Assets/ | Renders/photos used in this README (schematic, PCB, case) |
CAD/ | 3D assembly model (Assembly1.0.step) |
Firmware/ | code.py (KMK firmware source) and a compiled .hex build |
pcb/ | KiCad project (schematic + PCB layout, .kicad_pro/.kicad_sch/.kicad_pcb) |
Production/ | Manufacturing-ready files: case top/bottom (.step) and PCB gerbers.zip |
Hardware
Schematic
The controller is a Seeed Studio XIAO (SAMD21). The 9 switches form a 3×3 diode matrix and a 4-pin header standard 2.54 mm pitch, GND–VCC–SCL–SDA)
PCB
Designed in KiCad (see pcb/). Manufacturing files (gerbers) are in Production/gerbers.zip.
Case
I modeled the case in Fusion 360. The case features a cutout for the XIAO's USB-C port and an opening for the 4-pin display header. You'll find the STEP files for the top and bottom shells in Production/, and the full assembly is in CAD/Assembly1.0.step.
Bill of Materials
| Part | Quantity |
|---|---|
| Seeed Studio XIAO | 1 |
| MX-style switches | 9 |
| 1N914 diodes | 9 |
| SSD1306 OLED display (128×32, I²C) | 1 |
| 4-pin header | 1 |
| M3 screws | 4 |
Firmware
You can find the firmware in Firmware/or Production/Firmware.py and it is written for KMK, a CircuitPython-based keyboard firmware. code.py is the source; a compiled .hex build is included as well.
What it does:
- Defines a 3×3 key matrix on
board.D0–D2(columns) andboard.D7–D9(rows),COL2ROWdiode orientation - Maps the 9 keys to the numpad keys
7 8 9 / 4 5 6 / 1 2 3 - Drives an SSD1306 OLED over I²C to show status text ("Hackpad" / "9 Tasten")
Parts
20| Qty | Value | Footprint | References |
|---|---|---|---|
| 9 | 1N914 | Diode_THT:D_DO-35_SOD27_P7.62mm_Horizontal | D1, D2, D3, D4, D5, D6, D7, D8, D9 |
| 9 | SW_Push | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW1, SW2, SW3, SW4, SW5, SW6, SW7, SW8, SW9 |
| 1 | Conn_01x04 | Connector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_Vertical | J1 |
| 1 | MOUDLE-SEEEDUINO-XIAO | footprints:XIAO-Generic-Hybrid-14P-2.54-21X17.8MM | U1 |
Questions
How big is the Schaltplatte 6 Tasten PCB?
It measures 59.5 × 100 mm and has 2 copper layers, 1.6 mm thick.
What parts does the Schaltplatte 6 Tasten use?
20 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 Schaltplatte 6 Tasten KiCad files?
From the javinwittig/Hackpad repository on GitHub, at the commit this page was made from: the board is pcb/Schaltplatte_6_Tasten.kicad_pcb and its schematic pcb/Schaltplatte_6_Tasten.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the Schaltplatte 6 Tasten design in my own project?
Its repository states no licence, so its author keeps all rights: ask javinwittig before reusing the design.
Similar boards
- 2 layers66.9 × 74.5 mm

- 2 layers86.4 × 64.8 mm

- 2 layers36.2 × 26.8 mm

Esp32 minimal
atopile/atopile
Design circuit boards with code! ✨ Get software-like design reuse 🚀, validation, version control and collaboration in hardware; starting with electronics ⚡️
20 parts4kMIT - 2 layers108.1 × 393.8 mm

Sweep compact ble
davidphilipbarr/Sweep
Sweep - a small promicro based keyboard inspired by the Ferris.
20 parts2.1k - 2 layers26 × 15.9 mm

TPS54340 Buck Regulator
rusefi/rusefi
rusefi - GPL internal combustion engine control unit
20 parts1.2k - 2 layers67.6 × 30.5 mm

Rgb to hdmi
hoglet67/RGBtoHDMI
Bare-metal Raspberry Pi project that provides pixel-perfect sampling of Retro Computer RGB/YUV video and conversion to HDMI
20 parts1kGPL-3.0 - 2 layers44.3 × 28.7 mm

Lin bus adapter esp32
hackclub/OnBoard
💡 Join 1,000 teenagers and make your first PCB with a $100 grant!
20 parts915 - 2 layers89.5 × 61.6 mm

FreeDeck TH 2020-02
FreeYourStream/freedeck-hardware
all the stuff you need to build your own FreeDeck
20 parts772