Line 2:
Line 2:
==Introduction==
==Introduction==
+
+
Welcome to the Zynthian project, an open source hardware and software platform for musical explorers. The hardware includes the various official boxes from v1 through to the current (as of July 2025) V5.1 (see history here) and DIY setups (here). On the software side, Zynthian '''Oram''' is the most recent version of zynthianOS, first released in September 2024, it has some substantial changes compared to earlier versions.
+
+
Zynthian is a capable platform that can serve a range of musical needs from practice tool to sound design to live performance rig and more. You find out some of the features on the front page and here (link to features list page)
+
+
=== How to get started ===
+
+
Just to remind those who are new here, there are '''three ways you can get started with Zynthian:'''
+
+
# You can purchase an [https://zynthian.org/ official kit] for the most complete experience
+
# If you would like to try Zynthian at least cost, you can grab a raspberry pi and a free peripherals and [[No Hardware Build|install a basic setup]] (best with Pi 4b and above)
+
# If you're more adventurous you can build yourself an [[Building Zynthian MINI V2|unofficial DIY kit]] or try [https://discourse.zynthian.org/t/success-cases/ DIY your own way]
+
+
=== Choose your own adventure ===
+
This user guide describes the core concepts of the system and gives detailed guidance on how to use it.
+
<blockquote>'''''You can select the documentation for different hardware types (V5, V4, Touch) with the selector in the top right of the page''''' ↑</blockquote>
+
If you are using V1-V3 then select V4. If you have a custom build, then select the version that closest matches your hardware. If your hardware uses features from different official kits then you may wish to check the documentation for each hardware type.
+
+
It is '''strongly recommended that you read section 2 on core concepts''' which explains many aspects of how zynthian works. This provides essential knowledge to improve your understanding and ability to use zynthian. This guide includes details of how to navigate the user interface and some explanation of common workflows.
+
=== Quick Start ===
+
Near the bottom of the guide are links to '''[[Zynthian UI User's Guide - Oram#Learning Pills|Learning Pills]]''': short video tutorials that show and describe various workflows. These are short, easily digestible snippets of information that can get you started quickly.
+
+
=== The Zynthian Project ===
+
+
Zynthian is truly a community effort supported by core developers and the wider group of music makers who contribute in various ways whether by questions, testing (making music & experimentation), contributing code or updating this very wiki site.
+
+
With that in mind, please know this guide is a living document, subject to frequent updates. Some sections may be incomplete and the whole document will improve during the lifetime of Zynthian Oram. If you want to get involved in documentation, visit the [https://discourse.zynthian.org/ forum] and request permission to edit the wiki.
==Basic concepts==
==Basic concepts==
Line 24:
Line 51:
* '''MIDI + Audio Chain''' => Receives MIDI + Audio input and generates MIDI + Audio output. It has MIDI and audio-FX processors.
* '''MIDI + Audio Chain''' => Receives MIDI + Audio input and generates MIDI + Audio output. It has MIDI and audio-FX processors.
* '''Generator Chain''' => Generates audio output using an algorithm. The first processor is an audio generator.
* '''Generator Chain''' => Generates audio output using an algorithm. The first processor is an audio generator.
−
* '''Special Chain''' => It can contains special processors, a MOD-UI pedalboard or a Pure Data patch. It can process audio and MIDI.
+
* '''Special Chain''' => It can contain special processors, a MOD-UI pedalboard or a Pure Data patch. It can process audio and MIDI.
<br>
<br>
The chain's type can't be changed after creating the chain. Processors can be added, removed and positioned within the chain.
The chain's type can't be changed after creating the chain. Processors can be added, removed and positioned within the chain.
Line 43:
Line 70:
* '''Audio''' => Receives audio input and generates audio output.
* '''Audio''' => Receives audio input and generates audio output.
* '''Generator''' => Generates audio output and has no input.
* '''Generator''' => Generates audio output and has no input.
−
* '''Special''' => Recieves MIDI events and audio input and generates MIDI output and audio output.
+
* '''Special''' => Receives MIDI events and audio input and generates MIDI output and audio output.
−
Each type of processor is catagorised to ease user selection, e.g. Synths have categories: Synth, Sampler, Piano, Organ, Acoustic & Percussion.
+
Each type of processor is categorised to ease user selection, e.g. Synths have categories: Synth, Sampler, Piano, Organ, Acoustic & Percussion.
Each processor has parameters that may be controlled with zynthian knobs or mapped to MIDI CC messages. Processors may have presets that may be arranged in banks.
Each processor has parameters that may be controlled with zynthian knobs or mapped to MIDI CC messages. Processors may have presets that may be arranged in banks.
Line 54:
Line 81:
====Active mode====
====Active mode====
−
When an MIDI input is configured in active mode, the '''active chain''' (the highlighted or selected chain) receives all MIDI input from it and all MIDI events are translated to the active chain's MIDI channel. This is the default mode for all MIDI inputs. When using active mode you don't need to worry about the MIDI channel your keyboard or controller is using. You change which instruments are played by changing the active chain in your zynthian (see below).
+
When a MIDI input is configured in active mode, the '''active chain''' (the highlighted or selected chain) receives all MIDI input from it and all MIDI events are translated to the active chain's MIDI channel. This is the default mode for all MIDI inputs. When using active mode you don't need to worry about the MIDI channel your keyboard or controller is using. You change which instruments are played by changing the active chain in your zynthian (see below).
−
Active mode's behavior can be modified by the '''Active MIDI channel''' global flag ([[#Admin_menu|see admin menu]]):
+
Active mode's behavior can be modified by the '''Active MIDI channel''' global flag ([[#Key_range_.26_transpose|see admin menu]]):
<br>
<br>
* Active MIDI channel '''Disabled''' => Only the active chain receives data from the MIDI input in active mode. This is the default setting.
* Active MIDI channel '''Disabled''' => Only the active chain receives data from the MIDI input in active mode. This is the default setting.
Line 77:
Line 104:
===Snapshots===
===Snapshots===
+
[[File:snapshot_structure.png|400px|right]]
+
A snapshot is the captured state of zynthian at the time of saving the snapshot. Snapshots are saved in a JSON file with ''.zss'' extension and can be loaded at any time, which effectively restores the state of the zynthian device when the snapshot was saved. Snapshots include:
A snapshot is the captured state of zynthian at the time of saving the snapshot. Snapshots are saved in a JSON file with ''.zss'' extension and can be loaded at any time, which effectively restores the state of the zynthian device when the snapshot was saved. Snapshots include:
Line 88:
Line 117:
Each time you overwrite an existing snapshot file, a backup copy is created. Backups can also be restored at any time, which can avoid much suffering. When you feel the panic, remember that zynthian stores the full ''save history'' for '''all''' snapshots!
Each time you overwrite an existing snapshot file, a backup copy is created. Backups can also be restored at any time, which can avoid much suffering. When you feel the panic, remember that zynthian stores the full ''save history'' for '''all''' snapshots!
+
+
<br clear=all>
{{NoteBox|Many zynthian users like to see snapshots as "zynthian project" files and it's not a a bad approach.}}
{{NoteBox|Many zynthian users like to see snapshots as "zynthian project" files and it's not a a bad approach.}}
====Last state snapshot====
====Last state snapshot====
−
When zynthian starts, it always try to restore the last state saved as this snapshot. It always trys to save the current state before performing some operations, like:
+
When zynthian starts, it always tries to restore the last state saved as this snapshot. It always tries to save the current state before performing some operations, like:
* power-off
* power-off
Line 103:
Line 134:
===Sub-snapshots: ZS3===
===Sub-snapshots: ZS3===
−
ZS3 means '''Z'''ynthian '''S'''ub-'''S'''nap'''S'''hot. A ZS3 is a partial state that is stored in memory and can be recalled very fast. ZS3s can be easily associated (learned) to MIDI Programs (program change events). Of course, all ZS3s are saved and restored with snapshots, including the default state of the snapshot when first loaded (ZS3-0).
+
ZS3 means '''Z'''ynthian '''S'''ub-'''S'''nap'''S'''hot. A ZS3 is a partial state that is stored in memory and can be recalled very fast. ZS3s can easily be associated (learned) to MIDI Programs (program change events). Of course, all ZS3s are saved and restored with snapshots, including the default state of the snapshot when first loaded (ZS3-0).
+
+
Please bear in mind that in the case of USB-connected MIDI devices there are two settings configured in admin under "MIDI-USB mapped by port" that affect this functionality.
+
With mapped to port set the learnt settings will apply only to the specific USB Configuration in place at the time of learning. So if you add a USB hub to the rig the ZS3 sub-snapshots won't act.
+
Turning this off will allow control simply by the MIDI message only.
ZS3s include:
ZS3s include:
Line 116:
Line 151:
* '''active chain''': chain that was active when the ZS3 was saved
* '''active chain''': chain that was active when the ZS3 was saved
−
The key concept to understand how ZS3s work is noting that '''chains layout is not stored in ZS3s'''. In other words, chain's layout is not modified when retoring ZS3s. You can't add/remove chains or processors by restoring ZS3s because this is a slow operation and ZS3s need to be restored very fast.
+
The key concept to understand how ZS3s work is noting that the '''chains layout is not stored in ZS3s'''. In other words, the chains layout is not modified when restoring ZS3s. You can't add/remove chains or processors by restoring ZS3s because this is a slow operation and ZS3s need to be restored very fast.
−
When loading a snapshot that contains ZS3s, all the chains and processors are created. Later, when recalling the ZS3s, chain's layout will remain the same. Although ZS3s can modify routing, splits, banks, presets, etc., the quantity of chains and processors will be unchanged.
+
When loading a snapshot that contains ZS3s, all the chains and processors are created. Later, when recalling the ZS3s, the chains layout will remain the same. Although ZS3s can modify routing, splits, banks, presets, etc., the quantity of chains and processors will be unchanged.
{{NoteBox|For instance, if you are keyboardist that plays with several bands, you could have a snapshot for each band with ZS3s for each song.}}
{{NoteBox|For instance, if you are keyboardist that plays with several bands, you could have a snapshot for each band with ZS3s for each song.}}
Line 150:
Line 185:
* '''modify parameters'''
* '''modify parameters'''
−
Each push button is engraved with a text legend or icon and backlit with RGB LED that gives status feedback. The knobs are numbered from top to bottom, so the top one is knob#1 and the bottom one is knob#4. We will refer knobs in this way throughout this guide.
+
Each push button is engraved with a text legend or icon and backlit with RGB LED that gives status feedback. The knobs are numbered from top to bottom, so the top one is knob#1 and the bottom one is knob#4. We will refer to knobs in this way throughout this guide.
</div>
</div>
Line 170:
Line 205:
Zynthian can be operated entriely using touch or mouse if touch navigation is enabled in webconf. A minimum display size of 5 inches and capacitive touch is recommended when this is the primary user input method. If using a smaller or resistive touch then a stylus is highly recommended.
Zynthian can be operated entriely using touch or mouse if touch navigation is enabled in webconf. A minimum display size of 5 inches and capacitive touch is recommended when this is the primary user input method. If using a smaller or resistive touch then a stylus is highly recommended.
−
Zynthian UI can also be run head-less, accessing remotely with VNC.
+
Zynthian UI can also be run head-less, accessed remotely with VNC.
</div>
</div>
Line 205:
Line 240:
|style="padding:10px"|<span style="color:#00FF00">[[File:Ui push short icon.png|35px]]</span>
|style="padding:10px"|<span style="color:#00FF00">[[File:Ui push short icon.png|35px]]</span>
|style="padding:10px"|'''Short Push'''
|style="padding:10px"|'''Short Push'''
−
|style="padding:10px"|Push and release in less than 0.3 seconds.
+
|style="padding:10px"|Push and release in less than 0.3 seconds. Normally used to select an item, check/uncheck an option or trigger the default action for the item.
|-
|-
−
|style="padding:10px"|<span style="color:#00FF00">[[File:Ui push bold icon.png|35px]]</span>
+
|style="padding:10px"|<span style="color:#008F00">[[File:Ui push bold icon.png|35px]]</span>
|style="padding:10px"|'''Bold Push'''
|style="padding:10px"|'''Bold Push'''
−
|style="padding:10px"|Push and hold for longer than 0.3 seconds then release before 2 seconds.
+
|style="padding:10px"|Push and hold for longer than 0.3 seconds then release before 2 seconds. Normally used to open options menu, access extra details or edit the item.
|-
|-
−
|style="padding:10px"|<span style="color:#00FF00">[[File:Ui push long icon.png|35px]]</span>
+
|style="padding:10px"|<span style="color:#008F00">[[File:Ui push long icon.png|35px]]</span>
|style="padding:10px"|'''Long Push'''
|style="padding:10px"|'''Long Push'''
−
|style="padding:10px"|Push and hold for longer than 2 seconds. Long-action triggers before release.
+
|style="padding:10px"|Push and hold for longer than 2 seconds. Long-action triggers before release. Used for important functions that are not used very often.
|-
|-
−
|style="padding:10px"|<span style="color:#00FF00">[[File:Ui knob rotate icon.png|35px]]</span>
+
|style="padding:10px"|<span style="color:#008F00">[[File:Ui knob rotate icon.png|35px]]</span>
|style="padding:10px"|'''Knob Rotate'''
|style="padding:10px"|'''Knob Rotate'''
−
|style="padding:10px"|Rotate the knob.
+
|style="padding:10px"|Rotate the knob. Used to change parameter values or move across a list or grid.
|}
|}
{| class="wikitable show_only_touch" style="margin:auto"
{| class="wikitable show_only_touch" style="margin:auto"
!colspan="3"|UI actions
!colspan="3"|UI actions
|-
|-
−
|style="padding:10px"|<span style="color:#00FF00">[[File:Ui push short icon.png|35px]]</span>
+
|style="padding:10px"|<span style="color:#008F00">[[File:Ui push short icon.png|35px]]</span>
|style="padding:10px"|'''Short Push'''
|style="padding:10px"|'''Short Push'''
−
|style="padding:10px"|Push and release in less than 0.3 seconds.
+
|style="padding:10px"|Push and release in less than 0.3 seconds. Normally used to select an item, check/uncheck an option or trigger the default action for the item.
|-
|-
−
|style="padding:10px"|<span style="color:#00FF00">[[File:Ui push bold icon.png|35px]]</span>
+
|style="padding:10px"|<span style="color:#008F00">[[File:Ui push bold icon.png|35px]]</span>
|style="padding:10px"|'''Bold Push'''
|style="padding:10px"|'''Bold Push'''
−
|style="padding:10px"|Push and hold for longer than 0.3 seconds then release before 2 seconds.
+
|style="padding:10px"|Push and hold for longer than 0.3 seconds then release before 2 seconds. Normally used to open options menu, access extra details or edit the item.
|-
|-
−
|style="padding:10px"|<span style="color:#00FF00">[[File:Ui push long icon.png|35px]]</span>
+
|style="padding:10px"|<span style="color:#008F00">[[File:Ui push long icon.png|35px]]</span>
|style="padding:10px"|'''Long Push'''
|style="padding:10px"|'''Long Push'''
−
|style="padding:10px"|Push and hold for longer than 2 seconds. Long-action triggers before release.
+
|style="padding:10px"|Push and hold for longer than 2 seconds. Long-action triggers before release. Used for important functions that are not used very often.
|-
|-
−
|style="padding:10px"|<span style="color:#00FF00">Horizontal Drag</span>
+
|style="padding:10px"|<span style="color:#008F00">Horizontal Drag</span>
|style="padding:10px"|'''Horizontal Drag'''
|style="padding:10px"|'''Horizontal Drag'''
−
|style="padding:10px"|Push and drag horizontally. Must release before you can drag vertically.
+
|style="padding:10px"|Push and drag horizontally. Must release before you can drag vertically. If still moving when released, a swipe action may occur.
|-
|-
−
|style="padding:10px"|<span style="color:#00FF00">Vertical Drag</span>
+
|style="padding:10px"|<span style="color:#008F00">Vertical Drag</span>
|style="padding:10px"|'''Vertical Drag'''
|style="padding:10px"|'''Vertical Drag'''
−
|style="padding:10px"|Push and drag vertically. Must release before you can drag horizontally.
+
|style="padding:10px"|Push and drag vertically. Must release before you can drag horizontally. If still moving when released, a swipe actin may occur.
|-
|-
−
|style="padding:10px"|<span style="color:#00FF00">2 Finger Horizontal Drag</span>
+
|style="padding:10px"|<span style="color:#008F00">2 Finger Horizontal Drag</span>
|style="padding:10px"|'''2 Finger Horizontal Drag'''
|style="padding:10px"|'''2 Finger Horizontal Drag'''
−
|style="padding:10px"|Push with 2 fingers and drag horizontally. Must release before you can drag vertically.
+
|style="padding:10px"|Push with 2 fingers and drag horizontally. Must release before you can drag vertically. If still moving when released, a swipe actin may occur.
|-
|-
−
|style="padding:10px"|<span style="color:#00FF00">2 Finger Vertical Drag</span>
+
|style="padding:10px"|<span style="color:#008F00">2 Finger Vertical Drag</span>
|style="padding:10px"|'''2 Finger Vertical Drag'''
|style="padding:10px"|'''2 Finger Vertical Drag'''
−
|style="padding:10px"|Push with 2 fingers and drag vertically. Must release before you can drag horizontally.
+
|style="padding:10px"|Push with 2 fingers and drag vertically. Must release before you can drag horizontally. If still moving when released, a swipe actin may occur.
|-
|-
−
|style="padding:10px"|<span style="color:#00FF00">Horizontal Pinch</span>
+
|style="padding:10px"|<span style="color:#008F00">Horizontal Pinch</span>
|style="padding:10px"|'''Horizontal Pinch'''
|style="padding:10px"|'''Horizontal Pinch'''
|style="padding:10px"|Push with two fingers then drag horzontally towards or away from each other. Must release before you can pinch vertically.
|style="padding:10px"|Push with two fingers then drag horzontally towards or away from each other. Must release before you can pinch vertically.
|-
|-
−
|style="padding:10px"|<span style="color:#00FF00">Vertical Pinch</span>
+
|style="padding:10px"|<span style="color:#008F00">Vertical Pinch</span>
|style="padding:10px"|'''Vertical Pinch'''
|style="padding:10px"|'''Vertical Pinch'''
|style="padding:10px"|Push with two fingers then drag vertically towards or away from each other. Must release before you can pinch horizontally.
|style="padding:10px"|Push with two fingers then drag vertically towards or away from each other. Must release before you can pinch horizontally.
−
|-
−
|style="padding:10px"|<span style="color:#00FF00">Swipe Horizontally</span>
−
|style="padding:10px"|'''Swipe Horizontally'''
−
|style="padding:10px"|Push, drag horizontally and release whilst still moving.
−
|-
−
|style="padding:10px"|<span style="color:#00FF00">Swipe Vertically</span>
−
|style="padding:10px"|'''Swipe Vertically'''
−
|style="padding:10px"|Push, drag vertically and release whilst still moving.
|}
|}
−
You can change the timings from the [[Web_Configuration_User_Guide#User_Interface|webconf's UI options tab]].
+
{{NoteBox|You can '''change the timings''' of the ''short/bold/long press'' actions from the [[Web_Configuration_User_Guide#User_Interface|webconf's UI options tab]].
−
Not all controls have actions assigned to all three push types. You can modify the assigned actions from the webconf tool, accessing the advanced options in the ''wiring layout'' section.
+
Not all controls have actions assigned to all three push types. You can modify the assigned actions from the webconf tool, accessing the advanced options in the ''wiring layout'' section.}}
<div class="show_only_v5 show_only_v4">
<div class="show_only_v5 show_only_v4">
Line 275:
Line 302:
<div class="show_only_v5">
<div class="show_only_v5">
[[File:v5_render_knobs_numbered.jpg|140px|right]]
[[File:v5_render_knobs_numbered.jpg|140px|right]]
−
The V5 knobs behave quite differently to V1-V4 knobs. Because of the 20 silicone buttons, there is no need to use the knobs' switches to navigate the UI which now is best achieved with the push buttons, so when appropriate, knobs' switches have been mapped to drive the MIDI learning functionality, which is quite intuitive. The knobs are numbered from top to bottom, so the top one is ''knob#1'' and the bottom one is ''knob#4''. We will refer knobs in this way throughout this guide.
+
The V5 knobs behave quite differently from the V1-V4 knobs. Because of the 20 silicone buttons, there is no need to use the knobs' switches to navigate the UI which now is best achieved with the push buttons, so when appropriate, knobs' switches have been mapped to drive the MIDI learning functionality, which is quite intuitive. The knobs are numbered from top to bottom, so the top one is ''knob#1'' and the bottom one is ''knob#4''. We will refer knobs in this way throughout this guide.
<br>
<br>
'''General rule'''
'''General rule'''
−
Although knob's behavior is contextual, there is a kind of pattern that can serve as a ''general rule'' and applies to many views:
+
Although a knob's behavior is contextual, there is a kind of pattern that can serve as a ''general rule'' and applies to many views:
<br>
<br>
* '''Knob#4''' is the '''select knob'''.
* '''Knob#4''' is the '''select knob'''.
** '''rotate''' to browse lists and move the cursor horizontally in grids.
** '''rotate''' to browse lists and move the cursor horizontally in grids.
** '''short-push''' to select items, like the SEL button.
** '''short-push''' to select items, like the SEL button.
+
** '''bold-push''' to open contextual options, like the OPT button.
* '''Knob#3'''
* '''Knob#3'''
** '''rotate''' to move the cursor vertically in grids.
** '''rotate''' to move the cursor vertically in grids.
<br>
<br>
−
{{NoteBox| MAIN Volume is always available with one click. Push '''MIX button''' and rotate '''Knob#3''' to change the MAIN volume.}}
+
{{NoteBox| The MAIN Volume is always available with one click. Push '''MIX button''' and rotate '''Knob#3''' to change the MAIN volume.}}
</div>
</div>
<div class="show_only_v4">
<div class="show_only_v4">
−
The V4 knobs (rotaries & switches) are the primary mechanism to navigate the UI. It's functionality is contextual, specially rotate, short and bold-push actions. Long push actions are always global. The knobs' names used in this guide are the names printed in the official V4 aluminum case, but you could find some section using the numbered notation, from top to bottom and left to right:
+
The V4 knobs (rotaries & switches) are the primary mechanism to navigate the UI. Its functionality is contextual, specially rotate, short and bold-push actions. Long push actions are always global. The knobs' names used in this guide are the names printed in the official V4 aluminum case, but you could find some section using the numbered notation, from top to bottom and left to right:
* '''layer''' => knob#1
* '''layer''' => knob#1
Line 302:
Line 330:
'''General rule'''
'''General rule'''
−
Although knob's behavior is contextual, there is a kind of pattern that can serve as a ''general rule'' and applies to many views:
+
Although a knob's behavior is contextual, there is a kind of pattern that can serve as a ''general rule'' and applies to many views:
<br>
<br>
* '''SELECT Knob'''
* '''SELECT Knob'''
Line 309:
Line 337:
* '''BACK Knob'''
* '''BACK Knob'''
** ''rotate'' to move the cursor vertically in grids.
** ''rotate'' to move the cursor vertically in grids.
−
** ''short-push'' to back to previous view.
+
** ''short-push'' to go back to previous view.
This general rule is extended in the next section.
This general rule is extended in the next section.
−
{{NoteBox| MAIN Volume is always available with one click. Bold-push '''BACK Knob''' to open the mixer view, then rotate '''Learn/Shot Knob''' to change the MAIN volume.}}
+
{{NoteBox| The MAIN Volume is always available with one click. Bold-push '''BACK Knob''' to open the mixer view, then rotate '''Learn/Shot Knob''' to change the MAIN volume.}}
</div>
</div>
</div>
</div>
<div class="show_only_v4 show_only_v5">
<div class="show_only_v4 show_only_v5">
+
===Using the push buttons===
===Using the push buttons===
<div class="show_only_v5">
<div class="show_only_v5">
Line 326:
Line 355:
[[File:v5_buttons_outlined.png|400px|right]]
[[File:v5_buttons_outlined.png|400px|right]]
−
''View'' buttons are outlined on green in the image and they allow direct access to the main views. Most of these buttons have 2 different views assigned, with a horizontal line separating two printed labels. The primary view is printed at top and the secondary view is printed at bottom. The "metronome" button is the exception, as it's the tap-tempo button. You push it once to access the '''tempo settings''' view, but you can tap-it several times to change the tempo BPM. Try it!
+
''View'' buttons are outlined in green in the image and they allow direct access to the main views. Most of these buttons have 2 different views assigned, with a horizontal line separating two printed labels. The primary view is printed at top and the secondary view is printed at bottom. The "metronome" button is the exception, as it's the tap-tempo button. You push it once to access the '''tempo settings''' view, but you can tap it several times to change the tempo BPM. Try it!
LED color depends on current view:
LED color depends on current view:
Line 339:
Line 368:
* the secondary view, when button's primary view is shown
* the secondary view, when button's primary view is shown
−
A '''bold-push''' on the button will '''always''' access the secondary view, not matter what the current view is.
+
A '''bold-push''' on the button will '''always''' access the secondary view, no matter what the current view is.
−
For instance, if you are in the mixer view and short-push OPT/ADMIN, the ''Main'' menu will be opened. If you short-push it again, the ''Admin'' menu will be opened. Then, if you bold-push the MIX/LEVEL button, the ''Audio Levels'' view will be opened. You push "metronome" button and the ''Tempo settings'' view will be opened. If you tap-it several times, the tempo BPM will be changed, e.g. tap twice per second to set tempo to 120BPM.
+
For instance, if you are in the mixer view and short-push OPT/ADMIN, the ''Main'' menu will be opened. If you short-push it again, the ''Admin'' menu will be opened. Then, if you bold-push the MIX/LEVEL button, the ''Audio Levels'' view will be opened. You push "metronome" button and the ''Tempo settings'' view will be opened. If you tap it several times, the tempo BPM will be changed, e.g. tap twice per second to set tempo to 120BPM.
−
''View'' buttons are, from left to right and top to bottom:
+
The ''View'' buttons are, from left to right and top to bottom:
[[File:v5_buttons_outlined-3-detail2.png|400px|right]]
[[File:v5_buttons_outlined-3-detail2.png|400px|right]]
* '''OPT/ADMIN'''
* '''OPT/ADMIN'''
−
** '''Options / Menu''': Contextual. Push several times until reach the '''[[#Main_menu|main menu]]'''.
+
** '''Options / Menu''': Contextual. Push several times until reaching the '''[[#Main_menu|main menu]]'''.
** '''[[#Admin|Admin menu]]'''
** '''[[#Admin|Admin menu]]'''
* '''MIX/LEVEL'''
* '''MIX/LEVEL'''
Line 377:
Line 406:
The ALT button toggles the alternate function mode. When you push it, the ALT button and the buttons having an alternate function will change their default color from blue to purple or orange.
The ALT button toggles the alternate function mode. When you push it, the ALT button and the buttons having an alternate function will change their default color from blue to purple or orange.
−
ALT mode is contextual, depending of the current view. By default, only transport and custom buttons (F1-F4) have alternate functions, defined like this:
+
ALT mode is contextual, depending on the current view. By default, only transport and custom buttons (F1-F4) have alternate functions, defined like this:
* '''Transport buttons''' toggle between Audio Player/Recorder <span style="color:#0000F0">(normal)</span> and MIDI Player/Recorder <span style="color:#D000D0">(alternate)</span>.
* '''Transport buttons''' toggle between Audio Player/Recorder <span style="color:#0000F0">(normal)</span> and MIDI Player/Recorder <span style="color:#D000D0">(alternate)</span>.
* '''Customizable F1-F4 buttons''' toggle between Program Change 1-4 <span style="color:#0000F0">(normal)</span> and Program Change 5-8 <span style="color:#D000D0">(alternate)</span>. You could use it, for instance, to learn and recall up to 8 subsnapshots (ZS3s).
* '''Customizable F1-F4 buttons''' toggle between Program Change 1-4 <span style="color:#0000F0">(normal)</span> and Program Change 5-8 <span style="color:#D000D0">(alternate)</span>. You could use it, for instance, to learn and recall up to 8 subsnapshots (ZS3s).
−
Some views have a '''custom ALT mode''' with specific functionality that overrides partial or totally the defaults. See the details in the sections below.
+
Some views have a '''custom ALT mode''' with specific functionality that partially or totally overrides the defaults. See the details in the sections below.
<br>
<br>
'''<span style="color:#F00000;">Transport buttons</span>'''
'''<span style="color:#F00000;">Transport buttons</span>'''
[[File:v5_buttons_outlined-3-detail.png|400px|right]]
[[File:v5_buttons_outlined-3-detail.png|400px|right]]
−
By default, transport buttons control the '''global audio recorder/player''' and default color is blue. When the '''ALT''' button is pushed (ALT mode enabled), transport buttons control the '''MIDI recorder/player''' and color is purple.
+
By default, transport buttons control the '''global audio recorder/player''' and the default color is blue. When the '''ALT''' button is pushed (ALT mode enabled), transport buttons control the '''MIDI recorder/player''' and the color is purple.
* '''short-push REC''' (solid circle) to start/stop a recording. When a recording is in progress, the record button lights red and you should also see the rec icon in the display status area, at top-right.
* '''short-push REC''' (solid circle) to start/stop a recording. When a recording is in progress, the record button lights red and you should also see the rec icon in the display status area, at top-right.
−
* '''short-push PLAY''' (solid triangle) to play/pause the currently selected track. The last recorded track is selected by default. When a track is being played, the play button lights green. After pausing, pushing again will resume the playing in the point it was paused.
+
* '''short-push PLAY''' (solid triangle) to play/pause the currently selected track. The last recorded track is selected by default. When a track is being played, the play button lights green. After pausing, pushing again will resume playing at the point it was paused.
* '''bold-push PLAY''' to open the track list. After selecting a track, the audio player control view will be shown.
* '''bold-push PLAY''' to open the track list. After selecting a track, the audio player control view will be shown.
Line 397:
Line 426:
* '''short-push STOP''' (solid square) to stop playing a track and rewind. Pushing play again will start playing from the beginning.
* '''short-push STOP''' (solid square) to stop playing a track and rewind. Pushing play again will start playing from the beginning.
−
* '''bold-push STOP''' to stop all sounds, including any audio/midi track and sequences.
+
* '''bold-push STOP''' to stop all sounds, including any audio/MIDI track and sequences.
In some views/modes, transport buttons have specific (contextual) behaviour. When this happens, they will light orange to help you to remember their normal behavior is altered. See the sections below to have the specific details.
In some views/modes, transport buttons have specific (contextual) behaviour. When this happens, they will light orange to help you to remember their normal behavior is altered. See the sections below to have the specific details.
Line 447:
Line 476:
[[File:ui_action_global_v4.jpg|800px|right]]
[[File:ui_action_global_v4.jpg|800px|right]]
−
The zynthian's classic workflow (V1-V4) is based in the 4 knobs' switches. While short-push actions are generally contextual, bold and long-push actions are generally global.
+
The zynthian's classic workflow (V1-V4) is based on the 4 knobs' switches. While short-push actions are generally contextual, bold and long-push actions are generally global.
Along the sections below, when omitted, these are the default push actions:
Along the sections below, when omitted, these are the default push actions:
Line 470:
Line 499:
'''The V4's extra buttons'''
'''The V4's extra buttons'''
−
The V4's extra silicone push buttons (S1-S4) can be configured depending of the user preference. This can be done from the webconf tool, accessing the advanced options in the wiring layout section. Some predefined customization profiles are available from there:
+
The V4's extra silicone push buttons (S1-S4) can be configured depending on the user preference. This can be done from the webconf tool, accessing the advanced options in the wiring layout section. Some predefined customization profiles are available from there:
* '''V4 Stage:''' The 4 silicone push buttons are assigned to MIDI program change 1-4. It's specially thought to use with ZS3.
* '''V4 Stage:''' The 4 silicone push buttons are assigned to MIDI program change 1-4. It's specially thought to use with ZS3.
Line 503:
Line 532:
==The top-bar==
==The top-bar==
+
+
At the top of the display there is usually a bar that contains information. This may not be visible for some views, such as confirmation or information pop-ups.
===The title-bar===
===The title-bar===
−
[[File:Screenshot 2024-06-22 11.41.54.png|400px|right|Title Bar]]
+
<div class="show_only_v5 show_only_v4">
−
+
[[File:title_bar_mixer.png|400px|right|Title Bar]]
−
The title bar acts as a kind of breadcrumb. It normally shows the view's title or current chain information: MIDI channel, engine, bank & preset.
+
</div>
+
<div class="show_only_touch">
+
[[File:title_bar_mixer_touch.png|400px|right|Title bar with touch back button]]
+
</div>
+
The title bar acts as a kind of breadcrumb. It normally shows the view's title or info about the current snapshot/zs3 or chain (MIDI channel, engine, bank & preset).
<div class="show_only_touch">
<div class="show_only_touch">
−
[[File:Topbar back.png|right|Topbar back button]]
+
It may also show a BACK button on the left which. When tapped will return to the previous view. Tapping the title's bar itself will open the options menu
−
−
It may also show a BACK button on the left which, when tapped will return to the previous view.
</div>
</div>
Line 610:
Line 643:
| Topbar back button || [[File:Ui push bold icon.png|35px|Bold press]] || Show mixer view
| Topbar back button || [[File:Ui push bold icon.png|35px|Bold press]] || Show mixer view
|-
|-
−
| Status Area || [[File:Ui push short icon.png|35px|Short press]] || Tempo view including transport control
+
| Status Area || [[File:Ui push short icon.png|35px|Short press]] || Tempo view + Transport control
|-
|-
| Status Area || [[File:Ui push bold icon.png|35px|Bold press]] || ZS3 menu
| Status Area || [[File:Ui push bold icon.png|35px|Bold press]] || ZS3 menu
Line 625:
Line 658:
[[File:mixer_legend.jpg|800px|right]]
[[File:mixer_legend.jpg|800px|right]]
−
The mixer view is the most important view in zynthian. It's composed of vertical strips associated with chains. Initially it will be empty, showing the main strip alone. For each chain you create, a new strip is added to the mixer. (There can be more mixer strips than can be displayed. They will scroll left / right if you select a strip that is off screen.) Each strip is an interactive widget that can be manipulated in several ways and it shows status info about the associated chain. From top to bottom:
+
The mixer view is a significant view in zynthian. It can be considered the ''Home'' view. It's composed of vertical strips associated with chains. Initially it will be empty, showing the main strip alone. For each chain you create, a new strip is added to the mixer. (There can be more mixer strips than can be displayed. They will scroll left / right if you select a strip that is off screen.) Each strip is an interactive widget that can be manipulated in several ways and it shows status info about the associated chain. From top to bottom:
* '''solo:''' Solo flag. Push to toggle. This is a non-exclusive solo mode. When a chain has ''solo'' enabled, all other chains without solo enabled will be muted, allowing auditioning of one or more chains. The **main** solo will disable all chain solos.
* '''solo:''' Solo flag. Push to toggle. This is a non-exclusive solo mode. When a chain has ''solo'' enabled, all other chains without solo enabled will be muted, allowing auditioning of one or more chains. The **main** solo will disable all chain solos.
Line 637:
Line 670:
* '''description:''' A vertically oriented text describing the chain. By default, for a synth chain it will show synth processor and preset name. If you [[#Chain_options|give a name to the chain]], this will be included in the description too.
* '''description:''' A vertically oriented text describing the chain. By default, for a synth chain it will show synth processor and preset name. If you [[#Chain_options|give a name to the chain]], this will be included in the description too.
−
* '''balance/pan:''' Mixing right/left balance (or pan of a mono signal) for the associated chain. It's controlled with the physical UI. See below.
+
* '''balance/pan:''' Mixing right/left balance (or pan of a mono signal) for the associated chain. Rotate knob#2 or drag left & right to modify the value.
* '''legend''': It shows an icon for the chain's type and a number for the assigned MIDI channel. Tap it to access the chain's control view.
* '''legend''': It shows an icon for the chain's type and a number for the assigned MIDI channel. Tap it to access the chain's control view.
Line 701:
Line 734:
| Chain Fader || Drag up / down || Adjust chain volume
| Chain Fader || Drag up / down || Adjust chain volume
|-
|-
−
| Chain Legend || Drag left / right || Scroll chains horizontally
+
| Chain Fader || Drag left / right || Adjust chain balance
|-
|-
| Chain Fader || Mouse wheel || Adjust chain volume
| Chain Fader || Mouse wheel || Adjust chain volume
+
|-
+
| Chain Legend || Drag left / right || Scroll chains horizontally
|-
|-
| Chain Legend || Mouse wheel || Scroll chains horizontally
| Chain Legend || Mouse wheel || Scroll chains horizontally
Line 803:
Line 838:
* '''Quality (stars):''' From 0 to 5, indicating how ''good'' is the processor. Of course, this is very subjective ;-)
* '''Quality (stars):''' From 0 to 5, indicating how ''good'' is the processor. Of course, this is very subjective ;-)
* '''Complexity (knobs):''' From 0 to 5, indicating how complex is the processor. It's usually related to the number of control parameters.
* '''Complexity (knobs):''' From 0 to 5, indicating how complex is the processor. It's usually related to the number of control parameters.
−
* '''Description (text):''' A concise description of the processor's features.
+
* '''Description (text):''' A concise description of the processor's features. Push it to open the detailed info view.
====Enable/Disable processors====
====Enable/Disable processors====
−
To allow greater customization and avoid long lists of processors user never use, processors can be enable/disable. When a processor is disabled, it's not shown in the list, but still can be used when loading a snapshot that includes it.
+
To allow greater customization and avoid long lists of processors that are never used, processors can be enabled/disabled. When a processor is disabled, it's not shown in the list, but still can be used when loading a snapshot that includes it.
<br clear=all>
<br clear=all>
Line 817:
Line 852:
* '''knob#3'''
* '''knob#3'''
** '''''rotate''''' to move across categories.
** '''''rotate''''' to move across categories.
+
** '''''short-push''''' to open the full info view.
* '''knob#4'''
* '''knob#4'''
** '''''rotate''''' to move across processors.
** '''''rotate''''' to move across processors.
Line 851:
Line 887:
* '''learn/shot'''
* '''learn/shot'''
** '''''rotate''''' to move across categories.
** '''''rotate''''' to move across categories.
+
** '''''short-push''''' to open the full info view.
* '''select'''
* '''select'''
** '''''rotate''''' to move across processors.
** '''''rotate''''' to move across processors.
−
** '''''short-push''''' or ''' to select the highlighted processor.
+
** '''''short-push''''' or to select the highlighted processor.
−
** '''''bold-push''''' or ''' to toggle '''view all''' mode.
+
** '''''bold-push''''' or to toggle '''view all''' mode.
<br clear=all>
<br clear=all>
Line 881:
Line 918:
| Menu entry || [[File:Ui push short icon.png|35px|Short press]] || Select menu action
| Menu entry || [[File:Ui push short icon.png|35px|Short press]] || Select menu action
|-
|-
−
| Menu entry || [[File:Ui push bold icon.png|35px|Bold press]] || Show context menu for menu entry (if appropriate)
+
| Menu entry || [[File:Ui push bold icon.png|35px|Bold press]] || Enter "view-all" mode
|-
|-
| List || Swipe left or right || Change the category of engines shown
| List || Swipe left or right || Change the category of engines shown
|-
|-
| Category || Swipe up or down || Change the category of engines shown
| Category || Swipe up or down || Change the category of engines shown
+
|-
+
| Info area || [[File:Ui push short icon.png|35px|Short press]] || Open the full info view
|}
|}
</div>
</div>
Line 903:
Line 942:
</div>
</div>
−
Processor parameters can be easily bond to your MIDI controller's knobs & faders (MIDI CC) by using the [[#MIDI learning|'''MIDI learning''' mechanism]].
+
Processor parameters can be easily bond to your MIDI controller's knobs & faders (MIDI CC) by using the '''MIDI learning''' mechanism. There are two MIDI learning modes:
+
+
'''Chain MIDI learning:'''<br>
+
The controller widget displays a green <span style="color:#00D000;">??</span> legend.
+
When a parameter is chain-learned, the binding only works when the chain is active. This allow to use the same knobs to control different parameters in different chains.
+
+
'''Global MIDI learning:'''<br>
+
The controller widget displays a yellow <span style="color:#F0F000;">??#??</span> legend.
+
When a parameter is globally-learned, the binding works all the time, no matter the active chain.
+
<br clear=all>
<br clear=all>
Line 914:
Line 962:
* '''knob#1 - knob#4'''
* '''knob#1 - knob#4'''
** '''''rotate''''' any knob to '''change the value''' of the assigned parameter.
** '''''rotate''''' any knob to '''change the value''' of the assigned parameter.
−
** '''''short-push''''' any knob to '''start MIDI-learning''' for the associated parameter.
+
** '''''short-push''''' any knob to '''start MIDI-learning''' for the associated parameter. First push for '''chain MIDI-learn''', second push for '''global MIDI-learn'''.
** '''''bold-push''''' any knob to open the '''options menu''' for the associated parameter.
** '''''bold-push''''' any knob to open the '''options menu''' for the associated parameter.
Line 937:
Line 985:
* '''knob#1 - knob#4'''
* '''knob#1 - knob#4'''
−
** '''''short-push''''' for global learning. A third push to cancel.
+
** from the control view, '''''short-push''''' any knob for entering '''chain MIDI-learning''' mode. The controller widget will display a green <span style="color:#00D000;">??</span> legend.
+
** a second '''''short-push''''' for '''global MIDI-learning'''. The controller widget will display a yellow <span style="color:#F0F000;">??#??</span> legend.
+
** a third push to cancel MIDI-learning.
−
* '''move a knob/fader in the MIDI device''' to complete the learn.
+
* '''move the desired knob/fader in the MIDI controller''' to complete the MIDI-learn procedure.
* '''BACK''' to cancel MIDI learning.
* '''BACK''' to cancel MIDI learning.
Line 978:
Line 1,028:
** '''''short-push''''' to cancel ''midi learning''.
** '''''short-push''''' to cancel ''midi learning''.
* '''learn/shot'''
* '''learn/shot'''
−
** '''''short-push''''' for global learning. A third push to cancel.
+
** from the control view, '''''short-push''''' for entering '''chain MIDI-learning''' mode. Controller widgets will display a green <span style="color:#00D000;">??</span> legend.
+
** a second '''''short-push''''' for '''global MIDI-learning'''. Controller widgets will display a yellow <span style="color:#F0F000;">??#??</span> legend.
+
** a third '''''short-push''''' to cancel MIDI-learning.
* '''rotate any knob''' to select the parameter to learn.
* '''rotate any knob''' to select the parameter to learn.
−
* '''move a knob/fader in the MIDI device''' to complete the learn.
+
* '''move the desired knob/fader in the MIDI controller''' to complete the learn.
</div>
</div>
Line 989:
Line 1,041:
! Touch zone!! Action !! Behaviour
! Touch zone!! Action !! Behaviour
|-
|-
−
| Topbar back button || [[File:Ui push short icon.png|35px|Short press]] || Show presets
+
| Topbar title || [[File:Ui push short icon.png|35px|Short press]] || Show chain menu
|-
|-
−
| Controller widget || [[File:Ui push short icon.png|35px|Short press]] || Toggle MIDI mapping
+
| Topbar back button || [[File:Ui push short icon.png|35px|Short press]] || Return to previous view
+
|-
+
| Controller widget || [[File:Ui push short icon.png|35px|Short press]] || Toggle MIDI learning
|-
|-
| Controller widget || [[File:Ui push bold icon.png|35px|Bold press]] || Show control options menu
| Controller widget || [[File:Ui push bold icon.png|35px|Bold press]] || Show control options menu
|-
|-
−
| Previous chain button || [[File:Ui push short icon.png|35px|Short press]] || Select previous chain
+
| Previous button || [[File:Ui push short icon.png|35px|Short press]] || Select previous chain
|-
|-
−
| Show pages button || [[File:Ui push short icon.png|35px|Short press]] || Show list of pages of controls
+
| Preset button || [[File:Ui push short icon.png|35px|Short press]] || Show presets menu
|-
|-
−
| Hide sidebar button || [[File:Ui push short icon.png|35px|Short press]] || Hides the controls to give more space for GUI
+
| Pages button || [[File:Ui push short icon.png|35px|Short press]] || Show list of pages of controls (useful if a GUI widget is hiding these)
|-
|-
−
| Next chain button || [[File:Ui push short icon.png|35px|Short press]] || Select next chain
+
| Next button || [[File:Ui push short icon.png|35px|Short press]] || Select next chain
|}
|}
</div>
</div>
Line 1,008:
Line 1,062:
===Presets===
===Presets===
−
When a processor have presets, the '''presets list''' view allows browsing across them and selecting the desired one.
+
When a processor has presets, the '''presets list''' view allows browsing across them and selecting the desired one.
In addition, the '''preset options''' can be accessed by bold-pushing any preset. The available options depends of the processor and whether the preset is a user or system preset.
In addition, the '''preset options''' can be accessed by bold-pushing any preset. The available options depends of the processor and whether the preset is a user or system preset.
−
* '''[ ] Favorite:''' Available for all presets. Checked / unchecked.
+
* '''[ ] Favorite:''' Available for all presets. Checked / unchecked - adds to the list of favourites presets.
−
* '''Rename:''' Available for user presets only
+
* '''Rename:''' Available for user presets only. Allows user to rename a preset.
−
* '''Delete:''' Available for user presets only
+
* '''Delete:''' Available for user presets only. Allows a user to delete a preset (with confirmation).
'''Preset pre-load'''<br>
'''Preset pre-load'''<br>
−
If ''preset preload'' is enabled from admin options, the highlighted preset is preloaded when a MIDI note is received, allowing to pre-listen presets before selecting them. Please, note that most of times you need to play 2 notes to pre-listen each preset.
+
If ''preset preload'' is enabled from admin options, the highlighted preset is preloaded when a MIDI note is received, allowing to pre-listen presets before selecting them. Please, note that you often need to play 2 notes to pre-listen each preset due to a delay in loading the new preset.
<br clear=all>
<br clear=all>
Line 1,208:
Line 1,262:
===MIDI input/output===
===MIDI input/output===
−
Chain's MIDI input/output view is accessed from the chain's option menu. It allows to select the devices from which it will receive MIDI input or to which it will send MIDI output.
+
[[File:zui_v5_global_midi_in.png|793px|right]]
+
+
The '''Global''' MIDI input/output view is accessed from the admin menu. It allows you to manage internal and external MIDI input/output sources. Any USB connected MIDI devices will show up here.
+
+
There are options to '''Enable/Disable:'''
+
* '''Aubionotes''' (audio to MIDI conversion) more info about this [[Zynthian_Features#Routing_.26_Recording_Audio_.26_Midi|feature]] and more at [https://aubio.org/ aubio website]
+
* '''bluetooth MIDI devices'''
+
* '''MIDI network services'''
+
−
In addition. you can also modify the device options:
+
'''Bold push''' on any device to access the '''device options''':
−
* '''capture mode:''' ACTIVE / MULTI
+
* '''toggle capture mode:''' [[Zynthian_UI_User's_Guide_-_Oram#MIDI_input|ACTIVE / MULTI]]
−
* '''load/unload drivers'''
+
* '''load/unload [[Supported plug & play MIDI controllers|controller drivers]]'''
* '''rename the device'''
* '''rename the device'''
−
Initially all input devices are in ACTIVE mode. When creating a new chain, all input devices are selected by default.
+
+
The '''Chain's''' MIDI input/output view is accessed from the chain's options menu. It allows you to '''select the devices''' from which it will receive MIDI input or to which it will send MIDI output. You can also access device options by bold-pushing any device.
+
+
When creating a new chain, all input devices are selected by default and capture mode is [[Zynthian_UI_User's_Guide_-_Oram#MIDI_input|ACTIVE]].
+
+
{| class="wikitable"
+
!colspan="3"| Midi Input/Output Status Icons
+
|-
+
|
+
[[File:ACTIVE MODE.png|frameless|center]]
+
|| '''ACTIVE''' mode || Midi inputs will go to the currently active/selected chain regardless of midi channel
+
|-
+
|
+
[[File:MULTI MODE.png|frameless|center]]
+
|| '''MULTI''' mode || Midi inputs will be accepted to the received channel only
+
|-
+
|
+
[[File:DRIVER LOADED.png|frameless|center]]
+
|| Driver Loaded || Indicates the connected USB device driver is loaded
+
|}
<br clear=all>
<br clear=all>
Line 1,276:
Line 1,357:
<div class="show_only_touch">
<div class="show_only_touch">
−
'''TODO!'''
+
[[File:zui_v5_midi_device_options.png|793px|right|alt=]]
+
+
* '''short-push back button''' to close the view and back to chain options.
+
* '''drag list up/down''' to move across the list
+
* '''short-push on list item''' to check/uncheck a device or enable/disable network/bluetooth service
+
* '''bold-push on a MIDI device''' to open the '''device options'''.
+
<br clear=all>
<br clear=all>
</div>
</div>
Line 1,308:
Line 1,395:
==Basic workflow==
==Basic workflow==
===Chain creation===
===Chain creation===
−
TODO!
+
There are short video tutorials demonstrating the creation of chains in the [[#Learning_Pills|learning pills]].
−
===Basic chain manipulation===
+
−
TODO!
+
Adding chains is a simple wizard driven workflow. Basic steps are:
−
===Layering chains===
+
−
TODO!
+
* Access Main Menu.
−
===Etc.===
+
* Select "Add ... Chain", e.g. Add Instrument Chain.
+
* Select the processor to add. (For some chains you may select "None" which adds an empty chain.)
+
* For MIDI driven chains, select the MIDI channel for the chain to listen for.
+
* For processors with banks of presets, select the preset bank.
+
* For processors with presets, select the preset.
+
+
Some processors may have extra configuration steps which are presented as simple menu options during the wizard. You may cancel the operation by using the back button.
+
+
===Basic chain manipulation===
+
There are short video tutorials demonstrating the manipulation of chains in the [[#Learning_Pills|learning pills]].
+
+
Each chain type may have different configuration options. To configure a chain, access the Chain Options menu then select the required configuration option. These may include:
+
+
* Note Range & Transpose - allows the MIDI input to the chain to be filtered (range) and modified (transpose).
+
* MIDI In - allows the MIDI input devices for a chain to be modified.
+
* MIDI Channel - allows the MIDI channel that a chain listens to to be changed.
+
* MIDI CC - allows the MIDI CC that a chain reacts to to be modified.
+
* MIDI Learn - provides access to MIDI learn / binding manipulation.
+
* Audio Out - allows the chain's audio output routing to be modified. This is also where you can arm a chain for multitrack audio recording.
+
* Audio In - allows the chain's audio input routing to be modified.
+
* Audio Options - allows some additional audio mixer controls (not presented in the mixer view) to be manipulated.
+
* Processors - allows manipulation of processors within the chain, e.g. moving a processor along the chain.
+
* Add Processor - allows a processor to be added to the end of a chain. (Audio chains allow the processor to be added before or after the fader.)
+
* Remove - allows removal of all effects or the whole chain. A confirmation is required.
+
* Rename chain - allows the chain to be given a user defined name which appears on the mixer view's fader.
+
* Move chain - allows a chain to be moved horizontally in the mixer view. This is a cosmetic change that has no impact on chain behaviour.
+
+
===Layering chains (''"clone"'')===
+
+
A very common use-case is layering sounds to play unison. (This feature was called ''"clone"'' in older versions, but this has changed in ''Oram'' and the ''clone'' option no longer exists. Now we have better mechanisms because several chains can use the same MIDI channel).
+
+
* '''The easy way'''
+
** If you are using '''''ACTIVE mode''''' for your input device, you must enable '''''Active MIDI channel''''' in the admin menu. With this enabled, all chains with the same MIDI channel will receive the MIDI stream from the input when any of them is selected (active).
+
** Setup your ''"layered"'' chains with the same MIDI channel.
+
+
* '''The cool way'''
+
** If you are using '''''ACTIVE mode''''' for your input device, you must disable '''''Active MIDI channel''''' in the admin menu. With this disabled, only the selected (active) chain will receive MIDI from the input, no matter the MIDI channel.
+
** Setup your ''”layered”'' chains in the same MIDI channel.
+
** Create a '''''MIDI+Audio chain''''' with the same MIDI channel. Rename this chain to '''''GROUP''''' (or a name that best suits your workflow). You don’t need to add any processor, so you can select ''None'' from the list.
+
** From the '''''GROUP''''' chain options, access “MIDI out” and select your “''layered''” chains. This will route MIDI from the '''''GROUP''''' chain to the layered chains.
+
** Finally, access the ''Audio Out'' submenu on each ''"layered"'' chain: uncheck the ''Main mixbus'' and check the '''''GROUP''''' chain. With this you are routing audio from your cloned chains to the '''''GROUP''''' chain, so you can control the mixed audio with the '''''GROUP''''' chain’s fader.
+
+
Using the cool way you can select each chain individually and audition its sound or select the '''''GROUP''''' chain to play them all simultaneously / layered. You keep full control of each chain (fader, pan, mono, etc.), being able to insert effects and see each peak meter, and you also have overall control of the '''''GROUP''''' with the same control and monitoring (fader, pan, mono, etc. DPM, effects).
+
+
Nice, isn’t it? I really love the cool way, but there is a little problem with it: latency. When you route-back audio from chain’s output to the '''''GROUP''''' chain, you add latency. This is a general rule in digital audio processing: If you feed-back the signal, you delay the processed result by 1-period. Note that the MIDI stream is not delayed because there is no real feed-back and it’s processed linearly.
+
+
You don’t have to do both audio and MIDI grouping, as each one works individually. By not doing the audio grouping (e.g. using a '''''MIDI''''' chain rather than a '''''MIDI+Audio''''' chain you will avoid adding the extra period of latency and you still keep some of the advantages of the ''cool way''.
+
+
===Etc.===
==Advanced workflow==
==Advanced workflow==
Line 1,321:
Line 1,456:
==The Sequencer==
==The Sequencer==
+
+
Zynthian includes an advanced MIDI sequencer capable of pattern based and linear sequences. There is a [[ZynSeq_User_Guide|full user guide]] that describes the use of the sequencer in detail. This section gives a high-level overview of accessing and using the sequencer.
===Zynpad (Scene)===
===Zynpad (Scene)===
+
Zynpad is a sequencer launcher, presented as a grid of trigger pads. Each pad can start and stop a sequence which may also be triggered by MIDI note-on commands.
+
<div class="show_only_v5">
<div class="show_only_v5">
[[File:v5_mockup_zynpad_01.png|800px|right]]
[[File:v5_mockup_zynpad_01.png|800px|right]]
Line 1,340:
Line 1,479:
<br>
<br>
−
{{NoteBox|Before MIDI-learning pads, you have to select a trigger device. Push OPT to access the zynpad menu and choose your trigger device. Note that if the selected device is already supported (have a driver!), MIDI-learning is not needed at all and the device will be mapped automatically.}}
+
{{NoteBox|Before MIDI-learning pads, you have to select a trigger device. Push OPT to access the zynpad menu and choose your trigger device. Note that if the selected device is already supported (has a driver!), MIDI-learning is not needed at all and the device will be mapped automatically.}}
<br clear=all>
<br clear=all>
Line 1,398:
Line 1,537:
'''ALT mode'''
'''ALT mode'''
−
The pattern editor has a custom ALT mode that can be toggled with '''ALT''' button. When in ALT mode, the arrow buttons will change its color to orange, allowing to quickly access undo/redo functions:
+
The pattern editor has a custom ALT mode that can be toggled with '''ALT''' button. When in ALT mode, the arrow buttons will change their color to orange, allowing to quickly access undo/redo functions:
* '''LEFT''' undo the last record operation
* '''LEFT''' undo the last record operation
Line 1,411:
Line 1,550:
===Arranger===
===Arranger===
+
The sequencer arranger view provides access to its linear sequencing features, including adding multiple tracks to each sequence, multiple patterns to each track, time signature changes, etc.
===Tempo Settings===
===Tempo Settings===
+
[[File:Tempo page.jpg|600px|right]]
+
<br clear=all>
+
+
==Custom Control Views==
==Custom Control Views==
Line 1,418:
Line 1,562:
===Zynsampler===
===Zynsampler===
−
From the control view of any zynsampler processor, transport buttons are used to control the processor's recording/playing functions (instead of the global audio recorder/player).
+
Zynsampler is the built-in audio sampler in zynthian. It can record and playback a single audio recording at a time. Simple non-destructive editing can be performed. Playback can be looped between markers. The sample may be short or very long (hours). Speed or pitch or both (varispeed) may be adjusted. Playback can be triggered by MIDI. A MIDI note may adjust playback pitch (not speed) or trigger different slices of the waveform.
+
+
If the control view of a zynsampler processor (within a chain) is shown then the transport buttons (if available) control that zynsampler processor's record/play functions, otherwise the transport buttons control the global audio recorder/player.
+
+
The [[ZynSampler User Guide]] gives more detail.
===Sooperlooper===
===Sooperlooper===
Line 1,449:
Line 1,597:
===AidaX===
===AidaX===
+
+
==Software Version==
+
+
[[File:Update available icon.png|Software update available icon|right]]
+
+
By default, zynthian runs the stable release, oram-2409. Any stable point releases are advertised in the user interfaces with the green circle-arrow icon showing in the top right.
+
Updates may be applied by selecting ''Update Software'' in the admin menu or selecting the ''SOFTWARE->Update'' option in webconf, then pressing the ''Update Software'' button.
+
+
<br clear=all>
+
[[File:Software version - oram stable.png|Webconf software version with oram stable selected|600px|right]]
+
+
There are four options for selecting which version of zynthian to run. The selection is made in webconf's ''SOFTWARE->Version'' page:
+
+
===Stable (oram-2506)===
+
+
Selecting this version will configure zynthian to run the most stable version of the software. Updates are infrequent and extensively tested. This is the default version and is recommended for production use. Only ''point releases'' appear in this software channel. A point release is a stable version, e.g. oram-24090.1 is the firsts stable update after the release of oram-2409.
+
+
After selecting this option, select 'Software Update' to apply changes.
+
+
===Staging (oram)===
+
+
Selecting this version will configure zynthian to run the staging version which is used as a pre-release test version. The staging version ''should'' work with minimal issues but is not fully tested. It is recommended to use this if you want to act as a zynthian tester, testing new features and bug fixes ahead of the next point release.
+
+
After selecting this option, select 'Software Update' to apply changes.
+
+
===Testing (vangelis)===
+
+
Selecting this version will configure zynthian to run the testing version which is used as the main development version. The testing version is under continual development and will change frequently, sometimes breaking or with substantial workflow changes. It is recommended to use this only if you are a developer or wish to contribute to testing bleeding edge development. The Testing version is generally maintained in a working stage so it ''should'' work most of the time.
+
+
After selecting this option, select 'Software Update' to apply changes.
+
+
===Custom===
+
+
[[File:Software version - custom.png|Webconf software version with custom selected|600px|right]]
+
+
Selecting the ''Custom'' option will, after a few seconds, allow individual selection of each software repository. This provides granular control of the software configuration. Each list contains the stable version, stable point releases, testing version and all development branches. There are two main use cases for selecting custom:
+
+
* Freezing the software at a specific point release - selecting a point release for each of the repositories will freeze the software at that version and no updates will be advertised in the user interface.
+
* Testing bleeding edge development - a new feature may be developed in a specific development branch which may need to be selected to allow testing. It is highly recommended to avoid using this option unless you have a clear understanding of why it may be necessary, e.g. instructed to do so by a core developer.
+
+
+
After selecting this option, select 'Save' and then 'Software Update' to apply changes.
+
+
<br clear=all>
==Learning Pills==
==Learning Pills==
Line 1,487:
Line 1,679:
'''library->captures->log'''
'''library->captures->log'''
−
With this tools, you can also capture, subtitle and share your favorite workflows, helping others to learn and contributing to improve zynthian documentation.
+
With these tools, you can also capture, subtitle and share your favorite workflows, helping others to learn and contribute to improve zynthian documentation.
If you do so, please, share your workflows in the forum:
If you do so, please, share your workflows in the forum:
https://discourse.zynthian.org
https://discourse.zynthian.org