Blog
MIDI vs OSC vs DMX: which control language do you need?
Three different jobs: DMX drives fixtures, MIDI is a hardware surface, OSC is a networked address tree. How they fit together.
WavePhase · 2026-08-23
They are not competitors
DMX, MIDI and OSC show up in the same sentence because lighting people use all three, but they solve different problems. DMX is how fixtures receive channel values. MIDI is how a fader box or pad controller talks to software. OSC is how two programs on a network exchange typed messages with addresses like /wash/dimmer.
A typical booth uses all three at once: a MIDI fighter for blackout and colour, a lighting graph that turns those values plus audio into looks, and Art-Net or sACN (DMX over Ethernet) out to the nodes. Asking “MIDI or DMX?” is like asking “steering wheel or petrol.”
DMX: the fixture pipe
Use DMX when the destination is a lighting fixture, a dimmer rack, a smoke machine with a DMX personality, or a pixel driver that expects universes. The unit of thought is the channel. There is no named “red” on the wire — there is slot 4, which your patch decided is red.
DMX is a terrible remote-control protocol for apps. It has no labels, no discovery you can trust on every device, and 512 slots per universe. Do not try to run a whole venue’s inter-app chatter as raw DMX just because the cable is already there.
MIDI: the human surface
MIDI was built for musical keyboards. Lighting people stole it because cheap controllers exist: faders, rotary knobs, velocity pads, transport buttons. A fader is a continuous 0–127 (or 14-bit) value. A pad is a note-on. A pitch wheel is a bend. Learn maps those onto dimmers, cues, and blackout.
MIDI is local and simple. USB MIDI just works on a laptop. 5-pin DIN MIDI still exists on club hardware. Latency is low enough for a human hand. Feedback (motor faders, LED rings) depends on the controller and the software. Not every box lights up when the software moves a value.
Give blackout its own pad. Give master dimmer its own fader. Do not bury kill inside a bank you cannot find with the house lights out.
OSC: the networked address book
OSC (Open Sound Control) sends messages to addresses. /heads/pan 0.5 is readable in a log. MIDI CC 17 is not. Use OSC when another application is already the operator surface — a custom tablet layout, a show-control system, a media server that already speaks OSC.
You must design the address tree and keep it stable. Changing /wash/dimmer to /wash/level the week of the show will break every layout. Document the tree the way you would document a DMX personality.
OSC rides on a network, so it has the same LAN rules as Art-Net: wired when it is show-critical, known ports, no mystery Wi-Fi hops for the stream that runs the strobes.
A practical pick
Fixtures: DMX (XLR or Art-Net/sACN). Hands on a box: MIDI. App-to-app or tablet layouts: OSC. A script or automation tool that should POST a look: an HTTP API, not a fake MIDI stream.
If you only buy one thing this month, buy a small MIDI controller and learn start addresses. OSC can wait until a second program needs to talk. DMX cannot wait — without it nothing on the truss moves.
A booth that uses all three
Picture a Tuesday club. The PC sends two sACN universes to nodes over a dedicated switch. A MIDI fighter sits on the laptop: blackout, haze, colour pads, master dimmer. A tablet on staff Wi-Fi sends OSC only for “safe wash” because the floor manager will not learn MIDI. Fixtures never see MIDI or OSC. They only see DMX bytes on XLR.
When something fails, name the layer. Dark rig + node LED off = network/DMX. Lights move but you cannot kill = MIDI/OSC mapping. Kill works, colour wrong = personality or start address. Mixing those diagnoses is how people “reinstall the lighting software” for a bad cable.
Write the three maps on one page: DMX patch, MIDI learn list, OSC address tree. That page is the show more than the pretty graph screenshot.
What to buy first
If the rig exists, buy the missing translator: a node that speaks the dialect the fixtures already use. If the rig does not exist, buy fixtures and one node, then one MIDI surface. OSC tablets come third. A beautiful address tree with no DMX out is a homework assignment.
Avoid “all-in-one” boxes that hide the universe map. You want to see start addresses. Hidden maps are fine until they are wrong, at which point they are a locked box.
Related
If you want this in software
WavePhase is a desktop lighting app: a node graph that can take live audio, time, MIDI, OSC or an API and send the result to fixtures, pixels and visuals over Art-Net or sACN. The articles on this blog teach the craft. The app is one way to run it.
Free Early Access includes the editor and one DMX universe. Features and the quick start are the product docs — not a substitute for patching real hardware.
Free account required — no credit card — Windows, macOS and Linux.