This chapter follows on from the previous explorations of QLab lighting and looks at the practicalities of using QLab to control a small rig of intelligent lighting fixtures.

In developing these tutorials,  the advantages in the simplicity of the QLab lighting toolset were evident, but a few things made using complex fixtures without a stack of manuals to hand quite difficult.

•   Only having an ‘all sliders’  or ‘all tiles’ view available in the dashboard.

•   Many default parameter descriptions being unreadable in Tiles view.

•   Mapping of fixture parameters limited to DMX values or percentage values and not real world parameters e.g pan angle.

•   No sophisticated parameter controls like color pickers or indexed slot menus.

•   Limited scope for getting values from the Lighting dashboard.

The aim of this project is to create full fixture profiles, in a front-end system, to send OSC to the QLab Lighting Dashboard, to enable control with real-world values for the fixture being controlled, and the most appropriate style of control and display for each parameter.

Because there is currently no way for the dashboard to feedback its state via OSC, (and there being a limit of a single MIDI channel, allowing only 128 controllers, even if we went to the trouble of converting MIDI to OSC to provide this feedback), I have used a method which reads the DMX values from the QLab DMX status window. Because of this a lot of the code in the project has to incorporate hard values for DMX channels and, because the fixture profiles are run in a separate app, the interaction between the programs has to be tightly coordinated by some inflexible scripting

The fixture profiles created with the methods outlined here are probably best suited for small permanent installations of a handful of moving lights and perhaps some RGB fixtures and a few generics where a control system can be written specifically for that setup. e.g small clubs and bars, houses of worship, architectural lighting installations etc. where you might want to create a new set of fresh looks with a  fixed installation on a daily basis for different events.

The example in the tutorial is based on a rig of 4 VariLight 3000 spot fixtures, which can be visualized in the free to download  Capture Nexum Student edition.

The QLab dashboard is controlled by fixture profiles created in Open Stage Control

Here is one of the VLs in the QLab lighting dashboard:

QLab dashboard

And here is the same VL in a  Fixture Profile  created in Open Stage

Fixture Profile

The main advantage of the fixture profile is that it can make sense of the sometimes immensely complex mappings of some fixture DMX parameters to the motors, servos and relays etc, of intelligent lighting fixtures.

For instance if we look at the Controls for the first of the 3 gobo wheels in this fixture, we can see that, without the manual for the fixture to hand, the QLab dashboard gives few clues as to how the Gobo wheel is controlled e.g. What would we set if we wanted a medium fast clockwise rotation of the gobo slot that has the’ tribal break up’ gobo?

gobo wheel 1

The GOBO wheel has an open and 5 gobo positions indexed on DMX values between 1 and 6. Ideally, we would want to call these up by name in a pop-up index. The Gobo rotation control will set a fixed rotation on this gobo. These GOBO indexes are then repeated at DMX values 111 to 116 but this time the rotation control acts as a direction and speed control for continuous rotation of the gobo. That’s a lot to remember and, even with the manual, it requires looking at 2 charts and then accurately setting the sliders.

In the fixture profile version there is a single control for gobo selection:



Whether the rotate slider controls a set position, or is a speed and direction controller, is set on the SPIN menu:


And finally, the legends on the Slider show a center 0 position and real-world parameters for the rotation.

The controls thus become self-documenting, and easy to use. The same philosophy is followed for all the other parameters.

At the top right of the fixture profile window is a drop-down menu which selects which fixture the controls are acting on:



Every time the selection changes the current QLab lighting dashboard values for all the parameters of the newly selected fixture are downloaded to the fixture profile.

In larger systems this can be expanded with separate pages for each type of fixture with as many units of each type as you want in the drop-down.

You can download the QLab 4 workspace, The Visualizer Model in Capture Nexum Student edition, and The Open Stage Control .json file here:

QLabFixture Profiles Demo

Here is the complete system in action (best viewed full screen):

On the next page we’ll look at downloading the software required to run these files and how to set it up.

Chapter Author: Mic Pool

Capture Nexum is a commercial product and trademark  of
Capture Visualisation AB, 

Open Stage Control is an AMMD software licensed under the GNU/GPLv3 License

Art-Net™ is a trademark of Artistic Licence Holdings Ltd.