How to run MIDI commands for 2 Quad Cortexes on the same PC?

We’re using Reaper to run MIDI patch change commands for 2 Quad Cortexes in my band. Each have their MIDI CC commands on separate tracks, with separate MIDI Output sends going to each QC.

We’re having problems where sometimes upon connecting the QC units, the respective MIDI commands get mixed up and sent to the wrong units. I get our other guitarist’s commands, and he gets mine. It’s annoying because it seems so random, and it has happened on two gigs now. We can get it fixed sometimes by going into Reaper’s MIDI output settings; sometimes I have to delete my MIDI send and recreate it; sometimes I’ve even had to put our MIDI sends the other way around.

This never happens when I try it at home with my own QC only. Neither of us has any USB connectivity issues, or problems programming MIDI CC changes alone on our computers. How can I set this up so that it works the same way every time we connect to the same PC? Are there some precautions or best practices I should take? I’m sure I’m just doing it wrong, but what exactly?

We always put the same QC into the same USB port. But it still can happen. Does it matter which QC we connect first? I can’t pinpoint what is causing this.

We use just normal USB cables, no hubs or anything.

You have them on separate MIDI channels, right ? And not sending commands on broadcast ?

1 Like

I’ll try that next, but currently no. Currently both MIDI tracks are sending on their channel 1. I mean, both tracks have their own “channel 1” and both channels are using that.

(AFAIK each MIDI device has its own 16 channels. I may be mistaken, but the 16 channels of a certain MIDI device shouldn’t know anything about the 16 channels of another MIDI device, unless specifically connected so. This is why I hadn’t considered separate MIDI channels for each QC.)

You mean sending on all channels/omni? No, they’re channel 1. The MIDI sends are using the option Send on original channels and the CC commands themselves are all channel 1, on both MIDI tracks.

However I think both QCs are receiving in omni. Mine is at least. [EDIT: I was wrong, mine is receiving on channel 1.] But even so, each QC still shouldn’t be listening to any other MIDI send than the one I give it. Receiving in omni should only mean “Listen to all MIDI channels you can hear”. And the only MIDI channels my QC should be able to hear are the ones included in my MIDI track’s send - not the ones in our other guitarist’s MIDI track send.

Most of the time this is exactly how we get it to work. When it works, it’s great and it doesn’t mess up mid-show. But it can mess up upon connecting to the PC. We may be doing something differently on some load-ins, but it’s a nightmare to keep track of every tiny thing that happens at stage load-ins; it can’t actually be this finicky with Reaper and Quad Cortex.

Does the order in which we connect the QCs matter? Does it matter if we don’t always use the same USB ports? Does it matter if I take the Reaper project file home, make changes to it while only my only QC is connected, save the project and bring that back to rehearsal and then we both connect to it?

No, that’s not how MIDI works. There’s 16 MIDI channels, full stop. Two devices on the same channel will respond to commands on that channel.

Also, broadcast in MIDI means you’re sending commands (be it PCs, CCs, note on/off, or SySex) on all 16 channels, which means all devices downflow that are connected will react to said commands (as long as they have something mapped to it).

Keep in mind MIDI has remained pretty much unchained since in inception in 1983 (yes, that’s 43 years ago), hence its many limitations. And MIDI 2.0 has been coming “next year” since the mid-nineties or so…

3 Likes

You should use a different midi channel for each unit.

2 Likes

I’m trying that next when I have access to both units. It’s definitely worth having them use different channels just to better futureproof our band’s MIDI routing. But I wanna really understand what makes the difference here. In my logic the channels shouldn’t be the culprit (explained further below).

Currently I think it might be happening because of mismatching MIDI device IDs between host computer Reaper installations. At least this must have been causing some issues.

I did a bunch of experimentation yesterday using just my own QC, my desktop PC and laptop, trying to make QC lose connection to its MIDI track and clock as I mess around with changing USB ports, moving it between desktop and laptop computers, rebooting Reaper/QC, opening and closing projects, etc.

It worked, apart from one occasion (related to a duplicate Quad Cortex device entry on my desktop). But I noticed that my QC had a different device ID on desktop and laptop Reaper installations. I gave them the same number and thereafter I couldn’t make it mess up anymore, no matter what I did. I tested this idea by forcing a mismatch again:

  1. In desktop Reaper settings, change QC device ID to 1
  2. Make a send from the MIDI track to QC
  3. In laptop Reaper settings, change QC device ID to 13
  4. Copy the project file from desktop to laptop, and open it there
  5. No MIDI. Quad Cortex still registers succesfully as a MIDI device inside Reaper, but it can’t receive commands from that particular MIDI track send, because the device enumeration is wrong. The track sending the MIDI is sending its stuff to a device with ID number 1, but Quad Cortex is no longer 1, it’s 13.
  6. Change ID back to 1, and everything works.

There was a duplicate Quad Cortex device entry on my desktop (which has only ever seen my own QC, not two units), I deleted that and tidied everything up. Now I’m ready to test with our other guitarist’s Quad Cortex connected, see what happens.

That’s my understanding too. You can set a MIDI keyboard to Channel 1, record-arm a bunch of VSTs, and then all the VSTs that are listening for input on Channel 1 will react.

But in this instance, the two Quad Cortexes are essentially not “on the same channel” because of how their MIDI information is routed, right? Because they are two separate physical devices, being fed by two wholly separate MIDI tracks. Those two tracks are not broadcasting.

Another example: You could have two virtual instruments in a DAW, with separate MIDI tracks for both. Both these MIDI tracks can have all their notes and messages on say channel 1. They only go to the VST that they are patched to. Nothing gets mixed up, even though both are using channel 1. That’s all I meant by saying that, in a way, there are separate 16 channels for each MIDI instrument. Not true exactly, but in a VST-heavy DAW world that’s how you often end up thinking in practice.

Yeah, I would just do each device on a different channel. It’ll be way more solid going forward for your band. There’s a reason why everyone who is sending commands to multiple devices does that.

You’re using a PC and Reaper which is already opening you up to the setup possibly getting weird. At least properly have the midi channels for each device for a more solid setup, especially for live shows.

1 Like

Thats a lot of words to describe a factual situation that doesn’t exist based on your first post:

MIDI commands get mixed up and sent to the wrong units.

Using separate midi channels will fix this.

1 Like

Definitely, there’s no way around not properly setting up the midi commands here. It’s the only real option to fix the patches changing incorrectly….since the setup wasn’t correctly done in the first place

1 Like

Nope. You’re sending all commands on the same MIDI channel, no matter how many MIDI tracks you use. Again, there’s only 16 MIDI channels, full stop. The plugin analogy actually doesn’t work, as inside a DAW a MIDI instrument track only sends commands to whatever is inserted in it. So, different things altogether.

That’s the reason why MIDI PC Receive Maps were invented in the first place, it allowed to circumvent the low number of available channels.

So…just use different MIDI channels for either of you QCs, it’ll solve your issue.

1 Like

I do exactly that but with logic:

Be sure to have 1 external midi instrument per QC

Each QC res to a unique midi channel (eg QC 1 Midi1/ QC 2 midi2).

Also make sure all your midi events in track 1 have midi chn 1 and that your track settings are set to midi 1 omni off (the sane with chn 2 for the second QC)

I route all out if the laptop using a CME WIDI U-Host and the QC and other receivers use a CME Widi Master each (A group is created in the app).

Hope that helps

1 Like