Hi there all,
In this tutorial we are going to dive deep in the communication with ETC - EOS Lighting desk using Isadora.
Why OSC ?
OSC (OpenSoundControl) is really rich in ETC products. They provide a wide range of information regarding the state of the desk, what is currently going on, etc.
Why is this important ?
As a technician / operator / artist I wish to know as much information as possible regarding the elements that I control.
I don't want to think 'Hey, is this fader really the fader that I need to control my front light ?"
Or is this "Color Palette" blue or orange ?
Using OSC and some light reading we are able to get all the information that we need to put ourself at rest and know at all times what is going on :) (+ Create really nice interface elements in the progress..)
+ The support for USB MIDI products with faders natively in ETC is horrible and lacks docs..
Included file : ETC EOS Faders.izz
ETC EOS Faders.izz
The document included showcases how to do basic fader mapping with Isadora, if you are interested in the more technical talk, see the bottom of the post.
If you have any questions regarding the topic, feel free to reply to this forum post, send me a DM or even send me an e-mail at hello@juriaan.me. I'm here to help :)
Prepare your Lighting desk
To communicate with ETC products we first need to go into our
ShellInto the Shell you will find '
Settings', click on itGo to
the Network Tab
Go
to Interface Protocols (Scroll down)Make sure that
UDP & OSC is turned on
And that we
are on TCP format 1.0
Great ! Exit the settings menu and open up your
Show documentOpen up your File Browser (If it is not there, then click on the little triangle to open it up)Go to
Setup > Show Settings
Set the following fields (
OSC TX IP Address, OSC TX Port Number (Isadora Incoming port),
OSC RX Port Number (The port that we use in Isadora to send commands)Make sure that
String and OSC TX and String RX are enabledClose down the settings and go back to
Live ViewThe following steps are only meant for 'checking' the connection. They are not required ;)Press
Tab 99 [ENTER] to bring up the Diagnostic window. Set OSC Incoming and OSC Outgoing to
On
Prepare Isadora
Open up the example file
ETC EOS Faders.izz
Setup your Isadora incoming OSC portOpen up the Control panelGo to the settings section and set the IP address to the IP address of the ETC desk (Don't know where to find this ? If you open Tab 99 on your Lighting desk the IP address will show itself :))Set the outgoing port (OSC RX Port Number)Click on "
Connect"If you have connection the
Version field will showcase the current version of the Lighting deskMove the faders up and down, the faders on the Fader Page (Tab 28, Page 1) will move with Isadora
HELP ! The connection doesn't work
Are you sure that your settings are correct ? If so, please feel free to contact me :)
Alright.. But how does OSC communication work with EOS ?
Glad you asked :)
First we make a new watcher, so that the lighting desk will tell us more information regarding the version, but also when a button is pressed or when a fader is moved.
"/eos/subscribe"
Then we request the version of the Console by sending a Get request
"/eos/get/version"
EOS will respond with
"/eos/out/get/version"
Now we know a bit more regarding the desk, next we are going to make a 'ping' connection. Each time Isadora sends a 'trigger' to a OSC transmit we are going to receive a ping back from the console
"/eos/ping"
EOS will respond with
"/eos/out/ping"
If the value is not received within 2000 ms the actor will send out a 'disconnect' event so that we know 'Hey, we lost connection with our lighting desk'
The next step is to create a virtual fader page. Basically what we are saying is "Oh hi ! I got 10 faders in a single page." You can change this to 1-99 (And make your own patch with 30 faders if you wish to)
"/eos/fader/1/config/10"
EOS will respond with
"/eos/fader/1/1/name" = "NAME" (This is really handy for if you wish to connect the names to interface elements in your patch !)
To control a fader using OSC we need to send the following :
"/eos/user/2/fader/1/1" = 0 - 1 (float)
Let's try to make sense of the above.
/eos/ (the start)
/user/2 (User 0 and 1 are our master. If you decide to use your Desk we don't want Isadora to take control over it !) By saying we are user 2 we will never override the controls of User 1 (Our main desk)
/fader/ (We wish to execute a fader command)
/1 (On fader page 1)
/1 (Fader 1)
Resources
If you are interested about taking control of ETC products using OSC check out the following documents
https://www.etcconnect.com/Wor...
https://github.com/ETCLabs/Eos...
https://github.com/ETCLabs/OSC...
Or post on the forum and tag me if you need any further assist :)