SOFTWARE UPGRADE: Global fine tuning & layer transpose


Not all controllers have aftertouch most of the cheap ones do not. what controller are you using?
Also I have 5 different controllers and 8 different synths in the studio most use cc7 to send master volume. will check all this weekend and let you know I know the e-mu x-board master volume send sysex will capture it and send it to you.



It was stupid me. I have a Roland PC 180 which has one slider.
Normally you control the volume with it.
But if you change it,pressing MIDI-Button, one key, you can change it to send f.e. Aftertouch messages.
I mussed have changed it, when i intended to change the midi channel…started playing without pressing the Midi-Button again.
When i will be testing the program change later, it will be a journey. I have to press 6 keys iirc.

The later trace worked. the CC7 volume in the zynthian screen was changed!?


I really like the transpose option per layer (aka midi channel)
Why don’t we have a volume offset (in percent?) for each midi channel.
And when we change the master volume, we loop over all channels and change the volume considering this offset.


Goo idea!! We should “intercept” all the CC7 messages and re-shape it according to the “master” volume.
I think i could implement this trick quite easily and test it …

The only problem i see is with MOD-UI. Perhaps we should modify it and force using zyncoder as the only MIDI input, removing the rest … This would solve a lot of problems :wink:



what would happen if you are using multiple midi interfaces? for example the midi In from the port expander and a usb midi in at the same time?


All the MIDI flow from all interfaces pass thru zyncoder, so MOD-UI will receive the messages from all the MIDI interfaces. It shouldn’t be possible to know what is the source device, only the channel number … so you think that’s really important?



not sure. so for example I have my midi guitar going in via a usb to midi adapter. also my fcb 1010 midi foot controller in another USB to midi adapter and finally roland a-800pro via midi on the port expander. no If a load a snapshot. the foot controller will be dealing with master volume and patch changes and triggering samples in one of the sampler engines. the midi guitar using the dx7 engine and the roland keyboard b3 engine. will this still work?


Yes. Why not? All the MIDI messages will reach the MOD-UI and the rest of engines in that way …



and if all interfaces are using midi channel 1 will it still route independently because of each different midi interface still?


Currently, zynthian MIDI router doesn’t allow to filter by “device”. All MIDI messages are merged in one “virtual device”, the zyncoder, with 16 channels.
MOD-UI is currently out of this scheme and receive the MIDI messages directly from the source devices, so you can filter by device inside MOD-UI.
In the future, “device filtering” will be added to the zyncoder MIDI router, but i would like to know how important this feature is in real life cases …



my quick thought not important right now as long as it is documented that all midi interfaces are merged into one midi device with 16 channels including going into mod-ui. Let me have a good think how low on the future list it should go and how it should be handled.


Hi …just a question: is planned (and possible) to transpose engines instead of channels ? i already discussed this about global behaviours for controlling volume separatedly of each engine on same channel… but now with transpose, i see again a clue: what if i want to go down an octave in just one engine on same channel? this is too much related to midi controllers which can play multiple channels at once… and they are more expensive… if i want to play with a cheap (but good) midi keyboard, this conditions turns into a limitation…in my opinion


Yes, it’s a limitation :wink:
In the next iteration i will try to allow true “per-layer” configuration. Until then, we have to enjoy with the “per-channel” features.



But I actually would not know how to do it. MIDI spec itself is a limitation.
OSC or what is the alternative?


or do you have the picture of the post effect chain in mind?
I don’t know, if this should replace the existing solution.


I’m thinking of adding “device” and “engine” filtering to the router. This can be achieved by creating MIDI slots (sub-devices inside zyncoder device) for every device and engine and re-programming the auto-router. In such a way you can have several layers in the same channel and use device filtering for selecting the layer that will listen to the controller, etc.

Anyway, it’s a quite complex task and currently it’s not the first in the list :wink:



transposing individual layers would be really really cool! I’m missing it quite much actually! :slight_smile:

And I’m not sure if its “officially” not yet working or if its a bug of my device. I mostly can not change the volume of individual layers, it keeps changing the global volume. Would be really handy to be able to do that aswell. Or am I doing something wrong?


Hi @Hampelschwein!

Currently we have this “MIDI-architecture” limitation. Transposing works at a MIDI channel level, same that volume change, etc.

This limitation is only important when using several layers in the same channel. If you want to make intensive use of this feature, then you should adjust the layer volumes by editing the presets externally. Yes, i know, this is really annoying and really sub-optimal. I will address the limitations ASAP …