We've launched our new site at www.openlighting.org. This wiki will remain and be updated with more technical information.
Difference between revisions of "DMX512-A"
From wiki.openlighting.org
(New cable info) |
|||
Line 1: | Line 1: | ||
''This information is not complete.'' The purpose is to introduce the protocol and the details of a packet and maybe explain the required timing of the signal. --[[User:Beier|Beier]] 06:21, 28 January 2007 (PST) | ''This information is not complete.'' The purpose is to introduce the protocol and the details of a packet and maybe explain the required timing of the signal. --[[User:Beier|Beier]] 06:21, 28 January 2007 (PST) | ||
− | The last version of the standard is called USITT DMX512-A and it is maintained by ESTA since 1998. In 2004 it was made an ANSI standard too, named "E1.11, USITT DMX512-A" or "ANSI E1.11-2004". In 2008 it was revised [http://www.esta.org/tsp/news/newsdetails.php?newsID=291] . | + | The last version of the standard is called [http://usitt.org/ USITT] DMX512-A and it is maintained by [http://esta.org ESTA] since 1998. In 2004 it was made an ANSI standard too, named "E1.11, USITT DMX512-A" or "ANSI E1.11-2004". In 2008 it was revised [http://www.esta.org/tsp/news/newsdetails.php?newsID=291] . |
+ | |||
+ | DMX is characterized by its simplicity in how data are transferred from a controller to receiving equipment. | ||
== Electrical == | == Electrical == | ||
DMX is based on the balanced serial connection standard [http://en.wikipedia.org/wiki/EIA-485 EIA-485-A] (a.k.a RS485). | DMX is based on the balanced serial connection standard [http://en.wikipedia.org/wiki/EIA-485 EIA-485-A] (a.k.a RS485). | ||
− | Only 5-pin XLR meets the standard (and products may | + | Only 5-pin XLR meets the standard (and products may meet the requirement by supplying adapters). |
− | Since the revision in 1998 the cables itself are not specified in DMX512-A (so it can be specified in separate standards?), so in general the cable must fulfill the EIA-485 requirements of 120 Ohms (around 250 kHz) shielded twisted pair. One transmitter must be connected to maximum 32 receivers. | + | Since the revision in 1998 the cables itself are not specified in DMX512-A (so it can be specified in separate standards?), so in general the cable must fulfill the [http://en.wikipedia.org/wiki/EIA-485 EIA-485] requirements of 120 Ohms (around 250 kHz) shielded twisted pair. One transmitter must be connected to maximum 32 receivers. |
− | Other cable types have been examined to determine how well they are for DMX usage (as loose cables or in fixed building installations). The last report more or less concludes that for fixed installations, unshielded twisted pair in CAT 5 is good enough, even when it is mixed with 120 Ohm cable meant for EIA-485. The pulses from reflections and general degradation is not significant and harmless. See the three parts at http://www.esta.org/tsp/working_groups/CP/DMXoverCat5.htm . | + | |
+ | Other cable types have been examined to determine how well they are for DMX usage (as loose cables or in fixed building installations). The last report more or less concludes that for fixed installations, unshielded twisted pair in [http://en.wikipedia.org/wiki/Category_5_cable CAT 5] is good enough, even when it is mixed with 120 Ohm cable meant for EIA-485. The pulses from reflections and general degradation is not significant and harmless. See the three parts at http://www.esta.org/tsp/working_groups/CP/DMXoverCat5.htm . | ||
=== Transmitter/receiver topologies === | === Transmitter/receiver topologies === | ||
Line 17: | Line 20: | ||
==The protocol== | ==The protocol== | ||
− | '''A Universe''' contains 512 addresses and a single DMX line (cable) can only transmit one universe. I.e. a controller with two universes need two DMX lines (daisy chains including splitters). A | + | '''A Universe''' contains 512 addresses and a single DMX line (cable) can only transmit one universe. I.e. a controller with two universes need two DMX lines (daisy chains including splitters). A universe is normally thought of as an address space (in the controller), the cables that transmits it and the equipment that receives it. |
* The DMX signal is made up of a sequence - called a ''packet'' - which is sent over and over again (to increase robustness). | * The DMX signal is made up of a sequence - called a ''packet'' - which is sent over and over again (to increase robustness). | ||
− | * It is up to the controller/transmitter to decide how many of the 512 values is sent. | + | * It is up to the controller/transmitter to decide how many of the 512 values is sent. A shorter packet means faster cycles. |
− | * A receiver must be set or programmed to an address it listens to. If a receiver listens to multiple addresses, the set one is the first. | + | * A receiver must be set or programmed to an address it listens to. If a receiver listens to multiple addresses, the set one is the first. (It depends on implementation.) |
* Multiple receiver can listen to the same address - the DMX system does not care. | * Multiple receiver can listen to the same address - the DMX system does not care. | ||
Line 35: | Line 38: | ||
* The address number is not sent over the lines, so the receiver must count the values from the start of the sequence to find the wanted value. | * The address number is not sent over the lines, so the receiver must count the values from the start of the sequence to find the wanted value. | ||
* The ''start code'' is used to alter the meaning of the data bytes in the rest of the packet. The default is 0, and the remaining 255 values is rarely used (by definition 0 means dimmers, but is used for intelligent light as well). | * The ''start code'' is used to alter the meaning of the data bytes in the rest of the packet. The default is 0, and the remaining 255 values is rarely used (by definition 0 means dimmers, but is used for intelligent light as well). | ||
+ | |||
+ | Note that some people and texts use the words frame and packet in the opposite sense than stated here. | ||
+ | |||
<br> | <br> | ||
'''Sources and additional reading:'''<br> | '''Sources and additional reading:'''<br> |
Revision as of 03:02, 10 June 2009
This information is not complete. The purpose is to introduce the protocol and the details of a packet and maybe explain the required timing of the signal. --Beier 06:21, 28 January 2007 (PST)
The last version of the standard is called USITT DMX512-A and it is maintained by ESTA since 1998. In 2004 it was made an ANSI standard too, named "E1.11, USITT DMX512-A" or "ANSI E1.11-2004". In 2008 it was revised [1] .
DMX is characterized by its simplicity in how data are transferred from a controller to receiving equipment.
Electrical
DMX is based on the balanced serial connection standard EIA-485-A (a.k.a RS485). Only 5-pin XLR meets the standard (and products may meet the requirement by supplying adapters). Since the revision in 1998 the cables itself are not specified in DMX512-A (so it can be specified in separate standards?), so in general the cable must fulfill the EIA-485 requirements of 120 Ohms (around 250 kHz) shielded twisted pair. One transmitter must be connected to maximum 32 receivers.
Other cable types have been examined to determine how well they are for DMX usage (as loose cables or in fixed building installations). The last report more or less concludes that for fixed installations, unshielded twisted pair in CAT 5 is good enough, even when it is mixed with 120 Ohm cable meant for EIA-485. The pulses from reflections and general degradation is not significant and harmless. See the three parts at http://www.esta.org/tsp/working_groups/CP/DMXoverCat5.htm .
Transmitter/receiver topologies
To avoid ground loops between equipment and improve reception performance, the transmitters and receivers for the DMX line must use a good combination of transmitter/receiver topologies. Some are not allowed, some are accepted with warning labels and some are preferred. See http://www.usitt.org/standards/DMX512_FAQ.html#FAQ_15 .
Transmitters should use "earth ground" as a reference for the positive/negative voltages that is put on the two data lines. Receivers should be "isolated".
The protocol
A Universe contains 512 addresses and a single DMX line (cable) can only transmit one universe. I.e. a controller with two universes need two DMX lines (daisy chains including splitters). A universe is normally thought of as an address space (in the controller), the cables that transmits it and the equipment that receives it.
- The DMX signal is made up of a sequence - called a packet - which is sent over and over again (to increase robustness).
- It is up to the controller/transmitter to decide how many of the 512 values is sent. A shorter packet means faster cycles.
- A receiver must be set or programmed to an address it listens to. If a receiver listens to multiple addresses, the set one is the first. (It depends on implementation.)
- Multiple receiver can listen to the same address - the DMX system does not care.
A packet has the following sequence:
- Break
- Mark After Break (MAB)
- The "start code" frame (Sometimes called address 0) Alternate start codes
- 1-512 frames with the values of the channels. The first value is for address "1", the next for address 2 etc.
(Note: A packet must have a minimum length in time)
- A frame contains the value for one address, has one start bit and two stop bits.
- The address number is not sent over the lines, so the receiver must count the values from the start of the sequence to find the wanted value.
- The start code is used to alter the meaning of the data bytes in the rest of the packet. The default is 0, and the remaining 255 values is rarely used (by definition 0 means dimmers, but is used for intelligent light as well).
Note that some people and texts use the words frame and packet in the opposite sense than stated here.
Sources and additional reading:
Ujjal's DMX512 Pages (down-to-earth walk-through)
ePanorama (thorough descriptions of most details, lots of links)
Wikipedia
USITT
The anatomy of DMX512 (a nice, short overview)