OpenAI shipped its first hardware product: a $230 macropad. Figma released theirs a few years ago. More Facebook Marketplace e-waste.
Wrong execution. It is not portable enough, and it is not evergreen. These are fixed hardware devices trying to solidify workflows that are still evolving at an exponential pace. The workflow I had six months ago is not the workflow I have now, and a device with the old one printed on it is landfill with a logo.
Enter Teenage Engineering's beautiful SP-1. It recently went open source. It is $45, and it does so much more.
feldd
Over the last few weeks I built full keyboard HID emulation and a MIDI control port for it. The custom firmware is called feldd. It turns the SP-1 into a pocketable, wireless, battery powered MIDI controller and keyboard emulator.
The whole setup is three steps and a browser. Flash feldd onto the device, plug in over USB-C and grant the port, then remap the faders and buttons in the configurator and save to the device. Faders send MIDI. Buttons send MIDI or type keystrokes. So one profile can drive a DAW, and the next one can drive an editor. It talks over USB-C, a 3.5mm TRS jack, and Bluetooth.
feldd is unofficial, non commercial community firmware. It is not affiliated with or endorsed by Teenage Engineering. The point of it is that capable hardware stays useful instead of becoming landfill, which is the opposite of what a purpose built macropad does to itself in a year.
feldd-cc
One of the profiles, feldd-cc, turns the SP-1 into a Claude Code controller. The lights show me the state of my agents, and the buttons drive them.
Each LED is a session. The device has eight single color LEDs, no palette, so the language is cadence and position rather than color. Pulsing means working. Solid means done. Fast blinking means it needs you. Off means parked or idle. The four front track LEDs hold the sessions I have touched most recently, and the side LEDs are the bench. A session that flips to needs you promotes itself onto a front button, so the thing demanding attention is always under my thumb.
Then the buttons act on those sessions. The track buttons hot swap to whichever session that LED is. The rocker is a triage jog: it steps through everything wanting me, oldest first, needs before dones. Play sends a continue into the session, one press. The volume rocker parks and unparks. A permission prompt makes an LED blink, and I can approve or deny it from the device without going back to the keyboard.
The faders are all fleet wide, which was a decision rather than a default. Non motorized faders cannot chase sessions that swap in and out under them, and a fresh session inheriting a hot fader is dangerous, so a global fader always means exactly one thing. Fader one arms autopilot, which keeps a resting agent going. Fader two sets how long autopilot runs before it stops to check in, from five minutes to about an hour to forever, which is the safety valve on the whole idea. An agent asking a real question pauses it. The other two faders are a pair: one scrolls down into the focused session, one sweeps sideways across the fleet.
One source of truth
The part I care about most is invisible. feldd-cc does not reconstruct its own idea of what the agents are doing. It reads the same per session state files that my tmux cockpit reads, the ones the Claude Code hook writes, so the physical box and the software board can never disagree. That is also how the hardware learned what a parked session is, for free.
It defers to the verify gate too. When a repo's verify chain is red, or a verification is still in flight, feldd-cc will not paint a session green. The LED cannot go solid on a red tree. That was the whole reason I wanted lights in the first place: a light that lies is worse than no light.
The loop closes the other way as well. feldd-cc writes out which four sessions currently own the track buttons, so the software switcher badges them, and the switcher dims those badges when the box is not actually connected. A stale track map should never look authoritative.
Two gotchas, since they cost me time. The device has to be in MIDI mode or every press double types into the Mac. And an LED override is sticky, so the bridge has to release the LEDs on every exit or they freeze mid state.
Firmware and configurator: feldd.com. The cockpit it plugs into is open at github.com/bnjreece/falken.