Joseph Demarest

Projects / Hardware and desk

Galleon Helm

A Stream Deck plugin that turns the keys, dials and screen on my keyboard into a control surface for two PCs.

Status
Built
Year
2026
Built with
TypeScript, Node, Stream Deck SDK
Source
Private
Requested Pending Confirmed Timeout Unknown
Each command is shown as requested, pending or confirmed. Never guessed.

My keyboard has twelve programmable keys, two dials and a small screen built in. Galleon Helm is built to use all of them to run my desk: media on the second PC, audio across both machines, voice chat, and the keyboard and mouse that are shared between the two machines.

The part I care about is honesty in the display. Every command moves through requested, pending and confirmed, and only advances when the new state has actually been observed. A timeout shows unknown rather than failed, and a value that hasn't been read yet shows as a dash, not as zero. A control surface that lies about state is worse than none.