# DMX (Lichttechnik)

DMX (alte Versionen DMX512, DMX512/1990 und aktuelle Version DMX512-A) ist ein digitales Steuerprotokoll, das in der Bühnen- und Veranstaltungstechnik (Veranstaltungsbeleuchtung) zur Steuerung von Lichttechnik wie Dimmern, „intelligenten“ Scheinwerfern, Moving Heads und Effektgeräten angewandt wird. Die Abkürzung DMX steht für Digital Multiplex.
Standardisiert wurde DMX zuerst durch die USITT („USITT DMX512“, „USITT DMX512/1990“), 2000 folgte die DIN 56930-2 (Norm auf Basis von DMX512/1990) und im November 2004 die ANSI E1.11 (bekannt als DMX512-A; mit Neuerungen gegenüber der DMX512/1990).

## Elektrische Spezifikationen

DMX basiert auf RS-485, verwendet wird ein symmetrisches Übertragungsverfahren, die differenziellen Pegel liegen zwischen ±1,5 V und ±5 V. Gleichtaktspannungen zwischen −7 V und +12 V müssen toleriert werden. Durch die symmetrische Übertragung besitzt DMX eine hohe Störsicherheit, da sich externe Störungen auf beide Datenleitungen gleichmäßig auswirken und am Empfänger nicht das Pegelniveau, sondern die Pegeldifferenz ausgewertet wird.
Zur Verbindung sind fünfpolige XLR-Stecker vorgeschrieben, häufig wird jedoch aufgrund des geringeren Preises die dreipolige Variante verwendet. Das freie Kontaktpaar (Pol 4 und 5) ist für andere Aufgaben vorgesehen, die in der DMX512-A näher spezifiziert werden. Entgegen der in der Audiotechnik üblichen Praxis befindet sich bei DMX am Sender ein weiblicher und beim Empfänger ein männlicher Kontakt. Bei Mikrofonen gilt allerdings aufgrund der Phantomspeisung das Mischpult oder die verarbeitende Einheit als Sender. Dadurch ist der Ausgang auch gegen Kurzschluss bei Berührung mit Metallteilen geschützt. Zudem sind die Signalleitungen (im Vergleich zu Audio-Signalen) vertauscht.
| Pol | 5-polig | 3-polig international * | Traxon e:cue (Butler) RJ45 | RJ45 T-568A | RJ45 T-568B (in Deutschland gebräuchlich) |
| 1 | Masse (Abschirmung) | Masse (Abschirmung) | Masse (Abschirmung) Pin 3 (weiß/grün) | Masse (Abschirmung) Pin 7 (weiß/braun) und Pin 8 (braun) | Masse (Abschirmung) Pin 7 (weiß/braun) und Pin 8 (braun) |
| 2 | Signal invertiert (DMX−, „Cold“) | Signal invertiert (DMX−, „Cold“) | Signal invertiert (DMX-) Pin 1 (weiß/orange) | Signal invertiert (DMX−, „Cold“) Pin 2 (grün) | Signal invertiert (DMX−, „Cold“) Pin 2 (orange) |
| 3 | Signal (DMX+, „Hot“) | Signal (DMX+, „Hot“) | Signal (DMX+) Pin 2 (orange) | Signal (DMX+, „Hot“) Pin 1 (weiß/grün) | Signal (DMX+, „Hot“) Pin 1 (weiß/orange) |
| 4 | optional Data 2 - | | Optional Betriebsspannung Butler + 24VDC Pin 5 | optional Data 2 - Pin 3 (weiß/orange) | optional Data 2 - Pin 3 (grün) |
| 5 | optional Data 2 + | | Optional Betriebsspannung Butler - 24VDC Pin 6Butler Manual | optional Data 2 + Pin 6 (orange) | optional Data 2 + Pin 6 (weiß/grün) |
(*) Die 3-polige Version ist nicht DMX-normkonform.

## Zeitliches Protokoll

Die Datenübertragung erfolgt mittels einer asynchronen seriellen Schnittstelle, die von einem Universal Asynchronous Receiver Transmitter (UART) gesteuert wird. Der Datenframe besteht bei DMX aus den fest vorgegebenen Parametern von 8 Datenbits, keinem Paritätsbit und 2 Stoppbits (8N2) sowie einer Symbolrate von 250 kBaud. Ein Bit ist somit 4 µs lang, andere Datenraten sind nicht vorgesehen.
Die Übertragung ist durch den UART bedingt byteorientiert: Der Ruhezustand des Busses (logisch 1) wird durch das Startbit (logisch 0) unterbrochen. Anschließend folgen die acht Datenbits und die zwei Stoppbits (logisch 1). Danach befindet sich der Bus wieder im Ruhezustand und es kann bei Bedarf das nächste Byte übertragen werden.
Die gesendeten Datenpakete folgen der Abfolge in der Tabelle „Timing eines Datenpakets“. Nachdem ein Datenpaket gesendet wurde, wiederholt sich der Ablauf von vorne.
Timing eines Datenpakets :
| | Zeitraum in Bits | Zeitraum in µs | Logisch | Beschreibung | Funktion |
| 1. | 22 Bit | 88 µs | 0 | Break | Erkennung des Paketanfangs |
| 2. | 2 Bit | 8 µs | 1 | Mark after Break | Vorbereitungszeit für Controller |
| 3. | 11 Bit | 44 µs | 0 - siehe Byte-Timing | Start-Byte | |
| 4. | je 11 Bit | je 44 µs | DMX-Kanäle | DMX-Kanäle | Die Daten der einzelnen Kanäle |
Byte-Timing :
| | Zeitraum in Bits | Zeitraum in µs | Logisch | Beschreibung |
| 1. | 1 Bit | 4 µs | 0 | Start-Bit |
| 2. | 8 Bit | 32 µs | Daten | Die übertragenen Daten |
| 3. | 2 Bit | 8 µs | 1 | Stopp Bit |
| 4. | 0 Bit | 0 µs | 1 | Zeit zwischen Bytes (max. 1 Sekunde lang) |

### Break

„Break“ (engl. Pause) ist die Pause zwischen den Datenpaketen. Diese Pause ist normalerweise 88 µs und maximal 1.000.000 µs (eine Sekunde) lang. Dies ermöglicht eine einfache Erkennung des Paketanfangs, da quasi jeder handelsübliche UART den Break als ungültiges Datenbyte mit fehlenden Stoppbits meldet.

### Mark after Break

Auf „Break“ folgt „Mark after Break“ mit mindestens 8 µs (2 Bitlängen) hohem Pegel / Ruhezustand des Busses (logisch 1). In dieser Mark-Zeit können sich langsamer getaktete Controller auf ein neues DMX-Paket einstellen.

### Das Start-Byte

Bei DMX-A kann das Startbyte aber auch Werte ungleich 0 (von 1 bis 255) annehmen. Die Empfänger (Dimmer oder andere Steuerungsparameter) sollen dabei alle Pakete, die mit einem Startbyte ungleich 0 eingeleitet werden, ignorieren. Damit besteht am DMX-Bus z. B. die Möglichkeit, RDM-Anfragen (Remote Device Management = Rückmeldungen) zu starten oder neue Software in die Geräte zu laden. Da es aber DMX-Geräte auf dem Markt gibt, die das Startbyte ignorieren und die Kanalbytes auch bei einem Startbyte ungleich 0 beachten, wird diese Funktionalität nicht in allen Anwendungen auch tatsächlich genutzt.

### Die Daten-Bytes und Kanäle

Die Daten-Bytes starten mit einem Start-Bit bei einem niedrigen Pegel des Busses. Anschließend werden die 8 Daten-Bits gesendet. Danach folgt ein 8 µs langer Stopp-Bit. Als Letztes folgt eine Pause zwischen Daten-Bytes, die typisch 0 µs lang ist, allerdings bis zu einer Sekunde (1.000.000 µs) andauern kann.
Die Adressierung der DMX-Kanäle beginnt bei der Adresse 1 und endet bei 256 für DMX-256 und 512 für DMX-512. Eine Adressierung der Kanäle ist nicht möglich – das erste gesendete Kanalbyte ist für den ersten Kanal, das zweite Kanalbyte für den zweiten Kanal etc. Das Timing dieser Bytes (inklusive des Start-Bytes) ist in der oben stehenden Tabelle einsehbar. Sollte die Übertragung zu einem beliebigen Zeitpunkt unterbrochen werden, kann sie durch das Senden eines neuen DMX-Paketes wieder aufgenommen werden. Die Break-Sequenz führt automatisch zu einem Zurücksetzen aller noch offenen Übertragungen.

## Aufbau des Busses

Der Bus ist in Bustopologie nach Standard EIA-485 aufgebaut („Daisy Chain“). An einen Sender können bis zu 32 Empfänger angeschlossen werden, danach ist ein Repeater erforderlich. Für Verzweigungen müssen DMX-Splitter eingesetzt werden. Jede Kette muss am Ende mittels eines 120-Ohm-Abschlusswiderstands (auch Terminierungswiderstand oder Terminator genannt) abgeschlossen werden, um Signal-Reflexionen zu verhindern. Diese Aufgabe kann auch das letzte DMX-Gerät in der Kette übernehmen (z. B. schaltbarer Abschlusswiderstand oder automatisches Erkennen als letztes Glied in der Kette).
Da das Signal hohe Frequenzen enthält (125 kHz Rechteck, Grenzfrequenz ~ 2,5 MHz) muss ein entsprechend abgeschirmtes Kabel mit 110 Ω Impedanz verwendet werden. Vorzugsweise kommt Twisted-Pair-Kabel in Betracht, es sind jedoch auch spezielle Mikrofonkabel auf dem Markt, deren elektrische Werte sich auch für DMX-Übertragung eignen. Dennoch ist es gebräuchlich, herkömmliche Mikrofonkabel ohne spezifizierte Impedanz zu verwenden, oft auch in Verbindung mit einer Stagebox.
An jedem Gerät muss die Busadresse eingestellt werden, bei Geräten, die mehrere Kanäle empfangen, ist das die Startadresse (ein 12-kanaliger Dimmer mit der Startadresse 25 empfängt also die Kanäle 25 bis 36). Dies ist jedoch, besonders bei Verwendung von intelligentem Licht, eine große Fehlerquelle. Falsche Adressierung der Geräte führt meist zu unerwünschtem Verhalten, da sie auf Steuerdaten reagieren, die nicht für sie bestimmt sind, oder Kanäle verschoben sind. Andererseits ist es durchaus möglich, zwei Geräte absichtlich gleich zu adressieren, etwa wenn insgesamt zu wenig Kanäle zur Verfügung stehen, oder um die Programmierung der Lightshow zu vereinfachen. Identisch adressierte Geräte mit gleicher Kanalbelegung verhalten sich dabei völlig identisch.

## Verwendung

Die ursprüngliche Verwendung, für die DMX konzipiert wurde, war die Ansteuerung von Lichtkreisen über Dimmer. Dafür erschien die Anzahl von 512 Kanälen und die Auflösung von 8 bit pro Kanal (entspricht 2$^8$ = 256 Stufen pro Kanal) als ausreichend. Inzwischen werden jedoch praktisch sämtliche Geräte der Bühnen- und Effektbeleuchtung per DMX angesteuert. Beispiele sind Dimmer, Farbwechsler, Stroboskope, Scanner und Moving Heads. Gerade die beiden letztgenannten benötigen zur Steuerung ihrer vielfältigen Funktionen mehrere Kanäle. Darüber hinaus ist die Auflösung eines Kanals zu gering, um glatte Fahrten eines Spiegels oder Moving Heads zu ermöglichen. Daher werden für die zwei Bewegungsachsen Pan und Tilt meist je zwei Kanäle (z. B. Pan Coarse und Pan fine) verwendet. Daraus ergibt sich, dass das Pan-Attribut mit 16 bit aufgelöst wird (entspricht dann 2$^{16}$ = 65536 Stufen). Daraus resultieren für viele Geräte die großen Kanalzahlen (Beispiel für einen Scanner: 2 Kanäle Pan, 2 Kanäle Tilt, Lampe, Helligkeit (Dimmer), Shutter, 1. Goborad, 2. Goborad, Goborotation, 1. Farbrad, 2. Farbrad, Effektrad, Fokus, Zoom, Gerätesteuerung = 16 Kanäle für ein Gerät).
Die DMX-Signale werden in der Regel von einem Controller erzeugt, es gibt aber auch Lichtsteuerungs-Software, die DMX über spezielle Rechnerschnittstellen (DMX-Einbaukarte oder USB-DMX-Geräte) ausgeben kann.

## USB-DMX

USB-DMX ist eine Steuerung für DMX-Geräte via Computer (USB-Anschluss).
Durch ein USB-DMX-Interface werden die Befehle einer Steuerungssoftware in den DMX-Standard umgewandelt. Damit kann in einigen Anwendungsfällen auf ein Lichtmischpult verzichtet werden. Außerdem können mit einigen Interfaces zusätzlich DMX-Daten in den PC eingelesen und dort weiterverarbeitet werden, etwa um Computerprogramme über DMX zu steuern.
USB-DMX-Steuerungen lassen sich in zwei Kategorien einteilen:
* Klassische Lichtpulte, die über den USB-Port mit einem PC oder Notebook verbunden werden, auf dem eine das Pult funktional erweiternde Software läuft. Der Vorteil dieser Systeme: Tasten und Fader am Pult erlauben einen schnellen und präzisen Zugriff auf die Funktionen.
* PC-Software, die über den USB-Port die Befehle direkt an ein USB-Interface weitergibt und damit ohne klassisches Pult auskommt. Der Vorteil dieser Systeme liegt in der nahezu unbegrenzten Funktionsvielfalt von PC-Software und dem günstigen Preis, da kein Extra-Pult benötigt wird. Dennoch werden häufig zusätzlich Eingabegeräte in Form eines klassischen Lichtpultes eingesetzt, da die Steuerung der Lichtsoftware über Schieberegler und Tasten eine schnellere und direktere Kontrolle erlauben. Darüber hinaus bieten einige Software-Hersteller zusätzliche Funktionalitäten, die über die reine Lichtsteuerung hinausgehen. Man spricht dann von ILPS-Systemen (Integrated Light-Planning and Steering-Systems), wenn auch die Lichtplanung integrierter Bestandteil des Gesamtsystems ist.

## W-DMX

W-DMX (Wireless-DMX) ermöglicht die kabellose Verbindung zu einem DMX-Gerät. Hierzu werden eine Sende- und eine Empfangsstation benötigt.

## Alternativen

Mittlerweile ist Ethernet im Übertragungsbereich weit verbreitet. Hierbei muss generell unterschieden werden zwischen der Nutzung von physischer Ethernet-Verkabelung mit herkömmlichen elektrischen DMX-Signalen und der Verwendung von Protokollen zur Übertragung von DMX-Informationen auf Ethernet ab der Sicherungsschicht.
Bei der Nutzung von Ethernet-Kabeln mit elektrischen DMX-Signalen werden einfache Anschlusskonverter verwendet, um größere Strecken kabelgebunden zu überbrücken. Die übertragenen Signale sind vom Pegel und Protokoll identisch zu normalem DMX und mit Ethernet weder elektrisch noch protokolltechnisch kompatibel, es wird ausschließlich die Ethernet-Verkabelung genutzt.
Eine andere Möglichkeit zur Übertragung von DMX-Signalen stellt die Verwendung von Ethernet ab der Sicherungsschicht dar, womit die Signale mindestens geswitched und ggf. auch geroutet werden können. Die Vorteile liegen in der großen Verbreitung von Ethernet-Technologie, sowie in der sehr hohen Übertragungsgeschwindigkeit und Flexibilität und der Möglichkeit, diese direkt auf einem normalen PC mit einer handelsüblichen Netzwerkkarte zu erzeugen. Dies vereinfacht die Verwendung von PC-basierter Steuerungssoftware und reduziert die Einstiegskosten, jedoch wird dann zum Übergang auf native DMX-Infrastruktur ein Konverter benötigt. Lösungen wie z. B. Art-Net nutzen dies, um mehrere DMX-Universen über eine einzige Ethernet-Leitung zu übertragen, während z. B. ACN oder PSI Neuentwicklungen mit erweiterter Funktionalität darstellen. Da diese Lösungen auf dem Internet Protocol (IP) aufsetzen (meist mittels UDP/IP), ist ihre Verwendung zudem nicht auf Ethernet beschränkt, sondern zumindest theoretisch auf allen Medien, die IP unterstützen, möglich.