- Jun 07, 2018 -


The DMX512 protocol was first developed by the USITT (American Theater Technology Association) to use a standard digital interface to control dimmers from the console. The DMX512 surpasses the analog system but does not completely replace the analog system. The simplicity, reliability, and flexibility of the DMX512 make it quickly the protocol of choice for funding. In addition to dimmers, a growing array of control devices is evidence. DMX512 is still a new field in science, with all kinds of wonderful technologies based on rules.

design standards

The DMX512 is designed around the industry-standard EIA-485 interface. EIA-485 belongs to the "electrical" end of the interface, voltage, current, and so on.

The system is based on the downward symmetrical transmission of shielded conductor twisted pairs. This winding structure ensures that the interference generated will act equally on both signals, thus ensuring consistent digital phasing. The wires used should be suitable data wires made up of one or two twisted pairs, foils and woven screens. Symmetric audio conductors cannot do this.

Normally, as with any segment, there should be two terminals at each end of the wire. The lighting console is usually on one end as a terminal, and the other end should only have a 120Ω resistor. The EIA485 specification only supports "daisy chains" or serial networks consisting of up to 32 "unit loads" per segment. Manufacturers claim that each segment can be up to 1000m. However, it is important to point out that the role of the repeater should take into account about 700m or 800m, which can prevent environmental anomalies.

Needle assignment

The pin assignment of the XLR connector is as follows:

needle line signal

1,shield Ground/0 volts

2,Internal conductor (黒) data-

3,Internal conductor (white) Data +

4,Internal conductor (green) Alternate data -

5,Internal conductor (red) Alternate data +

The DMX512 control cable uses a 5-pin XLR (sometimes 3-pin) to connect equipment (see Table 1); the female interface is for the transmitter and the male interface is for the receiver

The specification suggests using two pairs of wires (4 connections) for shielding, although only one pair is required. The second pair of conductors is used in unspecified optional situations. It must be noted that some dimmers use these lines to indicate fault and status information. If the dimmer uses a second channel, it requires specially configured splitters and repeaters.

The safest way to connect lines to logic levels is to use a "standard" interface IC, the SN75176B from Texas Instruments. Burr-Brown's ISO485P is a good choice for connection and isolation. Use these interface methods to provide each unit with a nominal unit load that allows up to 32 receivers to be installed on the segment. It is not recommended to connect a high-sensitivity opto-isolator directly across the line by a direct-wired interface. It provides a load that is about five times greater than the normal receiver load, thus reducing the number of receivers that can be installed in the segment. It can also cause distortion, increase the error rate and cause the EIA485-compliant receiver to malfunction.

Relevant information

Data transmission is based on an 8-bit asynchronous serial protocol with a start bit (low) and two stop bits (high) with no parity. Therefore, a data frame has 11 bits. Since the width of each bit is 4us, it takes 44us to send one frame. If the line is to send a continuous stream of data, it will produce a 250,000 b/s baud rate, or 250 kbps.

An 8-bit word allows 256 independent levels to be sent from 0 to 255 for each dimmer.

The start and stop bits are used to synchronize the transmitter and receiver. The data line is usually at a high level; it is actually at a high level (more often in this state) when it is idle. The appearance of the start bit causes the receiver to be put into operation, and the subsequent 8-bit data is scanned and decoded (hopefully). The receiver then waits for the stop bit to come and the process will reappear after the stop bit has elapsed. We need to stop the bit for two reasons: let the receiver have enough time to process the input data; let the line in the high state, so that the next "start" can be detected. Figure 1 depicts the bit level in a frame that contains data "0" and "255".

So far it has been explained very clearly, but not yet finished. The DMX512 can support up to 512 dimmers. Now that we only see the first one, how can we handle data for all dimmers? The answer is simple, just repeat this process! OK, it's that simple. However, the current situation is not so simple. We have obtained a data stream on the segment, but there is no way to discern which frame belongs to which dimmer. See the "DMX Package" section for tips.


The DMX512 package is the core of this standard. It consists of a set of frames containing deep synchronization information. The deep information is a "Break" and a "Mark-after-break". It is this information that allows the receiver to detect the start of a frame and therefore be able to process the received data. The frame timing check shows that the maximum time the line is low is 4 祍 (start bit) + 8 祍 4 祍 (data bit) = 36 祍, but a "Break" contains at least 88 祍 of "low", The difference between the two is easily detected and can be used for dimmer synchronization. "Mark-after-break" is a "high" state on the line, at least 8 hours in width, "Mark-after-break" is necessary because it will detect "Break", otherwise the beginning of the frame will follow "Break" keeps the line going low. This will be very confusing! A figure 2 describing the "package" helps explain the above problem.

A "0" value indicates that the following frame contains dimmer level information. The other 255 codes are not defined in the specification, but some manufacturers use other codes to send product-specific information. A dimmer that receives a non-zero start code "will" ignore the rest of the packet, but be careful that it will not always be verified!

Timing summary

The timing is summarized as follows:

Minimum Maximum

Break 88μs 1 second

Inter-frame-time 0μs 1 second

"Inter-frame-time" is used to reduce the data rate. Some dimmers cannot process high-speed data, or they can be used to "insert" the sending process while the console is processing other tasks. Its value can be between 0 and 1 second.

The specifications set some restrictions on timing.

From the above, it can be seen that the data rate is highly scalable, but it should be noted that the state of the line is not allowed to remain in the “high” or “low” state for more than one second, and the condition of an error should be considered at this time.

Almost all misoperations that occur in DMX512 systems are due to lack of system knowledge. One of the problems that caused the problem was in signal separation. Remember that the system runs as a segment end. Simply separating the lines (seemingly logical) will not work due to repeated changes in ohmic quantities. Doing so easily leads to signal destruction.

The solution is to use “spliters” and “repeaters”, and the power-on device “listens” to the data on the segment and then broadcasts it, or “reproduces” on the next segment as needed.

Related Industry Knowledge

Related Products

  • 18X10W RGBW 4in1 LED PAR ZOOM
  • DMX Controller Titan V9.1,V10.0, V10.1 Tiger Touch 12 DMX512 Outputs Lighting Console , DMX Console
  • 350w Led Moving Head 3in1 Waterproof Led Moving Head Light
  • 600W Dual Hazer DMX Haze Machine
  • Pearl Expert Pro, Pearl Titan Lighting Console, Pearl Expert Moving Light Controller
  • 1500w DMX Multi Angle Smoke Fog Machine