Map SCREEN_ZS3 and scroll through sub-snapshots to midi messages?

I am using sub snapshots extensively with my new band. It works great to switch between the instruments used on MIDI channel 1 (my main keyboard) or channel 2 (my 2nd keyboard) for the different songs.

I only have a few program change keys on my keyboard, so I’m relying on using the Zynthian UI to bring up the sub-snapshot screen and select the sub snapshot I want that way. Is it possible to map the SCREEN_ZS3 command to a MIDI message, as well as scrolling up and down between the sub snapshots?

Thanks!
TK

Yes!

In webconf INTERFACE->MIDI Options you can set Master MIDI channel and then assign a Master Key Actions for a MIDI note-on to SCREEN_ZS3, e.g. 59: SCREEN_ZS3 will show the ZS3 screen when B3 (MIDI note 59) is pressed. You can do similar mapping for ARROW_UP (default 48), ARROW_DOWN (default 50), SELECT (default 57) and BACK (default 55).

This does require using MIDI note-on which may not be what you want. If you want to use a CC then you will need to add a MIDI filter rule on the same webconf page to map CC to Note-on, e.g. MAP CH#15 CC#97 => CH#15 NON#50 maps CC 97 on MIDI channel 16 to note-on 50 on MIDI channel 16. (Observe that MIDI channel is zero-based in the config.)

So a full configuration to map CC 101-105 on MIDI channel 16 to ZS3, UP, DOWN, SELECT & BACK would be:

Midi filter rules

MAP CH#15 CC#101 => CH#15 NON#59
MAP CH#15 CC#102 => CH#15 NON#48
MAP CH#15 CC#103 => CH#15 NON#50
MAP CH#15 CC#104 => CH#15 NON#57
MAP CH#15 CC#105 => CH#15 NON#55

Master MIDI channel
16

Master Key Actions

48: ARROW_UP
50: ARROW_DOWN
55: BACK
57: SELECT
59: SCREEN_ZS3 
1 Like

slightly off topic, someone gave me this fancy crystalfontz usb display with 5 buttons on it, do you think its feasable to try and set that up for this kind of thing? its like one of those simple old school lcd’s but has 5 buttons…

Thanks @riban for your help. I have tried setting this up and all it seems I am able to do is to get the piano keyboard notes to map to these commands. The keyboard is assigned to MIDI channel 2 in Multitimbral mode:

MAP CH#1 CC#21 => CH#1 NON#59
MAP CH#1 CC#25 => CH#1 NON#48
MAP CH#1 CC#26 => CH#1 NON#50
MAP CH#1 CC#22 => CH#1 NON#57
MAP CH#1 CC#20 => CH#1 NON#55

I have other buttons on the Arturia KeyLab Essentials 49 keyboard that I would like to use to invoke SCREEN_ZS3, ARROW_UP, ARROW_DOWN, etc. but I cannot get that to work.

I’m thinking I may need to figure out how to somehow get these CC messages to be sent from a different channel. I notice that there are 4 different MIDI Input ports coming from my Arturia:

KL Essential 49 mk3 1
KL Essential 49 mk3 2
KL Essential 49 mk3 3
KL Essential 49 mk3 4

So far according to the MIDI Log all of my traffic is coming from KL Essential 49 mk3 1. I imagine that if I can find a way to map the controls I want to KL Essential 49 mk3 2, 3, or 4, then set that channel appropriately (e.g., 16, or 15 zero-based), I can map the CC messages from that channel without confusing it with the messages from the keyboard?

Sorry if this is not making much sense! I am going to follow up with Arturia as well to see what my MIDI mapping options are.

Thanks,
TK

@riban I figured out how to send all my MIDI messages from the Arturia keyboard to Channel 15 and map the controls to CC numbers. Here is my new mapping:

MAP CH#14 CC#102 => CH#14 NON#59
MAP CH#14 CC#103 => CH#14 NON#48
MAP CH#14 CC#104 => CH#14 NON#50
MAP CH#14 CC#105 => CH#14 NON#57
MAP CH#14 CC#106 => CH#14 NON#55

59 (SCREEN_ZS3), 48 (ARROW_UP), and 50 (ARROW_DOWN) are all working. I cannot however select a ZS3 sub-snapshot (57: SELECT), nor can I go back (55: BACK). I am wondering if the MIDI action to select a sub-snapshot is perhaps neither of those, but some other action that both selects the sub-snapshot and returns you back to the mixer?

Hi @tkc!

I have mapped these on my zynth. BACK does work for me. SELECT does not becauase this is actually a command to select a specified entry (by index) in a list so you can add an extra parameter to select the exact numbered entry… but this is not what is required.

A better way to do this is to map your buttons to zynswitches. This will allow you to use your MIDI controller buttons exactly like zynthian push buttons, including short, bold and long presses.

The modified configuration is:

MAP CH#14 CC#102 => CH#14 NON#59
MAP CH#14 CC#103 => CH#14 NON#48
MAP CH#14 CC#104 => CH#14 NON#50
MAP CH#14 CC#105 => CH#14 NON#94
MAP CH#14 CC#106 => CH#14 NON#92

This assumes default Master Key Actions:

48: ARROW_UP
50: ARROW_DOWN
92: ZYNSWITCH 2
94: ZYNSWITCH 4

plus added configuration:

59: SCREEN_ZS3

This gives these actions:

CC Action
102 Show ZS3 screen
103 Arrow up
104 Arrow down
105 Back button (with short,bold,long)
106 Select button (with short,bold,long)

This assumes that your MIDI controller can send CC value 0 when you release the button. There may be a configuration for this. I can’t see buttons in the user manual and the user manual doesn’t tell you much anyway.

I see the device has endless encoders. You may be able to use one of these for up/down control. I don’t know if they have push switches on them. If so you could us it as select.

Thanks @riban for getting back to me on this. I tried mapping CC 105 and 106 to 92 (zynswitch 2) and 94 (zynswitch 4) respectively. Unfortunately neither of those mappings are being recognized, even though I’ve confirmed that 105 and 106 are being recognized in the MIDI Log. When I press the pads, it sends a value of 127 on press and 0 on release. I will try other controls on the Arturia to see if perhaps they act differently.