Finished my LG Hackpad! 🎉
This is a 9-key mechanical macropad with a rotary encoder and an OLED display, built around the Seeed XIAO RP2040.
What I did:
-
Designed the schematic and the 2-layer PCB completely from scratch in KiCad (my first PCB ever!). Hand-routed the switch matrix with per-key 1N4148 diodes, added a GND pour and fitted everything under 100x100mm (final: 68x99.68mm).
-
Designed the case in Tinkercad: an open tray design with the XIAO RP2040 exposed, an anti-flex support grid under the PCB, USB cutout and 4x M2 standoffs - printable without supports.
-
Built the firmware (CircuitPython): the encoder browses through profiles on the OLED, and each of the 9 keys is freely configurable via a JSON config.
-
Made a desktop configurator app (Python + CustomTkinter) to assign key combos or custom scripts to every key.
Biggest challenge as a first-timer: hand-routing a 2-layer board without crossing nets while keeping a clean GND pour. Super happy
with how it turned out!