DeskPilot
A 12-key macro pad with a printed enclosure and hot-swappable switches for OBS, shortcuts and quick actions.
Overview
DeskPilot is a small mechanical macro pad built around a spare Arduino Pro Micro: 12 hot-swappable switches plus a rotary encoder, wired point-to-point and flashed with a custom keymap to replace a handful of daily keyboard shortcuts with a single press.
What you need
3D printed
- Two-piece case (top plate + base)
- 12 keycaps
Electronics
Build log
Design the case
Model the case around the exact switch and hot-swap socket footprint in Fusion 360, leaving 0.15mm of clearance so the sockets press-fit cleanly.
Print top and base
Print the top plate in a stiffer material for switch stability, and the base plate in plain PLA since it only carries the electronics.
Wire the matrix
Solder the diode matrix point-to-point (no PCB), then test every key for continuity before closing the case up for good.
Flash the firmware
Flash a custom QMK-style keymap mapping each key to a macro: OBS scenes 1 to 4, mute mic, screenshot, and a couple of text snippets.
Wire the encoder and status LED
Wire the rotary encoder to volume control, then add a companion script that listens for OBS WebSocket events to light up an LED whenever the stream goes live.
Result
Scene switching during streams went from five separate keyboard shortcuts to a single press, and the mute key alone has saved more than one awkward moment on calls.
Lessons learned
Hot-swap sockets were worth the extra printing-tolerance pass: two switches failed within the first week and were swapped in seconds instead of a full resolder. The diode-direction mix-up on the first wiring pass was, predictably, the first debugging session.