Continuous controllers in Expression Maps

I’m having issues with continuous controllers in an expression map. With some articulations (e.g. Legato), I occasionally need two, sometimes even three, controllers working one after the other to get to an articulation. So, for example, using CC’s to set up Classic Legato is CC 58 - 85. To set up Advanced Legato requires two CC’s - CC 58-80 followed by CC 58-10.

I can get this working with an external controller and Kontakt Standalone but I can’t get the sequence working with Dorico and a Kontakt VST. Unfortunately, CC’s are the only way to access some of the switches I need to get to all the articulations.

Does Dorico accept multiple CC’s as an Expression Map Action? If so, any clues as to what might be going wrong? A timing issue with the Kontakt VST?

ETA: Using an external controller to trigger a pair of continuous controller messages with Cubase also led to the same problem. BUT putting a 0.1 second pause between the two controller messages eliminated the problem and triggered the correct articulation.

Yes, Dorico can certainly in theory use multiple CCs for a single action in an expression map. Are you able to see visually in Kontakt’s UI when these CCs are received, i.e. do they modify parameters that are mapped to visible controls?

Thanks Daniel. I’ve just added to my post above - I had the same problem in Cubase but found a solution to it. I suspect the issue is that the Kontakt vst is getting the info too quickly to make sense of it.

No, I don’t get any feedback from the Kontakt UI. Nothing shows up.

I can’t see any way in Dorico to put a pause between the 2 controllers. Can you think of any way I can fudge it?

I assume you’re talking about CS strings here. If not, ignore the rest of the mail! First of all, “classic legato” uses a different instrument with no other legato type so I wonder if you actually meant “standard legato” here. Legato on/off ( CC58, 76-80 or 81-85) is not the same as sustain patch with either standard or advanced legato (CC58, 1-5 or 6-10). Other patches can also use legato so treat the two functions separately. It looks like the best solution from my tests is to put legato on/off as an add-on and then you can simply use the 1-5 or 6-10 for a legato sustain patch. This avoids the issue.

I, too, have found erratic behaviour when trying to use two CC controllers in the same patch because they potentially simply cancel each other out. If it’s really necessary to use two controllers then it looks like being best to use one keyswitch and one CC. In general, as it says in the manual, you should use CC’s wherever possible.

1 Like

Thanks David - you’re right, it’s CSS. I’m probably got this wrong but I thought there were 3 types of Legato - Classic, Standard and Advanced. And I agree, Classic is a different instrument, one included on the grounds that CS2 users would be familiar with it.

The keyswitch C0 activates Sustain which, because it doesn’t alter the state of the Legato or Standard / Advanced switches, just loads whatever Legato mode was there before. From there you can load up Classic Legato perfectly well in a Dorico Expression map (just add the CC to turn Legato off), but as both Standard and Advanced Legato require two CC controllers - one to turn Legato on, one to select which type of Legato - that’s where I run into problems.

I’m using the patch as a test for Metagrid Pro and I’ve got it working well (with pauses included) as an interface to Kontakt Standlone. In that instance I’ve got the macros for the three legatos as

Classic: CC58-85
Standard: CC58-80 / CC58-5
Advanced: CC58-80 / CC58-10

I was trying to bring that same approach to Dorico.

ETA: It’s working now - 2 CC’s processing as they should. As I haven’t changed anything since it wasn’t working, I’ll go with your description of “erratic.”

Exactly. My “nat” or “ord” patch contains both C0 and CC58,76 as with it I want to both ensure legato is enabled and to revert to the sustain patch. As there are two operations, I need two entries. As one is a keyswitch and the other a CC, they seem to work OK together. However if you want to switch legato on/off and still allow a different patch change at the same time, that’s where using the separate add-on switches can come in handy. I’d experiment a bit with that while keeping advanced/standard in the base switches. This may give more reliable results. I’ve tried out advanced legato of course but frankly find the latency pretty hard to handle with a clear gain in only limited situations and am not currently using it much.

This may all soon be completely irrelevant as CS are planning to introduce the woodwinds “low latency legato” to string and brass in around a couple of months or so. With this library, I use only the “low latency” mode as I can’t tell the difference between this and “expressive” most of the time.

… or too late. Looks like you found a solution, but if it still happens erratically, I have on occasion created “ghost PT” to trigger one or more of the problematic CC and placed them a little early. Don’t really recommend it David, but you did ask if there was a way to fudge it.

1 Like

yes, I’ve found (and not only with CSS) that placing a p.t a bit before the note can help with stubborn cases.

Is the answer to have a pause module included in the Expression maps setup?

They are certainly necessary when transmitting MIDI data in Metagrid or Keyboard Maestro. I’ve now got Metagrid working with the Dorico CSS VST and it only works if there are pauses in between consecutive CC’s.