Control your rig from your Stream Deck
MIDIRover is a free Stream Deck plugin that sends MIDI to Neural DSP and any MIDI-enabled plugin or DAW. This guide covers everything — installation, every action, Learning Mode, and a Neural DSP walkthrough.
1 What you need
- A Stream Deck — any model (Mini, MK.2, XL, Neo, Stream Deck +, Pedal, or Mobile).
- The Stream Deck app installed (Elgato, free).
- Windows: a virtual MIDI port — the free loopMIDI.macOS: nothing extra — MIDIRover creates its own port automatically.
- The software you want to control — Neural DSP (any plugin), another amp sim, a synth, or a DAW that accepts MIDI.
2 Install & first run
Install the plugin
Add MIDIRover from the Elgato Marketplace. It appears in the Stream Deck app under the MIDIRover category.
Set up a MIDI port
Windows: open loopMIDI and create a port (the default “loopMIDI Port” is fine). macOS: skip — the port is automatic.
Pick the port
Drop any MIDIRover action on a key and open its settings. Choose your port under MIDI Port — or leave it on Auto-detect. The choice is shared by every key.
3 Core concepts
- MIDI port
- The virtual cable between MIDIRover and your software. One port is shared across all your keys — set it once.
- Channel
- MIDI has 16 channels (1–16). Your key and your software must agree on the channel. Most setups leave everything on channel 1. New keys default to the channel you last picked, so once you move your rig to, say, channel 2, every key you add follows automatically.
- CC, Program, Note
- The three everyday message types. CC = a knob/switch (0–127). Program = recall a preset. Note = a musical note on/off.
- MIDI Learn
- Most plugins have a “MIDI Learn” mode: you arm a control, send it a message, and it binds. MIDIRover sends the message — you press the key to teach your plugin.
- Colour theme
- A shared Deck theme recolours every MIDIRover key and dial at once — pick one of six presets, or set your own two colours, in any action's settings. Each key can also override it: its This key setting follows the deck theme by default, or takes its own preset or custom colour, handy for colour-coding by function. (The Stream Deck + dial's built-in value bar keeps the system colour.)
4 Actions reference
Drag any of these onto a key (or a dial, for the Stream Deck +). Give it a Name to label the key. (If you set a Title in the Stream Deck app itself, that always wins over the Name.)
Control Change CC
The workhorse for stomp-style controls — drive, delay, reverb, boost. Toggle an effect on/off, send a fixed value, or make it momentary (on only while held).
| Toggle · Icon On / off each press — the key shows its state. Default display: the power icon. | |
|---|---|
| Toggle · Switch (vertical) The same on/off, drawn as a lever switch — up (on) / down (off). | |
| Toggle · Switch (horizontal) The same on/off, drawn as a lever switch — right (on) / left (off). | |
| Toggle · Play / pause The same on/off, drawn as transport — play (off) / pause (on). | |
| Fixed The same value on every press. | |
| Momentary On while held, off on release. | |
| Sweep · Slider Hold the key to sweep the value — a wah or volume ride. Default display: a linear slider gauge. | |
| Sweep · Knob The same hold-to-sweep, shown as a rotary knob with a value ring. | |
| Sweep · Value only The same hold-to-sweep, showing just the number — no gauge. |
| CC Number | The controller number you map in your plugin (0–127). |
|---|---|
| Value On / Off | The values sent for the on and off states (default 127 / 0). |
| Latch group | Toggle keys sharing a group name act like radio buttons — turning one on turns the previous one off. Leave blank for independent toggles. |
| Sweep time / Range | Sweep mode: seconds for a full sweep (1–10) and the min–max span; the sweep bounces at the ends and remembers its position. |
| Key graphic | Toggle mode: the Icon (power symbol), a lever Switch (vertical or horizontal), or Play / pause transport (play when off, pause when on). Sweep mode: Slider draws a live linear gauge, Knob a rotary knob with a value ring, or Value only shows just the number. (Fixed and Momentary each show their own icon.) |
| Orientation | Sweep mode, Slider graphic only: draw it vertical or horizontal (the Knob is always round). |
| Feedback | Optional MIDI input, shared by every action. For this key, an incoming CC keeps a Toggle's state and light or a Sweep key's value (and its on-key graphic — slider or knob) in sync with the MIDI your DAW sends back. Neural DSP is receive-only, so the source is your DAW's automation (or another controller), not the plugin itself. Off by default. |
| Channel | MIDI channel 1–16. |
Program Change PC
Jump straight to a saved preset or tone. Assign one program number per key — the fastest way to switch Neural DSP presets. (In Neural DSP, add a Program Change → Preset mapping for each preset first. In a DAW the host must forward Program Change — Ableton Live doesn't and Logic often doesn't, so the standalone app is the reliable path.)
| Program | The program number to recall (0–127). |
|---|---|
| Bank | Optional Bank Select sent right before the program (coarse CC0 / fine CC32) — for gear whose presets live in banks. Leave on “–” to skip. |
| Channel | MIDI channel 1–16. |
Bank Up / Down PC / CC stepper
Classic preset scrolling, or in Control Change mode step a CC-Absolute value up/down (with wrap). Pair an Up key and a Down key with the same Bank id and channel — they share one counter and both show the current value.
| Output | Program Change (default) sends the classic preset PC. Control Change sends a CC whose value is the stepped counter (0–127) — cycle or nudge a CC-Absolute parameter. A Dec/Inc parameter instead needs a Fixed-value key on each of its inc/dec CCs. |
|---|---|
| CC Number | Control Change output only: the controller sent (0–127). A CC Up/Down pair must share it (as well as Bank id + channel) to move one counter. |
| Direction | Whether this key steps up (next) or down (previous). |
| Bank id | Keys sharing this id + channel move the same counter. Use different ids for independent banks. |
| From / To | The range to move within (e.g. 0–9) — program numbers in PC mode, CC values in CC mode. |
| Step | How many to move per press. |
| At ends | Wrap around loops past the end back to the start; Stop at ends clamps. |
| Key shows | Show the current value on the key, or the name only. |
| Steps | Optional ordered list (value:label, …) replacing From/To — the key shows each step's label; one list item per press (the Step size is ignored in Steps mode, but At ends still wraps/clamps at the list ends). Paste the same list on the paired key. Items the plugin would skip outline the field in red as you type. |
Note Note
Send a MIDI note — for parameters that learn to notes, tap-tempo, or triggering things in your DAW.
| Tap Note-on then note-off on each press. | |
|---|---|
| Hold Sounds while the key is held. | |
| Toggle On / off per press — lights while the note is on. | |
| Note On only Lets the note sustain — end it with a Tap on the same note. |
| Note | The note number (0–127), shown with its musical name, e.g. 60 · C4. |
|---|---|
| Velocity / Off velocity | How hard the note is struck (0–127), and the release velocity (default 0 — most gear ignores it). |
| Feedback | Optional shared MIDI input — an incoming note-on / note-off matching a Toggle action's note and channel keeps its state and key light in sync (e.g. when your DAW plays the same note). Off by default. |
| Channel | MIDI channel 1–16. |
Advanced MIDI Advanced
For gear that needs more than CC / PC / Note. Pick one message type per key.
| Pitch Bend 0–16383 (8192 = centre, 16383 = full up, 0 = full down). Sent once per press — the bend stays there, so pair a second key at 8192 to snap back to centre. | |
|---|---|
| Aftertouch Channel pressure, 0–127. | |
| NRPN 14-bit parameter + value (sent as CC 99 / 98 / 6 / 38). | |
SysEx Raw hex bytes — F0/F7 are added automatically if you omit them. Separate bytes with spaces, commas, periods, colons, semicolons, or dashes; anything the plugin can't parse outlines the field in red and nothing is sent. |
MIDI Dial Stream Deck +
Ride a parameter by hand — gain, mix, wah — on a rotary dial. The touch strip shows the name and the live value as a bar or a rotary knob. (Stream Deck + and + XL only.)
| CC Number | The controller the dial sweeps (0–127). |
|---|---|
| CC mode | Absolute (default) sends the 0–127 value the dial rides. Relative sends +/− deltas for an endless encoder, so a DAW parameter never jumps on pickup — Range / Reset / Display and feedback don't apply, and the touch strip shows the CC number with a ± mark. |
| Encoding | Relative mode only: Signed bit, Two's complement, or Binary offset — match your DAW's relative-CC mode (Ableton / Reaper / Bitwig / Cubase all list these). |
| Step / tick | How much the value changes per detent. Hold the dial while turning for coarse steps (×4). |
| Reset to | Press and release the dial (without turning) or tap the screen to jump to this value (clamped into Range). Holding while turning gives coarse steps and never resets. |
| Range | Limit the sweep to a min–max span (default 0–127) — e.g. keep a wah between 20 and 100. The touch strip display follows the range. |
| Display | Bar (default), Knob (a rotary knob with a ring filling from the low end), or Knob (ring from centre) for bipolar controls like pan. |
| Feedback | Optional shared MIDI input — an incoming CC matching this dial moves its value and touch strip display (e.g. when the DAW automates the parameter). Off by default. (Not used in Relative mode.) |
| Channel | MIDI channel 1–16. |
Panic All notes off
One press clears a stuck note or hung sustain — it sends All Sound Off (CC120), All Notes Off (CC123) and Reset All Controllers (CC121). Especially handy next to Note keys set to Note On only / Hold / sustain, which don't release on their own.
| Send on | All channels (default, all 16) or a single channel 1–16. |
|---|
5 Learning Mode
The fast way to set up a key — no typing CC numbers. Available on Control Change, Note, and MIDI Dial.
Open the Learn row
In the key’s settings, find Learn. Pick the MIDI input your controller is on — or leave Auto (first input).
Press Learn
The key reads Listening…. Move a knob, press a switch, or turn a dial on your controller.
It fills itself
MIDIRover captures the CC or Note and fills the Channel and number for you. Status shows what it learned.
6 Naming values
Give channels, CCs and programs friendly names so the dropdowns read 22 · Drive instead of just 22.
- Type a name in the small field next to a Channel / CC / Program dropdown.
- Names are shared across every key, so you label a value once.
- CC and program names are scoped per channel — CC 22 on channel 1 and channel 2 keep separate names and never mix.
7 Neural DSP quick-start
Route MIDI in
Open your Neural DSP plugin (or its standalone) and set its MIDI input to your loopMIDI port.
MIDI-Learn a control
Right-click a stomp or knob in Neural DSP and choose MIDI Learn. Press your MIDIRover Control Change key — it binds instantly.
Switch presets
In Neural DSP's MIDI Mapping window, add a Program Change → Preset entry per preset, then use Program Change or Bank Up / Down keys to jump or scroll tones. In a DAW the host has to forward Program Change (Ableton Live doesn't; Logic often doesn't) — the standalone app is the reliable path, or map presets to CCs there instead.
8 Troubleshooting
- Nothing happens when I press a key
- Check that a MIDI port is selected (or Auto-detect finds one), that loopMIDI is running (Windows), and that your software’s MIDI input is the same port.
- The plugin isn’t receiving in Neural DSP
- Confirm the channel matches on both sides, and that you MIDI-Learned the right control. Watch incoming MIDI with a monitor if unsure.
- I can’t find the MIDI Dial action
- Dials only exist on the Stream Deck + (the model with dials + a touch strip). On other models the dial action is hidden by design — use the key actions (e.g. CC Sweep mode to ride by hand).
- Windows: no ports listed
- Open loopMIDI and create at least one port, then reopen the key settings so the list refreshes.
9 Support & feedback
MIDIRover is free and made by an independent developer who plays guitar. If it saves you setup time,buy me a coffee.
MIDIRover 1.0.0.0 · Not affiliated with Neural DSP or Elgato. MIDI, Stream Deck and product names are trademarks of their owners.