Improved Layer Workflow

Hi @zynthianers!

I’ve been working on an Improved Layer Workflow for Zynthian. Or i hope so … jeje!
The new workflow fully integrates the concept of Effect-Chain. You can add effects to your synth layers or create pure audio-processing layers. Of course, custom audio routing is also available.

On the way, I have fixed some bugs and made other improvements. You can see the full list in the git log.

For testing the new version, simply checkout the “fxchain-control” branch on your zynthian-ui repo. Like that:

    cd /zynthian/zynthian-ui
    git checkout .
    git fetch origin fxchain-control
    git checkout fxchain-control

Thanks for help me to debug!!

I start to have a good feeling with Zynthian-UI. Of course, it’s far from perfect, but it’s reaching a relax point. After that, i’m starting to think seriously on a custom sequencer/MIDI-looper engine+UI :thinking::thinking::smirk:



@jofemodo midi looper is a dream !!! Looking forward to it :slightly_smiling_face:


Thank you a lot for your continuous great work on this project!

A sequencer thingy would indeed be a great addition :slight_smile:

I already did a post about it and I do not want to dubble post - but I … cant … resist … ahhhhh :crazy_face: … maybe Ableton Link support is an option? (If sequencer related stuff is comming to town)

I would like to explain a little bit the new “layer” workflow:

  • A layer is now a chain of synth+effects or only effects, all on the same MIDI channel. System, by default, route the audio from the first one (root) to the others, in a serial (chained) way. You can modify this by hand, using the “Audio Routing” option.

  • From the “layer options” menu you can:

    • Add effects to the fxchain
    • Delete effects from the fxchain
    • Change the position of effects inside the fxchain
    • Select effect presets
  • Effects controllers pages are added to the layer’s control screen

Also, some important UX improvements have been made:

  • Back button should work properly on all menus and submenus.

  • Snapshot Bankless mode is implemented, disabling “snapshot bank” stuff when no banks or only one exist.

Snapshot format has been maintained from the last update, so no breaks on snapshot backward compatibility.

I would appreciate your comments, bug reports, critics …

Thanks for helping!


Just working thro’ the Bankless stuff…

I deleted all the contents, No folder will delete if it contains stuff, So if you have a lot of snapshots backup . . .and then you will have to delete them one by one. Which is pretty sane, and acceptable for a once off op.

Deleted Bank came up in bankless mode.

Deleting the default file destroys the ability to do default.
It fails nicely displaying a list of available snapshots to load. (They load nicely and the Motor61 settings are preserved).

In some ways you could justify it as a use case!!

i love you… could we arrange a blind date? :rofl::rofl:
even if i’m not gay.
ok, let’s be serious now :wink:

Until now i did not find issues.

Regarding interface, i’m not totally convinced about reaching effect chain inside layer bold click, but i understand it’s about effect chain related to that channel. Each channel has automatic effect chain assignment, and alternative audio routing is optional.
What i mean: leaving all invariated, what about adding an overall view of which/how many/ on which channel effects have been loaded? just like a quick list, a sort of separate summary page…for effects only, being “hidden” inside layers.

And/or eventually using list items as shortcuts to reach that effect on its position.
Of course #1, #2 are midi channels in which effects are assigned.
Hope have explained quite understandable :frowning:

1 Like

OK! Update and try short clicking “layer” switch from layers screen :wink:

I have implemented this:



wow… i have to re-familiarize a little bit with changes but it worth it. Detalied layer is perfect :slight_smile:

It’s possible i found a bug on midi channel change or i forgot something:

On video below, i changed just one layer from midi ch 4 to ch 1.
But other layers change too.

@jofemodo, make it an additional feature “MIDI group channel”

Yes I’ve found this too. A MIDI channel will pull other MIDI channels on to that channel.

If I try to save a snapshot using wht’s on MIDI channel 2 whatever is on midi channel one seems to hjoin that channel, so I llose the GM Yamaha on MIDI channel one and it becomes MIDI channel 2.

Dear @Zynthianers!
With the latest changes, all layers in the same MIDI channel form a chain. You shouldn’t be using too much the detailed view. It’s better to use the new “layers view”, where only “root” layers are shown, and FX layers are shown as sublayers, inside options menu.

Anyway, if you really think is useful to change the MIDI-channel of individual sublayes, i could add an option, although the audio auto-routing will be broken. What do you think is the right behavior in that case?


From my point of view, effects as sublayer and auto routing are way more important and powerful. And Channel Cloning too.
What i suggested was a simple sumnary page, with no consequencies in workflow. But honestly it’s forgettable :blush:

1 Like

The detailed view has been the simpler implementation for this, but perhaps it can be confusing because all layer options are available from there. I will review everything and try to keep the workflow coherence …


1 Like

Effect sublayer, Auto audio routing and Channel cloning are priceless :slight_smile: wasn’t It in that way before trying detailed view?.. Don’t Remember :roll_eyes:

@jofemodo, when are you merging it with master?

I don’t know how to get the Layer Options with touch on my master build. Maybe it works on that branch though.

Hi @mheidt!

It’s not possible in the master branch, but it’s fixed in the development branch “fxchain-control”. I will merge very soon, in 2-3 days, when i’m back to Barcelona. Currently i’m visiting my family in Pamplona…

Happy New Year!!! :wink:


Hi @Zynthianers!
Finally the development branch “fxchain-control” is merged into master. If you are not using the “fxchain-control” branch, you will note a few changes more when updating :wink:
If you changed to the development branch, it’s a good moment to change-back to master …


1 Like

Hurrah!! We can all examine the same beast !