There are five distinct ways to drive REAPER from something physical, they live in two different preference pages, and choosing wrong costs you an evening. REAPER MIDI control via Learn is not the same thing as a control surface, OSC is filed as a control surface rather than a MIDI setting, and the built-in web interface is a surface too even though nothing is plugged in. This article lays all five side by side, says plainly what each is for, and ends with where a gamepad actually belongs.
- MIDI Learn — no setup, binds anything to anything, one-way. The default answer.
- Mackie Control / HUI — for hardware with motorised faders and displays that needs state sent back.
- OSC — float precision and network transport. Lives under Control/OSC/web.
- Web interface — a phone or tablet as a remote, no app required.
- A gamepad wants Learn, plus OSC if you ride long sweeps.
$89Pro for OSC output.
What control surfaces does REAPER support?
Mackie Control (including extenders), HUI, Frontier Tranzport, generic OSC, and a built-in web browser interface — all added from Options → Preferences → Control/OSC/web.
Notice what is not on that list: your specific controller. REAPER deliberately does not ship per-device profiles, because MIDI Learn makes them unnecessary for anything that does not need feedback. The surfaces that do exist are there to speak protocols where hardware expects a conversation rather than a one-way stream.
The five options, side by side
| Option | Configured in | Direction | Resolution | Best for |
|---|---|---|---|---|
| MIDI Learn | Right-click any control | One-way in | 7-bit, or 14-bit if the device sends pairs | Almost everything |
| Mackie Control | Control/OSC/web → Add | Two-way | Protocol-defined | Motorised fader desks |
| HUI | Control/OSC/web → Add | Two-way | Protocol-defined | Older HUI-compatible desks |
| OSC | Control/OSC/web → Add | One or two-way | 32-bit float | High-resolution rides, network control |
| Web interface | Control/OSC/web → Add | Two-way | n/a | Phone or tablet as a remote |
Why is MIDI Learn usually the right choice?
Learn requires zero configuration, binds any message to any parameter or action, and stores the result where you choose.
Its two limitations are worth stating honestly:
- One-way. REAPER does not tell the controller anything. If a parameter changes on screen, the physical control does not move. Soft takeover is REAPER's mitigation for this, and it works well.
- 7-bit by default. 128 steps across the full throw of a control. Audible as stepping on long slow sweeps of a filter or a send. Fixable with 14-bit CC pairs or by switching that one control to OSC.
Neither limitation matters for buttons, transport, navigation, or quick parameter grabs — which is most of what anyone actually does. The full behaviour of the Learn dialog is in the complete MIDI Learn guide.
When do you actually need Mackie Control or HUI?
Only when your hardware needs REAPER to talk back to it — motorised faders, scribble strips, LED rings. These are protocols, not brands. A desk that advertises "Mackie Control compatible" speaks MCU, so you add an MCU surface, assign its input and output ports, and REAPER starts a two-way conversation: your fader moves, REAPER follows; REAPER's fader moves, your motor follows.
Two configuration details people miss:
- Both ports must be assigned. A surface with only an input port set will receive but never send, and all the feedback behaviour you bought the hardware for silently does nothing.
- Extenders are separate surfaces. An eight-fader extender is added as its own MCU surface with its own port pair and an offset, not as part of the main one.
If your hardware has no motors and no displays, a surface buys you nothing and costs you flexibility, because the protocol decides what each control does rather than you. The same argument applies to using a gamepad as a HUI-style surface — it is possible, as the HUI surface comparison covers for Pro Tools, but in REAPER plain Learn is almost always the better path.
Why can you not find OSC under MIDI preferences?
OSC is a control surface mode in REAPER, which is why people hunt for it under MIDI preferences and never find it.
What it buys you over MIDI:
- 32-bit floats instead of 7-bit integers. No audible stepping on slow sweeps.
- Readable addresses —
/track/3/volumerather than "CC 22 on channel 1, I think". - Network transport. The sender can be on a different machine entirely.
- Direct action firing via
/action/<command id>, once action binding is allowed in the device dialog.
What it costs you: notes. OSC does not record into a MIDI item, so anything you want captured as a performance still wants MIDI. The practical configuration is both at once — MIDI for notes and recorded automation, OSC for live rides and transport. Setup is covered in the OSC setup guide, and the address vocabulary in the OSC commands reference.
What does the REAPER web interface give you?
REAPER has a built-in HTTP server, and it is added like any other surface: Control/OSC/web → Add → Web browser interface.
Set a port, and REAPER shows you an address to open from any device on the same network. You get transport, track controls and a simple mixer in a browser, with no app to install and nothing to pair. For a quick "start recording from across the live room" need, it beats every other option here on setup time.
Its ceiling is low — it is not a performance surface and the latency over Wi-Fi is not something you want under a fader ride. But as a remote, it costs 30 seconds to set up and solves a real problem. If you want more than that from a phone, OSC with a layout app is the next step up.
Where does a gamepad fit in all this?
Learn for everything, plus OSC for the two or three continuous controls where 7-bit stepping is audible. No control surface needed.
The reasoning is simple. A gamepad has no motorised controls and no displays, so the entire feedback half of MCU and HUI is wasted on it. What it does have is sixteen buttons you can hit without looking, two absolute two-axis sticks, two analogue triggers with real throw, and on a DualSense a touchpad — all of which Learn binds in seconds.
A working division of labour:
| Gamepad input | Protocol | Bound as |
|---|---|---|
| Face buttons | MIDI notes | Action bindings in the Actions list (global) |
| D-pad | MIDI notes | Navigation actions — markers, tracks, items |
| Analogue triggers | OSC floats | Sends and filter rides, learned onto FX params |
| Sticks | MIDI CC or OSC | Track volume/pan with track-selected scoping |
| Touchpad X/Y | OSC floats | Two-axis FX morphs |
| Shoulder buttons | n/a | Held as layer modifiers in the bridge, never bound in REAPER |
OSC output is a Pro feature in the bridge; the free tier is MIDI-only with three saved presets, which is enough to run this whole layout minus the float precision. Download the free build to try it, or get Pro for $89 one-time for OSC targets and unlimited presets.
The one rule when combining them
Keep the sets disjoint. If an MCU surface owns track volume and you also MIDI-learn a fader onto the same parameter, the two fight — REAPER applies both, the motor chases the learn, and the result looks like a bug.
Write down which layer owns what before you build. Surfaces own mixing; Learn owns the extras; OSC owns the high-resolution rides; actions own transport and navigation. Four lines in your project notes is all the documentation this needs, and it is the difference between a rig you trust and one you re-debug every month.
FAQ
What control surfaces does REAPER support?
REAPER ships support for Mackie Control (MCU and extenders), HUI, Frontier Tranzport, generic OSC, and a built-in web browser interface. Anything outside that list is handled with MIDI Learn instead.
Do I need a control surface to control REAPER?
No. MIDI Learn covers every parameter and action without any surface configuration. Control surfaces exist mainly for hardware that needs feedback, such as motorised faders and scribble strips.
Where are control surfaces configured in REAPER?
Options → Preferences → Control/OSC/web. Click Add to create a surface and choose the mode from the dropdown.
Can I control REAPER from my phone?
Yes. Add a Web browser interface surface in Control/OSC/web, then open the listed address from a phone on the same network. OSC apps also work once an OSC device is configured.
Is OSC a control surface in REAPER?
Yes. REAPER treats OSC as a control surface mode rather than a MIDI setting, which is why it lives under Control/OSC/web and not under MIDI Devices.
Does a gamepad need a control surface in REAPER?
No. A gamepad has no displays or motorised controls, so there is nothing for feedback to drive. MIDI Learn, or OSC for float precision, covers it completely.
Wrap-up
Five options, one question: does your hardware need REAPER to talk back? If yes, a control surface. If no, MIDI Learn with OSC sprinkled on the continuous controls. Everything else is detail. The REAPER user guide has the full control surface chapter when you need port-level specifics.
Download Universal Controller MIDI and test the Learn-plus-OSC approach on a controller you already own.