Difference between revisions of "Zynthian UI User Guide (oldstable-2109)"

From ZynthianWiki
Jump to navigation Jump to search
m (Mouse wheel control of a parameter)
(13 intermediate revisions by one other user not shown)
Line 1: Line 1:
  
 
=The Zynthian's Hardware User Interface=
 
=The Zynthian's Hardware User Interface=
[[File:zynthian_controllers.png|right]]
+
[[File:zynthian_controllers.png|400px|right]]
 +
[[File:zynthian_ui_workflow_1.png|400px|thumb]]
 +
[[File:zynthian_ui_workflow_2.png|400px|thumb]]
 +
 
 
The Zynthian's Hardware UI is displayed on a touch display and controlled by 4 rotary-encoders with switches (push).
 
The Zynthian's Hardware UI is displayed on a touch display and controlled by 4 rotary-encoders with switches (push).
 
The encoders/switch knobs are used to navigate between the different screens/menus, select options and change the instrument parameters, acting as MIDI/OSC controllers.
 
The encoders/switch knobs are used to navigate between the different screens/menus, select options and change the instrument parameters, acting as MIDI/OSC controllers.
Line 21: Line 24:
 
=The Zynthian UI Workflow=
 
=The Zynthian UI Workflow=
  
The next flowcharts show the different "screens" or "functions" and the way to reach each one using the 4 switches:
+
The next flowcharts show the different "screens" or "functions" and the way to reach each one using the 4 switches.
 
+
It could be a good idea to print these 2 flowcharts and keep it near of your Zynthian Box until you memorize the flow and the spirit of Zynthian UI got inside of you ;-)
[[File:zynthian_ui_workflow_1.png]]
 
 
 
[[File:zynthian_ui_workflow_2.png]]
 
  
 
If you want to contribute improving these flowcharts, you can edit it using the Google Documents Tools:
 
If you want to contribute improving these flowcharts, you can edit it using the Google Documents Tools:
Line 31: Line 31:
 
  - [https://docs.google.com/drawings/d/1jmt3zrJjPkbqj3hpzCIwRgFIKxiX2UptebBA_GN8e5I/edit?usp=sharing Main sequence: zynthian_ui_workflow_1]
 
  - [https://docs.google.com/drawings/d/1jmt3zrJjPkbqj3hpzCIwRgFIKxiX2UptebBA_GN8e5I/edit?usp=sharing Main sequence: zynthian_ui_workflow_1]
 
  - [https://docs.google.com/drawings/d/1Um1HVCvvb4gZF_X-vcIN9cTxYIBRCtZ5oxniUdSTB3c/edit?usp=sharing Aux. Sequences: zynthian_ui_workflow_2]
 
  - [https://docs.google.com/drawings/d/1Um1HVCvvb4gZF_X-vcIN9cTxYIBRCtZ5oxniUdSTB3c/edit?usp=sharing Aux. Sequences: zynthian_ui_workflow_2]
 +
  
 
=The UI Menus=
 
=The UI Menus=
  
==Admin Menu==
+
Most of actions depends on context (the current menu screen), but there are some actions that are global and will work from any menu screen:
[[File:UI-1.JPG|400px|right]]
+
 
Pressing the Back knob, when you are in the Layer List screen, brings you to the Admin menu. The last item is how you safely power off the Zynthian without corrupting data files.
+
* '''long-back''': go to the admin menu
 +
 
 +
* '''long-select''': power off
 +
 
 +
Snapshot actions are also global an will work from any point in the workflow. These actions are explained below.
 +
 
 
<br clear=all>
 
<br clear=all>
  
 
==Layer List==
 
==Layer List==
[[File:UI-LayerMenu.JPG|400px|right]]
+
[[File:Zynthian_ui_new_layer.png|400px|right]]
This is the first screen you see when you power on.  
+
This is the first screen you see when you power on and no screenshots are stored yet.  A layer is a synth engine preset assigned to one (or all) MIDI Channel. Choose New Layer to get started.
Choose New Layer to get started. A layer is a stored configuration of one synth engine and all its parameters.  
+
<br clear=all>
 +
 
 +
[[File:Zynthian_ui_layer_list.png|400px|right]]
 +
You can create up to 16 layers. Several layers can be assigned to the same MIDI Channel.
 +
<br clear=all>
 +
 
 +
[[File:Zynthian_ui_layer_options.png|400px|right]]
 +
If you bold-press the select switch, the "Layer Options" menu will be opened for the selected layer. This menu allows to:
 +
 
 +
* change the assigned MIDI Channel
 +
* transpose the layer up and down, by semitones.
 +
* route the layer's engine audio output to MOD-UI audio input, for audio processing
 +
* delete the layer
 
<br clear=all>
 
<br clear=all>
  
==Engine List==
+
==Engine Selection==
[[File:UI-EngineMenu.JPG|400px|right]]
+
[[File:Zynthian_ui_engine_list.png|400px|right]]
Once you have chosen/created a Layer, you see the list of synth engines to choose from. The waveform image on the right is animated while software is loading.  
+
When you create a new layer, you are asked about the engine synth you want to use for the new layer. You will see the list of synth engines to choose from. The zynthian logo on the right is animated while engine is being loaded.
 
<br clear=all>
 
<br clear=all>
  
 
==MIDI Channel selection==
 
==MIDI Channel selection==
[[File:UI-2.JPG|400px|right]]
+
[[File:Zynthian_ui_midi_channel.png|400px|right]]
This screen appears after you have chosen a synth engine. Choose the MIDI channel the synth will respond to.  
+
This screen is shown after you have chosen a synth engine for a new layer. Also when, from the Layer Options screen, you want to assign the layer to a different MIDI Channel. Choose the MIDI channel you want to assign to the layer. You can assign several layers to the same MIDI Channel. In such a case, all the assigned layers will react to MIDI messages coming from the assigned MIDI Channel.
 
<br clear=all>
 
<br clear=all>
  
 
== Bank selection==
 
== Bank selection==
[[File:UI-3.JPG|400px|right]]
+
[[File:Zynthian_ui_bank_list.png|400px|right]]
[[File:UI-4.JPG|400px|right]]  
+
Presets (instruments, sound designs or patches) for a synth engine are organized into banks. Choose a bank to see the list of presets you can pick from in that bank.  
Presets (instruments or sound designs or patches) for a synth engine are grouped/organized into banks. Choose a bank to see the list of presets you can pick from in that bank.  
 
 
<br clear=all>
 
<br clear=all>
  
 
==Preset selection==
 
==Preset selection==
[[File:UI-5.JPG|400px|right]]
+
[[File:Zynthian_ui_preset_list.png|400px|right]]
This screen appears after you have chosen the Organ bank. Choose a Preset to select the instrument/sound you want.
+
Once you have chosen a bank, Preset Screen will be shown. Choose a preset to load the instrument/sound/patch you want and the Control Instrument screen will be shown.
 +
 
 +
If the "pre-load on note-on" feature is enabled, you can pre-load the presets by playing notes. The highlighted preset will be pre-loaded before select.
 
<br clear=all>
 
<br clear=all>
  
 
==Instrument Control screen==
 
==Instrument Control screen==
[[File:UI-6.JPG|400px|right]]
+
[[File:Zynthian_ui_instrument_control_01.png|400px|right]]
This screen appears after you have chosen a Preset. Your instrument is now playable.  
+
This screen is shown after you have chosen a preset. Your instrument is now playable and you can modify the parameters.
 +
<br clear=all>
  
Turning each of the 4 knobs change the values of the synth parameters displayed in the squares at the sides of the screen. The Controller list in the center of the screen allows you to choose sets of parameters to view and alter.  
+
[[File:Zynthian_ui_instrument_control_02.png|400px|right]]
  
Press the Back knob to return to previous screens.  
+
Turning each of the 4 knobs change the values of the synth parameters displayed in the squares at the sides of the screen. The list in the center of the screen allows you to choose the page of parameters. You can step one page by clicking select.
 +
<br clear=all>
 +
 
 +
[[File:Zynthian_ui_instrument_control_03.png|400px|right]]
 +
If the page list is long, you can "bold click" the select switch for navigating the list using the select knob.
 +
<br clear=all>
 +
 
 +
[[File:Zynthian_ui_xy_controller.png|400px|right]]
 +
If you click 2 switches at once, then you will select these 2 parameters for XY-controlling using the touchscreen (ala kaospad).
 +
<br clear=all>
 +
 
 +
You can press the layer switch to step over the layer list. If bold-press, the layer list will be shown.
 +
 
 +
Press the back switch to return to previous screen. If bold-back, then you will go 2 screens backwards.
 +
<br clear=all>
 +
 
 +
==Load/Save Snapshot==
 +
[[File:Zynthian_ui_snapshot_load.png|400px|right]]
 +
[[File:Zynthian_ui_snapshot_save.png|400px|right]]
 +
Click the snapshot switch for entering the Load Snapshot screen. Another click and you will be in the Save Snapshot screen. You can also use bold-click for going directly to the Save Snapshot screen.
 +
 
 +
Obviously, before loading any snapshot, you should save one. Snapshot are organized in banks, so if you don't have any bank, you should create one.
 +
Zynthian UI will use numbers for naming the banks and snapshots. Later, from the webconf tool you can rename the banks and snapshots to something more explicit.
 +
 
 +
If you want to go up one level, from snapshots to banks, you should use the ".." entry in the list. Back button wont work here.
 +
 
 +
===Default Snapshot===
 +
You can save a "Default Snapshot". This snapshot will be loaded automatically at startup. For deleting it, you should use the webconf tool.
 +
 
 +
<br clear=all>
 +
 
 +
==Admin Menu==
 +
[[File:Zynthian_ui_admin.png|400px|right]]
 +
Pressing the Back knob, when you are in the Layer List screen, brings you to the Admin menu. The last item is how you safely power off the Zynthian without corrupting data files.
 
<br clear=all>
 
<br clear=all>
  
 
= Touch Screen UI=
 
= Touch Screen UI=
[[File:Topbar.png|right]]
+
[[File:Zynthian_ui_top_bar.png|400px|right]]
 
You can navigate and control the Zynthian UI without knobs/encoders/switches at all, using only the touchscreen.
 
You can navigate and control the Zynthian UI without knobs/encoders/switches at all, using only the touchscreen.
  
 
You can "emulate" the switches by tapping the controller widgets (squares in the 4 corners of a Controller screen). There are short, bold and long actions. Exactly the same workflow as with hardware knobs. When the "back" widget is not available, you can go back by tapping the top bar.
 
You can "emulate" the switches by tapping the controller widgets (squares in the 4 corners of a Controller screen). There are short, bold and long actions. Exactly the same workflow as with hardware knobs. When the "back" widget is not available, you can go back by tapping the top bar.
  
You can change the values of the controllers by "sliding" over the widgets. This is the same as turning the knob.  
+
You can change the values of the controllers by "sliding" over the widgets. This is the same as turning the knob. If you are using a mouse, the mouse wheel also modifies the parameter.  
  
 
When clicking (tapping/touching) the topbar, a "back" event is triggered. It's a quick & dirty fix and probably it will change in the future, but meanwhile it will enable you to fully control Zynthian using the touchscreen if you don't have knob hardware.
 
When clicking (tapping/touching) the topbar, a "back" event is triggered. It's a quick & dirty fix and probably it will change in the future, but meanwhile it will enable you to fully control Zynthian using the touchscreen if you don't have knob hardware.
Line 88: Line 141:
 
=Global MIDI-learning=
 
=Global MIDI-learning=
  
* It allows to easily bind any parameter from the Zynthian UI to any CC knob/slider from an external MIDI controller. I intend to extend the feature to other MIDI messages, but currently only CC messages are supported. Anyway, MIDI filter rules can handle these special cases, so it’s not an urgent task.
+
It allows to easily bind any parameter from the Zynthian UI to any CC knob/slider from an external MIDI controller. I intend to extend the feature to other MIDI messages, but currently only CC messages are supported. Anyway, MIDI filter rules can handle these special cases, so it’s not an urgent task.
* It works with ALL the engines, using the engine’s native MIDI-learning when available (and convenient) or the Zynthian’s MIDI-learning mechanism, based in the MIDI filter. To be more explicit, native MIDI-learning is used for MOD-UI and for ZynAddSubFX OSC parameters. All the MIDI-mapped parameters are managed by the Zynthian’s MIDI-learning mechanism.
+
 
* The MIDI-learning configuration is stored in the snapshot.
+
It works with ALL the engines, using the engine’s native MIDI-learning when available (and convenient) or the Zynthian’s MIDI-learning mechanism, based in the MIDI filter. To be more explicit, native MIDI-learning is used for MOD-UI and for ZynAddSubFX OSC parameters. All the MIDI-mapped parameters are managed by the Zynthian’s MIDI-learning mechanism.
* You get on-screen feedback during the learning process. When you enable the MIDI-learning for a parameter, a small green text with the string "??" appears on the botton side of the controller/parameter area in the Zynthian UI. When the parameter is bond, the number of the linked CC is shown in the same place.
+
 
 +
You get on-screen feedback during the learning process. When you enable the MIDI-learning for a parameter, a small green text with the string "??" appears on the botton side of the controller/parameter area in the Zynthian UI. When the parameter is bond, the number of the linked CC is shown in the same place.
 +
 
 +
The MIDI-learning configuration is stored in the snapshot.
  
 
==How it works?==
 
==How it works?==
Line 97: Line 153:
 
First, you need a working touch interface in your display. If not, you could use a mouse ...
 
First, you need a working touch interface in your display. If not, you could use a mouse ...
  
 +
[[File:Zynthian_ui_midi_learning.png|400px|right]]
 
'''Learning:'''
 
'''Learning:'''
1. In the "Instrument Control" screen, navigate the parameter screen list until having the parameter you want to learn.
+
1. In the "Instrument Control" screen, navigate the parameter screen list until having the parameter you want to learn.
2. On the parameter/controller area, slide with your nail from **left to right**. A green "??" should appear in the bottom side.
+
2. On the parameter/controller area, slide with your nail from '''left to right'''. A green "??" should appear in the bottom side.
3. In your MIDI controller, move the desired knob/slider (or a CC-assigned pad).  The green "??" should be replaced by a tiny number, and the parameter should change when you move the knob/slider or push the pad. CC-assigned pads can be very useful for "boolean" parameters (i.e. on/off).   
+
3. In your MIDI controller, move the desired knob/slider (or a CC-assigned pad).  The green "??" should be replaced by a tiny number, and the parameter should change when you move the knob/slider or push the pad. CC-assigned pads can be very useful for "boolean" parameters (i.e. on/off).   
 +
<br clear=all>
  
 +
[[File:Zynthian_ui_midi_unlearning.png|400px|right]]
 
'''Unlearning:'''
 
'''Unlearning:'''
1. In the "Instrument Control" screen, navigate the parameter screen list until having the parameter you want to unlearn.
+
1. In the "Instrument Control" screen, navigate the parameter screen list until having the parameter you want to unlearn.
2. On the parameter/controller area, slide with your nail from **right to left**. The tiny number, indicating the current CC bond, should disappear or change. If the parameter is an engine-specific controlled engine, the number will disappear. If the parameter is hardcoded MIDI-mapped parameter, then the number will change.
+
2. On the parameter/controller area, slide with your nail from '''right to left'''. The tiny number, indicating the current CC bond, should disappear or change. If the parameter is an engine-specific controlled engine, the number will disappear. If the parameter is hardcoded MIDI-mapped parameter, then the number will change.
 +
<br clear=all>

Revision as of 01:36, 15 March 2018

1 The Zynthian's Hardware User Interface

Zynthian controllers.png
Zynthian ui workflow 1.png
Zynthian ui workflow 2.png

The Zynthian's Hardware UI is displayed on a touch display and controlled by 4 rotary-encoders with switches (push). The encoders/switch knobs are used to navigate between the different screens/menus, select options and change the instrument parameters, acting as MIDI/OSC controllers.

Currently there are two screen types (layouts):

  1. Selector Screen: a list of items that you can scroll and select with the SELECT (4) knob
  2. Controller Screen: In the corners, 4 control widgets (one for each knob), with label and value indicator (graphic and numeric). In the middle, a list of controller maps which you can use to change or rotate using the SELECT (4) knob.

And there are 3 types of clicks (push) that can be performed, depending on how long you hold down the knob:

  • short: less than 0.3 seconds
  • bold: between 0.3 and 2 seconds
  • long: more than 2 seconds

Actions for each knob and click type are context dependent. Generally, the SELECT knob and a short click is used to navigate and select items on a "Selector Screen". Inside a "Controller Screen", short clicks can be used to rotate between layers (LAYER) or between controller pages (SELECT). "Bold" clicks are intended as shortcuts for jumping to some specific screens. Clicking the BACK knob generally jumps to the previous screen in the sequence.

Loading and Saving snapshots: If you click SNAPSHOT (3) once, you get the Load Snapshot menu, another click and you will be in the Save Snapshot menu. If you bold-click SNAPSHOT then you will go directly to the Save Snapshot menu. The Snapshot menu have 2 levels: bank selection (directory) and snapshot (file).

2 The Zynthian UI Workflow

The next flowcharts show the different "screens" or "functions" and the way to reach each one using the 4 switches. It could be a good idea to print these 2 flowcharts and keep it near of your Zynthian Box until you memorize the flow and the spirit of Zynthian UI got inside of you ;-)

If you want to contribute improving these flowcharts, you can edit it using the Google Documents Tools:

- Main sequence: zynthian_ui_workflow_1
- Aux. Sequences: zynthian_ui_workflow_2


3 The UI Menus

Most of actions depends on context (the current menu screen), but there are some actions that are global and will work from any menu screen:

  • long-back: go to the admin menu
  • long-select: power off

Snapshot actions are also global an will work from any point in the workflow. These actions are explained below.


3.1 Layer List

Zynthian ui new layer.png

This is the first screen you see when you power on and no screenshots are stored yet. A layer is a synth engine preset assigned to one (or all) MIDI Channel. Choose New Layer to get started.

Zynthian ui layer list.png

You can create up to 16 layers. Several layers can be assigned to the same MIDI Channel.

Zynthian ui layer options.png

If you bold-press the select switch, the "Layer Options" menu will be opened for the selected layer. This menu allows to:

* change the assigned MIDI Channel
* transpose the layer up and down, by semitones.
* route the layer's engine audio output to MOD-UI audio input, for audio processing
* delete the layer


3.2 Engine Selection

Zynthian ui engine list.png

When you create a new layer, you are asked about the engine synth you want to use for the new layer. You will see the list of synth engines to choose from. The zynthian logo on the right is animated while engine is being loaded.

3.3 MIDI Channel selection

Zynthian ui midi channel.png

This screen is shown after you have chosen a synth engine for a new layer. Also when, from the Layer Options screen, you want to assign the layer to a different MIDI Channel. Choose the MIDI channel you want to assign to the layer. You can assign several layers to the same MIDI Channel. In such a case, all the assigned layers will react to MIDI messages coming from the assigned MIDI Channel.

3.4 Bank selection

Zynthian ui bank list.png

Presets (instruments, sound designs or patches) for a synth engine are organized into banks. Choose a bank to see the list of presets you can pick from in that bank.

3.5 Preset selection

Zynthian ui preset list.png

Once you have chosen a bank, Preset Screen will be shown. Choose a preset to load the instrument/sound/patch you want and the Control Instrument screen will be shown.

If the "pre-load on note-on" feature is enabled, you can pre-load the presets by playing notes. The highlighted preset will be pre-loaded before select.

3.6 Instrument Control screen

Zynthian ui instrument control 01.png

This screen is shown after you have chosen a preset. Your instrument is now playable and you can modify the parameters.

Zynthian ui instrument control 02.png

Turning each of the 4 knobs change the values of the synth parameters displayed in the squares at the sides of the screen. The list in the center of the screen allows you to choose the page of parameters. You can step one page by clicking select.

Zynthian ui instrument control 03.png

If the page list is long, you can "bold click" the select switch for navigating the list using the select knob.

Zynthian ui xy controller.png

If you click 2 switches at once, then you will select these 2 parameters for XY-controlling using the touchscreen (ala kaospad).

You can press the layer switch to step over the layer list. If bold-press, the layer list will be shown.

Press the back switch to return to previous screen. If bold-back, then you will go 2 screens backwards.

3.7 Load/Save Snapshot

Zynthian ui snapshot load.png
Zynthian ui snapshot save.png

Click the snapshot switch for entering the Load Snapshot screen. Another click and you will be in the Save Snapshot screen. You can also use bold-click for going directly to the Save Snapshot screen.

Obviously, before loading any snapshot, you should save one. Snapshot are organized in banks, so if you don't have any bank, you should create one. Zynthian UI will use numbers for naming the banks and snapshots. Later, from the webconf tool you can rename the banks and snapshots to something more explicit.

If you want to go up one level, from snapshots to banks, you should use the ".." entry in the list. Back button wont work here.

3.7.1 Default Snapshot

You can save a "Default Snapshot". This snapshot will be loaded automatically at startup. For deleting it, you should use the webconf tool.


3.8 Admin Menu

Zynthian ui admin.png

Pressing the Back knob, when you are in the Layer List screen, brings you to the Admin menu. The last item is how you safely power off the Zynthian without corrupting data files.

4 Touch Screen UI

Zynthian ui top bar.png

You can navigate and control the Zynthian UI without knobs/encoders/switches at all, using only the touchscreen.

You can "emulate" the switches by tapping the controller widgets (squares in the 4 corners of a Controller screen). There are short, bold and long actions. Exactly the same workflow as with hardware knobs. When the "back" widget is not available, you can go back by tapping the top bar.

You can change the values of the controllers by "sliding" over the widgets. This is the same as turning the knob. If you are using a mouse, the mouse wheel also modifies the parameter.

When clicking (tapping/touching) the topbar, a "back" event is triggered. It's a quick & dirty fix and probably it will change in the future, but meanwhile it will enable you to fully control Zynthian using the touchscreen if you don't have knob hardware.

5 Global MIDI-learning

It allows to easily bind any parameter from the Zynthian UI to any CC knob/slider from an external MIDI controller. I intend to extend the feature to other MIDI messages, but currently only CC messages are supported. Anyway, MIDI filter rules can handle these special cases, so it’s not an urgent task.

It works with ALL the engines, using the engine’s native MIDI-learning when available (and convenient) or the Zynthian’s MIDI-learning mechanism, based in the MIDI filter. To be more explicit, native MIDI-learning is used for MOD-UI and for ZynAddSubFX OSC parameters. All the MIDI-mapped parameters are managed by the Zynthian’s MIDI-learning mechanism.

You get on-screen feedback during the learning process. When you enable the MIDI-learning for a parameter, a small green text with the string "??" appears on the botton side of the controller/parameter area in the Zynthian UI. When the parameter is bond, the number of the linked CC is shown in the same place.

The MIDI-learning configuration is stored in the snapshot.

5.1 How it works?

First, you need a working touch interface in your display. If not, you could use a mouse ...

Zynthian ui midi learning.png

Learning:

1. In the "Instrument Control" screen, navigate the parameter screen list until having the parameter you want to learn.
2. On the parameter/controller area, slide with your nail from left to right. A green "??" should appear in the bottom side.
3. In your MIDI controller, move the desired knob/slider (or a CC-assigned pad).  The green "??" should be replaced by a tiny number, and the parameter should change when you move the knob/slider or push the pad. CC-assigned pads can be very useful for "boolean" parameters (i.e. on/off).  


Zynthian ui midi unlearning.png

Unlearning:

1. In the "Instrument Control" screen, navigate the parameter screen list until having the parameter you want to unlearn.
2. On the parameter/controller area, slide with your nail from right to left. The tiny number, indicating the current CC bond, should disappear or change. If the parameter is an engine-specific controlled engine, the number will disappear. If the parameter is hardcoded MIDI-mapped parameter, then the number will change.