Technique Add-On Switches not sending CC data?

Hi everyone,

I’m very happy with Dorico and the effect it’s having on my workflow and I’m currently working hard on creating expression maps for all my libraries.

Is it me or if I add an add-on switch with a channel change, the underlying CC stops working (dynamics)?

For example, I create an add-on switch for switching between different libraries, when it switches to the other library (different midi channel) the CC doesn’t work.

Now, if I create non-vibrato add-on for the same library (same midi channel) the CC does work.

Could it be an issue with the midi channel switching?

it’s all going to depend on exactly how things are set up. MIDI channel switching in itself can work if it’s the right approach for what you’re trying to do. Are you trying to switch between different libraries for the same player but a different instrument? Is it a completely different VST? A more detailed explanation or better still posting a relevant section of the project should help.

As a general rule, if you’re mixing and matching a lot between different libraries, it’s often best to host the whole project in Vienna Ensemble Pro if you’re not already

Thanks for answering!

I’m hosting everything on Reaper, using LoopMIDI to route all midi from Dorico to Reaper. The workflow has been very stable so far and channel switching works everywhere.

Since last night what I’ve been doing is using the base switches instead, and it’s working well that way. It seems like Dorico stops sending cc data for an add-on switch if there’s a channel change involved in the expression. Maybe it’s just something on my end.

Do the two VST’s/instruments use the same CC address for the non-vibrato technique?

Thanks Derrek! I’m not completely sure about what you mean by CC address.

For vibrato, non-vibrato scenarios (which are working correctly on my end), the midi channel is the same. Meaning that the routing goes to the same channel, what’s edited is a CC, for example, CC 21 in the case of BBCSO.

Now, what’s not working on my end is a scenario where I’m trying to use add-on switches for something that requires a midi channel change. For example, a new legato that by using a playing technique switches from espressivo to something different. For that, I need to switch libraries using different midi channels.

I wonder if it’s an issue on my end, a bug or an intended feature.

Have you set the expression map for the channel you’re switching to?


@fratveno alludes to the concern I have. Once you switch MIDI channel, your new instrument may use completely different codes for expression than your original instrument; but your expression map is no long the one for your new MIDI channel instrument (in your VST) but rather for the original instrument in the “track slot” now pointing to the new instrument in Dorico.

It occurs to me (and, I think, to fratveno) that this could present problems.

Thank you @fratveno and @Derrek!

I haven’t done it, but I just did. The issue persists, meaning that the cc 11 and cc1 data isn’t being sent for add-on switches after a channel switch. Again, it works perfectly well with base switches.

On the experiment I just did it doesn’t look like a channel switch in an expression map for a given instrument (channel 1) recognizes another expression map in another channel (channel 2). As soon as I trigger another expression that corresponds to the original instrument (channel 1) it switches back to that original instrument.

Could you give me an example of how you’re configuring it in your end? I’m probably missing something.

Sounds like a conflict somewhere in the expression map. Since it’s two different legatos, maybe check for mismatch in playing technique definitions and exclusion groups?

I’ll check that out, thank you!

Just tested this now. You are right. Add-On switches ignores dynamics… ( I’m not in a position to check, but could this have been working in an earlier version…? )

Especifically when you make a channel switch, right? Otherwise, they work on my end, at least for the limited amount of tests I ran.

Yes, sorry, using channel switching :wink:

Yep, thanks for checking it out @fratveno!

I suspect it might be a bug because it doesn’t have the same behavior unless you do a channel switch.

But not sure.