What is DMX512?

What is DMX?

DMX is a digital control protocol used by the entertainment industry to control lighting. DMX can be used to control dimmer channels, intelligent lighting and lots of other things besides, such as smoke machines, strobes, and so on.

Why was DMX invented?

In the beginning there were just dimmers. In the early days these were large wirewound resistors. These were a little cumbersome and large scale scene changes and blackouts required a herculean effort (often involving a broom handle over all the knobs). To keep the wiring economical, the dimmers were usually located at the side of the stage.

In the 1960's, electronic dimmers became available. Suddenly there was the possibility to have the lighting control console at the rear of the audience where the operator could see what was happening. Each dimmer was controlled by a low voltage control signal (usually +10V or -10V meaning "full on" and 0V meaning "off"), which meant that even a six channel dimmer required a minimum of 7 cables between the control desk and the dimmer, often 8 (control cables 1-6, ground and power). A large dimmer installation in a theatre would require many cores to operate all the channels, worse still any touring production would have to carry a costly multicore around. This type of system is now refered to as analogue control, and there are still many budget lighting systems that use this method.

A few manufacturers produced systems that could send multiple analogue control voltages down a single cable, such as Strand's D54 and the AMX512 system, but these suffered from their own problems with interference and cable length.

When digital electronics became affordable, various digital control systems began to be invented. In 1986 USITT (U.S. Institute of Theatre Technology) developed a protocol principally for dimmer control, with a view to generating a standard protocol. As more manufacturers began to adopt it the standard was formalised as DMX512(1990). Those with their own protocols also began to switch over to DMX, though sometimes producing equipment with both standards.

So how does it work?

Rather than sending a continuous control value down several bits of cable, one for each channel, like an analogue control system, the DMX transmitter chops up the information, sending the value of each control channel down one piece of cable one after another as serial digital data. So it will send a value for channel 1 at 50%, then channel 2 at 75%, then channel 3 at 7% and so on...... , when it has reached the heighest channel to be transmitted it starts again at channel 1. This is called multiplexing, which is where DMX gets its name (Digital MultipleXing).

What is actually transmitted?

Before any information is sent the transmitter sends a timed pulse of "zero" level, which is called the break time. This tells all of the equipment listening that information is about to be transmitted.

Next, a code is sent called the "start code". This tells the receivers what sort of data is being sent. Normally it is zero meaning "channel level information".  

Finally, all of the channel information is sent one channel at a time, up to a maximum of 512 channels, (which is why DMX is often referred to as DMX 512). Each 'channel' is an 8 bit byte. A controller may not necessarily send out all 512 channels.

Then the whole process starts all over again.

How does the equipment know how to respond?

So that each piece of equipment knows which of the 512 channels to respond to, it is given an 'address'. This is basically a channel number. So if we wanted to control a piece of equipment using channel 13 of the desk then we would set the address of the piece of equipment to 13.

All the equipment then has to do is look for the break time, look at the startcode, and then count through the channel information until is receives channel 13, which might be say a value of 127, which would be decoded as 50%.

Does each piece of equipment receive just one channel?

No, a piece of equipment can receive as many channels as it likes. A 6 channel dimmer pack, for instance, would require 6 channels of information. So if we set the address at 13 as in the previous example, the dimmer would see the six channels from 13 onwards, i.e. 13-18. This would result in the following situation.

Control Channel 13 = Dimmer Channel 1
Control Channel 14 = Dimmer Channel 2
Control Channel 15 = Dimmer Channel 3
Control Channel 16 = Dimmer Channel 4
Control Channel 17 = Dimmer Channel 5
Control Channel 18 = Dimmer Channel 6

The next dimmer's address could be set to start at channel 19 (this is why the Address is sometimes referred to as the Start Address).

Some intelligent lighting can require many control channels to control different aspects such as colour, position, focus etc. This can mean that the maximum of 512 control channels is exceeded. In the case of larger lighting desks, two, four or even more DMX outputs are available each giving 512 channels. Each output chain is referred to as a DMX Universe.