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

Homemade macropad: 9 keys in a 3x3 grid, a rotary encoder, and a 0.91" OLED screen. Every switch has its own RGB LED for backlighting, all chained together on a single data pin.
Hackpad is an open-source printed circuit board by HexFud, from the HexFud/HexKeyboard repository on GitHub. It is a 2-layer board of 93.8 × 82 mm with 35 parts on 70 nets, routed with 417 tracks and 60 vias.
It is built around the SK6812MINI-E. Its parts include 18 diodes, 10 switches and 2 ICs.
Homemade macropad: 9 keys in a 3x3 grid, a rotary encoder, and a 0.91" OLED screen. Every switch has its own RGB LED for backlighting, all chained together on a single data pin.





You can put heated inserts in the highlited zones and then screw the pcb in
| Qty | Part | Notes |
|---|---|---|
| 1 | Seeed XIAO RP2040 | main MCU |
| 1 | 0.91 inch OLED display | SSD1306 driver |
| 1 | Rotary encoder | |
| 9 | Mechanical switches (MX-style) | |
| 9 | SK6812MINI-E RGB LED | daisy-chained backlight |
| 10 | 1N4148 diode | 9 for the key matrix + 1 for the encoder push button |
| 9 | Keycaps | |
| — | Case (top plate + bottom plate) | 3D printed |
| 8 | M3x16mm screws | |
| 4 | M3x5x4mm heatset inserts |
I implemented a feature called music bar, if you are playing something in the background the duration of the media is showed on the display and you can controll it with the encoder. If you want to use this function you need to run the .py program in the firmware folder because otherwise the microcontroller doesn't know what is the device playing
The push button of the encoder is intentionally disconnected because there were no pins left on the microcontroller to connect it
| Qty | Value | Footprint | References |
|---|---|---|---|
| 9 | 1N4148 | Diode_THT:D_DO-35_SOD27_P7.62mm_Horizontal | D20, D21, D22, D23, D24, D25, D26, D27, D28 |
| 9 | SK6812MINI-E | LED_SMD:LED_SK6812MINI-E_3.2x2.8mm_P1.5mm_ReverseMount | D2, D3, D4, D5, D6, D7, D8, D9, D10 |
| 9 | SW_Push | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW11, SW12, SW13, SW14, SW15, SW16, SW17, SW18, SW19 |
| 4 | MountingHole_Pad | footprints:MountingHole_3.2mm_M3_Pad_Via | H1, H2, H3, H4 |
| 1 | clipboard:462f2333-586c-4cc8-b04d-9995b911b9d8 | ||
| 1 | ER_OLEDM0.91_1x-I2C | v:SSD1306-0.91-OLED-4pin-128x32 | U2 |
| 1 | MOUDLE-SEEEDUINO-XIAO | footprints:XIAO-Generic-Hybrid-14P-2.54-21X17.8MM | U1 |
| 1 | RotaryEncoder_Switch | Rotary_Encoder:RotaryEncoder_Alps_EC11E-Switch_Vertical_H20mm | SW4 |
It measures 93.8 × 82 mm and has 2 copper layers, 1.6 mm thick.
35 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 HexFud/HexKeyboard repository on GitHub, at the commit this page was made from: the board is PCB/hackpad.kicad_pcb and its schematic PCB/hackpad.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 HexFud 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.

