Software Update: Sustained notes and sustain pedal across active channel changes

Hi @zynthianers!

I just solved an old and complex issue:

I’ve added a mechanism that manage gracefully sustained notes and sustain pedal across active channel changes.

I would like some of you to test it carefully and tell me if you find some problem with it. Basically you should setup several layers and play, maintaining notes and sustain pedal while rotating the active layer (single channel mode enabled!). Try all the combinations and possibilities you can imagine …

But first … update your zynthian!! :wink:

Enjoy!

3 Likes

Some notes on last improvements:

  • Now “Sustain-Pedal” is correctly managed across several active channel changes. You can rotate N layers and maintain sustain pedal across all of them.

  • Sustained notes only will be managed across ONE active channel change. If you keep pressed notes across 2 or more active channel changes and release the notes on a different layer, the notes will remain ON.

Enjoy!

5 Likes

I think, the bug is back again.
Or I might have misconfigured my snapshot.
The issue:
Multiple layers and you press sustain while your hand is switching the midi channel.
The releasing of the sustain only sends to the current (now new channel) and not to all channels.
I tried something with Copy CC. But you can’t switch off NoteOn only CCs.
@riban could you pls confirm the behaviour?

1 Like

I don’t see this behaviour.

  • Stage mode
  • Add two synth chains
  • Press and hold sustain
  • Press and release key - note sustains
  • Change selected chain
  • (Optional) press and release key - note sustains
  • Release sustain - all sustained notes are released

@mheidt if you have a different workflow that triggers this please detail the steps to reproduce.

Ok, the bug was in Stage mode. This still works.
But change it to Multi-Timbre please.
Maybe it should not be default, but I like to see a way to propagate the Sustain and other CCs to other channels.
Using “Clone Midi to…” doesn’t let me turn off Note events.
And when I add the Midi rule “MAP CC#64 => CC#64”, rebooted the machine, I still can’t turn off the sustain of a different channel.

1 Like

This sounds quite different to the original post. I think you want to pass sustain to several chains without passing the other MIDI commands like note on/off. This is not possible with MIDI clone which clones note on/off and any configured CC - so you can select which CC to pass but cannot mute the note on/off messages. In theory you should be able to do this with MIDI Mapping rules but I have found two issues with this:

  1. Multiple selection of destination channels is seen as a syntax error, e.g. MAP CH#0 CC#64 => CH#0,1 CC#64
  2. Only the last of multiple mapping rules for the same control will work, other rules are ignored

I would suggest these are both bugs and should be reported in the issue tracker.

I tried MIDI routing a MIDI chain to another chain but only note on/off is routed, not CC. I can’t think of a way to send just CC to multiple chains at the moment.

Yes. and even if I use this:
MAP CH#3 CC#64 => CH#1 CC#64
MAP CH#3 CC#64 => CH#3 CC#64
MAP CH#1 CC#64 => CH#1 CC#64
MAP CH#1 CC#64 => CH#3 CC#64
The second bug prevents it from working.