Stream Deck MIDI not working? Fix it on Windows & macOS
Pressed a key and nothing moved? Almost every "MIDIRover isn't working" case comes down to a handful of things: the two sides aren't on the same MIDI port, the channel doesn't match, loopMIDI isn't running (Windows), or a MIDI Learn just didn't bind. Work down this page in order — it's symptom-first — and you'll be sending MIDI again in a couple of minutes, on Windows or macOS.
Quick symptom checklist
- Nothing happens at all. A port isn't selected on both sides, or (Windows) loopMIDI isn't running. See the port sections below.
- Your plugin isn't receiving. The port is right but the MIDI channel doesn't match, or the control was never learned. Check the channel and re-arm MIDI Learn.
- The MIDI Dial action is missing. Dials exist only on the Stream Deck +. On every other model use a CC Sweep key instead.
- The value jumps instead of sweeping. Lower the dial's Step (or a Sweep key's Sweep time) and set a Range so the sweep stays in a useful window.
Windows: is loopMIDI running?
Windows has no built-in virtual MIDI cable, so MIDIRover needs a loopback port to carry its MIDI into your plugin or DAW. Install the free loopMIDI and create one port — the default "loopMIDI Port" name is fine. One is all you need; extra ports just make it easy to pick the wrong one on one side. loopMIDI has to be running for the port to exist, so if nothing works after a reboot, open loopMIDI first. If no ports show up in MIDIRover's list, create a port in loopMIDI, then reopen the key settings so the list refreshes.
macOS: nothing to install
On macOS there's no setup — MIDIRover creates its own virtual port automatically. You don't need loopMIDI or any equivalent. Just make sure your plugin's MIDI input is pointed at MIDIRover's port (next section).
Pick the same port on both sides
This is the single most common fix. MIDIRover sends on the port you choose under MIDI Port (or leave it on Auto-detect); the choice is shared by every key. Your plugin has to listen on that same port. Drop any MIDIRover action on a key, confirm the port, then open your Neural DSP plugin (or standalone / DAW) and set its MIDI input to the identical port. If you created more than one loopMIDI port, double-check both sides name the same one.
Match the MIDI channel (1–16)
Right port but still silent in the plugin? Check the channel. MIDIRover sends each action on a channel from 1 to 16; your plugin only reacts if it's listening on that channel (or set to hear all channels). Set both ends to the same number and the message gets through.
MIDI Learn didn't bind? Re-arm and press once
If a control never responds, the mapping probably didn't take. In Neural DSP, right-click the control and choose Enable MIDI Learn again (or add it from the MIDI-port icon → MIDI Mapping window → "+"), then press the Stream Deck key once so it learns a single, clean message. A CC learned to a button toggles it, so use Fixed mode for one dependable value per press, or Toggle with Feedback on so the key light tracks the plugin's real state. A CC learned to a slider or knob is already absolute — nothing extra to enable. To flip a parameter between two settings without a dial, put two Control Changes on the same CC in Fixed mode with different values (a rhythm and a lead, say) — see the two-key parameter switch guide. Full walkthrough in the Neural DSP setup guide.
Learning Mode: know the rules
MIDIRover's own Learning Mode (on the Control Change, Note and MIDI Dial actions) reads a control on any MIDI controller and fills in the channel and number for you — handy, but it has a few habits worth knowing when it seems stuck:
- Listening stops after about 12 seconds if nothing arrives — just press Learn again to retry.
- The input port is only opened while you're learning, so if nothing fills in, confirm your controller is actually sending during that window.
- Click Learn a second time to cancel without changing anything.
No MIDI Dial action? That's a Stream Deck + feature
If you can't find the MIDI Dial action, you're likely not on a Stream Deck +. Dials (and the touch strip) exist only on the Stream Deck + — on the Mini, MK.2, XL, Neo and the Pedal the dial action is hidden by design. To ride a parameter by hand on those models, add a Control Change action and set Mode → Sweep: hold the key and the value sweeps. See the expression / wah pedal guide. One note: the Pedal has no screen, so you get the sweep but no on-key gauge or state light there.
See what's actually being sent
When you're not sure whether the problem is MIDIRover, the port, or the plugin, watch the traffic with a MIDI monitor. It shows you the exact channel and message arriving on the port in real time, so you can tell at a glance whether MIDIRover is sending, whether it's on the channel you expect, and whether your plugin is on the other end of the same port. For device-specific messages like NRPN or SysEx, always confirm the numbers against your gear's own MIDI implementation chart rather than guessing.
Still stuck?
If you've matched the port and channel, confirmed loopMIDI is running (Windows), and re-armed the learn and it still won't play, the MIDIRover user manual covers every action and setting in detail, including the full troubleshooting section.