I’m running a headless zynthian instance on an RPi 4. Would an exquis midi keyboard controller be plug and play or do you have to do some custom mapping to get it to work?
I’m planning on running pi 4 off a usb power bank w a 3A rated usb c port.
I’m curious if the exquis keyboard will run plugged into one of the pi’s usb ports using a usb c to usb a cable. None of the other ports on the pi are being used so in theory it should meet the .9A demands of the exquis keyboard.
Hi, I own an Exquis and a Zynthian mini, but I don’t use them together a lot.
From what I remember:
Power. I don’t think you’ll have problems to connect the Exquis to your pi, it doesn’t consume much.
Exquis as MIDI controller. It’s not plug and play, but it’s just a matter of configuring the right midi channels, just like with any other midi controller. I tested it with surge xt, and mpe was working - and fun.
Exquis as controller for the zynthian UI. That’s much more difficult. You would need to map keys. Don’t expect the Exquis rotary encoders to work for the Zynthian UI. It’s maybe easier to attach a USB PC keyboard.
Is your build 100% headless? 3.5” LCDs for rpis are really cheap…
@mgsg Thanks for the reply! I saw that you had tested an exquis and zynthian mini in another thread and was curious to hear your experience.
My plan was so use the keyboard as a midi controller to play a virtual instrument chain. So for that use case I need to look into the docs at how to configure a midi controller. I’m new to synthesizers and don’t know anything about surgext or mpe. Do you have any tips to get started?
I was also looking at Pure Data (also new to me). Could I use a Pure Data patch running on zynthian to control leds on the exquis and map custom chords to key presses etc?
Right now I’m just testing out zynthian so it’s headless. I did connect to a monitor during setup via hdmi. I also was able to connect to it via VNC on my phone.
I will eventually get a screen but ship times from Aliexpress are LONG.
I have tried MPE a bit on Zynthian with keyboards from ROLI. The main issue right now is that MPE is not turned on by default in the included engines (Surge XT and Tal-u-no-lx), and there is no way to turn it on from the Zynthian UI. It has to be enabled in the VNC viewer every time you start.
Another limitation is that MPE can only be used with a chain occupying ALL midi channels, which means that it’s not possible to combine it with other sounds or engines in the sequencer.
That said, after enabling MPE in the VNC viewer and assigning a chain to ALL channels, it works great!
EDIT: Forget what I said and read on. I have clearly misunderstood a few things here.
You can re-use MPE-capable presets if you save them as such and load them, no need to “enable in VNC every time”.
You can route the MPE controller to whatever intsrument or effect, occupy all channels, no problem. Just route the other controller to other instruments you want to add. In the wiki is written how that works. Midi input. Midi routing. And best of it all, you can snapshot the setup and reload it without VNC.
I have four MPE controllers via USB on one Zynthian playing six instruments, layered and split, and noodling 2 effects, all at the same time, so I can play different soundscapes just by changing over to another combination of keybeds. And there are some nanoKontrol2 and others as well to tweak parameters of different plugins, at the same time, one pot for this, one for that plugin. Midi routing.
Ok, Sorry for the confusion. I’m new to Zynthian and I thought I had understood the limitations of MPE.
So, when you allocate all channels to a midi chain, doesn’t it mean that there are no channels left for creating another chain? Can I create multiple chains with all midi channels? I haven’t seen this in the wiki, but then again it’s very comprehensive.
Also, I haven’t been able to save and recall a preset in Surge XT with MPE enabled. Maybe I’m just bad at saving presets in Surge. Let me know how you do this. I also find it strange that the MPE presets that come with Surge don’t have MPE enabled. Seems like I’m missing something here.
In another forum I read that the MPE mode in Surge is turned on “automatically” whenever it receives a certain RPN from an MPE controller telling that the controller is sending a note in MPE mode. Somehow I don’t get this to work.
You can create mixer chains (I’d prefer to call them that way to prevent confusion with Midi channels) each with its own set of listening channels and sources it listens to. Maybe you have to stack up Midi routing plugins by creating MIDI chains and sending outputs to other chain inputs. Notes on Oram: some differences and new features - ZynthianWiki
For example, chain 1 listens to Keystage A on hub port 1 using all channels plus HotHand and nanoKontrol2 fader 8 and switches. Chain 2 listens to Keystage B on hub port 2 using all channels and nanoKontrol2 fader 1 on channel 1 for the timing of reverb plugin post on another Autio chain that get input from the Instrument chain 2,
MPE is just marketing buzzword for rotating channels and using a set of certain CC to communicate data. Send all channels from the MPE controller to the plugin and it makes MPE if it is able to do so with the preset loaded. Call it “automatic” if you want.
Sorry if I hijack this thread. Let me know and I’ll post my MPE questions in a separate thread.
So, I tried setting up two chains, both using all midi channels. When I play, both chains sound. Then I selected my control in the Admin settings and turned on Active mode. This made no difference. Both chains still sound when I play. I thought Active mode would translate midi signals to the active chain only(?)
Secondly, I tried to save a preset ain Surge XT again. It works indeed (unlike my last attempt). But how do I make the preset show up in Zynthian? Where should it be saved, and do I need to refresh/restart for it to take effect?
You should bold select the chain to access it’s chain menu then select MIDI Input where you can disable any MIDI devices you don’t want to trigger that chain.
I see. So I can disconnect my controller from a certain chain(s). But let’s say I have 5 chains (all MPE). Is there a way to steer the controller to always play the active chain, just like with single channel chains, without digging into the MIDI settings each time?
Ok so after some spelunking through zynthian interface I found the SurgeXT engine in the instrument tool chain. So I select all midi channels, then MPE and pick a voice from MPE options.
Hi. I just double checked, and, yes it works, but @laban77’s comment still stands:
“The main issue right now is that MPE is not turned on by default in the included engines (Surge XT and Tal-u-no-lx), and there is no way to turn it on from the Zynthian UI. It has to be enabled in the VNC viewer every time you start.”
So, if you don’t do that, Surge XT will still work but without MPE enabled. So the first time you should additionally:
enable the VNC console in Zynthian (Options → Admin → Enable VNC Server)
from another computer enter the Zynthian webui
connect to Zynthian using VNC (Interface → VNC UI VNC Engines)
Saving a snaphot was not enough for me. The next time I load the snapshot MPE was disabled again. But I just learned that saving the preset from Zynthian (bold select the preset - > save?) should work. I haven’t had the chance to try it yet though.
I’m not allowed to overwrite presets it seems. Anyway, if I save a new preset (with MPE enabled) in Surge_XT.presets.lv2, and then scan for new presets in Zynthian UI, it works. I can then use this new preset and save a snapshot. Next time I want to use MPE I can load this snapshot and browse through Surge presets. MPE will stay on.
And there are loads of good MPE presets. Not just those named MPE, but most presets work wonderfully with an MPE keyboard.
You cannot overwrite factory presets but you can create user presets. User saved (within zynthian UI) presets assert the MPE state, as it was when the preset was saved. Factory presets do not, i.e. recalling a factory preset will not enable or disable MPE but recalling a user preset will set MPE to the state defined within the preset.
[Edit] So you could create a bank and save any presets you want to use in there with MPE set to what you want, or you could add two presets that have MPE enabled and disabled to allow turning this on and off by recalling those presets before subsequently recalling the desired factory preset. It would be nice to figure out how to drive the MPE setting from zynthian, e.g. via a parameter.