
Main panel
google/mozc-devices
Circuit diagrams and firmware source code for Gboard DIY keyboards

A 3×3 macropad with OLED, encoder, LED backlight, and KMK firmware (Seeed XIAO RP2040).
Hackpad Rainier is an open-source printed circuit board by Rainier-PS, from the Rainier-PS/Hackpad-Rainier repository on GitHub. It is a 2-layer board of 98 × 80 mm with 43 parts on 40 nets, routed with 374 tracks and 13 vias.
It is built around the SK6812MINI-E. Its parts include 28 diodes, 10 switches and 1 IC. It belongs with the keyboards and input and lEDs and displays boards and the RP2040 boards of this library.
This hackpad is a small 3x3 macropad featuring an encoder, OLED display, LED backlight, and various keymap layers. It is constructed using KMK firmware and the Seeed XIAO RP2040. It is designed to facilitate shortcuts, media management, number entry, and visual feedback for different layers.

In accordance with the submission requirements, the interior of both the top and bottom parts of the case are branded with my name.


| Top Col | Middle Col | Bottom Col |
|---|---|---|
| Media Prev | Play/Pause | Media Next |
| Undo | Redo | Save |
| Copy | Paste | Cut |
Encoder: Volume control (default)
Encoder button: Toggle between volume, zoom, brightness, and timeline scrubbing
| Top Col | Middle Col | Bottom Col |
|---|---|---|
| 1 | 2 | 3 |
| 4 | 5 | 6 |
| 7 | 8 | 9 |
Encoder and screen modes remain active.
keymap.py| Component | Quantity | Notes |
|---|---|---|
| MX-Style switches | 9 | Any MX-style switch (linear/tactile/clicky) |
| Blank DSA keycaps (White) | 9 | Or any compatible keycaps |
| Through-hole 1N4148 Diodes | 12 | For switch matrix and rotary encoder |
| EC11 rotary encoder | 1 | With built-in push button |
| 0.91" 128x32 OLED (I²C) | 1 | SSD1306-compatible (GND/VCC/SCL/SDA) |
| SK6812 MINI-E LEDs | 16 | For underglow or key backlighting |
| Seeed XIAO RP2040 | 1 | Through-hole version (required for compatibility) |
| Custom PCB | 1 | 2-layer, ≤100×100mm |
| 3D Printed Case | 1 | Two parts: top and bottom |
| M3×5m×4mm heat-set inserts | 7 | Used for assembly |
| M3x16mm screws | 7 | For screwing into inserts |
This project follows the Hackpad requirements: only approved parts are used,the case is entirely 3D printed, with no non-printed parts involved.
| Qty | Value | Footprint | References |
|---|---|---|---|
| 16 | SK6812MINI | Downloads:SK6812-MINI-E | D1, D2, D3, D4, D5, D6, D7, D8, D9, D10, D11, D12, D13, D14, D15, D16 |
| 12 | D_Small | Diode_THT:D_T-1_P5.08mm_Horizontal | D17, D18, D19, D20, D21, D22, D23, D24, D25, D26, D27, D28 |
| 9 | SW_Push | Library:SW_Cherry_MX_1.00u_PCB | SW2, SW3, SW4, SW5, SW6, SW7, SW8, SW9, SW10 |
| 1 | RotaryEncoder | Rotary_Encoder:RotaryEncoder_Alps_EC11E-Switch_Vertical_H20mm | SW1 |
| 1 | XIAO-RP2040-DIP | OPL:XIAO-RP2040-DIP | U1 |
| 1 | ~ | Downloads:SSD1306-0.91-OLED-4pin-128x32 | OLED1 |
The 40 most common of 43 parts.
It measures 98 × 80 mm and has 2 copper layers, 1.6 mm thick.
43 parts, built around the SK6812MINI-E. 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.
From the Rainier-PS/Hackpad-Rainier repository on GitHub, at the commit this page was made from: the board is PCB/Hackpad-Rainier.kicad_pcb and its schematic PCB/Hackpad-Rainier.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository states no licence, so its author keeps all rights: ask Rainier-PS before reusing the design.

google/mozc-devices
Circuit diagrams and firmware source code for Gboard DIY keyboards

Bastardkb/Dilemma
The Dilemma is a vertical stagger low-profile keyboard with mods.

Pwnsat/FlatSat
Flatsat v1.0 is a hardware based platform for aerospace cybersecurity research

adamws/kicad-kbplacer
KiCad plugin for automatic keyboard's key placement and routing

imchipwood/dumbpad
Simple 4x4 numpad with rotary encoder. Powered by QMK via ATmega32u4 Pro Micro

makerforgetech/modular-biped
An open source framework for creating a bipedal modular companion robot.

