Guidance for using MIDI CC numbers

Using C3 performer and trying to set up new racks similiar to what several of you have been describing. I ran into a curious behaviour when using CC6,7,8. I am using MIDI channel 4 (CC 1-16) to map 16 pads to enable various plugs in my racks. I am using MIDI channel 5 (CC 1-16) to map 16 knobs to control volume on each of those plugs. When I turned the knobs using 6,7,8 (for volume) the volume was changed but the 3 plugs were also enabled. I thought the bindings must be messed up, but they were not. All the other knobs and pads mentioned above work flawlessly.
In examining a MIDI CC chart there are obviously some that are preset to do particular things.
So I have 3 questions:

  1. Is it possible that the undesirable behaviour of CC 6,7,8 was due to preset behavior, and
  2. Does Cantabile have the ability to turn CCs with special preset behaviour into a plain old vanilla CC numbers?
  3. Is there somewhere that I can educate myself better in MIDI mapping best practices? Maybe some of you could enlighten us on your MIDI programming rules of thumb…

Hey Steve, your method and explanation sound good so can you just post the racks that are behaving bad for a look see? Sometimes it can help.

Cheers,

Dave

Dave, i will do that later today. Is it possible to directly edit rack files? it just occurred to me that maybe that is a way to find problems. Are MIDI controllers just signals that devices listen for and then are programmed to react to (like CC64 damper) or are there controllers that actually carry more data with them to cause a device to react. Not sure which is true…

With some knowledge of .json file structure and Cantabiles’ use of them it is done by some of the folk here. Most times I can track down the problems in file from having done it several times.

There are 2 levels to consider. The plugin will have it’s own MIDI CC map, usually in a table in the plug or in a MIDI implementation chart in the manual. Cantabile can then through the use of route filters and bindings re-map, re-direct the CC messages to the desired CC for your plug. There is no extra controller data that carry extra data like you asked about. The MIDI CC messages don’t contain extra data. Only a MIDI system exclusive message will have multiple messages in it.

Cheers,

Dave

Ok that was always my impression of how things worked. I need to pay more attention to the MIDI maps for the plugs, although I don’t think that is the issue here. I’ll get you the file asap (at work right now)

@dave_dore Here is the Organ rack and the song it goes in. I deleted all routes in question and recreated. i did notice that there were multiple selections when selecting the channel/controller for the route, but I assumed that C3 is smart enough to follow just the one I selected (that may be the problem). There are upper/lower notes routes for Sunday Morning(Blue3) and Hammond b3-X and then a notes in route to pipe organ (Omnisphere). When I press the pads to enable/disable the notes route(s), works as desired. When I turn the volume knobs, the corresponding note(s) routes activate as well as the gain being adjusted. The control surface being used in an Arturia Beatstep. Thanks so much for your willingness to help!!!

Organs-2.cantabileRack (58.1 KB) Worship 2 KB Virt.cantabileSong (750.1 KB)

Hi Steve,

Thanks for posting that. From what I see you are doing an abstracted type of setup with multiple filtered input ports on each instrument rack. Have you tried using the MIDI monitor to track the problem? It seems like for the enable/disable to trigger the message has to come from somewhere so I would try placing a MIDI monitor on the enable/disable port on the rack that is messing up and seeing if an unexpected CC message is showing up there. Beyond that @Torsten Ecke has more experience than I with this kind of setup and may know what’s up, I left a call out in my post here for him. We’ll see if we can get it sorted.

Dave

@dave_dore I think I got it. The problem appears to have been not filtering the channel strictly enough. The correct data would come off the control surface, but the routes between the control surface and the instrument were wide open enough that the control data was showing up at the route to the instrument as the same controller number on 2 different channels. When I tightened up the channel filtering only the channel that I wanted was able to get thru. I also combined the damper, leslie, and notes into one route; they are all coming from the same place on the same channel. In my situation I was trying to be a little to granular. Thanks for looking at this, I really appreciate it. If something goes pear shaped I’ll let you know but it is really looking good at this point. Steve

1 Like

Hi Steve,

Good that you tracked it down, it is quite the setup!

Cheers,

Dave