Advanced
OSC mode
Run Universal Controller MIDI as an OSC sender — alongside MIDI or instead of it. Real OSC addresses, UDP targets, bundled timestamps, no DAW required.
Updated
OSC mode turns every gamepad input into an Open Sound Control message and fires it over UDP to one or more targets. Run it alongside MIDI for hybrid setups, or flip MIDI off entirely when you're driving Resolume, TouchDesigner, MadMapper, or a custom Max patch.
OSC is float-precise, address-routable, and not stuck inside 7-bit hell. For anything visual or generative, it's the protocol you actually want.
Addresses + targets
Every binding has an OSC address. Defaults follow a sensible /controller/<input> shape, but the mapping editor lets you rewrite any path. Sticks ship two floats per packet; triggers ship one float in [0.0, 1.0]; buttons ship an int 0 or 1.
/controller/lstick 0.241 -0.882
/controller/ltrigger 0.74
/controller/cross 1
/composition/clip1/connect 1 Targets are configured per-bridge in Settings → OSC. Each target is a host:port pair — 127.0.0.1:7000 for local Resolume, 192.168.1.42:9000 for a TouchDesigner machine across the LAN. Multi-target broadcast is supported; the same input fires to every active target.
OSC address patterns by host
Every host listens for a slightly different convention. The bridge ships templates for each — load one in the mapping editor and the addresses prefill correctly. Reference table:
| Host | Default port | Address pattern | Payload |
|---|---|---|---|
| Resolume Arena | 7000 | /composition/clip<n>/connect | int 1 |
| Resolume master | 7000 | /composition/master | float [0.0, 1.0] |
| TouchDesigner | 7000 | /<chan> (user-defined) | any float or int |
| MadMapper | 8010 | /surfaces/<name>/opacity | float [0.0, 1.0] |
| Max / MSP | 7400 | /<anything> via udpreceive | arbitrary |
| VDMX | 1234 | /control/<name> | float |
| Ableton (Live OSC) | 9000 | /live/track/<n>/volume | float dB |
Hybrid mode — MIDI + OSC simultaneously
Both backends run on the same input event. Map LT to CC 11 for your DAW and /composition/master for Resolume — one trigger pull drives both. Bundled OSC packets ship with timestamps so receivers can re-order or schedule them on a 1 ms clock.
{
"input": "LT",
"outputs": [
{ "type": "midi", "port": "Universal Controller", "channel": 1, "cc": 11 },
{ "type": "osc", "target": "127.0.0.1:7000", "address": "/composition/master" }
]
} For a real-world comparison of when to pick which protocol, the OSC vs MIDI deep dive walks through latency, range, and addressability head-to-head.
Resolume + TouchDesigner quick paths
Resolume maps incoming OSC by listening on a port and right-clicking any control → "Edit OSC Input". TouchDesigner uses an OSC In CHOP with the same port. Both accept the address paths above without translation.
Real-world scenarios
Five places OSC mode pays for itself:
- VJ live set. Triggers fire clip launches in Resolume, sticks drive composition opacity + master. One DualSense replaces a $400 APC mini and a separate visual controller.
- TouchDesigner generative show. Touchpad XY sweeps two CHOP channels that drive a particle system. 32-bit float means no visible step quantisation when you slow-scrub the field.
- Ableton Live OSC remote. Use the Live OSC pack — track volumes, sends, scene launches. Avoids the 14-bit CC headache for fader-style precision.
- Custom Max patch. Pipe raw stick floats into a
udpreceiveobject, route through your own scaling, and you've built a bespoke instrument in 20 minutes. - Networked installation. Bridge runs on one machine, sends to four projection PCs on a LAN. Each PC subscribes to a different address subtree —
/wall1/*,/wall2/*— and renders its slice.
OSC mode is a Pro feature. Free runs MIDI only. See Pro vs Free for the full split, or jump to MPE mode for polyphonic expression on the MIDI side.