Hi all,
Long story short, I upgraded Cubase from 13 to 15 (15.0.10 Build 164 (x64) Jan 20 2026) a couple of days ago to benefit from the promising new Expression Map system, but I’ve experienced some really weird behavior with CSS. Here is a hopefully reproductible streamlined user case. Feel free to play with the provided Cubase 15 project.
OK, so the project is comprised of the following:
-
1 Rack with 1 instance of Kontakt 7 (7.10.9) loaded with 2 instances of ‘CSS 1st Violins’ (Cinematic Studio Strings 1.7.1). The 1st one is assigned to MIDI Channel 1, the 2nd to MIDI Channel 2. Both output to default ‘St 1’.
-
2 notes: D4 (CSS articulation: Marcato no Legato) immediately followed by E4 (CSS Sustain + Basic Legato), with some constant Modulation (CC1) and Expression (CC11).
-
1 custom Expression Map ‘CSS17 Violins DEBUG’ with 4 Sound Slots (only 3 are used here):
- ‘Long Sus’ and ‘Long Leg.’ triggering the 1st ‘CSS 1st Violins’ instance (see MIDI Modifiers Channel = 1).
- ‘Marcato’ and ‘Marcato Leg.’ triggering the 2nd ‘CSS 1st Violins’ instance (see MIDI Modifiers Channel = 2).
The harcoded MIDI Modifiers Channel are here to prevent the ‘Long’ (i.e. CSS Sustain) note from triggering before the end of the ‘Marcato‘ note, as all Sound Slots use some Attack Compensation.
In short, the Ouput Mapping of ‘Long Sus’ triggers CSS Sustain no Legato, ‘Long Leg.’ triggers CSS Sustain + Basic Legato. ‘Marcato’ triggers CSS Marcato (no legato), ‘Marcato Leg.’ triggers CSS Marcato + Legato.
The Expression Map is split into 2 Groups: ‘Main’ which includes ‘Long’ (i.e. CSS Sustain) and Marcato, ‘Legato’ which includes the optional CSS Basic Legato mode.
Now let’s see how this behaves by opening Kontakt MIDI Monitor (KSP button > Preset > Factory > Utilities > MIDI Monitor).
When you hit Play (Space key), the following MIDI Note On are sent to Kontakt in this order:
- Lines 1 to 3: ‘CSS Marcato (no Legato)’ F#0,64 ; G#0,64 ; B0,64 at Channel 2 → OK

- Line 4: note D4 → OK, CSS plays D4 at Channel 2 in ‘Marcato (no Legato)’.

- Lines 5 to 7: ‘CSS Sustain + Basic Legato’ C0:64 ; G#0:127 ; B0:64 at Channel 1 → OK

- Line 8: note E4 → OK, CSS plays E4 at Channel 1 in ‘Sustain + Legato’ mode.

- Lines 9 to 11: ‘CSS Sustain (no Legato)’ C0:127 ; G#0:64 ; B0:64 → Err… WHAT?!

The last 3 lines make CSS flicker from ‘CSS Sustain + Basic Legato’ to ‘CSS Sustain no Legato’, and eventually play the note E4 in the latest ‘Sustain no Legato’ mode. You can add a note after E4 (with some overlap) to hear that CSS is playing them as a chord, i.e. without Legato.
I’m wondering what is causing that unwanted jump to ‘Sustain no Legato’? I thought this was due to the ‘Long Sus’ Sound Slot being tagged as ‘(Default)’, but nothing changes when another Sound Slot is used as ‘(Default)’.
Looking at the List Editor (MIDI > Open List Editor), we can see that the note E4 is located between its articulations (although at the same time), but Kontakt receives the information in the correct order, so that doesn’t seem to be the problem.
Well, can anyone reproduce this behavior? Maybe I’m using Expression Maps the wrong way? Or maybe this is already a reported bug? Please let me know, I’m a bit puzzled at the moment…
Cheers!












