Convert CC92 Value 0, 16, 32, 48 To different CC-Numbers

Tags: #<Tag:0x00007f97835d0da0>


I’m trying to convert the incoming values 0, 15, 32, 48 from Controller Number CC92 to Seperate Controller Numbers. My MODX has Scene Buttons and they sent for each Scene Button a different value.
I would like to use the Scene Button to switch states in cantabile.
But i could only use different CCs, not a same CC with different values for Bindings.

I’ve tried the sysex Filter in the Midi-Port settings, but did not understand, i’ve to do it?

That’s receiving in Midimonitor for the upper CC92 Values

0000: B0 5C 00 00
0000: B0 5C 10 00
0000: B0 5C 20 00
0000: B0 5C 30 00

Idea, how i can do this?
Thank YOU!

I don’t think this is possible at the moment. I think what you need is this:

Hi Brad,
Yes this would be a solution.

Sounds like a case for ReaJS (should be a pretty simple script, once you manage the script language) or Bome Midi Translator



1 Like

Hi Wurlitzer,

I presume I’ve not completely got it as it sounds too easy…

I seem to have understood:

  1. There is a keyboard sending the values 0, 15 (or is it 16?), 32 and 48 to cantabile on CC92
  2. You want the to transform these CC data so that:

CC92 / 0 => CC92 / 0
CC92 / 16 => CC93 / 16
CC93 / 32 => CC94 / 32
CC92 / 48 => CC95 / 48
(CCs could be totally different of course - only an example)

If this is what you want to do this should be easily possible by putting 5 controller map Midi filters into this specific Midi Input:

  1. CC92 => CC96 from range 0-0 to 0-0, Discart, Copy Event
  2. CC92 => CC93 from range 15-15 to 15-15, Discart, Copy Event
  3. CC92 => CC94 from range 32-32 to 32-32, Discart, Copy Event
  4. CC92 => CC95 from range 48-48 to 48-48, Discart, Don`t Copy Event
  5. CC96 => CC92 from range 0-0 to 0-0, Discart, Don`t Copy Event

Last Filter is necessary to remap the original CC92 to CC92 again

Maybe this helps.

Regards, Volker

I am doing something similar on my Montage to switch states in Cantabile when I press a scene button, I will dig out later.

Nice approach! Should work nicely, but with a bit of modification (since @Wurlitzer wants to use it to switch song states)

I would not map to the original controller value but to 127 - then you get four different controllers with value 127 on receiving the input. E.g. CC92 => CC96 from range 0-0 to 127-127

Now put all these bindings into a rack on a route from Rack In (alternatively from your synth input directly) to Rack Out. Put a filter on this route to only react to CC92 and ignore the rest. Then, in your song, you can create bindings from the Rack output CC (no-edge button) to song state select.



OK, here we go.

I note the question was to produce different CCs, but the intent is to be able to switch states, so I did that by mapping the CC to program changes which is easy in Cantabile by using a filter. so hopefully this will achieve the “what” of what you want to do, if not the “how” of what you thinking of doing to achieve it. :slight_smile:

This is what I did for playing Echoes in Welsh Floyd. I was switching rack states of my Hammond Rack, not song states, but the principle is the same.

So I have a “Yamaha Montage.cantabilerack” which I have zipped up and provided for you. Put this in any song where you want to detect the CC and have a binding react to it.

Yamaha (1.5 KB)

In my song (the mighty Echoes by Pink Floyd :slight_smile: ) I have the rack as shown below

If you expand the rack (first highlight) you can see in the bottom highlight that the rack is quite simple and has two routes. The top one simply passes the MIDI data through unfiltered. The second route has a filter applied.

The filter is quite simple and is shown below


It takes the CC and remaps it from CC92 to Program changes in the range 0 to 8 . What the Montage produces on CC92 when you press the scene buttons is as follows, along with the corresponding program change produced by the rack.

  • Scene 1 is CC92, Value 0, which produces program change 0

  • Scene 2 is CC92, Value 16, which produces program change 1

  • Scene 8 is CC92, Value 112, which produces program change 7

In the song bindings I then have the following bindings with the relevant ones highlighted (you can also see I send a CC change to the Montage when I select the song to set the scene number)

You can see I have bindings from the program changes produced by the Yamaha Montage Rack to select states within my Hammond and Leslie Rack (VB3II and IK Leslie). If you wish to select song states instead then you simply need to change the Target to song state.

Hope that helps.

Agrr :grin: you‘re right. Missed that state switching thing…:joy:

I like :+1:t2::+1:t2::+1:t2:!

1 Like

THX Derek, that’s it!!!

1 Like

Glad that is a solution for you. Took me a while to figure it out. I normally switch using my FC300, and I do this for Echoes when switching from the Leslied piano for the intro and outro, but for the Hammond parts where you have different characters of the Leslie (from Mellow to percussive overdriven) I decided to do something different and wanted to see if I could use the Montage Scene buttons! :slight_smile:

BTW, from memory I started off thinking the same way as you, in terms of trying to spit out different CCs, but couldn’t figure that out, and then hit upon the remapping to program changes via a filter.

1 Like