Assigning MIDI controller knob to MIDI channel number changer

I’m aware of all the cool stuff the filters can do, including channel change/reroute. Is there away to assign a knob to this? My Alesis VI25 has some programmable features but it is a PITA to setup. I’d rather just do a “learn” on a MIDI channel number change to a knob. If this feature is not available, is there a VST dedicated to this (that can do pass-through). There are several instances where this could be useful to select an instrument, including Falcon, where you have a multi with various sounds and each sound is assignable to a channel at top level view, etc. Program change is not the same because it’s slow, instruments have to load, etc., and you can have VST’s from different vendors where you want to switch from one to another in a live setting.

Hi, first question is to clarify what version (lite/solo/performer) of cantabile you are using. There are several ways to do this, using bindings to either select between states or to activate/inactivate routes.

But you will in both cases need a (very) small rack that uses filters to map the knob input to separate CC s. So I can not think of any out-of-the-box solutions that will just work with “learn”


Performer. I can build a rack, just need the recipe. Viewing the MIDI traffic I can identify the control number and go from there.

Perfect, I’ll cook up a recipe.

1 Like

Looking into this I am not sure I fully understood what you wanted to achieve. Is it to use a single knob to select between several different VSTs, i.e. something like the V/B selector on a Hammond organ (goes through six differernt settings), or do you intend to use one knob as a button, to select a specific VST?

1 Like

Thanks for looking into it. Come to think of it, I have 24 buttons on the VI25 controller, so I could use 16 of those to activate or de-activate a MIDI channel, perhaps if they’re assigned to an unused MIDI CC range. The managing virtual rack of course would receive on channel 1, and the buttons would activate or deactivate what MIDI channels the messages get routed to.

That could be an easier solution. I am still not 100% sure how you want this to work, is it that if you press one button, then one VST is active an all the others are deactivated, or is it that if you press a button then the corresponding VST is toggled (activated/inactivated)?

1 Like

Each VST would be turned on/off by each button, so that you could have multiple VST’s going at once. These are on/off buttons. So if I turn one button on, the other buttons and their associated VST’s shouldn’t be affected.

Ah, getting a lot easier, then :-). If you create a route leading to the VSTs, then you can right click on the small check mark, and select Create Binding
That should take you straight to the wizard, where you can then just press the button you want to use, and it will automatically get assigned to the Enable action set to ‘toggle’.

Give it a try and let us know if it works for you.

1 Like

Thanks. I think I get the concept now. This is as far as I got. It’s not working for me. What do I need to change? Thanks!

While doing this, I’m discovering some cool stuff on the MIDI filters. Channel pressure (aftertouch) to wah pedal on the Hammond B3-X1, turning distortion on/off with one of the butttons…

1 Like

You will need to be in table view to see the checkmark I talked about, you switch to table view in the upper right corner:

1 Like

Above all this I assume that there are a lot of routes with the midi input to these? Can I see them?

Sorry, had other stuff open. Simplified it to just the test.

Well, I will try to start from scratch to show you what I meant. I have created a new song, just added two plugins, and created two routes from my SL Grand to the two plugins. Looks like this

Now, next is to create the bindings to toggle whether or not the input routes are active.

Step 1
Right click the small check mark next to the route:

and select Create Binding.

Step 2
You are asked to name the route, and you want to do that, so you click ‘Yes’.
and enter a meaningfull name, I named it after the plugin

Step 3
You get to the Learn Binding wizard, just click the button you want to use, and it should show up in the Source Event list.

Step 4
You are done. If you click the button you used in Step 3 above, then you should now be able to toggle the input route to the plugin. You can see that it works if the checkmark changes to a red cross.

If you want you can see the binding in the list of bindings. And, you will need to do the same with the other plugin(s).

This method allows the plugins to run all the time, so they are available right away. Be aware, you may encounter issues with hanging notes if you turn a plugin off while it is playing a note, because the note off message will never get to the plugin.


Awesome. Getting closer. I noticed I wasn’t passing through MIDI messages on the embedded racks, so I switched to a VST that passed messages through (Midi Shaper), with nothing in that VST on.

It works, the only issue that I’m having now is that I have to press the button on the controller 4 times to do a full cycle. So two times to turn on the route, and two times to turn off. I’d like just to be able to see which lights on the controller are on to know which channels are active.

You are working on the midi out ports, you should look at the midi in ports at the top.

And have you used the same button for more than one binding? It does not make sense that you need to press two times to activate/deactivate.

1 Like

I switched it to Input. It works the same. Looking at the MIDI messages, I see that it’s a controller issue to have to cycle with 4 presses. I’ll have to look at the controller software to see if that can be changed. So for now that’s it, I think I got it. Thanks for all your help!

1 Like