Protocol Reference
Every protocol CueSync can speak, with its transport and default port.
Why this table has 20 rows and the rest of the site says 15. Both numbers are right; they count different things. This table lists every output type, so a product that connects over two transports gets a row for each — grandMA2 has one for Telnet and one for OSC, grandMA3 one for TCP and one for UDP, QLab the same — and it includes the two DMX-over-IP outputs. The figure quoted on the rest of the site counts the named console, media-server and show-control integrations you can connect to: merge those three pairs, set aside the Art-Net and sACN node outputs, and 20 rows become 15 integrations. Nothing is present in one list and missing from the other.
How far each is proven. Four of the fifteen integrations have been graded against real equipment: grandMA3 (on a physical console and in onPC), Unreal Engine 5 (inside the engine), Resolume (against a live Arena) and QLab. The other eleven are built to the manufacturer's published interface and are not hardware-verified: disguise has not been run against a d3, vx or gx, and Pixera has not been run against a Pixera server. Do a dry run on your own rig before show use; a checklist for proving your own desk setup is in Desk Verification. Every edition includes every protocol — editions gate workflows, never connectivity. Add outputs in Network Outputs; every connection tries to recover automatically after a drop, and a send reports success or failure where the transport can tell.
| Protocol | Transport | Default port | Notes |
|---|---|---|---|
| grandMA3 (UDP) | UDP OSC | 8000 | The recommended GMA3 connection. A TCP output needs a desk OSC line set to TCP mode, which 2.3.x consoles accept, so UDP is the transport that works on a 2.4.x desk; it also carries Session Sync pushes. On the console: Menu → In & Out → OSC, enable Input and Receive Command. |
| grandMA3 (TCP) | TCP OSC | 8000 | Use only when a desk actually accepts an OSC-TCP session (2.3.x). Session Sync prefers it when one is connected. |
| grandMA2 (Telnet) | Telnet | 30000 | Classic MA2 remote console — cue GOs, executors, macros, faders, blackout/freeze and desk timecode. See GrandMA2. |
| grandMA2 (OSC) | UDP OSC | 8000 | ⚠️ Not an MA2 console feature. grandMA2 has no native OSC input — OSC arrived with MA3 — so a stock console ignores everything sent here. Worse, UDP sends always "succeed", so cues report green while the desk does nothing. Only usable against a console running a third-party OSC bridge plugin, whose address space is specific to that plugin. Use grandMA2 (Telnet) instead; this is not a fallback, because there is nothing to fall back to. |
| ETC Eos | TCP OSC | 3032 | Eos family consoles. |
| Avolites Titan | HTTP REST | 4430 | Titan's WebAPI. |
| ChamSys MagicQ | UDP OSC | 6171 | MagicQ's OSC input. |
| Resolume | UDP OSC | 7000 | Arena (Avenue is untested). |
| disguise (d3) | UDP OSC | 3031 | The whole of disguise's /d3/showcontrol surface: transport (play, pause, stop, play section, loop section, return to start), section and track navigation, cue recall by integer or decimal number, the master volume and brightness, and fade up / fade down, plus Raw OSC for a Machine Control endpoint of your own. No layer or timeline control: disguise publishes no OSC address for it. Built to disguise's published interface; it has not been run against a d3, vx or gx. |
| TouchDesigner | UDP OSC | 9000 | Any TD network. Receiving: add an OSC In CHOP (numeric parameters) and/or an OSC In DAT (text and a record of every message), set its port to match, and bind channels with a Select CHOP or a Parameter Execute DAT. A CHOP carries numeric channels only — a text value reaches the DAT and the CHOP ignores it, which is correct and not a fault. A message with several arguments arrives as numbered channels: /colour 1 0.5 0.2 becomes colour1, colour2, colour3, which is how you drive a colour or an XY position from one cue. CueSync sends only what you type, with two exceptions it owns: the timecode bundle /td/timecode/{hours,minutes,seconds,frames,framerate,running}, and /cuesync/panic 1 on an emergency stop. ⚠️ The panic is a notification, not a kill. TouchDesigner has no blackout verb for CueSync to send, so nothing goes dark unless you wire it: bind cuesync/panic in an OSC In CHOP and gate your output master with it. Until you do, a panic reports success and your visuals keep running. Beat, tempo, energy and musical structure do not come over this connection — they ride the CueSync Bus, on its own port. |
| VIOSO | TCP | 9091 | VIOSO media servers. |
| Pixera | TCP (JSON-RPC 2.0) | 1234 | Pixera media servers — timeline transport, cue recall and timeline seek. Pixera has no default API port: open Pixera → Settings → API, set an API Access slot to protocol JSON/TCP (dl) — not plain JSON/TCP, which uses different framing — set the slot's Input Network Adapter to the Pixera machine's address on the show network, and enter the port you typed there. 1234 is a starting guess, not a standard. |
| Unreal Engine 5 | UDP OSC | 8001 | Remote Control plugin; see the CueSync for Unreal plugin for the deeper link. |
| Pangolin Beyond | TCP (PangoScript) | 16063 | Beyond laser software. 16062 is Beyond's UDP port — a TCP connection there never opens. |
| QLab (TCP) | TCP OSC | 53000 | The preferred QLab link: OSC over TCP, and QLab's replies come back on the same connection, so CueSync can detect a refusal (it is logged and held as the output's last error, not shown on a screen). See QLab. |
| QLab (UDP) | UDP OSC | 53000 | The fallback. Send-only — CueSync cannot read QLab's answer, so a wrong passcode or a refusal is silent and a green cue means only that the packet left this machine. |
| Custom OSC | UDP OSC | 8000 | The output editor pre-fills 8000; set the port your device listens on. Your own device schemas; also the target for Fade ramps. |
| MIDI Show Control | MIDI SysEx | — | Via any connected MIDI interface. A Goto, Back, section jump or timecode locate never re-sends a pyro, flame, CO₂, fireworks, explosion or smoke-pot cue; it goes out when the show plays through it. |
| Art-Net | UDP | 6454 | Sends DMX to a node when a cue fires. Connection health reports a node that stops answering as amber. A node that has never answered is not penalised — many cheap nodes ignore discovery while rendering DMX perfectly well — and Diagnostics labels it unverified. |
| sACN / E1.31 | UDP | 5568 | Same behaviour as Art-Net. |
Beyond the output list above, CueSync also sends and receives MIDI (notes, CC, clock, MIDI Show Control) through the system MIDI devices configured in Settings → MIDI & Sync, receives OSC input for triggers (off by default — Settings → Advanced → OSC Input Listener ships its port at 0; 9001 is the usual choice once you turn it on), and syncs tempo over Ableton Link.
Connection behaviour (every protocol)
- Automatic connection recovery — if a connection drops, CueSync reconnects on its own. After repeated failures it pauses sending to that output instead of flooding the network, and shows a warning chip in the EdgeBar (labelled circuit breaker on screen). It recovers automatically where it can, and can also be retried by hand with Restart Failed in Network.
- Honest sends — a command reports its result where the transport can tell, and a failed send surfaces as a notification and in Diagnostics; a refusal reported by the far end is also logged. What "result" can mean depends on the transport, and it is worth knowing which one you are on. The eight TCP and HTTP protocols (both grandMA3 TCP and grandMA2 Telnet, ETC Eos, QLab TCP, VIOSO, Pixera, Avolites, Pangolin) get an acknowledgement from the far end — for grandMA3 TCP that is the connection's own delivery receipt, not the console's answer to the command, so a line the desk refuses still reports sent. VIOSO is the same: CueSync writes the command and never reads VIOSO's reply, so a command VIOSO rejects still reports sent. The twelve UDP and MIDI ones cannot: UDP has no acknowledgement, so a send "succeeds" once the packet leaves this machine, whether or not anything is listening. That is a property of the protocols, not of CueSync — but it means a green cue on a UDP output proves the command was sent, not that it arrived. Where a protocol offers a return channel, CueSync uses it; where it does not, Diagnostics labels the check unverified rather than pretending otherwise.
- No store-and-forward — a command for a device that is unreachable fails and is reported. It is not queued, so nothing fires late into a changed show state when the device comes back.
Related
- The CueSync Bus — the structural OSC vocabulary any engine can receive, and send back
- Network Outputs — adding, testing, and monitoring outputs
- Action Reference — which actions target which protocol
- Diagnostics — the connection event log
- Technical Specifications — the full port/firewall table
Looking for a quick fix?
The Help Center has short task-focused articles and a support team that responds within 24 hours.