Extra switches now customizable from webconf

Hi @mheidt!

  • MIDI channel is from the “active layer”
  • You have to configure your Custom Switches in the Wiring Layout setup, on the webconf.
  • Short/Bold/Long is for UI action. MIDI action works different:
    • When selected “MIDI Note”, Note-ON is send on push and Note-OFF on release.
    • When selected “Program Change”, this is sent on push and release does nothing.
    • When selected “CC”, value 127 is sent on push and 0 on release.

Regards,

If we could define a MIDI channel we would have more options. Especially when the master channel is possible.
So what is the use case for the Program Change? ZS3. Is there anything else possible?
And with a MIDI channel you could play one layer with the keyboard and a parallel layer with the buttons. especially drum voices when a single note makes sense.

Hm, I booted the machine up again und now i see the NoteOns.
I didn’t navigate into the layer before and stayed in the Mixer. Maybe that was the problem before.
But I don’t know if it is my button:
The NoteOff is sent immediately even while holding the button pressed.
I might need a different button for that.
Maybe a Toggle-mode would be helpful.

ok, my bad.
My CustomAction Zynthian is not hooked up. And I missread bass with brass when I tested it :slight_smile:
But I can confirm, that when you boot up, the active channel seems to be the MIXER. Only if I switch to the first and only layer, the button works.
I think, if you offer a MIDI channel option (0 for active, 1-16), we can sell this little glitch.
And wouldn’t it be convenient if the program change has a short, bold, long option, so that you can switch between three ZS3 settings with one button?

I just implemented MIDI channel for MIDI CustomActions. It will work with Master Channel too, so you could use it for loading snapshots, etc.

Regarding short/bold/long actions, current implementation doesn’t allow this for MIDI actions. You have to think that this kind of actions are quite different to UI actions and we need to act on push and release depending on the event type:

  • CC => Send value 127 on push and value 0 on release (sustain pedal, etc.)
  • Note => Send Note-ON on push and Note-off on release
  • Program Change => Only send PC on push, nothing on release.

Of course, all this can be improved/extended in a lot of ways. Specially the “toggle” functionality is on the TODO list … :wink:

Regards,

Did anymody get Note and Program Change working?

Markus, please update. I found the error and solve it. It should be working now …

1 Like

NoteOn does work now.
But Program Change still doesn’t

Funny thing is, that the Midi Log shows in both cases (NoteOn, ProgramChange)
CH#01 NOTE_ON 25, Vel: 127
CH#01 NOTE_OFF 25, Vel: 0

But when Program Change is selected, no blue M and of course no sound.

why don’t you invest two more parameters to customize 127 and 0?

I will check it tomorrow …

What is the use-case?

Temporarily shifting a parameter. let it be volume, a lfo, whatever.
It’s easily implemented and just gives more degrees of freedom.

CC works by the way as well.

Hi @mheidt!

Program Change also works perfectly. Are you using the webconf’s MIDI-log and have the ZS3 active?
When ZS3 is active, Program Change messages are not sent to engines (ZynMidiRouter Main), but still reach the UI. For seeing the messages in the MIDI-log, you have to disable the ZS3.

Regards,

My use case:
Yes, I use zs3 and I have two snapshots. Both of them will have zs3 options.
But I want to use the Program Change to change the snapshot via Master Channel.
Not to change between zs3…that is what my master keyboard is sending.

No problem at all. As i’m trying to explain, Program Change messages reach the UI regardless of the ZS3 flag state. When ZS3 flag is set, then PC messages doesn’t reach the engines and you can’t see that messages on MIDI-log, but there is no problem with sending PC to master channel. It should work. Try it!!

Did you change something today?
If not, could you outline your test scenario with MasterChannel?
Cause the blue M (UI - MIDI) was not showing either

Can we contrive a MIDI test suite yet?

A known set of available engines loaded and a MIDI sequence that drives each channel in order and an expected tune is generated…?

(wyleu why don’t you write it . . . . ?)

Yes, i added some visual feedback when loading snapshot via Master Channel, but it was working before this change too.

I tested configuring my custom switch with:

  • type = MIDI Prog Change
  • channel = 16 (Master Channel in my case)
  • num = 1 (load first snapshot)

It works like a charm, and i see the blue M :wink:

Regards,

It doesn’t work for me.
I tested on 2 machines.
Here is one
This setting works (to ensure, that the button works)

Then I changed it to


This is my MIDI setting

And the snapshots

Not any reaction when I press it.

I am downloading the latest image and will test a new image on the other machine.

No,
I took the latest image, created one snapshot, used the PC with channel 16/num=1.
No success.
I didn’t change anything else.
Besides @jofemodo …why is the numbering for num starting with a 0, if 1 is the first preset?

Please, take a look to the UI log …

there is not much when pressing
Mar 12 00:16:27 zynthian startx[1522]: INFO:zynthian_gui: Short Switch 5

And there are still those when starting webconf
: error: failed to open file /zynthian/zynthian-plugins/lv2/b_whirl/b_whirl-configurable.ttl (No such file or directory)
Mar 12 00:19:10 zynthian startx[2791]: lilv_world_load_bundle(): warning: Ignoring bundle <file:///zynthian/zynthian-plugins/lv2/b_whirl/>
Mar 12 00:19:10 zynthian startx[2791]: lilv_world_load_bundle(): note: Newer version of http://gareus.org/oss/lv2/b_whirl#extended loaded from <file:///zynthian/zynthian-plugins/lv2/b_whirl_xt/>
Mar 12 00:19:11 zynthian startx[2791]: error: failed to open file /zynthian/zynthian-plugins/lv2/Harmless.lv2/manifest.ttl (No such file or directory)
Mar 12 00:19:11 zynthian startx[2791]: lilv_world_load_file(): error: Error loading file `file:///zynthian/zynthian-plugins/lv2/Harmless.lv2/manifest.ttl’
Mar 12 00:19:11 zynthian startx[2791]: lilv_world_load_bundle(): error: Error reading file:///zynthian/zynthian-plugins/lv2/Harmless.lv2/manifest.ttl