Smash Happy Audio — User Manual
Turn any MIDI knob or encoder into a scroll wheel over whatever plugin parameter your mouse happens to be hovering — no mapping per plugin, no mapping per parameter.
Most plugin knobs respond to a scroll gesture, but very few DAWs or plugin hosts let you map a physical MIDI controller to "whatever's under the mouse." Reach fills that gap: learn one control on your hardware, and from then on, turning it sends a scroll event to whatever your cursor is hovering — any plugin, any parameter, without touching a mapping menu per plugin.
Reach lives quietly in the menu bar. It doesn't route audio or MIDI to your DAW; it only translates one learned control's movement into the same scroll gesture your trackpad or mouse wheel would send.
Open Reach from the menu bar and start the learn flow, then move the knob or encoder you want to use. Reach listens across every connected MIDI device at once and remembers both which control you moved and which device it came from, so the same physical knob keeps working even if you reconnect your interface later.
For controls with a fixed physical position (potentiometers) — the control's position maps directly to scroll amount.
For endless rotary encoders — each turn sends a relative scroll delta, so there's no physical position to snap to and it never "wraps."
Sensitivity (0.25×–4×) scales how much scroll each movement produces. Invert flips the direction if your control feels backwards for a given parameter.
Learn a second control (a CC or a note — a footswitch or an encoder click both work) as a fine-tune modifier for finer adjustments where a parameter's range makes the primary control feel too coarse.
Enable Launch at Login so Reach is already running and ready the moment you sit down at your session — no need to remember to open it before reaching for your controller.
| Platform | macOS, menu-bar utility |
| Input | Any class-compliant MIDI controller (CC or note) |
| Modes | Absolute (pots), Relative (encoders) |
| Sensitivity range | 0.25× – 4× |
| Fine-tune control | Optional second CC or note |
| Persistence | Settings saved automatically, optional launch-at-login |
Confirm the control was actually learned (re-run the learn flow if you're not sure) and that your mouse is hovering directly over the parameter you want to move — Reach only affects whatever's under the cursor, exactly like a real scroll gesture would.
Make sure Mode is set to Relative for encoders, not Absolute — Absolute mode expects a fixed physical position and will behave oddly on a control that spins freely.
Adjust Sensitivity, or learn a Fine-Tune control for a second, finer-grained input on the same parameter.