Invert Midi controller value (ON/OFF)

Hi
I have a small Midi controller with 12 buttons CC102 to CC113 and an extra button that sends a reset signal to all 12 buttons / signals (102 …to… 113)

And it has multiple mode, all modes sends several MIDI signals for each button at the same time
for example:
CC102 sends
CC: Bank MSB
CC: Bank LSB
PC:
Control Change
Control Change

So 5 signal at the same time…

But one of those mode is called “VST Mode”
I’ve monitored the signal using Cubase Midi Monitor
when i press the first button On “Where the Button Lights Up” it sends:
Status Val1 Val2 Val3 Ch.
Controller 102 14 1

Off
Status Val1 Val2 Val3 Ch.
Controller 102 64 1

I configured it through Generic midi to control 12 VSTi parameters “ON / OFF” and they all works as well but in reverse!!

I found a solution by Steve and Martin:

Type Is | Equal { Controller | And
Value 1 (MIDI Controller No.) | Equal | CC10

Action
Value 2 | Mirror | 64

Transform

but it doesn’t work in my case

I tried several different numbers of Mirror value 64 / 33 / 32 / 31 / 1 / 0 Etc… but the buttons still light up and send a signal not as I want …

and by using Input-Transformer & Transformer with no chance
I monitored the new transform value, the VSTi’s conduct as before and the behavior of the buttons did not change

I did not find an option to invert Midi values within GR directly
What i missed?

The transformer insert is strictly for modifying midi going to a midi track. The GR messages are not touched.

1 Like

Hi steve, thank you
I know but As i said i used Input-Transformer / Midi Transformer … but nothing helped
is there something else i can do? GR doesn’t has an invert value option! :frowning:

I forgot to say, my midi controller It works well on all other modes "many midi messages but i was able to assign the buttons in GR but for some reasons i want to use “VST Mode” and nothing else
Unfortunately, this mode specifically faces the problem of the inverted midi value.

No, afraid not. The device is expected to work normally, that’s to say, not backwards. Is there a little switch to change the “polarity” on the device?

What precisely is this?

I guess you are on Cubase 11 so you can’t use the new midi-remote?

1 Like

No button to switch

My midi controller is a custom controller for some korg synthesis / arranger keyboards that programed to send MicroTuning messages
The controller has multiple mode because Korg has different midi system "SysEx / prog. change / CC/ poly pressure … Etc, for each model of Korg keyboards to control the Microtuning / scale.

and the vst mode, the programmer made it for those who want to use his controller through DAW’s

I have Cubase 12 pro, I have to use GR because I want to send the same midi signal for several tracks at the same time for live performance.

How is that a limitation of the midi-remote?

1 Like

As i know, Midi remote doesn’t send the same midi signal to several tracks
sss

in my case, i have to send the midi messages to several tracks that are not selected.

by using GR i can create multi GR setup to send the same signal to several tracks / virtual instruments even if they are not selected.

Plus
MR does not contain many options for VSTi/ plugins…
8 FQC’s and that’s it, while my controller was made to control 12 signals … 12 Notes = Octave :frowning:
That is why I have to configure it through GR.

In the first video, you can see the problem of the inverted midi value on the VST mode
On = Off
and
Off = on

An another video using “Korg M3 mode” with no problem at all

Why do I want to work through VST mode? because KORG Modes sends many signals for each buttons specially on Korg Triton Extreme mode “My Keyboard” it uses SysEx messages and this causes many conflicts between my Korg Triton midi signals and Cubase
By the way… MIDI Filter is not a good option for me because some signals are used by another devices.

I don’t have that Korg device. But if you can’t edit what it sends it does seem to me that it’s use is rather limited to what it can do, and it apparently can’t do this :smiley: Sorry…

1 Like

Do you mind running your controller through a 3rd party app before it hits Cubase?

I’m on Windows 10 here, so I use a virtual port (loopMIDI) in combination with something like Bidule or Bome Translator Classic.

Either app would serve the purpose of transforming MIDI events in real time.

You can try both of those apps for free. Bidule’s early bird is good until sometime in October, at which time Plogue usually puts up a new free license you can grab. If you register it, then you also get plugin versions (VST2, VST3, AU, CLAP, etc.). Registered Bidule also gets you access to dev kits (if you want them) more releases and versions as they come (64bit audio precision, discrete processing, etc).

Bome Translator Classic is free with a nag screen. You can optionally register it at a low price to get rid of the nag screen. They also offer Pro Version with more features.

Personally, I prefer Bidule, as it does a whole lot more (could write books about what all it can do)…and not just for MIDI, but it can also host/chain/bridge plugins, provides an OSC server/client, and can route/manipulate audio streams. It’s one heck of an app! Even better if registered and run as a plugin in your favorite hosts (for different purposes than described here).

Personally, I route the actual hardware controller into Bidule, then send that to a Virtual port.
Example:
My MPK261 has 2 MIDI Outputs over USB into the PC.

I’ve Made a couple of Virtual Ports using loopMIDI that I’ve named MPKA and MPKB.

I launch a simple stand alone instance of Bidule. If all I’ll be using it for is to redirect and/or transform MIDI, I don’t even bother to connect Bidule to any ‘audio’ interface.

Inside Bidule, I connect my MPK’s inputs into the virtual ports I’ve made (MPKA and MPKB respectively).

Now I can add whatever bidules I like to transform MIDI in real time before it goes into a Cubase. Inverting some CC’s before it ever hits Cubase would be a breeze…in fact, I use it to do just that with some pedals that work backwards from what the MPK expects (and the MPK firmware doesn’t have an option for that pedal port to fix it for me).

I do a lot more with that initial Bidule Instance. Besides inverting my backwards pedal, I can set up split keyboard arrangments with controlers that are too dumb to do it on their own. I can remap CCs. I can build arp engines and one key chord systems. On, and on, and on.

Over in Cubase, rather than using the actual MPK inputs, I’ll use those MPKA and MPKB virtual ports instead. In fact…I’ve set Cubase to IGNORE the real MPK MIDI inputs for two reasons.

Reason 1: The USB>MIDI drivers with my MPK aren’t so good at Multi-Client support, and sometimes I like to have multiple hosts running at once (Cubase + Dorico for instance). In contrast, loopMIDI virtual ports are fully multi-client compatible.

Reason2: It can help avoid some unwelcome MIDI feedback (double events could occur if you have a track to set ALL INPUTS, and your hardware controller’s actual MIDI INPUTS are not ignored by Cubase). If you do slip up when routing tracks around get an endless loop by accident, loopMIDI will mute itself. Correct whatever you did to cause the endless loop, then go to the Windows system tray to unmute it.

Back in Cubase, I’ve set it to ignore the actual controller’s MIDI input(s), and instead listen for the Virtual Port(s) that I’ll be routing through Bidule or Bome.

1 Like

Thank you very much, Steve and Brain, I appreciate your efforts :pray:

Steve: No problem at all:) Maybe as Brain said I have to use third-party software for that. :grinning:

Brain: Thanks a lot for the detailed answer, I have already tried Bome Pro “trial version” And I couldn’t find many resource for beginners, I’ll look again for tutorials for Bome and Bidule :slight_smile:

I think there is a bidule to invert a CC already set up in bidule somewhere. If not, search/ask on the forum and users will usually show you exactly how to meet described objectives (walk you through it step by step and/or share bidule groups/projects you can simply load up and use/examine). After you’ve made some things and practiced it starts to ‘make sense’ and become more ‘intuitive’ as to how the various math/extraction/transformation bidules work together.

I don’t know as much about the Bome community, but I suspect there would be helpful folks there as well.

1 Like

Invert CCs:

2 Likes

That’s Awesome!
Looks like I’ll buy Bome pro :bomb:

It’s fun!

1 Like

Do you use it? Does it cause latency in any way?

Yes. For instance I repurposed my Steinberg CMC controllers to do a bunch of other stuff. There’s a bit of a learning curve, but once you get the hang of Bome’s way of using variables and rules it’s very flexible.

No latency added – it’s only midi, so actually very little data needs to be transported.

1 Like

Here’s a bidule project with a couple of bidule groups showing how to invert a CC. Sorry, I had to zip it for the forum to accept…just unzip and load into bidule to see. Once you’ve got it open you can hold ctrl and double click the bidule groups to see how they are built (tap backspace to get out of it). It’s also possible to right click each bidule and save each bidule group so it can easily be pulled into any project. You can control how it shows up in the app menus by right clicking the group and choosing group/properties.

InvertCCexample.zip (2.7 KB)

1 Like