Difference between revisions of "Accessing Zynthian from your computer"

From ZynthianWiki
Jump to navigation Jump to search
 
(58 intermediate revisions by 7 users not shown)
Line 1: Line 1:
 +
Zynthian offers additional ways to access the system from your computer using either an ethernet or wifi connection. The ''Zynthian Web Configuration Tool'' is a web interface to view and configure settings e.g. midi devices, preset libraries etc. Graphical user interfaces for synth engines and the pedalboard style LV2 plugin patch ''MOD-UI'' are also accessible from your web browser.
 +
 
== Network Connection ==
 
== Network Connection ==
  
The easier way of connecting your Zynthian is to use the Ethernet RJ45 connector with a CAT-5 cable to connect your unit to your local network (DHCP) or directly to your computer (Ethernet to Ethernet, aka link-local). Your Zynthian box uses the link-local name "zynthian.local" and its filesystem can be accessed with '''sftp''' and '''scp''' (If you are using Windows, use '''Winscp''' - free software needed to communicate using this Internet protocol).
+
The easiest way to connect your Zynthian is to use the Ethernet RJ45 connector with a CAT-5 cable to connect your unit to your local network (DHCP) or directly to your computer (Ethernet to Ethernet, aka link-local). Your zynthian box uses link-local name, depending on your system:
 +
 
 +
''zynthian.local''
 +
 
 +
or
  
You can also login with '''ssh''' to access the Linux console. see [[Command_Line_User_Guide]] (use '''PuTTY''' software for Windows). The username and default password are:
+
''zynthian.lan''
  
  user=root
+
If the link-local address is not found, make sure that the link-local feature is enabled in your system. Sometimes it's disabled and link-local names are not recognized (windows specially). If you can't manage to get link-local names to work, you can use the zynthian's IP address. The zynthian's IP address can be found int the UI's "Admin->Network Info" menu, and it's also printed on the zynthian's error screen. See: [[Finding your IP address]]
password=raspberry
 
  
If the link-local address (zynthian.local) is not found, test that the link-local feature is enabled in your system. Sometimes it's disabled and link-local names are not recognized (windows). If you can't manage to get link-local names to work, you can use the Zynthian's IP address.  The zynthian's IP address can be found int the UI's "Admin->Network Info" menu, and it's also printed on the zynthian's error screen. See: [[Finding your IP address]]
+
=== Wifi Configuration ===
  
== Accessing the Web Configuration Tool ==
+
All wifi management is done from the zynthian-ui admin menu. You can configure your wifi networks from there.
  
You can access web configuration tool using the web browser from your computer:
+
=== Wifi Hotspot ===
  
# Connect your Zynthian to your local network using the ethernet connector (RJ45) or directly to your computer (Ethernet to Ethernet)
+
You can connect to your zynthian using the built-in Wifi Hotspot mode. This is less convenient than using Ethernet or an existing wifi network, and is mostly useful to configure connections to other wifi networks.
# Open the browser in your computer and type in the address bar:
+
 
 +
# Open the Admin screen on your zynthian.
 +
# Select the "Wifi Hotspot" option. This could take up to 30 seconds to complete.
 +
# Connect to the "zynthian" network with another device.
 +
# In the Admin screen on your zynthian, select "Network Info".
 +
# Connect to the displayed IP address with the browser on your other device.
  
zynthian.local  (or the IP address of your Zynthian)
+
Note that the wifi network created in hotspot mode allows anyone to connect. If using the wifi hotspot in a public place, ensure you've changed your password.
  
(If zynthian.local does not work, see [[Finding your IP address]] )
+
=== Accessing the terminal with SSH / Accessing the file system with SFTP ===
  
The web config tool will load and prompt for the admin password. It is "raspberry".
+
You can also login with '''ssh''' to access the Linux console. see [[Command_Line_User_Guide]] (use '''PuTTY''' for Windows). The username and default password is:
  
[[File:zynthian_webconf_login.png]]
+
'''user:''' root
 +
'''password:''' opensynth
  
Here's details on using the Web configuration tool: [[Configuration_Users_Guide]]
+
The zynthian's filesystem can be accessed with '''sftp''' and '''scp'''. If you are using Windows, you could use '''winscp''', a free software to communicate using this internet protocol.
  
== Wifi Configuration ==
+
{{NoteBox|For legacy SD-images before Oram Bookworm the password is ''raspberry''}}
  
Wifi credentials can be set via the web config tool: System - Wifi - Add Network. Wifi must be enabled in the Zynthian Gui: press the Back button until you are in the Admin menu. Then select 'Start WIFI'.
+
=== Accessing the Web Configuration Tool ===
  
== Accessing the MOD-UI web interface ==
+
You can access the web configuration tool using the web browser from your computer:
  
If you have a recent zynthian image with MOD integration (Gorgona or later), you can access the MOD-UI web interface using the web browser from your computer:
+
# Connect your Zynthian to your local network using the ethernet connector (RJ45) or directly to your computer (Ethernet to Ethernet)
 +
# Open the browser in your computer and type in the address bar:
  
# Connect your Zynthian to your local network using the ethernet connector (RJ45) or directly to your computer (ethernet to ethernet)
+
[http://zynthian.local http://zynthian.local]
# Open the browser in your camputer and type in the address bar:
 
  
zynthian.local:8888
+
or
  
The MOD-UI webpage should appear. Enjoy! ;-)
+
[http://zynthian.lan http://zynthian.lan]
  
If the link-local address (zynthian.local) is not found, test that the link-local feature is enabled in your system. Sometimes is disabled and local names are not recognized.
+
or
Instead, you can use the zynthian's IPaddress.  Find out what that is using the "Network Info" utility in the Zynthian's Admin menu.
 
  
== Opening Synth Engine Native GUIs in your Computer ==
+
the IP address of your Zynthian
  
Some engines have a native GUI that can be accessed from your desktop/laptop computer. There are several methods for achieving this:
+
{{NoteBox|If the local name doesn't work, see [[Finding your IP address]]. If you can't access the webconf with your browser. See [[Command_Line_User_Guide#Configuration_without_WebConf|command line configuration]].}}
  
===X11 Server===
+
<br>
  
For using this method, you need an X11 Server running on your desktop/laptop computer.
+
[[File:zynthian_webconf_login.png|right|500px]]
  
* If you use Linux, probably you already have it, so you don't need to do nothing special. Simply login into your zynthian using the ssh with the "-Y" option for forwarding the X session:
+
The web config tool will load and ask for the admin password. The default password is "opensynth".
  
  $ ssh -Y root@zynthian.local
+
Here are the details on using the Web configuration tool: [[Zynthian Web Configuration Tool User Guide]]
 +
<br clear=all>
  
* If you are a "Mac" user, you should install and enable the '''XQuartz''' package. After that, login into your zynthian with the same command.
+
=== Viewing Zynthian UI and Synth Engine Native GUIs on your Computer ===
  
* If you are a "Windows" user, then you should install the '''XMing''' package and login into your zynthian using Putty with the "X11 forwarding" option enabled.
+
[[File:Synth engines native gui.png|right|500px|Synth engines native GUI]]
 +
Some engines have a native GUI that can be accessed from your desktop/laptop computer. Zynthian provides a VNC viewer for a desktop that allows access to these native GUI. By default VNC is disabled and it is recommended to disable for performance (as it has a small overhead which is best saved for your audio). To enable VNC and access the desktop and engines' native GUI:
  
[[File:Putty-on-zynth-X11.png]]
+
* Connect via web browser to webconf
 +
* Navigate to INTERFACE->UI Options
 +
* Assert Enable VNC Server option and press Save
 +
* Reload webconf and navigate to INTERFACE->UI-Engines
 +
* Enter the Zynthian password (default: raspberry)
  
===VNC===
+
Note: There is also an option to access the Zynthian main UI by navigating to INTERFACE-VNC UI. This is a mirror of the main UI and may be driven from VNC and/or the physical interface.
  
You also could use VNC on any platform, although it's slighty complex:
+
The VNC views may be accessed directly via the URLs:
  
* Login into your zynthian box and enter:
+
* http://zynthian.local:6080/vnc.html (Main UI)
 +
* http://zynthian.local:6081/vnc.html (Engines desktop)
  
  # apt-get install vnc4server blackbox
+
or with a VNC client by connecting to ports:
  # pico ~/.vncrc
 
  
* enter this line to set the desktop size:
+
* 5900 (Main UI)
 +
* 5901 (Engines desktop)software can be launched, like ''qjackctl'' or a virtual MIDI keyboard for testing.
  
    $geometry = “2048x1600”;
+
Tip: You can automatically connnect and login to web-based VNC by appending parameters to the URL, e.g. http://zynthian.local:6080/vnc.html?autoconnect=true&password=raspberry
  
* start the vnc server:
+
====Supported Engines with Native GUI====
  
  # vnc4server
+
Many LV2 plugins (NoizeMaker, OBX-d, Surge, DragonFly Reverbs, ...) and some of the standalone engines (ZynAddSubFX, Aeolus, Pianoteq and PureData) have support for remotely displaying their native GUIs. If VNC is enabled, the engine's GUI will be launched automatically when added to a chain.
 +
{{NoteBox|Using an ethernet-to-ethernet (cable) connection will reduce remote GUI latency and improve usability.}}
  
* Connect to the vnc server using (e.g.) windows TightVNC viewer.
+
== Uploading your presets & soundfonts to Zynthian ==
  
===Supported Engines with Native GUI===
+
The easiest way of getting your presets & soundfonts inside your zynthian is by using the webconf's preset manager:
  
Currently ''ZynAddSubFX'', ''Aeolus'' and ''Pure Data'' have support for native GUI, that is launched automatically when layer is created. Other GUI software can be launched, like ''qjackctl'' or a virtual MIDI keyboard for testing. Support for Soundfont GUI using ''Polyphone'' will be added in the future ;-)
+
  http://zynthian.local/lib-presets
  
'''IMPORTANT:''' Using an ethernet-to-ethernet (cable) connection will reduce latency and improve usability.
+
From there you manage your preset & soundfont libraries: renaming, deleting, and uploading, including automatic conversion from some native formats:
  
== Copying your presets/soundfonts to Zynthian ==
+
* DX7 SysEX files
 +
* OBXd FXB files
 +
* synthv1 native format
 +
* padthv1 native format
  
You can copy your presets/soundfonts/pedalboards in the next folder:
+
If if this doesn't work for you, or you prefer to do it by hand, you can copy your presets/soundfonts/pedalboards into the next folder:
  
 
  /zynthian/zynthian-my-data
 
  /zynthian/zynthian-my-data
  
There are different subfolders:
+
This is the subfolder structure:
  
  + mod-pedalboards
+
  + '''presets'''
  + soundfonts
+
  + zynaddsubfx
   + gig
+
  + puredata
   + sfz
+
  + pianoteq
   + sf2
+
  + lv2
  + snapshots
+
  + mod-ui
  + zynbanks
+
  + '''soundfonts'''
 +
   + '''sf2'''
 +
    + bank-1.sf2
 +
    + ...
 +
    + bank-n.sf2
 +
   + '''sfz'''
 +
    + bank-1
 +
      + sfz-bundle1
 +
      + ...
 +
      + sfz-bundle2
 +
    + ...
 +
    + bank-n
 +
   + '''gig'''
 +
    + bank-1
 +
      + instrument-1.gig
 +
      + ...
 +
      + instrument-n.gig
 +
    + ...
 +
    + bank-n
 +
  + '''snapshots'''
 +
  + '''capture'''
  
In 'mod-pedalboards' you will find your stored MOD-UI pedalboards.
+
SFZ and GIG soundfonts are used with LinuxSampler. SF2 soundfonts are used with FluidSynth. SFZ and GIG soundfonts must be organized in 'bank' subfolders. SF2 files are considered "banks" by itself.
Use SFZ and GIG soundfonts with LinuxSampler. SF2 soundfonts must be used with FluidSynth. SFZ and GIG fonts must be stored in 'category' subfolders.
 
User's ZynAddSubFX presets/banks must be stored in the "zynbanks" directory.
 
  
 
If you have doubts of how to store your data, take a look in this directory:
 
If you have doubts of how to store your data, take a look in this directory:
Line 112: Line 151:
 
  /zynthian/zynthian-data
 
  /zynthian/zynthian-data
  
Here you will find the same folder structure, with some additions.
+
Here you will find the same folder structure, and could help you to understand.
 +
 
 +
Also it's interesting:
 +
 
 +
/zynthian/config
  
 
If you are really interested, you could, for instance, edit the setBfree configuration, and change the CC assignments, etc.
 
If you are really interested, you could, for instance, edit the setBfree configuration, and change the CC assignments, etc.
  
'''IMPORTANT:''' after adding or changing something in 'zynthian-data', you can’t update the zynthian-library from the Admin menu. (The "git-based" updating system should be improved...)
+
{{WarningBox|If you add or change something inside the ''zynthian-data'' folder, your changes will be lost on the next update, or, in a worst case scenario, you could break the update system.}}
  
== OSC ==
+
=== Accessing the MOD-UI web interface ===
 +
[[File:MODUI.png|right|500px|MOD-UI pedal board style interface]]
 +
You can access the MOD-UI web interface using the web browser from your computer:
 +
 
 +
* Create a Special Layer with a "MOD-UI" engine from the Zynthian's UI
 +
* Connect your Zynthian to your local network using the ethernet connector (RJ45) or directly to your computer (ethernet to ethernet)
 +
* Open the browser in your computer and navigate to:
 +
 
 +
[http://zynthian.local:8888 http://zynthian.local:8888]
 +
 
 +
or
 +
 
 +
[http://zynthian.lan:8888 http://zynthian.lan:8888]
 +
 
 +
The MOD-UI webpage should appear. When a MOD-UI chain does exist, this link is also accessible from the webconf's software menu (reload webconf after creating the chain).
 +
 
 +
If the link-local address (''zynthian.local'' or ''zynthian.lan'') is not found, test that the link-local feature is enabled in your system. Sometimes is disabled and local names are not recognized.
 +
 
 +
If nothing works, you could try using the zynthian's IP address instead. See [[Finding your IP address]].
 +
 
 +
== OSC (Open Sound Control)==
  
 
Open Sound Control (OSC) is a protocol for networking sound synthesizers, computers, and other multimedia devices for purposes such as musical performance or show control. Zynthian implements OSC in various ways.
 
Open Sound Control (OSC) is a protocol for networking sound synthesizers, computers, and other multimedia devices for purposes such as musical performance or show control. Zynthian implements OSC in various ways.
  
=== CUIA ===
+
For more information about the protocol see [https://en.wikipedia.org/wiki/Open_Sound_Control Open Sound Control] at Wikipedia and [https://youtu.be/rf8YNPjVvF4 this explanatory video].
The CUIA features described in the [[Zynthian_UI_Users_Guide#CUIA:_Callable_UI_Actions|user's guide]] can be accessed using OSC on port UDP 1370. The OSC base path for CUIA messages is
+
 
 +
==== CUIA: Callable User Interface Actions ====
 +
 
 +
The CUIA is an unidirectional remote API that can be used to send simple control messages to zynthian UI. The CUIA can be accessed in several ways, as described in the [[Zynthian_UI_Users_Guide#CUIA:_Callable_UI_Actions|user's guide]] and this section explains how to access the CUIA using OSC on port UDP 1370.  
 +
 
 +
The OSC base path for CUIA messages is:
 +
 
 
  /cuia
 
  /cuia
  
 
Example:
 
Example:
  /cuia/reboot
+
  /cuia/restart_ui
  
Note: CUIA paths are case insensitive, e.g.
+
Note that CUIA paths are case insensitive, e.g.
 
  /cuia/reboot
 
  /cuia/reboot
  
Line 135: Line 204:
 
  /CUIA/REBOOT
 
  /CUIA/REBOOT
  
This is why you should operate secure networks ... :-D
+
Some examples using the command line tool "send_osc":
 +
# send_osc 1370 /CUIA/SCREEN_MENU
 +
# send_osc 1370 /CUIA/LAYER_CONTROL 2
 +
 
 +
An example Python script to select chain 2:
 +
import liblo
 +
liblo.send(('zynthian.local', 1370), "/CUIA/CHAIN_CONTROL", ('i', 2))
 +
 
 +
And finally, the full list of CUIAs:
 +
 
 +
{| class="wikitable"
 +
|+
 +
|-
 +
! CUIA Name !! Parameters !! Description
 +
|-
 +
| ACTION_MIDI_UNLEARN || ||
 +
|-
 +
| ALL_NOTES_OFF || ||
 +
|-
 +
| ALL_SOUNDS_OFF || ||
 +
|-
 +
| ARROW_DOWN || ||
 +
|-
 +
| ARROW_LEFT || ||
 +
|-
 +
| ARROW_NEXT || ||
 +
|-
 +
| ARROW_PREV || ||
 +
|-
 +
| ARROW_RIGHT || ||
 +
|-
 +
| ARROW_UP || ||
 +
|-
 +
| AUDIO_FILE_LIST || ||
 +
|-
 +
| BACK || ||
 +
|-
 +
| BANK_PRESET || ||
 +
|-
 +
| CHAIN_CONTROL || %i || Set active layer to %i and show control screen. Defaults to current chain.
 +
|-
 +
| CHAIN_OPTIONS || %i || Show options for chain %i. Defaults to current chain.
 +
|-
 +
| CLEAN_ALL || ||
 +
|-
 +
| ENTER_MIDI_LEARN || ||
 +
|-
 +
| EXIT_MIDI_LEARN || ||
 +
|-
 +
| EXIT_UI || ||
 +
|-
 +
| HIDE_BUTTONBAR || ||
 +
|-
 +
| HIDE_SIDEBAR || ||
 +
|-
 +
| HIDE_TOPBAR || ||
 +
|-
 +
| LAST_STATE_ACTION || ||
 +
|-
 +
| LAYER_CONTROL || %i || Alias of CHAIN_CONTROL. DEPRECATED!!
 +
|-
 +
| LAYER_OPTIONS || %i || Alias of CHAIN_OPTIONS. DEPRECATED!!
 +
|-
 +
| MENU || ||
 +
|-
 +
| MIDI_LEARN_CONTROL || %i || Learn control knob %i
 +
|-
 +
| MIDI_LEARN_CONTROL_OPTIONS || % || Learn control options for knob %i
 +
|-
 +
| MIDI_UNLEARN_CHAIN || ||
 +
|-
 +
| MIDI_UNLEARN_CONTROL || %i || Unlearn control knob %i
 +
|-
 +
| MIDI_UNLEARN_MIXER || ||
 +
|-
 +
| MIDI_UNLEARN_NODE || ||
 +
|-
 +
| POWER_OFF || ||
 +
|-
 +
| PRESET || ||
 +
|-
 +
| PRESET_FAV || ||
 +
|-
 +
| PROGRAM_CHANGE || ||
 +
|-
 +
| REBOOT || ||
 +
|-
 +
| RELOAD_KEY_BINDING || ||
 +
|-
 +
| RELOAD_MIDI_CONFIG || ||
 +
|-
 +
| RELOAD_WIRING_LAYOUT || ||
 +
|-
 +
| RESTART_UI || ||
 +
|-
 +
| SCREEN_ADMIN || ||
 +
|-
 +
| SCREEN_ALSA_MIXER || ||
 +
|-
 +
| SCREEN_ARRANGER || ||
 +
|-
 +
| SCREEN_AUDIO_MIXER || ||
 +
|-
 +
| SCREEN_BANK || ||
 +
|-
 +
| SCREEN_CALIBRATE || ||
 +
|-
 +
| SCREEN_CONTROL || ||
 +
|-
 +
| SCREEN_MAIN_MENU || ||
 +
|-
 +
| SCREEN_MIDI_RECORDER || ||
 +
|-
 +
| SCREEN_PATTERN_EDITOR || ||
 +
|-
 +
| SCREEN_PRESET || ||
 +
|-
 +
| SCREEN_SNAPSHOT || ||
 +
|-
 +
| SCREEN_ZS3 || ||
 +
|-
 +
| SCREEN_ZYNPAD || ||
 +
|-
 +
| SELECT || %i || Highlight element %i in the list
 +
|-
 +
| SET_TEMPO || %t || Set tempo BPM
 +
|-
 +
| SHOW_BUTTONBAR || ||
 +
|-
 +
| SHOW_SCREEN || ||
 +
|-
 +
| SHOW_SIDEBAR || ||
 +
|-
 +
| SHOW_TOPBAR || ||
 +
|-
 +
| START_AUDIO_PLAY || ||
 +
|-
 +
| START_AUDIO_RECORD || ||
 +
|-
 +
| START_MIDI_PLAY || ||
 +
|-
 +
| START_MIDI_RECORD || ||
 +
|-
 +
| STOP || ||
 +
|-
 +
| STOP_AUDIO_PLAY || ||
 +
|-
 +
| STOP_AUDIO_RECORD || ||
 +
|-
 +
| STOP_MIDI_PLAY || ||
 +
|-
 +
| STOP_MIDI_RECORD || ||
 +
|-
 +
| TAP_TEMPO || ||
 +
|-
 +
| TEMPO || ||
 +
|-
 +
| TEMPO_DOWN || ||
 +
|-
 +
| TEMPO_UP || ||
 +
|-
 +
| TEST_MODE || ||
 +
|-
 +
| TOGGLE_ALT_MODE || ||
 +
|-
 +
| TOGGLE_AUDIO_PLAY || ||
 +
|-
 +
| TOGGLE_AUDIO_RECORD || ||
 +
|-
 +
| TOGGLE_MIDI_LEARN || ||
 +
|-
 +
| TOGGLE_MIDI_PLAY || ||
 +
|-
 +
| TOGGLE_MIDI_RECORD || ||
 +
|-
 +
| TOGGLE_PLAY || ||
 +
|-
 +
| TOGGLE_RECORD || ||
 +
|-
 +
| TOGGLE_SCREEN || ||
 +
|-
 +
| V5_ZYNPOT_SWITCH || %i, %t || Simulates V5 rotary-switch %i action of type %t (Push ,Short, Bold, Long)
 +
|-
 +
| Z2_ZYNPOT_TOUCH || %i, %s || Simulates Z2 capacitive touch-switch %i
 +
|-
 +
| ZYNAPTIK_CVIN_SET_NOTE0 || %n || Set base note for CV/Gate input
 +
|-
 +
| ZYNAPTIK_CVIN_SET_VOLTS_OCTAVE || %f || Set scale for CV/Gate input
 +
|-
 +
| ZYNAPTIK_CVOUT_SET_NOTE0 || %n || Set base note for CV/Gate output
 +
|-
 +
| ZYNAPTIK_CVOUT_SET_VOLTS_OCTAVE || %f || Set scale for CV/Gate output
 +
|-
 +
| ZYNPOT || %i, %s || Simulates rotary %i tick of size %s
 +
|-
 +
| ZYNSWITCH || %i, %t || Simulates button %i action of type %t (Push, Short, Bold, Long)
 +
|}
 +
 
 +
You can see the details in the [https://github.com/zynthian/zynthian-ui/blob/3ce8a5e0f22d4007a5460f61869678b5c78d6f69/zyngui/zynthian_gui.py#L1132 Zynthian UI's source code].
  
=== TouchOSC ===
+
==== TouchOSC ====
TouchOSC protocol is supported if the option is enabled on the Zynthian admin menu. This accepts OSC on port 12101 using UDP datagrams and includes raw MIDI data interpretation on OSC path
+
The TouchOSC protocol is supported if the option is enabled in the Zynthian admin menu. This accepts OSC on port 12101 using UDP datagrams and includes raw MIDI data interpretation on OSC path
 
  /midi
 
  /midi
 
This path accepts an OSC MIDI type message. An example Python script to send MIDI note on / off messages:
 
This path accepts an OSC MIDI type message. An example Python script to send MIDI note on / off messages:

Latest revision as of 09:11, 11 October 2024

Zynthian offers additional ways to access the system from your computer using either an ethernet or wifi connection. The Zynthian Web Configuration Tool is a web interface to view and configure settings e.g. midi devices, preset libraries etc. Graphical user interfaces for synth engines and the pedalboard style LV2 plugin patch MOD-UI are also accessible from your web browser.

1 Network Connection

The easiest way to connect your Zynthian is to use the Ethernet RJ45 connector with a CAT-5 cable to connect your unit to your local network (DHCP) or directly to your computer (Ethernet to Ethernet, aka link-local). Your zynthian box uses link-local name, depending on your system:

zynthian.local

or

zynthian.lan

If the link-local address is not found, make sure that the link-local feature is enabled in your system. Sometimes it's disabled and link-local names are not recognized (windows specially). If you can't manage to get link-local names to work, you can use the zynthian's IP address. The zynthian's IP address can be found int the UI's "Admin->Network Info" menu, and it's also printed on the zynthian's error screen. See: Finding your IP address

1.1 Wifi Configuration

All wifi management is done from the zynthian-ui admin menu. You can configure your wifi networks from there.

1.2 Wifi Hotspot

You can connect to your zynthian using the built-in Wifi Hotspot mode. This is less convenient than using Ethernet or an existing wifi network, and is mostly useful to configure connections to other wifi networks.

  1. Open the Admin screen on your zynthian.
  2. Select the "Wifi Hotspot" option. This could take up to 30 seconds to complete.
  3. Connect to the "zynthian" network with another device.
  4. In the Admin screen on your zynthian, select "Network Info".
  5. Connect to the displayed IP address with the browser on your other device.

Note that the wifi network created in hotspot mode allows anyone to connect. If using the wifi hotspot in a public place, ensure you've changed your password.

1.3 Accessing the terminal with SSH / Accessing the file system with SFTP

You can also login with ssh to access the Linux console. see Command_Line_User_Guide (use PuTTY for Windows). The username and default password is:

user: root
password: opensynth

The zynthian's filesystem can be accessed with sftp and scp. If you are using Windows, you could use winscp, a free software to communicate using this internet protocol.

Note:

For legacy SD-images before Oram Bookworm the password is raspberry

1.4 Accessing the Web Configuration Tool

You can access the web configuration tool using the web browser from your computer:

  1. Connect your Zynthian to your local network using the ethernet connector (RJ45) or directly to your computer (Ethernet to Ethernet)
  2. Open the browser in your computer and type in the address bar:
http://zynthian.local

or

http://zynthian.lan

or

the IP address of your Zynthian

Note:

If the local name doesn't work, see Finding your IP address. If you can't access the webconf with your browser. See command line configuration.


Zynthian webconf login.png

The web config tool will load and ask for the admin password. The default password is "opensynth".

Here are the details on using the Web configuration tool: Zynthian Web Configuration Tool User Guide

1.5 Viewing Zynthian UI and Synth Engine Native GUIs on your Computer

Synth engines native GUI

Some engines have a native GUI that can be accessed from your desktop/laptop computer. Zynthian provides a VNC viewer for a desktop that allows access to these native GUI. By default VNC is disabled and it is recommended to disable for performance (as it has a small overhead which is best saved for your audio). To enable VNC and access the desktop and engines' native GUI:

  • Connect via web browser to webconf
  • Navigate to INTERFACE->UI Options
  • Assert Enable VNC Server option and press Save
  • Reload webconf and navigate to INTERFACE->UI-Engines
  • Enter the Zynthian password (default: raspberry)

Note: There is also an option to access the Zynthian main UI by navigating to INTERFACE-VNC UI. This is a mirror of the main UI and may be driven from VNC and/or the physical interface.

The VNC views may be accessed directly via the URLs:

or with a VNC client by connecting to ports:

  • 5900 (Main UI)
  • 5901 (Engines desktop)software can be launched, like qjackctl or a virtual MIDI keyboard for testing.

Tip: You can automatically connnect and login to web-based VNC by appending parameters to the URL, e.g. http://zynthian.local:6080/vnc.html?autoconnect=true&password=raspberry

1.5.1 Supported Engines with Native GUI

Many LV2 plugins (NoizeMaker, OBX-d, Surge, DragonFly Reverbs, ...) and some of the standalone engines (ZynAddSubFX, Aeolus, Pianoteq and PureData) have support for remotely displaying their native GUIs. If VNC is enabled, the engine's GUI will be launched automatically when added to a chain.

Note:

Using an ethernet-to-ethernet (cable) connection will reduce remote GUI latency and improve usability.

2 Uploading your presets & soundfonts to Zynthian

The easiest way of getting your presets & soundfonts inside your zynthian is by using the webconf's preset manager:

 http://zynthian.local/lib-presets

From there you manage your preset & soundfont libraries: renaming, deleting, and uploading, including automatic conversion from some native formats:

  • DX7 SysEX files
  • OBXd FXB files
  • synthv1 native format
  • padthv1 native format

If if this doesn't work for you, or you prefer to do it by hand, you can copy your presets/soundfonts/pedalboards into the next folder:

/zynthian/zynthian-my-data

This is the subfolder structure:

+ presets
 + zynaddsubfx
 + puredata
 + pianoteq
 + lv2
 + mod-ui
+ soundfonts
 + sf2
   + bank-1.sf2
   + ...
   + bank-n.sf2
 + sfz
   + bank-1
     + sfz-bundle1
     + ...
     + sfz-bundle2
   + ...
   + bank-n
 + gig
   + bank-1
     + instrument-1.gig
     + ...
     + instrument-n.gig
   + ...
   + bank-n
+ snapshots
+ capture

SFZ and GIG soundfonts are used with LinuxSampler. SF2 soundfonts are used with FluidSynth. SFZ and GIG soundfonts must be organized in 'bank' subfolders. SF2 files are considered "banks" by itself.

If you have doubts of how to store your data, take a look in this directory:

/zynthian/zynthian-data

Here you will find the same folder structure, and could help you to understand.

Also it's interesting:

/zynthian/config

If you are really interested, you could, for instance, edit the setBfree configuration, and change the CC assignments, etc.

WARNING!!

If you add or change something inside the zynthian-data folder, your changes will be lost on the next update, or, in a worst case scenario, you could break the update system.

2.1 Accessing the MOD-UI web interface

MOD-UI pedal board style interface

You can access the MOD-UI web interface using the web browser from your computer:

  • Create a Special Layer with a "MOD-UI" engine from the Zynthian's UI
  • Connect your Zynthian to your local network using the ethernet connector (RJ45) or directly to your computer (ethernet to ethernet)
  • Open the browser in your computer and navigate to:
http://zynthian.local:8888

or

http://zynthian.lan:8888

The MOD-UI webpage should appear. When a MOD-UI chain does exist, this link is also accessible from the webconf's software menu (reload webconf after creating the chain).

If the link-local address (zynthian.local or zynthian.lan) is not found, test that the link-local feature is enabled in your system. Sometimes is disabled and local names are not recognized.

If nothing works, you could try using the zynthian's IP address instead. See Finding your IP address.

3 OSC (Open Sound Control)

Open Sound Control (OSC) is a protocol for networking sound synthesizers, computers, and other multimedia devices for purposes such as musical performance or show control. Zynthian implements OSC in various ways.

For more information about the protocol see Open Sound Control at Wikipedia and this explanatory video.

3.1 CUIA: Callable User Interface Actions

The CUIA is an unidirectional remote API that can be used to send simple control messages to zynthian UI. The CUIA can be accessed in several ways, as described in the user's guide and this section explains how to access the CUIA using OSC on port UDP 1370.

The OSC base path for CUIA messages is:

/cuia

Example:

/cuia/restart_ui

Note that CUIA paths are case insensitive, e.g.

/cuia/reboot

is interpreted the same as

/CUIA/REBOOT

Some examples using the command line tool "send_osc":

# send_osc 1370 /CUIA/SCREEN_MENU
# send_osc 1370 /CUIA/LAYER_CONTROL 2

An example Python script to select chain 2:

import liblo
liblo.send(('zynthian.local', 1370), "/CUIA/CHAIN_CONTROL", ('i', 2))

And finally, the full list of CUIAs:

CUIA Name Parameters Description
ACTION_MIDI_UNLEARN
ALL_NOTES_OFF
ALL_SOUNDS_OFF
ARROW_DOWN
ARROW_LEFT
ARROW_NEXT
ARROW_PREV
ARROW_RIGHT
ARROW_UP
AUDIO_FILE_LIST
BACK
BANK_PRESET
CHAIN_CONTROL %i Set active layer to %i and show control screen. Defaults to current chain.
CHAIN_OPTIONS %i Show options for chain %i. Defaults to current chain.
CLEAN_ALL
ENTER_MIDI_LEARN
EXIT_MIDI_LEARN
EXIT_UI
HIDE_BUTTONBAR
HIDE_SIDEBAR
HIDE_TOPBAR
LAST_STATE_ACTION
LAYER_CONTROL %i Alias of CHAIN_CONTROL. DEPRECATED!!
LAYER_OPTIONS %i Alias of CHAIN_OPTIONS. DEPRECATED!!
MENU
MIDI_LEARN_CONTROL %i Learn control knob %i
MIDI_LEARN_CONTROL_OPTIONS % Learn control options for knob %i
MIDI_UNLEARN_CHAIN
MIDI_UNLEARN_CONTROL %i Unlearn control knob %i
MIDI_UNLEARN_MIXER
MIDI_UNLEARN_NODE
POWER_OFF
PRESET
PRESET_FAV
PROGRAM_CHANGE
REBOOT
RELOAD_KEY_BINDING
RELOAD_MIDI_CONFIG
RELOAD_WIRING_LAYOUT
RESTART_UI
SCREEN_ADMIN
SCREEN_ALSA_MIXER
SCREEN_ARRANGER
SCREEN_AUDIO_MIXER
SCREEN_BANK
SCREEN_CALIBRATE
SCREEN_CONTROL
SCREEN_MAIN_MENU
SCREEN_MIDI_RECORDER
SCREEN_PATTERN_EDITOR
SCREEN_PRESET
SCREEN_SNAPSHOT
SCREEN_ZS3
SCREEN_ZYNPAD
SELECT %i Highlight element %i in the list
SET_TEMPO %t Set tempo BPM
SHOW_BUTTONBAR
SHOW_SCREEN
SHOW_SIDEBAR
SHOW_TOPBAR
START_AUDIO_PLAY
START_AUDIO_RECORD
START_MIDI_PLAY
START_MIDI_RECORD
STOP
STOP_AUDIO_PLAY
STOP_AUDIO_RECORD
STOP_MIDI_PLAY
STOP_MIDI_RECORD
TAP_TEMPO
TEMPO
TEMPO_DOWN
TEMPO_UP
TEST_MODE
TOGGLE_ALT_MODE
TOGGLE_AUDIO_PLAY
TOGGLE_AUDIO_RECORD
TOGGLE_MIDI_LEARN
TOGGLE_MIDI_PLAY
TOGGLE_MIDI_RECORD
TOGGLE_PLAY
TOGGLE_RECORD
TOGGLE_SCREEN
V5_ZYNPOT_SWITCH %i, %t Simulates V5 rotary-switch %i action of type %t (Push ,Short, Bold, Long)
Z2_ZYNPOT_TOUCH %i, %s Simulates Z2 capacitive touch-switch %i
ZYNAPTIK_CVIN_SET_NOTE0 %n Set base note for CV/Gate input
ZYNAPTIK_CVIN_SET_VOLTS_OCTAVE %f Set scale for CV/Gate input
ZYNAPTIK_CVOUT_SET_NOTE0 %n Set base note for CV/Gate output
ZYNAPTIK_CVOUT_SET_VOLTS_OCTAVE %f Set scale for CV/Gate output
ZYNPOT %i, %s Simulates rotary %i tick of size %s
ZYNSWITCH %i, %t Simulates button %i action of type %t (Push, Short, Bold, Long)

You can see the details in the Zynthian UI's source code.

3.2 TouchOSC

The TouchOSC protocol is supported if the option is enabled in the Zynthian admin menu. This accepts OSC on port 12101 using UDP datagrams and includes raw MIDI data interpretation on OSC path

/midi

This path accepts an OSC MIDI type message. An example Python script to send MIDI note on / off messages:

import liblo
import time

cmdNoteOn = 0x90
cmdNoteOff = 0x80
note = 60
vel = 100

liblo.send(('zynthian.local', 12101), "/midi", ('m', (vel,note,cmdNoteOn,0)))
time.sleep(1)
liblo.send(('zynthian.local', 12101), "/midi", ('m', (0,note,cmdNoteOff,0)))