This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

A guide to triggering Qlab cues from Eos over OSC

 This data is old - please refer to this support article: Triggering QLab from Eos using OSC - Electronic Theatre Controls Inc

With the release of 2.3, it is now possible to trigger Qlab cues using a protocol called OSC.  OSC is like MIDI Show control, except way more awesome, and it runs on modern networking protocols like TCP or UDP.  That means you can ditch the MIDI gear, and just connect your Qlab computer to your Eos lighting network.  

The only trick is, Eos and Qlab speak slightly different dialects of OSC.  Every time you take a cue on Eos, it will output a command that looks like "/eos/out/event/cue/1/2/fire", but Qlab is listening for a command that looks like "/cue/2/start".  So how do we get them to talk to each other? Here's how to get it working:

1) Make sure you're running Qlab 3 and Eos v2.3 or higher.

1a) Make sure that "UDP Strings & OSC" are enabled in the Eos shell settings (Exit to the shell, click "Setup", click "Network", scroll down to "Interface Protocols")

2) On Eos, navigate to Settings>Show Settings>Show Control, and configure your system so it matches these key settings:

For your Eos system to output OSC, String TX must be enabled, and you need to tell it what IP address you want it to send OSC commands to.  So under OSC TX IP Address, enter the IP address of the Qlab computer, and under OSC TX Port Number, enter 8000 (more on that later).

3) On the Qlab computer, download an application called OSCRouter (written by Eos developer, Chris Mizerak) from the ETC Labs Git Hub page:

github.com/.../OSCRouter

In OSCRouter, configure it to look like this:

That is telling your Qlab computer to listen for any OSC commands on port 8000 that look like /eos/out/event/cue/1/<cue number>/fire and then convert them to the format /cue/<cue number>/start, and then re-broadcast those commands to the localhost IP address (127.0.0.1) on port 53000 (which is the port that Qlab listens on).

Remember to click the Apply button

Check out the OSCRouter documentation for more amazing features, and for more information about why we use /eos/cue/out/event/1/* for the incoming path, and /cue/%6/start for the outgoing path.

4) In Qlab, make sure that your settings for your workspace look like this:

5) You should be all set!  When you fire a cue from Eos, double check that OSCRouter is making the conversion correctly.  It should look something like this:




[locked by: Seth Starr at 1:48 PM (GMT -5) on Tue, Jul 6 2021]
Parents
  • Hey Paul,

    I'm just beginning with this, so I have a few basic questions.
    I've set up both machines as you specified in your post. When you have OSC/String enabled, does the cue automatically fire the OSC command to QLab? Basically, where do I type the OSC commands on the light board if I need to? Or does firing, say, Cue 2 on the Ion automatically fire Cue 2 on QLab with OSC/String enabled?
  •  There is a long list of OSC commands that the primary device on an Eos network will always output.  All of these implicit commands are all prefaced by "/eos/out/" and they are sent whenever String Tx is enabled.  So in your example, if your Ion is sitting in Cue 1, and you press [Go], it will automatically output an OSC command that looks like "/eos/out/event/cue/1/2/fire" (it will also output a whole bunch of other stuff too... you can see it all in the logs of OSCRouter).

    Since Qlab doesn't know what to do with "/eos/out/event/cue/1/2/fire", you need to use OSCRouter to translate "/eos/out/event/cue/1/2/fire" to "/cue/2/start".  That process is outlined in my first post.

    However, Eos is also capable of outputting *explicit* OSC commands.  If you don't want to mess around with OSCRouter, and you just need to trigger a handful of cues or commands in Qlab, you can do that by selecting an Eos cue and typing {Execute}{String} and typing "/cue/2/start".  Set your OSC Tx Port to 53000, and every time Eos plays back your cue, it will also send "/cue/2/start".

Reply
  •  There is a long list of OSC commands that the primary device on an Eos network will always output.  All of these implicit commands are all prefaced by "/eos/out/" and they are sent whenever String Tx is enabled.  So in your example, if your Ion is sitting in Cue 1, and you press [Go], it will automatically output an OSC command that looks like "/eos/out/event/cue/1/2/fire" (it will also output a whole bunch of other stuff too... you can see it all in the logs of OSCRouter).

    Since Qlab doesn't know what to do with "/eos/out/event/cue/1/2/fire", you need to use OSCRouter to translate "/eos/out/event/cue/1/2/fire" to "/cue/2/start".  That process is outlined in my first post.

    However, Eos is also capable of outputting *explicit* OSC commands.  If you don't want to mess around with OSCRouter, and you just need to trigger a handful of cues or commands in Qlab, you can do that by selecting an Eos cue and typing {Execute}{String} and typing "/cue/2/start".  Set your OSC Tx Port to 53000, and every time Eos plays back your cue, it will also send "/cue/2/start".

Children
Related