Changes

Jump to navigation Jump to search
Line 4: Line 4:  
The core Zynthian UI consists of a display and four knobs with push switches. You can also control the UI with a touchscreen, a mouse or a keyboard (computer keyboard or MIDI keyboard, both!)
 
The core Zynthian UI consists of a display and four knobs with push switches. You can also control the UI with a touchscreen, a mouse or a keyboard (computer keyboard or MIDI keyboard, both!)
   −
The four knobs & switches are the primary control mechanism to navigate the UI: selecting options on menus and adjusting parameters. The knobs can act as assignable MIDI / OSC controllers for parameters (frequently lots of them!). Most operations may be performed with the touchscreen but some may not be intuitive. See the section on [[#Touch_Screen_UI|touchscreen]] and comments throughout this documentation.
+
The four knobs with switches are the primary control mechanism to navigate the UI:  
 +
 
 +
* '''Accessing the different screens'''
 +
* '''Selecting options on menus and lists'''
 +
* '''Adjusting parameters'''
 +
 
 +
Most operations may be performed with the touchscreen but some may not be intuitive. See the section on [[#Touch_Screen_UI|touchscreen]] and comments throughout this documentation.
    
[[File:Zynthian v4 top legend.png|600px|center]]
 
[[File:Zynthian v4 top legend.png|600px|center]]
Line 40: Line 46:  
* '''Long-Select''': Power Off
 
* '''Long-Select''': Power Off
   −
Later versions of zynthian kits include 4 extra push buttons, labelled as S1 to S4. By default, these buttons are assigned to MIDI Program Change 1-4, but this can be easily changed from the webconf's [[Configuration_Users_Guide#Wiring_Layout|Wiring Layout menu]].
+
Later versions of Zynthian kits include 4 extra push buttons, labelled as S1 to S4. By default, these buttons are assigned to MIDI Program Change 1-4, but this can be easily changed from the webconf's [[Configuration_Users_Guide#Wiring_Layout|Wiring Layout menu]].
    
<br clear=all>
 
<br clear=all>
Line 55: Line 61:     
==The Status Area==
 
==The Status Area==
[[File:Status display.png|400px|right]]
+
[[File:Zynthian status area1.png|400px|right]]
    
On the top-right corner is an area where some useful information is displayed in real time:
 
On the top-right corner is an area where some useful information is displayed in real time:
Line 63: Line 69:     
{| class="wikitable"
 
{| class="wikitable"
!colspan="3"|Status Icons Legend
+
!colspan="3"|1st row: Health & Load
 +
|-
 +
|style="padding:10px"|<span style="color:#00FF00">{{#fas:heart}}</span>
 +
|style="padding:10px;width: 200px;|'''Cpu Load'''
 +
|style="padding:10px"|Heart, indicating CPU load. It displays as green when under 50%, yellow when load is over 50% and red over 75%.
 
|-
 
|-
|style="padding:10px"|<span style="color:#8080FF">'''m'''</span>
+
|style="padding:10px"|<span style="color:#00FF00">{{#fas:recycle}}</span>
|style="padding:10px;width: 200px;|'''MIDI-IN'''
+
|style="padding:10px;width: 200px;|'''Software update available'''
|style="padding:10px"|It's shown when MIDI messages are received. Underscore indicates system message such as MIDI clock.
+
|style="padding:10px"|When a software update is available, the green recycle symbol is shown. You can update from the admin menu, webconf or terminal.
 
|-
 
|-
 
|style="padding:10px"|<span style="color:#FF0000">{{#fas:exclamation-triangle}}</span>
 
|style="padding:10px"|<span style="color:#FF0000">{{#fas:exclamation-triangle}}</span>
Line 80: Line 90:  
|style="padding:10px"|'''Over-temperature'''
 
|style="padding:10px"|'''Over-temperature'''
 
|style="padding:10px"|Zynthian is working in a degraded state, with the CPU frequency capped to 600-800 MHz, trying to stabilize the system and avoid a system crash. You shouldn't see that icon and if you do so, you should improve heat dissipation (using a heat sink, etc.)
 
|style="padding:10px"|Zynthian is working in a degraded state, with the CPU frequency capped to 600-800 MHz, trying to stabilize the system and avoid a system crash. You shouldn't see that icon and if you do so, you should improve heat dissipation (using a heat sink, etc.)
 +
|-
 +
!colspan="3"|2nd row: MIDI activity & Playing/Recording
 +
|-
 +
|style="padding:10px"|<span style="color:#8080FF">'''m'''</span>
 +
|style="padding:10px;width: 200px;|'''MIDI-IN'''
 +
|style="padding:10px"|It's shown when MIDI messages are received. Underscore indicates system message such as MIDI clock.
 
|-
 
|-
 
|style="padding:10px"|<span style="color:#b00000">{{#fas:circle}}</span>
 
|style="padding:10px"|<span style="color:#b00000">{{#fas:circle}}</span>
|style="padding:10px"|'''Recording Audio / MIDI'''
+
|style="padding:10px"|'''Recording Audio'''
|style="padding:10px"|Audio or MIDI is being recorded.
+
|style="padding:10px"|Audio is being recorded.
 
|-
 
|-
 
|style="padding:10px"|<span style="color:#00b000">{{#fas:play}}</span>
 
|style="padding:10px"|<span style="color:#00b000">{{#fas:play}}</span>
|style="padding:10px"|'''Playing Audio / MIDI'''
+
|style="padding:10px"|'''Playing Audio'''
|style="padding:10px"|Audio or MIDI track is being played.
+
|style="padding:10px"|Audio track is being played.
 +
|-
 +
|style="padding:10px"|<span style="color:#9090FF">{{#fas:circle}}</span>
 +
|style="padding:10px"|'''Recording MIDI'''
 +
|style="padding:10px"|MIDI is being recorded.
 +
|-
 +
|style="padding:10px"|<span style="color:#9090FF">{{#fas:play}}</span>
 +
|style="padding:10px"|'''Playing MIDI'''
 +
|style="padding:10px"|MIDI track is being played.
 +
|-
 +
|style="padding:10px"|<span style="color:#ff9000">{{#fas:circle}}</span>
 +
|style="padding:10px"|'''Recording Pattern'''
 +
|style="padding:10px"|A sequencer's pattern is being recorded.
 +
|-
 +
|style="padding:10px"|<span style="color:#ff9000">{{#fas:play}}</span>
 +
|style="padding:10px"|'''Playing Sequence'''
 +
|style="padding:10px"|A sequence or pattern is being played.
 
|}
 
|}
   Line 110: Line 142:     
[[File:Zynthian Signal Flow.png|800px|center]]
 
[[File:Zynthian Signal Flow.png|800px|center]]
 +
 
<br clear=all>
 
<br clear=all>
 +
===Chains===
 +
 +
Chains are a key concept of the Zynthian. The first thing you will do after powering-on your Zynthian is probably to create a chain. (It does little without any chains!)
 +
 +
A chain is composed of one or more interconnected blocks, capable of generating or processing audio & MIDI. Each chain is normally assigned to a MIDI channel. These blocks are chained in the same order they are created, but you can change this order from the '''Chain Options''' menu. The first block created in a chain is the '''root''' and it determines the chain's type:
 +
 +
* '''Synth Chain''' => Receives MIDI note-events and generate audio output. It must have a synth processor.
 +
* '''Audio Chain''' => Receives audio-input and generates audio-output. It only has audio-FX processors.
 +
* '''MIDI Chain''' => Receives MIDI-input and generates MIDI-output. It only has MIDI processors.
 +
<!--* (Oram) '''MIDI + Audio Chain''' => Receives MIDI + Audio input and generates MIDI + Audio output. It has MIDI and audio-FX processors.-->
 +
* '''Generator Chain''' => Generate audio output using an algorithm. The first processor is an audio generator.
 +
* '''Special Chain''' => It can contains special processors, like an AudioPlayer (sampler), a MOD-UI pedalboard or a Pure Data patch, etc.
 +
<br>
 +
 +
The chain's type can't be changed. Depending of the chain's type, MIDI processors can be added to the start of the chain and audio processors can be added to the end of the chain. Chain processors can be re-sorted and arranged as serial or parallel paths.
   −
The main (home) screen is the Mixer. This consists of several vertical strips, each representing a chain. The last one at right, labeled as '''main''', is the mixbus audio output chain.
+
<!--
 +
(Oram) All chain types, except Audio and Generator chains, have a MIDI channel assigned. MIDI channels are not exclusive anymore and you can assign the same MIDI channel to several chains. MIDI and MIDI+Audio chains can receive '''all MIDI channels'''.
   −
Navigation between views is performed by pressing buttons or using the touchscreen. Most destructive changes, e.g. removing chains, will request confirmation. Operations that take time to complete may show an animated zynthian logo representing progress.
+
(Oram) In MIDI+Audio chains, all audio processors in the chain receive all the MIDI events on the assigned channel (this should be improved!).
 +
-->
   −
Navigation, default actions and common workflows are shown in the following graphs:
+
(*) If Master Channel is enabled, this is excluded from the MIDI channels available for chain assignment.
<gallery mode="slideshow" widths="420" heights="600">
+
 
Image:Main Views.png|''[[commons:Main Views|Main Views]]''
+
Having several chains on the same MIDI channel is not allowed currently. If you want two or more chains to play in unison (like being on the same MIDI channel), you can use the "Clone" feature, which allows you to bind several chains while keeping MIDI CCs and other MIDI messages (Program Change, Channel Pressure, etc.) independent.
Image:Add chain workflow.png|''[[commons:Add Chain|Add Chain]]''
  −
Image:Snapshot workflow.png|''[[commons:Manage Snapshots|Manage Snapshots]]''
  −
</gallery>
      
<br clear=all>
 
<br clear=all>
===Chains===
  −
Chains are a key concept of the Zynthian. The first thing you will do after powering-on your Zynthian is probably to create a chain. (It does little without any chains!)
     −
A chain is composed of one or more interconnected blocks, capable of generating or processing audio & MIDI. Each chain is normally assigned to a MIDI channel. These blocks are chained in the same order they are created, but you can change this order from the '''Chain Options''' menu. The first block created in a chain is the '''root''' and it determines the chain's type:
+
===MIDI input===
 +
 
 +
Each chain receive MIDI input from selected devices (keyboards and other MIDI controllers). You can configure the MIDI input devices from the chain's option menu. Use short-push for selecting the devices and bold-push for changing the input mode. All input devices are selected by default when creating a new chain.
   −
* '''Synth Chain''' => Receives MIDI note-events and generate audio output
+
Each input device can work in 3 different modes:
* '''Audio Chain''' => Receives audio-input and generates audio-output
  −
* '''MIDI Chain''' => Receives MIDI-input and generates MIDI-output
  −
* '''Generator Chain''' => Generate audio output using an algorithm
  −
* '''Special Chain''' => Does not fit any other chain type, e.g. MOD-UI pedalboard, Pure Data patch, etc.
     −
The chain's type can't be changed. Depending of the chain's type, MIDI effects can be added to the start of the chain and audio effects can be added to the end of the chain. These can be arranged as serial or parallel paths.
+
* '''ACTI:''' only the active chain receives all MIDI input from the device and all MIDI events are translated to the active chain's MIDI channel. It's the default mode.
 +
* '''OMNI:''' each chain receives all MIDI input from the device and all MIDI events are translated to each chain's MIDI channel.
 +
* '''MULTI:''' each chain receives MIDI from the input device in the configured MIDI channel. No MIDI channel translation is done.
   −
All audio effects in a chain receive all the MIDI events on the assigned channel (this should be improved!).
+
When using ACTI mode you don't need to worry about the MIDI channel your keyboard/controller is using. You change the instrument you play by changing the active chain in your zynthian. You can change the active chain by simply rotating the select knob (#4) in the Mixer view or using the the left/right arrows.
   −
When you select '''NEW Chain''', you create a new chain, choosing its root engine, a free MIDI channel and if available, bank & preset. You can create up to 16<sup>*</sup> chains, one per MIDI channel.
+
In the other hand, MULTI mode allows receiving and managing separately every MIDI channel. Each MIDI controller will drive the chains assigned to the controller's MIDI channel. If you are using a MIDI controller that can sequence multiple tracks (Beatstep Pro, Keystep Pro, Novation Circuit etc.) then you will generally want to use this mode.
   −
(*) If Master Channel is enabled then only 15 chains can be created.
+
Finally, OMNI mode allows one or several chains to receive all MIDI input from your device translated to chain's MIDI channel. This can be useful for some use-cases. Be warned that this mode will be dropped in the near future so you should avoid it.
   −
Having several chains on the same MIDI channel is not allowed currently. If you want two or more chains to play in unison (like being on the same MIDI channel), you can use the "Clone" feature, which allows you to bind several chains while keeping MIDI CCs and other MIDI messages (Program Change, Channel Pressure, etc.) independent.
+
Note that MIDI CC (Continuous Controllers) events are handled differently and they are not routed to chains. See section on [[#MIDI-learning_.2F_binding|MIDI Learning & binding]].
    
<br clear=all>
 
<br clear=all>
===Stage and Multitimbral Modes===
     −
By default Zynthian starts in '''stage mode'''. Stage mode is a kind of ''Omni-On'' mode, what means all MIDI messages are sent to the selected chain in your zynthian. You don't need to worry about the MIDI channel your keyboard/controller is using. You can change the instrument you play by selecting it in your zynthian or using ZS3's Programs Change feature (see below).
+
===Navigation===
 +
The home screen is the Mixer and it's always reachable by pressing bold-Back. Navigation between views is performed by pressing buttons or using the touchscreen. Most destructive changes, e.g. removing chains, will request confirmation. Operations that take time to complete may show an animated zynthian logo representing progress.
 +
 
 +
Navigation, default actions and common workflows are shown in the following graphs:
   −
In the other hand, '''multitimbral mode''' allows receiving and managing separately every MIDI channel. Each external MIDI controller will drive the chain that is assigned to that controller's MIDI channel, e.g. a chain assigned to MIDI channel 1 will listen for MIDI messages on MIDI channel 1 only<sup>*</sup>.
+
<gallery mode="packed" heights="800">
 +
Image:Main Views.png|''[[#The_UI_Screens|Main Views]]''
 +
</gallery>
   −
(*) MIDI Continuous Controllers are handled differently. See section on [[#MIDI-learning_.2F_binding|MIDI Learning & binding]].
+
<gallery mode="packed" heights="1400">
 +
Image:Add chain workflow.png|''[[#Main_Menu|Add Chain]]''
 +
Image:Snapshot workflow.png|''[[#Load_.2F_Save_Snapshot|Manage Snapshots]]''
 +
</gallery>
    
<br clear=all>
 
<br clear=all>
 +
 
=The UI Screens=
 
=The UI Screens=
   Line 161: Line 214:  
[[File:Audio mixer.png|400px|right]]
 
[[File:Audio mixer.png|400px|right]]
   −
The mixer view is the main screen and pressing '''bold-BACK''' should always navigate to this screen. It displays a strip for each configured chain plus a strip for the main mixbus. The quantity of strips displayed may be configured using webconf. If there are more chains than can be displayed, the screen can be scrolled horizontally by selecting a higher / lower chain or dragging the bottom legend strip.
+
The mixer view is the home screen and pressing '''bold-BACK''' should always navigate to this screen. It displays a strip for each configured chain plus a strip for the main mixbus. The quantity of strips displayed may be configured using webconf. If there are more chains than can be displayed, the screen can be scrolled horizontally by selecting a higher / lower chain or dragging the bottom legend strip.
    
===Audio Chains===
 
===Audio Chains===
Each audio chain have the following mixer controls:
+
Each audio chain has the following mixer controls:
    
* '''Fader''' adjusts the audio level
 
* '''Fader''' adjusts the audio level
Line 176: Line 229:     
===MIDI Chains===
 
===MIDI Chains===
MIDI only (non-audio) chains show in the mixer view without any audio mixer controls.
+
MIDI only (non-audio) chains show in the mixer view without any audio mixer controls nor meter.
    
===Contextual Actions===
 
===Contextual Actions===
* Rotate the SELECT knob or tap on a strip to select a chain.
+
* Rotate '''SELECT knob''' or tap on a strip to select a chain.
* Rotate the LAYER knob or drag the touchscreen to adjust the selected chain's fader.
+
* Rotate '''LAYER knob''' or drag the touchscreen to adjust the selected chain's fader.
* Rotate the BACK knob to adjust the selected chain's balance / pan.
+
* Rotate '''BACK knob''' to adjust the selected chain's balance / pan.
* Rotate the LEARN/SHOT knob or drag the touchscreen to adjust the main mixbus fader.
+
* Rotate '''LEARN/SHOT knob''' or drag the touchscreen to adjust the main mixbus fader.
* Press short-LAYER to toggle solo of the selected chain.
+
* Press '''short-LAYER''' to toggle solo of the selected chain.
* Press short-BACK to toggle mute of the selected chain.
+
* Press '''short-BACK''' to toggle mute of the selected chain.
* Press short-LEARN/SHOT to enter MIDI learn mode.
+
* Press '''short-LEARN/SHOT''' to enter MIDI learn mode.
* Press short-SELECT to access the chain's Control View.
+
* Press '''short-SELECT''' to access the chain's Control View.
* Press bold-LAYER to access the main menu.
+
* Press '''bold-LAYER''' to access the main menu.
* Press bold-LEARN/SHOT to access snapshots.
+
* Press '''bold-LEARN/SHOT''' to access snapshots.
* Press bold-SELECT to access the selected chain's options.
+
* Press '''bold-SELECT''' to access the selected chain's options.
    
==Main Menu==
 
==Main Menu==
Line 202: Line 255:  
* '''New Generator Chain''' adds an audio generator chain
 
* '''New Generator Chain''' adds an audio generator chain
 
* '''New Special Chain''' adds a non-standard or special chain
 
* '''New Special Chain''' adds a non-standard or special chain
* '''Snapshots''' manipulate snapshots
+
* '''Snapshots''' manage snapshots
 
* '''Sequencer''' access the step sequencer
 
* '''Sequencer''' access the step sequencer
 
* '''MIDI Recorder''' access the standard MIDI file recorder / player
 
* '''MIDI Recorder''' access the standard MIDI file recorder / player
Line 219: Line 272:     
* '''setBfree''': can create 1, 2 or 3 chains assigned to consecutive MIDI channels starting at the selected channel corresponding to the upper manual, lower manual and pedals sections of the Hammond B3 emulation.
 
* '''setBfree''': can create 1, 2 or 3 chains assigned to consecutive MIDI channels starting at the selected channel corresponding to the upper manual, lower manual and pedals sections of the Hammond B3 emulation.
* '''Pianoteq''': only one instance of Pianoteq may be created. (There is also a LV2 version which may be enabled and sevearl instances created.)
+
* '''Pianoteq''': only one instance of Pianoteq may be created. (There is also a LV2 version which may be enabled and several instances created.)
 
* '''Aeolus''': occupies MIDI channels 1, 2, 3 & 4, each one corresponding to the 3 manuals + 1 pedal of the Aeolus organ emulator. If all four MIDI channels are not available then Aeolus will be hidden from the list of available engines. You can change the MIDI channel assignments from the Aeolus native UI. If you want to use a different instrument definition, you will have to tweak the engine's code a little bit.
 
* '''Aeolus''': occupies MIDI channels 1, 2, 3 & 4, each one corresponding to the 3 manuals + 1 pedal of the Aeolus organ emulator. If all four MIDI channels are not available then Aeolus will be hidden from the list of available engines. You can change the MIDI channel assignments from the Aeolus native UI. If you want to use a different instrument definition, you will have to tweak the engine's code a little bit.
   Line 231: Line 284:  
This screen is shown in various contexts:
 
This screen is shown in various contexts:
   −
* After you have selected the engine for a new chain. Only unused channels are listed.
+
* When creating a new chain, after you have selected the engine. Only unused channels are listed.
 
* When you change the assigned MIDI channel from the Chain Options menu. Only unused channels are listed.
 
* When you change the assigned MIDI channel from the Chain Options menu. Only unused channels are listed.
* When you clone MIDI for a chain from the Chain Options menu.
+
* When you clone MIDI for a chain, from the Chain Options menu.
    
Playing a note on a connected MIDI controller will cause the list to jump to the MIDI channel of the note played. This can assist with assigning chains to controllers.
 
Playing a note on a connected MIDI controller will cause the list to jump to the MIDI channel of the note played. This can assist with assigning chains to controllers.
Line 241: Line 294:  
== Bank selector==
 
== Bank selector==
 
[[File:Zynthian_ui_bank_list.png|400px|right]]
 
[[File:Zynthian_ui_bank_list.png|400px|right]]
Presets (instruments, patches, sound designs, etc.) for engines may be organized into banks. Choose a bank to see the list of presets for the engine.
+
Presets (instruments, patches, sound designs, etc.) for engines may be organized into banks. You can access engine's bank list by pressing '''short-BACK''' from within its presets list. Choose ('''short-SELECT''') a bank to see the list of presets on it.
    
<br clear=all>
 
<br clear=all>
You can access an engine's banks by short press BACK from within its presets list.
+
'''Bold-SELECT''' or touch and hold a bank on the touchscreen will show the '''Bank Options menu'''. User banks may be renamed or deleted. Some engines do not allow banks to be manipulated in which case this will have no effect.
 
  −
Bold press SELECT or touch and hold a bank on the touchscreen will show the Bank Options menu. A bank may be renamed or deleted. Some engines do not allow banks to be manipulated in which case this will have no effect.
     −
Short press BACK to return to the Control View without changing the engine's configuration.
+
'''Short-BACK''' to return to the Control View without selecting.
 
<br clear=all>
 
<br clear=all>
    
==Preset selector==
 
==Preset selector==
 
[[File:Zynthian_ui_preset_list.png|400px|right]]
 
[[File:Zynthian_ui_preset_list.png|400px|right]]
Once you have chosen a bank, the preset screen will be shown. Choose a preset to load the instrument / sound / patch and the Control View will be shown.
+
Once you have chosen a bank, the preset screen will be shown. Choose a preset to load the instrument / sound / patch / etc. and the Control View will be shown.
 
<br clear=all>
 
<br clear=all>
   −
To change preset of an existing engine, navigate to its Control View then short press BACK to access the list of presets. Use the SELECT encoder to highlight the required preset and short press SELECT or tap on the required preset in the list on the touchscreen to select the preset. The engine will configure with the preset values and the Control View will be displayed.
+
To change the selected preset for a engine in a chain, navigate to its Control View then short press BACK to access the list of presets. Use the SELECT encoder to highlight the required preset and '''short-SELECT''' (or tap, if using touchscreen) to select the preset. The engine will configure with the preset values and the Control View will be displayed.
   −
Bold press SELECT or touch and hold a preset on the touchscreen will show the Preset Options menu. A preset may be added to or removed from a list of favorites, renamed or deleted. Some engines do not allow presets to be manipulated and will only show the Favourite option. (Saving presets is performed in the chain options menu described later.)
+
'''Bold-SELECT''' a preset (or touch and hold on the touchscreen) will show the '''Preset Options menu'''. A preset may be added to or removed from a list of favorites, renamed or deleted. Some engines do not allow presets to be manipulated and will only show the Favourite option. (Saving presets is performed in the chain options menu described later.)
   −
If the '''preload with note-on''' feature is enabled in the admin menu or webconf, you can audition the presets by playing notes. When you do so, the highlighted preset will be pre-loaded without pressing SELECT. N.B. Some engines may be slow to load presets in which case it may be necessary to play the note more than once to hear the new preset sound.
+
If the '''preload with note-on''' feature is enabled in the admin menu or webconf, you can audition the presets by playing notes. When you do so, the highlighted preset will be pre-loaded without pressing SELECT. Note that some engines may be slow to load presets in which case it may be necessary to play the note more than once to hear the new preset sound.
   −
You can return to the bank screen, without selecting any preset, by short press BACK. The previously selected instrument will be restored, e.g. if a preset has been pre-loaded (auditioned).
+
You can return to the bank screen, without selecting any preset, by pressing '''short-BACK'''. The previously selected instrument will be restored, e.g. if a preset has been pre-loaded (auditioned).
   −
Press bold SELECT to manipulate the preset including adding to your favorites. The favorites list can be shown by short press LEARN/SHOT in the Bank or Preset View.
+
Press '''bold-SELECT''' to manage the preset including adding to your favorites. The favorites list can be shown by pressing '''short-LEARN/SHOT''' in the Bank or Preset View.
    
Not all engines support presets. If no presets are configured then this screen is not shown.
 
Not all engines support presets. If no presets are configured then this screen is not shown.
Line 271: Line 322:  
==Control View==
 
==Control View==
 
[[File:Zynthian_ui_instrument_control_01.png|400px|right]]
 
[[File:Zynthian_ui_instrument_control_01.png|400px|right]]
The Control View shows the controls available for each engine within a chain. It is shown after adding a chain, adding an engine to a chain or by short press SELECT or tapping the bottom legend strip in the mixer view. Your instrument is now enabled and playable and you can modify its parameters.
+
The Control View shows the controls available for each engine within a chain. It is shown after adding a chain, adding an engine to a chain or by pressing '''short-SELECT''' (or tapping the bottom legend strip in the mixer view). Your instrument is now enabled and playable and you can modify its parameters.
    
The controls are shown in groups of four (or fewer) on several pages. Each hardware knob controls a parameter displayed in the control view or the control may be dragged up and down on the touchscreen. Controls may toggle between two values, e.g. on / off, lists of values, e.g. sine, square, triangle or continuously adjustable values, e.g. 0%..100%. If there are a lot of possible values the hardware knobs will accelerate progress if rotated fast, e.g. stepping by one value when turned slowly and stepping by 10 values when rotated fast. This allows fine and coarse selection of a parameter from a single knob.
 
The controls are shown in groups of four (or fewer) on several pages. Each hardware knob controls a parameter displayed in the control view or the control may be dragged up and down on the touchscreen. Controls may toggle between two values, e.g. on / off, lists of values, e.g. sine, square, triangle or continuously adjustable values, e.g. 0%..100%. If there are a lot of possible values the hardware knobs will accelerate progress if rotated fast, e.g. stepping by one value when turned slowly and stepping by 10 values when rotated fast. This allows fine and coarse selection of a parameter from a single knob.
Line 278: Line 329:  
[[File:Zynthian_ui_instrument_control_03.png|400px|right]]
 
[[File:Zynthian_ui_instrument_control_03.png|400px|right]]
 
There is a list that shows the pages of controls available.
 
There is a list that shows the pages of controls available.
To change page, short press SELECT - the list of pages turns grey, rotate SELECT to highlight the required page then short press again to select the page. If there are fewer than three pages then short press SELECT will step through each page. Alternatively, tap the required page on the touchscreen. When a page is selected its controls will be shown. Depending on the configuration, some pages may have fewer than four controls and some engines have no adjustable parameters in which case there will be no control pages.
+
To change page, press '''short-SELECT''' - the list of pages turns grey, '''rotate SELECT''' to highlight the required page then short press again to select the page. If there are fewer than three pages then '''short-SELECT''' will step through each page. Alternatively, tap the required page on the touchscreen. When a page is selected its controls will be shown. Depending on the configuration, some pages may have fewer than four controls and some engines have no adjustable parameters in which case there will be no control pages.
    
The pages for the controls for each engine within a chain are shown separated by a title indicating to which engine subsequent pages belong.
 
The pages for the controls for each engine within a chain are shown separated by a title indicating to which engine subsequent pages belong.
Line 292: Line 343:  
==Chain Options==
 
==Chain Options==
 
[[File:Chain options.png|400px|right]]
 
[[File:Chain options.png|400px|right]]
Bold press SELECT when in the Mixer View or Control View will show the Chain Options menu. Manipulation of the chain is possible:
+
Pressing '''bold-SELECT''' when in the '''Mixer View''' or '''Control View''' will show the '''Chain Options menu''', allowing to manipulate the chain:
    
* '''Save Preset''' will allow saving of a engine's configuration as a preset that may later be selected from the preset list. This is only available if the engine supports manipulation of presets. If a chain has several engines then a list of engines will be displayed before naming the preset.
 
* '''Save Preset''' will allow saving of a engine's configuration as a preset that may later be selected from the preset list. This is only available if the engine supports manipulation of presets. If a chain has several engines then a list of engines will be displayed before naming the preset.
Line 300: Line 351:  
* '''Audio Output''' allows manipulation of the routing of the chain's audio outputs. This allows complex audio routing to be performed. If this is not sufficient, try MOD-UI engine with the MOD-UI web GUI. This option is not available for MIDI chains.
 
* '''Audio Output''' allows manipulation of the routing of the chain's audio outputs. This allows complex audio routing to be performed. If this is not sufficient, try MOD-UI engine with the MOD-UI web GUI. This option is not available for MIDI chains.
 
* '''Audio Capture''' allows manipulation of the routing of the chain's audio inputs. This option is only available on audio chains.
 
* '''Audio Capture''' allows manipulation of the routing of the chain's audio inputs. This option is only available on audio chains.
* '''MIDI Routing''' => Select the destiny of the chain's MIDI output. This option is only available on MIDI-FX chains.
+
* '''MIDI Routing''' => Select the destination of the chain's MIDI output. This option is only available on MIDI-FX chains.
 
* '''MIDI Channel''' allows changing of the chain's MIDI Channel. Only MIDI channels not assigned to other chains are available.
 
* '''MIDI Channel''' allows changing of the chain's MIDI Channel. Only MIDI channels not assigned to other chains are available.
 
* '''Replace Synth''' allows a synth engine to be replaced by another synth engine.
 
* '''Replace Synth''' allows a synth engine to be replaced by another synth engine.
Line 316: Line 367:     
[[File:Zynthian_ui_layer_effect_options.png|400px|right]]
 
[[File:Zynthian_ui_layer_effect_options.png|400px|right]]
Short press SELECT or tapping on an effect in the list will allow manipulation of the effect:
+
Select an effect in the list for opening the effect options menu, that allows manipulating chain elements:
    
* '''Presets''' shows list of available presets for the effect
 
* '''Presets''' shows list of available presets for the effect
Line 354: Line 405:  
Snapshots are used for saving and restoring the status of Zynthian. A snapshot includes the full state, including chains, effects, parameter values, MIDI-learning, etc.
 
Snapshots are used for saving and restoring the status of Zynthian. A snapshot includes the full state, including chains, effects, parameter values, MIDI-learning, etc.
   −
Bold press SNAPSHOT to access the Snapshot View. The first option allows the current state to be saves as a new snapshot. An on-screen keyboard will allow naming the new snapshot.
+
Bold press SNAPSHOT to access the Snapshot View. The first option allows the current state to be saved as a new snapshot. An on-screen keyboard will allow naming the new snapshot.
    
Highlighting a snapshot in the list then short press SELECT or tap on list with touchscreen shows options for the snapshot:
 
Highlighting a snapshot in the list then short press SELECT or tap on list with touchscreen shows options for the snapshot:
Line 366: Line 417:  
* '''Delete''' removes the snapshot
 
* '''Delete''' removes the snapshot
   −
It is possible to recall snapshots via MIDI Program Change. New snapshots are assigned the next available MIDI Program Change. This number prefixes the snapshot name in the list.
+
It is possible to recall snapshots via MIDI Program Change on the ''Master MIDI Channel''. New snapshots are assigned the next available MIDI Program Change. This number prefixes the snapshot name in the list but may be changed using the options menu.
    
====Snapshot Banks====
 
====Snapshot Banks====
Line 397: Line 448:  
'''1.''' From the Control View, short press LEARN. The CC MIDI-learn view is shown. It’s identical to the Control screen except that the controllers show a green “??”.
 
'''1.''' From the Control View, short press LEARN. The CC MIDI-learn view is shown. It’s identical to the Control screen except that the controllers show a green “??”.
   −
'''2.''' Move a zynthian controller. The “??” changes to yellow. The other three will go back to normal state.
+
'''2.''' Move a Zynthian controller. The “??” changes to yellow. The other three will go back to normal state.
    
'''3.''' Finally, move a knob / fader in your MIDI keyboard / controller and the binding is done. The new CC number should appear at the bottom of the learned controller, replacing the "??".
 
'''3.''' Finally, move a knob / fader in your MIDI keyboard / controller and the binding is done. The new CC number should appear at the bottom of the learned controller, replacing the "??".
Line 418: Line 469:  
====MIDI Program Change & ZS3 (SubSnapShots)====
 
====MIDI Program Change & ZS3 (SubSnapShots)====
 
[[File:Zynthian_ui_midi_zs3_learn.png|400px|right]]
 
[[File:Zynthian_ui_midi_zs3_learn.png|400px|right]]
A ZS3 (SubSnapShot) saves the zynthian state in the context of the current snapshot. When recalled from the UI or by MIDI Program Change, the saved state is restored. The chain's layout is defined for the snapshot and it can't be changed across ZS3s, but the rest of state is saved in ZS3: bank/preset, engine parameters, mixer settings, clone & key range settings, etc. Snapshots can be slow to load as each engine needs to be started. ZS3 is much faster as the presets are restored and parameters adjusted. Some ZS3 may be slower due to the way some engines load presets, e.g. changing instrument within Pianoteq is slower than recalling a preset of the same instrument.
+
A ZS3 (SubSnapShot) saves the Zynthian state in the context of the current snapshot. When recalled from the UI or by MIDI Program Change, the saved state is restored. The chain's layout is defined for the snapshot and it can't be changed across ZS3s, but the rest of state is saved in ZS3: bank/preset, engine parameters, mixer settings, clone & key range settings, etc. Snapshots can be slow to load as each engine needs to be started. ZS3 is much faster as the presets are restored and parameters adjusted. Some ZS3 may be slower due to the way some engines load presets, e.g. changing instrument within Pianoteq is slower than recalling a preset of the same instrument.
    
The idea behind this feature is to have a fast preset-change mechanism that can be used on stage. In combination with the “Stage Mode” feature, it turns Zynthian into a “Stage-Beast”. You can prepare a snapshot for the full performance, and use ZS3s for fast changes between songs or even within a song.
 
The idea behind this feature is to have a fast preset-change mechanism that can be used on stage. In combination with the “Stage Mode” feature, it turns Zynthian into a “Stage-Beast”. You can prepare a snapshot for the full performance, and use ZS3s for fast changes between songs or even within a song.
Line 469: Line 520:  
'''NOTE:''' Simultaneous record and playback is possible.
 
'''NOTE:''' Simultaneous record and playback is possible.
   −
During playback a BPM control will be shown to adjust the transport speed. The same transport is used for step sequencer so tempo adjustments afect both SMF and step sequence playback.
+
During playback a BPM control will be shown to adjust the transport speed. The same transport is used for step sequencer so tempo adjustments affect both SMF and step sequence playback.
    
===Deleting===
 
===Deleting===
Line 534: Line 585:     
You can configure the Audio Level controllers from the webconf's hardware->audio menu. Simply click the '''+''' button on the "Mixer Controls" text area.  
 
You can configure the Audio Level controllers from the webconf's hardware->audio menu. Simply click the '''+''' button on the "Mixer Controls" text area.  
 +
 +
The settings vary between sound cards. The official V4 soundcard has these settings enabled in webconf by default:
 +
 +
* ADC Left - Level adjustment of the left input
 +
* ADC Right - Level adjustment of the right input
 +
* ADC Left Input - Configure left input connector:
 +
** No Select - Disconnect input
 +
** VINL1[SE] - Tip & sleeve single ended/unbalanced
 +
** VINL2[SE] - Ring & sleeve single ended/unbalanced
 +
** VINL2[SE] + VINL1[SE] - Tip, ring & sleeve single ended/unbalanced
 +
** [VIN1P, VIN1M][DIFF] - TRS differential/balanced
 +
* ADC Right Input - Configure left input connector:
 +
** Same options as ADC Left Input
 +
* Digital Left - Level adjustment of left output
 +
* Digital Right - Level adjustment of right output
 +
* PGA Gain Left - Gain adjustment of left input
 +
* PGA Gain Right - Gain adjustment of right input
 +
 +
Note that the gain adjustment allows coarse control of the overal gain of an input, allowing configuration for line, mic, etc. The level adjustment is an overal 0…100% level.
 +
 +
The input connector configuration can be useful for a few variations:
 +
 +
* Balanced signals on TSR - [VIN1P, VIN1M][DIFF]
 +
* Unbalanced mono on TS - VINL1[SE]
 +
* Two unbalanced (e.g. stereo) on TSR mixed to mono - VINL2[SE] + VINL1[SE]
    
<br clear=all>
 
<br clear=all>
   −
==Step Sequencer==
+
==Step Sequencer - ZynSeq==
   −
Zynthian has a step sequencer which provides methods to create patterns and arrange them into sequences.
+
Zynthian has a step sequencer called ZynSeq which provides methods to create patterns and arrange them into sequences.
    
The step sequencer may be accessed from the main screen or by long press LAYER.
 
The step sequencer may be accessed from the main screen or by long press LAYER.
Line 551: Line 627:  
These are three main views:
 
These are three main views:
   −
[[File:Zynpad 4x4 playing starting.png|400px|right]]
+
[[File:Sequencer_pad_view_2_playing.png|400px|right]]
    
'''Pads'''<br>
 
'''Pads'''<br>
Line 620: Line 696:  
Short tapping the top-bar acts as a back button. Bold tap will show an appropriate menu or return to the mixer view.
 
Short tapping the top-bar acts as a back button. Bold tap will show an appropriate menu or return to the mixer view.
   −
You can "emulate" the switches by tapping (not dragging) the controller widgets (squares in the 4 corners of the screen) where these controllers are presented. (Not all screens have controllers. Some have just one. The '''zynthian logo''' (top-right) may be tapped to emulate LEARN/SNAP). There are short, bold and long actions, the same behavior as the rotary encoders workflow.  
+
You can "emulate" the switches by tapping (not dragging) the controller widgets (squares in the 4 corners of the screen) where these controllers are presented. (Not all screens have controllers, some have just one). The '''Zynthian logo''' (top-right) may be tapped to emulate LEARN/SNAP). There are short, bold and long actions, the same behavior as the rotary encoders workflow.  
    
You can change the controller values by "sliding" up / down over the widgets. (See the green arrow in the figure) This is the same as turning the knob. If you are using a mouse, the mouse wheel also can be used to change the controller value and acts to adjust parameters in some other views.
 
You can change the controller values by "sliding" up / down over the widgets. (See the green arrow in the figure) This is the same as turning the knob. If you are using a mouse, the mouse wheel also can be used to change the controller value and acts to adjust parameters in some other views.
Line 630: Line 706:  
=CUIA: Callable UI Actions=
 
=CUIA: Callable UI Actions=
   −
The Zynthian UI can be controlled remotely using a set of commands called CUIA: Callable UI Actions. These CUIA are available on several interfaces: Key Bindings, MIDI, OSC, etc.
+
The Zynthian UI can be controlled remotely using a set of commands called CUIA: Callable UI Actions. These CUIAs are available on several interfaces: Key Bindings, MIDI, OSC, etc.
 +
 
 +
==Key Bindings: Controlling the UI with a computer keyboard==
   −
==KeyBindings: Controlling the UI with a computer keyboard==
+
[[File:webconf_key_bindings.png|600px|right]]
   −
The user interface may be driven using a USB keyboard, e.g. QWERTY, Dvorak, etc. Key assignment and their combinations can be modified with the webconf tool, e.g. http://zynthian.local/ui-keybind. The default key bindings are:
+
The user interface may be driven using a computer keyboard (QWERTY, Dvorak, etc.). Key assignment map can be consulted and configured from the webconf tool:
   −
{| class="wikitable"
+
'''Interface->UI Key Binding'''
|+ Keyboard shortcuts
+
 
|-
+
<br clear=all>
! Action !! Modifier !! Key
  −
|-
  −
| ALL_NOTES_OFF || None|| Space
  −
|-
  −
| ALL_OFF || Ctrl || Space
  −
|-
  −
| ALL_SOUNDS_OFF || Shift || Space
  −
|-
  −
| BACK_DOWN || Ctrl || Comma
  −
|-
  −
| BACK_UP || Ctrl || Period
  −
|-
  −
| LAYER_DOWN || Shift+Ctrl || Less
  −
|-
  −
| LAYER_UP || Shift+Ctrl || Greater
  −
|-
  −
| POWER_OFF || Ctrl || End
  −
|-
  −
| REBOOT || Ctrl || Home
  −
|-
  −
| RELOAD_MIDI_CONFIG || Ctrl || Insert
  −
|-
  −
| RESTART_UI || Shift || Home
  −
|-
  −
| SELECT_DOWN || None || Comma
  −
|-
  −
| SELECT_UP || None || Period
  −
|-
  −
| SNAPSHOT_DOWN || Shift || Less
  −
|-
  −
| SNAPSHOT_UP || Shift || Greater
  −
|-
  −
| START_AUDIO_PLAY || Ctrl || a
  −
|-
  −
| START_AUDIO_RECORD || None || a
  −
|-
  −
| START_MIDI_PLAY || Ctrl || m
  −
|-
  −
| START_MIDI_RECORD || None || m
  −
|-
  −
| STOP_AUDIO_PLAY || Ctrl+Shift|| a
  −
|-
  −
| STOP_AUDIO_RECORD || Shift || a
  −
|-
  −
| STOP_MIDI_PLAY || Ctrl+Shift || m
  −
|-
  −
| STOP_MIDI_RECORD || Shift || m
  −
|-
  −
| SWITCH_BACK_BOLD || Shift || l or BackSpace or Escape
  −
|-
  −
| SWITCH_BACK_LONG || Ctrl || l or BackSpace or Escape
  −
|-
  −
| SWITCH_BACK_SHORT || None || l or BackSpace or Escape
  −
|-
  −
| SWITCH_LAYER_BOLD || Shift|| i
  −
|-
  −
| SWITCH_LAYER_LONG || Ctrl || i
  −
|-
  −
| SWITCH_LAYER_SHORT || None|| i
  −
|-
  −
| SWITCH_SELECT_BOLD || Shift || l
  −
|-
  −
| SWITCH_SELECT_LONG || Ctrl || l
  −
|-
  −
| SWITCH_SELECT_SHORT || None || l
  −
|-
  −
| SWITCH_SNAPSHOT_BOLD || Shift || o
  −
|-
  −
| SWITCH_SNAPSHOT_LONG || Ctrl || o
  −
|-
  −
| SWITCH_SNAPSHOT_SHORT || None || o
  −
|-
  −
| TOGGLE_AUDIO_PLAY || Ctrl+Alt || a
  −
|-
  −
| TOGGLE_AUDIO_RECORD || Alt || a
  −
|-
  −
| TOGGLE_MIDI_PLAY || Ctrl+Shift || m
  −
|-
  −
| TOGGLE_MIDI_RECORD || Alt || m
  −
|}
      
==Controlling the UI with MIDI messages==  
 
==Controlling the UI with MIDI messages==  
   −
CUIA may be triggered by MIDI messages on the Master Channel (disabled by default, but configurable with the webconf tool), specifically, note-on messages (0x9) are used so you can use a MIDI keyboard for controlling the Zynthian UI. For instance, to Power Off the zynthian, you send this message:
+
CUIA may be triggered by MIDI messages on the Master Channel (disabled by default, but configurable with the webconf tool), specifically, note-on messages (0x9) are used so you can use a MIDI keyboard for controlling the Zynthian UI. For instance, to Power Off the Zynthian, you send this message:
 
   
 
   
 
  0x9F  (Channel 16 Note ON)  
 
  0x9F  (Channel 16 Note ON)  
Line 728: Line 726:  
  0x00  (Velocity / parameter)
 
  0x00  (Velocity / parameter)
   −
or play the C-1 key, if your keyboard has it.
+
or play the C-0 key, if your keyboard has it.
   −
Note that you can use the velocity for sending the CUIA parameter when it's required by the action (SELECT & LAYER_CONTROL).
+
Please, note that you can use the velocity for sending the first CUIA parameter when it's required by the action (for instance, SELECT or CHAIN_CONTROL).
   −
This is the full map of CUIA to MIDI notes:
+
[[File:webconf_midi_options_master_key_actions.png|600px|right]]
   −
'''Num'''  '''CUIA'''                      '''Note'''        '''System Real-Time'''
+
You can check the map of MIDI-CUIA actions in the webconf tool:
0    POWER_OFF                  C-1
  −
1    REBOOT                    C#-1
  −
2    RESTART_UI                D-1
  −
3    RELOAD_MIDI_CONFIG        D#-1
  −
4    RELOAD_KEY_BINDING        E-1
  −
5    LAST_STATE_ACTION          F-1
     −
  10    ALL_NOTES_OFF              A#-1
+
  '''Interface->MIDI-options->Master Key Actions'''
11    ALL_SOUNDS_OFF            B-1
  −
12    ALL_OFF                    C0
     −
23    TOGGLE_AUDIO_RECORD        B0
+
From there, you can also reconfigure the map to better suit your needs.
24    START_AUDIO_RECORD        C1
  −
25    STOP_AUDIO_RECORD          C#1
  −
26    TOGGLE_AUDIO_PLAY          D1
  −
27    START_AUDIO_PLAY          D#1
  −
28    STOP_AUDIO_PLAY            E1
     −
35    TOGGLE_MIDI_RECORD        B1
+
For a detailed list of available CUIAs, [[Accessing Zynthian from your computer#CUIA:_Callable_User_Interface_Actions|check this section]].
36    START_MIDI_RECORD          C2
  −
37    STOP_MIDI_RECORD          C#2
  −
38    TOGGLE_MIDI_PLAY          D2
  −
39    START_MIDI_PLAY            D#2          Start / Continue: 0xFA, 0xFB
  −
40    STOP_MIDI_PLAY            E2            Stop: 0xFC
     −
51    SELECT                    D#3
+
<br clear=all>
52    SELECT_UP                  E3
  −
53    SELECT_DOWN                F3
  −
54    BACK_UP                    F#3
  −
55    BACK_DOWN                  G3
  −
56    LAYER_UP                  G#3
  −
57    LAYER_DOWN                A3
  −
58    SNAPSHOT_UP                A#3
  −
59    SNAPSHOT_DOWN              B3
  −
 
  −
64    SWITCH_BACK_SHORT          E4
  −
63    SWITCH_BACK_BOLD          D#4
  −
62    SWITCH_BACK_LONG          D4
  −
 
  −
65    SWITCH_SELECT_SHORT        F4
  −
66    SWITCH_SELECT_BOLD        F#4
  −
67    SWITCH_SELECT_LONG        G4
  −
 
  −
60    SWITCH_LAYER_SHORT        C4
  −
61    SWITCH_LAYER_BOLD          C#4
  −
59    SWITCH_LAYER_LONG          B3
  −
 
  −
71    SWITCH_SNAPSHOT_SHORT      B4
  −
72    SWITCH_SNAPSHOT_BOLD      C5
  −
73    SWITCH_SNAPSHOT_LONG      C#5
  −
 
  −
80    SCREEN_MAIN                G#5
  −
81    SCREEN_LAYER              A5
  −
82    SCREEN_BANK                A#5
  −
83    SCREEN_PRESET              B5
  −
84    SCREEN_CONTROL            C6
  −
 
  −
90    MODAL_SNAPSHOT_LOAD        F#6
  −
91    MODAL_SNAPSHOT_SAVE        G6
  −
92    MODAL_AUDIO_RECORDER      G#6
  −
93    MODAL_MIDI_RECORDER        A6
  −
94    MODAL_ALSA_MIXER          A#6
  −
95    MODAL_STEPSEQ              B6
  −
96    MODAL_ADMIN                C7
  −
 
  −
100  LAYER_CONTROL              E7
  −
 
  −
[[File:2Oct_Keyboard_CUIA.png|600px|Keyboard]]
  −
 
  −
[[File:Midi-note-chart.jpg]]
      
==Controlling the UI with OSC messages==
 
==Controlling the UI with OSC messages==
    
CUIA may be triggered using OSC on UDP port 1370, with the path prefix "/cuia", e.g. "/cuia/reboot". Take a look at "[[Accessing_Zynthian_from_your_computer#OSC|Calling CUIA with OSC]]".
 
CUIA may be triggered using OSC on UDP port 1370, with the path prefix "/cuia", e.g. "/cuia/reboot". Take a look at "[[Accessing_Zynthian_from_your_computer#OSC|Calling CUIA with OSC]]".

Navigation menu