/en/qlab-grandma2-bridge

Case · Open source

QLab → grandMA2 bridge

A bridge that translates QLab 5 OSC messages into grandMA2 onPC commands over Telnet, firing lighting cues across the network with no MIDI.

  • QLab 5
  • grandMA2
  • OSC
  • Telnet
View on GitHub

MoscoDJ/qlab-grandma2-bridge

Lighting console with faders and screens at front of house; in the background, a stage with white and teal light beams through the haze.

01 / QLab → grandMA2 bridge

The problem

In a show, audio and video often run on QLab (Mac) while lighting runs on a grandMA2 onPC console (Windows). Getting each moment of the show to trigger the right lighting usually means setting up physical MIDI, a virtual MIDI port or RTP-MIDI between the two machines.

02 / QLab → grandMA2 bridge

The solution

The bridge removes that layer entirely. QLab sends abstract OSC triggers over Ethernet, such as /lx/go/8. The bridge maps each one to the grandMA2 command defined in its config file and sends it to the console over Telnet, a native grandMA2 interface.

QLab ──OSC/UDP──► bridge ──Telnet/TCP──► grandMA2 onPC ──► Command Wing ──DMX──► fixtures

Each trigger can run any MA command-line instruction: an executor, a specific cue or a macro. The lighting designer programs the console; the QLab operator just drops a Network Cue into each scene.

03 / QLab → grandMA2 bridge

How it works

One-line install

From PowerShell, or offline from a USB drive with the downloaded package. It ships with its own portable Python, verifies the package's SHA256, opens the OSC port in the firewall, sets up auto-start with Windows and finishes by showing the IP to enter in QLab.

Updating is just reinstalling

The configuration is preserved.

Link test

A /lx/ping cue in QLab gets a /lx/pong reply with the console connection status.

Test modes

To check the configuration without firing anything, or to fire a single trigger.

04 / QLab → grandMA2 bridge

Reliability

  • The Telnet connection is persistent with keepalive, so a GO never waits for a connection to open.
  • If the console restarts, the bridge reconnects on its own every 2 seconds; if a send fails, it reconnects and retries once.
  • If the bridge crashes, it restarts itself, and it refuses to run twice so two instances never split the messages.
  • Raw console commands are disabled by default.
  • Automated tests run against a simulated grandMA2, no console required.

05 / QLab → grandMA2 bridge

Technical details

Python 3.8 or later, with no extra packages. Windows installer for Windows 8.1 or later.

06 / QLab → grandMA2 bridge

Status

Public code on GitHub: MoscoDJ/qlab-grandma2-bridge.

07 / QLab → grandMA2 bridge

Let's talk about your project

Have a project, an integration or an event that needs technology?

Send an inquiry