How to trigger multiple MIDI notes using a single remote button

Let’s say I wanted to trigger Note On and Note Off of 2 MIDI notes at the same time without using the keyboard but a single remote push button. How can I achieve this in Cubase?

Have you tried setting it up as a Generic Remote?

That’s not the point, let’s choose button CC 50, I want that button to trigger a chord (like C0+G0) when I push it. I don’t know how to do it.

Local InputTransformer

You can have up to four them per track. If it is a MIDI track you can also apply transformers as a MIDI Effect (up to 4 more of them as a MIDI sends, even to alternate plugins/channels).

CuBase also provides a number of arp/chord generating MIDI effects, as well as special ‘chord functions’, ‘chord trigger pads’, and other features that might be of interest.

If I used Input Transformer I would need to set it up for every track… not very handy. Isn’t there a way to do it via a macro?

EDIT: I just tried and I can’t do it via input transformers and chord pads for many reasons, first of all I have 50 push buttons, each one to assign to a different chord, but the input transformers slots are just 4 and chord pads are just 13.

My bad, the chord pads can be extended up to 16x4 tiles, now the question is can I assign them to a remote controller and not a midi note?

On the transformer.

  1. There is a ‘global’ transformer available.
  2. You could set aside an entire channel and convert all CC events with values greater than 0 into note On events, and all CC values of 0 to note off events. The transformer does allow transforming ‘ranges’ of events.
    I.E. Change all CC50-100 events with a value greater than 0 on channel 16 to note-on 50-100 with a velocity of 64. Transform all these same CCs with a value of 0 to note-off events.

Also, check to see if the controller can be programmed to send note on/off events rather than CC events. If these are MPC pads, it’s possible they might even be able to send key velocity based on how fast/hard you tap the buttons…so double check for that potential capability in your controller.

On Chord Pads:
Do you really need access to 50 chords at one time? Seven is quite a stretch for a given key for all but uber dissonant renditions of acid jazz on a key-board based platform, and for most instruments they’ll be pretty hard to play beyond that. Thirty-five or so covers pretty much every playable inversion, suspension, etc on 98% of the human playable instruments out there (Note, there are more than 2000 possible note combinations, and yes, they can be ‘spelled’ all sorts of ways on a lead sheet…but 35 pretty much covers the the range of voicings, inversions, and added notes or leading rules). So 13 gets you half way to the upper-most limits of most instruments’ capabilities. In most forms of music it’s rare that a piece uses more than 7 for a given instrument.

So, do keep in mind that you can map out 13 buttons, and build/call up preset for the chords you’ll be needing for a given track/project as needed.

If you’re needing instant access to more than 13 chords/voicings…then it might be time to look into creating some of your own Chorder/ARP engines…perhaps within the context of a VST/i plugin (I.E. HALion 6 includes the ability to create chord and arp based instruments). You might also find the built in Steinberg MIDI Chorder MIDI effect useful.

If you are looking for more powerful real time MIDI transformation abilities, you might also check into third party MIDI transformation software like Bome MIDI Translator (pre DAW, fed via Virtual Port) or Bidule (post track input as a VST/i plugin, or over ReWire).

These are the 50 push buttons I want to assign to 2 keyswitches (x/y axes) each. So, for example, the “Staccato” button has to trigger C-1 and C0 (not necessarily at the same time, it can be done in series too).

I’m using TouchOSC, I can assign CCs or Note On/Off data to each button.

Actually Chord Pads would be a viable option, if only it let me assign pads to the remote buttons…

Hmmm…it looks like a combination of key-switches and chord pads.

Can TouchOSC only send one event per pad? I"ve never tried the app, but if it can send a ‘series of events’ that could make your life much easier. If so, then stack the events in TouchOSC directly.

I can imagine a few ways to get similar effects directly in CuBase…without such a control pad; however it would not be so great for ‘real-time’ live playing. For step-entry composing however, have a look at ‘expression maps’. It might even be possible to set up combinations of generic remote map, logic editors, and macros to drop articulations at the cursor position for step-entry into the Key-Editor or Score editor. Again, this would be more for step-entry composition, and would not work so well for ‘live/real time playing’. Example: I have used a Generic Remote map so I can drive step entry in the Key Editor using MPC pads on my AKAI MPK261. I tap an MPC pad to set the type of note I want to enter, then tap a key, rinse, wash, repeat. I can step enter an entire part and never touch my computer qwerty keyboard (except to go back and drop in articulations/dynamics that I have not mapped a remote control for). “Translating” dynamic and articulation markings into ‘MIDI events’ is done through the ‘expression map’ system.

If these are a series of events you really need to send in real-time while playing, and if TouchOSC can only send ‘one event per pad’ at a time, then it might be worth while to rethink the patch choices in your plugin. I.E. Can you opt for putting single articulations on unique MIDI channels instead of using ‘key-switches’? If that is possible with your plugin, then just set tracks to output ‘any’, drop in a channel filter for each track’s ‘local’ transformer, and do channel bounces from your main MIDI controller when changing sounds. Again, you could also set up trigger remotes to change channels, or arm/disarm entire tracks with a generic remote map.

One can also set up an organ stop type of configuration using a generic remote map that would use your controller pads to arm/disarm individual tracks that have your articulations preloaded. Example: I have a live setup where I can load a single pipe organ rank per MIDI channel. I can toggle MPC pads to open/close each channel/stop (arm/disarm the track for live recording). With my organ/stop setup, I can easily do stop changes in real time while recording.

Under what I call the ‘organ stop’ approach, each articulation gets his very own track in the project during ‘recording’. Of course I can mix and merge down to fewer tracks at it suits me in later stages of the project…but it’s an easy and effective way to make CuBase function as a live console for hopping about among, or layering many plugins/channels while recording in real time. So, by using stacked maps, and loopMIDI, I can make single MPC pads arm/disarm ‘groups’ of tracks with a single push. I can record and play back my entire automation process to/from a MIDI track if desired.

It’s also worth mentioning that while a single Remote Map cannot do multiple things with a single event, you CAN stack several maps and force a single event to send several DAW commands at once. You can also launch macros and logical editors. You can also use virtual loop-back ports to record and play-back all remote map movements on a standard MIDI track.

If you have an advanced Plugin like HALion 6, Kontakt, etc…then you can build your ‘chording’ system into the instrument itself. At that point all you need are ‘single events’ coming over the proper MIDI channel to trigger them.

It has been a long time since I have made panels for it, but it’s worth knowing that CuBase has a pretty robust set of device panel tools that were designed for classic MIDI gear. It’s possible to make some pretty advanced stuff that can accept SYSEX, N/RPN data, etc…and do advanced things with it on the fly. You might find it useful, since it might be possible to adapt it for other uses.

Finally, if you really need to do alot of advanced real time MIDI transformations and send complex ‘sequences’ of events using a single key/button, real time key-switches, etc, then it might be worth the bother to check out Bome and/or Bidule (links provided in an earlier post). Either of these apps can help you create intense personalized work-flows, and otherwise force square pegs into round holes (milk various features out of almost any DAW that might not exist internally). Bome is great for creating chains of events and sending them via single MIDI event, or using your qwerty keyboard. Bidule is an whole host inside a host, with full OSC, VSTmeta, and MIDI CC/N-RPN automation support and a whole lot more.

If you set those 50 buttons on the TouchOSC incrementally, you can set Cubase’s Input Transformer to convert them into Note-Ons (so that CC#24 converts to MIDI Note #24 (C0) and so on), then use the MIDI InsertFX “Chorder” plugin… you can trigger any number of outgoing notes (of your choice) for each incoming single Note-On (which it will receive from the Input Transformer).



Very interesting, thanks for your time.

Keyswitches are my only viable option, I’ve already thought about every possible alternative and it’s not convinient or possible. Expression maps would be great, but the logical editor doesn’t have them in the options, I even made a request about it recently:

I just tried MIDI Translator and I realized it’s the perfect solution… until it broke my cubase. Now my macros binded to CCs are not working anymore, just like in cubase 7.5, and I updated cubase because I needed these macro functioning.

http://hnng.moe/f/V5K

I’m so mad right now.

Take a break and have a second look later.
It sounds like a matter of figuring out what is being filtered/blocked/changed, how it’s being routed, and making sure your CC remotes make it to where they need to go as intended.

Don’t forget that you can pull input into CuBase several ways…I.E. You could pull a non ‘transformed’ MIDI stream straight from TouchOSC into a remote device map, while other things are going through Bome and a virtual port.

Can you have multiple instances of TouchOSC? Or if not multiple instances, can each pad be directed to specific ports/devices? I.E. run one through Bome, the other straight into CuBase, etc…and redistribute the work load accordingly? It seems like you have some things intended to control specific plugins, while others are meant to remote control the DAW itself. If you can fork it off into separate instances (or route things through different ports) for more specific purposes, it might help get things routed more precisely.

What if I tell you I’m just using TouchOSC as a remote device, as I always have done.

Unfortunately TouchOSC can’t control multiple instances, that I know, and the buttons cannot be directed for sure.

Unless TouchOSC can be loaded as a VST/i plugin directly inside the DAW, I cannot imagine it being used any other way. I’m not real famaliar with that app, but It would seem that it might be possible that plugin osc clients/servers exist that might make use of it. I know Bidule can run as a plugin, and it can be an OSC client/server. At any rate, I had pictured you using it as a simple MIDI controller, perhaps from a tablet or smart phone. Otherwise, I don’t really see the point, since topping and clicking on stuff running on the same PC with a mouse would just add another layer of useless complexity that you could otherwise do directly in the DAW, or link up with native CuBase remote maps.

I’m just using my MPK2 as a remote device, but I can send its output over 2 different physical ports (32 possible channels). Once I get it into the PC I can route it all over the place (including other machines at the other end of my house over the LAN or WAN), with and without transformation.

What I had in mind, was if you could have more than one instance of TouchOSC running, each pointing to different places. Kind of like me plugging in two MPK2 keyboards to the same PC instead of one…and designating them each to do different things. I could bring one into tracks to drive plugins and synths, and the other directly to remote maps to control the DAW/Mixer. I more or less already do this with a single MPK2, but over its two independent MIDI device drivers. Port A does plugins, port B does the DAW. Better yet, if Touch allows you to assign individual pads to any port/device its host machine can see…you would not need extra instances…but you’d need to set up the ports and redesign the routing of each pad a bit.

I’m not sure where you’ve got Touch running…I assume it’s over a tablet or smart phone? Probably via rtpMIDI over a network? If that’s the case, and if you can launch more than one instance on the device…you should be able to emulate multiple MIDI ports as well?

What is set for the MIDI input of the remote map that binds CCs to macros?

If you’ve rerouted TouchOSC through Bome, and then then into a virtual port, did you remember to also change the input for the remote map?

I can’t launch multiple instances of the “TouchOSC Bridge” (the TouchOSC virual midi port), and I can’t load multiple virtual midi ports.

Of course I have. I spent hours on it checking everything, that’s why I’m mad, because I know Cubase has a lot of bugs. (and that’s the main reason I wanted to update from 7.5, to avoid these bugs)
There is no room for mistakes, the configuration is simple.

MIDI input is “TouchOSC Bridge”.

OK, I don’t use TouchOSC, but have not had issues remote controlling almost everything in Cubase. I even route everything through a MIDI track first, and then into the remote device via loopMIDI so I can automate things that don’t have true automation lanes, sometimes with up to 6 ‘stacked maps’ and it works smooth as butter. If I had a tablet I’d check it out, but I don’t. Sorry I can’t be more helpful.

I don’t know if this will be helpful for your specific issue, but If you are on a PC loopMIDI allows as many virtual ports as you like, and it is free. You can also get rtpMIDI from the same site if you want to run it over your LAN/WAN.

OHMMYGOD MIDI TRANSLATOR IS SO FREAKING GOOD

I cannot think about anything else at this right moment, every time someone interrupts me I’m internally like “OH SHUT UP I HAVE TO THINK ABOUT THE INFINITE POSSIBILITIES OF PROGRAMMING MIDI TRANSLATOR”.

Yeah I already knew loopMIDI it’s useful for things like connecting Arduino, but with MIDI translator I can do the exact same thing and MANY MORE.

Have you ever tried controlling macros via remote CCs? Because in Cubase versions pre 8 is not possible. They just don’t work.

After a couple of reboots of everything, under the right astral conjunction, apparently my macros are back working again in Cubase 9. But it’s just a matter of time before something breaks again, I feel it.

Now I’m trying to set up MIDI outs to control my motorized faders (i.e. C11 from a midi track controls Fader CC11), nothing fancy, but apparently I can’t manage to send continous midi signals from cubase to MIDI Translator. I’ve never used midi outs in cubase before so maybe I’m misconfiguring something. Can you help me in this last issue please?

I managed to do it assigning CC11 to the first Quick Controls slot, then I just needed to set that slot in the Value/Action column like in the picture: