DMX512


ANSI E1.11 – 2008 (R2018)

DMX512 is a serial protocol used to control lighting equipment like dimmers. It was developed in 1986 by the USITT and updated in 1990 and 2004. Detailed information on the standard can be found on the ESTA website.

The protocol is very straightforward; basically, it does nothing more than repeatedly sending a block of 512 bytes over a serial RS485 line. These 512 bytes, also called a universe, represent 512 different dimmer or parameter values (for example, color or gobo number). The simplicity of the protocol makes it possible to use small micro controllers to send/receive the DMX signal. One of the hardest things to get right is the bit timing; since DMX uses a 250kbit/sec speed, it is not possible to generate DMX with a standard PC serial port (apart from the speed standard, PC serial ports are RS232 and not RS485)

DMX signal timing

DMX uses a standard 8N2 byte encoding, which means 1 startbit, 8 databits and 2 stopbits. To know when a new block of 512 byte starts, a special reset sequence is transmitted. The Figure below shows how a DMX signal is built up; the gray areas indicate that these bits can be one or zero depending on the user data. (click on the image for a larger version).

DMX timing diagram

DMX timing diagram
  1. SPACE for BREAK
  2. MARK after BREAK (MAB)
  3. Slot Time
  4. START bit
  5. LEAST SIGNIFICANT Data BIT (LSB)
  6. MOST SIGNIFICANT Data BIT (MSB)
  7. STOP Bit
  8. STOP bit
  9. MARK time between slots
  10. MARK before BREAK (MBB)
  11. BREAK to BREAK time
  12. RESET Sequence (BREAK, MAB, START Code)
  13. DMX512 Packet
  14. START CODE (SLOT 0 Data)
  15. SLOT 1 Data
  16. SLOT n DATA ( Max. 512)

The timing for the signal, as described in the draft DMX-A specification, is shown in the following table.

DesignationDescriptionTransmitterReceiver
MinTypicalMaxMinTypicalMax
-Bit Rate245250255245250255kbits/sec
-Bit Time3.9244.083.9244.08µs
-Min. Update time for 513 slots-22.7--22.7-ms
-Max. Refresh rate for 513 slots-44--44-updates/sec
1SPACE for BREAK92176-88176-µs
2MARK after BREAK (MAB)12-< 1.008-< 1.00µs
s
9MARK Time between slots0-< 1.000-< 1.00s
10MARK before BREAK (MBB)0-< 1.000-< 1.00s
11BREAK to BREAK time1204--
1.00
1196--
1.25
µs
s
13DMX512 Packet1204--
1.00
1196--
1.25
µs
s

Apart from the stricter definitions of the electrical signals and the timing of the signal, the DMX-A standard also standardized the use of the START CODE, which normally was always zero. For the exact DMX-A description, one should wait for the release of the standard. Information on the DMX-A standard can be found on the ESTA website.

DMX over Ethernet

Since Ethernet has a number of advantages over standard serial-DMX, such as multiple universes over one cable and better error detection, most lighting manufacturers offer DMX over Ethernet. The major disadvantage is that the equipment of manufacturer A can’t talk to the equipment of manufacturer B, since there is no standard way of transporting DMX over Ethernet. The only manufacturers that made their protocols public are Artistic License (Art-Net) and ENTTEC.

The ESTA recognized that problem and is working on a new protocol that should solve this problem. The ACN protocol will be able to do a lot more than plain serial DMX.


See also