Some UI/UX ideas

Hi, Zynth crew!
I had in my mind a few ideas regarding UI/UX of zynthian.

  1. I would love to see option in UI config that enables 4 encoders in a row under the display. This option would be really practical for self made devices with midi controler in one box. Also than it would be much easier to make one PCB with all 4 encoders you could connect this kind of PCB with 40 pin ribbon, whitch would make insides of the box much cleaner.

  2. It would be great if more of the synth engines have their options categorized (like ZynAddSubFX) You know OSC section/filter section/Amp Env/ Filter Env and so on.
    If it’ll help I can make a table of a few engines and share it for discussion.

  3. Also I think it would be great if there would be an option to navigate to categories via midi. So there is less scrolling for live users. (like in illustration you press the OSC button and you are in OSC section of selected layer) Pardon me if there is option like that and I just overlooked it

If there is somethink I can do to help you implement this features I would love to. I have really basic skills in programing and a little understanding of linux file structures and so on. But I’ve mind full of ideas and some experiences in marketing/graphic design and project management stuff.

1 Like

Categories in the lv2 plugins are supported, some plugins use them, some don’t, it would really need to set by the upstream plugin developer.It’s been mentioned it before not implemented. Controller menus & presets in LV2 plugins - #2 by jofemodo

What’s needed is find out how many lv2 plugins have grouping already, submit an issue to GitHub - zynthian/zynthian-issue-tracking: Centralized Issue Tracking for Zynthian Project to enable control grouping for those plugins and then try and encourage the developers of the lv2’s that don’t do that to also add the functionality.

Probably a separate issue should be opened for the non-lv2 engines as the control list is pretty much mapped manually for those.

I also guess that ui could reflect a different encoder position but you’ve not considered the people who put their encoders at the top, at the side, in a diamond shape, three on the left and one underneath, two at the top, one massive one on the right and one on the base that you have to lift up the box to get at, only have one encoder and use a slider to change it’s hardware address, or whatever other frankly deranged layout @wyleu has set up this week.

edit: I’m sure someone will build a one-knob-per-function zynthian for zynaddsubfx eventually too.

Ok I hoped it’s just think of manual setup for lv2 plugin also.

About encoder position I understand your point but still think UI setting for all encoders under the display would be nice it is pretty standard encoder layout in a many products. And still valid option if you have all of yours enc on the right/left side of display.

We could do it manually, but then the dev’s would need to maintain it through any future ui changes, and also develop exactly the same thing for every plugin that ever gets released in the future, and we’ve not even talked about all the effects plugins yet. :slight_smile:

The other advantage for pushing it upstream is it benefits other plugin hosts and daws such as Ardour or Carla.

Ok, I see. Thank you

So what would be really helpful is someone to open the issue regarding lv2 control port categories and find out which lv2 plugins don’t support control port categories.

How quickly they forget . . .

Well it’s kind of one knob per function . . .

In relation to the thread, we are growing devices steadily and it’s fascinating to see what people come up with.
The generic idea of many knobs has been demonstrated by @riban in the past, based on 12C knobs of his own conspiring, althou’ the thing above has an RGB 12C encoder board in it, so from the software side we’ve been looking at this area of implementation.

The magic appearance of the 4 switches was the first piece of direct GUI, and it’s been interesting to see how quickly this has embedded itself into the zynthian infrastructure. It’s this sort of seemlessness that we want to offer. There are other areas like CV in/out that are also in sight so it’s really all up for discussion, accepting of course, the Zynthian Benevolent Dictator for Life, has the final say :smiley:

Build away is the best advise I can give really, It’s interesting how much re-designing actually take place once you start using the devices. Indeed the never quite finished device is a grossly satisfying device in itself.
It’s making sound with it that is what its really about.

Personally I think we should aim to build features in as LV2 instances to allow a common plane of interchange at that level.
Zynthian does a pretty good job of routing control to devices but we would strongly benefit from any declared degree of interchange we can promote and encourage . . .

Also when dealing with GUI hardware designs consider a range of screen sizes. A 4 port rack of controls is better expressed as an X by Y set of controls that the GUI can populate under window control. We have the VNC display to present Engines GUI’s but we want to maintain any standards we can in the GUI display.

Hi @Vrtel

Thanks for your proposals! For sure, i will think about all of them.

It’s an old question …
Initial designs of zynthian used PCBs with 2 encoders, but i decided to change to single encoder PCBs because encoders are the more breakable part on zynthian hardware. It’s not strange having to replace a broken encoder and i don’t feel comfortable with replacing a PCB with 2 or 4 encoders because one of them is faulty or broke. This adds some burden to the building process, but when an encoder fails, you will be happy of using this approach.

Of course, we could plug the single encoder PCBs on a bigger PCB and avoid the per-encoder wiring. It’s a more expensive solution, but not too much, and we would keep the modularity, so we can replace single encoders when broken.

Anyway, i like your proposal and i will think about it …

Regarding parameter categorization on LV2 plugins, it’s a hard work, but it’s in the TODO list :wink:

Cheers!

2 Likes

@wyleu @jofemodo I’m really grateful for your insides. More I see in to it more I know how complex it is. Thank you for your work on this project!

1 Like

Initial designs of zynthian used PCBs with 2 encoders, but i decided to change to single encoder PCBs because encoders are the more breakable part on zynthian hardware. It’s not strange having to replace a broken encoder and i don’t feel comfortable with replacing a PCB with 2 or 4 encoders because one of them is faulty or broke. This adds some burden to the building process, but when an encoder fails, you will be happy of using this approach.

I do believe it is daunting, but it’s definitely possible to replace encoders without changing the whole board, with some solder wick and patience or one of these solder suckers:

I’ve done entire 20x2 pin connectors with this method, and, while it’s not for anybody in a rush, it’s totally doable, albeit more complicated than replacing the encoder with a tiny board by itself. I think I might add the option to use the stock encoders with the mircro jst connectors with my board.

I would love to see option in UI config that enables 4 encoders in a row under the display. This option would be really practical for self made devices with midi controler in one box. Also than it would be much easier to make one PCB with all 4 encoders you could connect this kind of PCB with 40 pin ribbon, whitch would make insides of the box much cleaner.

I’ve been designing a new pcb board that does away with almost all of the cables inside of the zynthian, while maintaining the form factor of the v4.1, but making it thinner and using a 5 inch capacitive screen. I’ll post some info on it as soon as It stops being a bunch of scraps and sketches.

image

It’s true that adding a small “controller” portion would be nice, my approach for that is with the
virtual midi controller, AKA controller grid page, and, in my opinion, it’s compatible with yours, the idea being using the screen and midi brains we already have to extend any external (or integrated) controllers we might have by creating a grid of parameters in the screen that can be user configured.

Right now I’m really busy with my dayjob and don’t really have much time or brainjuice left, but I intend on having a Proof Of Concept at the ready as soon as possible.

3 Likes

@Pastitas I read your thread as it was forming and I truly liked it. Actually wanted to get in touch with you so the midi controller part of my zynth is as integrated with your new UI feature as it gets. I haven’t really thought about it yet.

@Vrtel As I point out in the post, It’s very simple to get any midi controller working with the interface i have in mind, as you only really need to map the control to a static set of midi values, maybe add a button that changes midi channel for all of them so you could use them with multiple patches without having to change configurations or anything. Everything else is taken care of in the controller grid editor, where you can assign and create your own pages and layouts.