AN1465

AN1465
Digitally Addressable Lighting Interface (DALI) Communication
Author:
Shaima Husain
Microchip Technology Inc.
The Digitally Addressable Lighting Interface (DALI) has
emerged as a standard in Europe to address growing
power issues, mostly for commercial and industrial
purposes. DALI is part of the IEC 60929 specification,
and relates specifically to digitally controlled dimmable
fluorescent ballasts. DALI type ballasts can run at lower
power levels than standard magnetic ballasts.
Commercial development of DALI started around 1998.
DALI consists of a two-wire serial bus and requires a
special DALI power supply. The Master sends 16-bit
Manchester encoded data packets, and the ballasts
can respond with an 8-bit Manchester encoded data
packet. Multi-Masters are allowed, and two Masters
can share the same ballast. There are 64 channels, or
individual addresses, available for the ballasts to be
connected to one interface line. Each DALI bus can
have 16 groups at the maximum, and there are 16
scenes available. There is no error checking in the
DALI protocol. This application note describes the
basic communication between the control device and
the control gear, which includes explanation of
electrical specifications, timing, packet formats and
Manchester encoding/decoding.
FIGURE 1:
TERMINOLOGY
• Control Gear: Ballast or Sensor/Receiver
• Control Device: Controller/Transmitter
• Forward Frame: Packet sent from the control
device to the control gear
• Backward Frame: Response packet sent from
the control gear to the control device
• Short Address: Address of an individual control
gear in the system
• Group Address: Address to a group of control
gear
• Broadcast: Address used to address all the
control gears at once
• Direct Arc Power: Power level sent to an individual ballast or sent as a broadcast to all control
gear, to immediately set the lamps to that power
level
PHYSICAL LAYER
Topology
Unlike analog systems, DALI does not require any hardwired power circuit control groups. The combination of
individual ballast addressing with digital switching
eliminates vertical switch wiring. DALI has a free-form
layout (Figure 1). Daisy chain, star topology and multidrop are all allowed. A combination of two or more
topologies is also allowed.
DALI FREE-FORM LAYOUT
 2012 Microchip Technology Inc.
DS01465A-page 1
AN1465
Electrical Specifications
FIGURE 2:
The physical low level or active state for DALI has been
defined with the interface voltage of < 9.5V. The highlevel condition, or DALI idle, is an interface voltage
between 9.5V to 22.5V, most common being 16V.
Maximum system current is limited to 250 mA.
Response time of the current limiter circuit is < 10 µs.
Each component connected to the interface may
consume a maximum of 2 mA. Connectors are nonpolarized at the receiver. DALI is usually optically
isolated from the microcontroller and has a data
transfer rate of 1200 bits per second.
DALI ELECTRICAL
SPECIFICATIONS
Connectors
There are no specific connectors dedicated for the
DALI interface. Two-wire connectors with common
screw terminals or push fit suffice (Figure 3).
FIGURE 3:
TWO-WIRE CONNECTORS
Cabling
Due to the transmission rate, there is no need for special cables or wires. Two-wire standard electrical
cables can get the job done. 18 AWG, class 1 or 2
cables (solid or stranded) are commonly used on many
fixtures. They are often purple in color and usually
rated 600V. A maximum voltage drop of up to 2V is
allowed across the connecting wires from the interface
supply to each system component. The maximum
distance between two communicating units should be
300 meters (984 feet).
DALI CIRCUITS
There is no specification or recommendations on how
to implement the circuit design for DALI. The following
optically isolated circuit interfaces a PIC16F1947 to the
DALI bus.
DS01465A-page 2
 2012 Microchip Technology Inc.
AN1465
FIGURE 4:
ISOLATED COMMUNICATIONS CIRCUIT
FIGURE 5:
ISOLATED COMMUNICATIONS CIRCUIT DIAGRAM
DALI BUS
4
2
4
1
U2
R4
+5V
R6
2.2K
1
3
1
R5
330R
D4
MM5Z5V1
D5
U1
4
Q2
MMBT2222A-TP
DALI TX
(Any GPIO)
2
3
TCLT1000
120R
R7
R8
10K
1K
DALI RX
(Interrupt Pin)
BGX 50A E6327
2
3
TCLT1000
DALI Power Supply Circuits
DALI Transmission
DALI power supply needs fast response time and
efficient current limiting. This simple circuit works well.
DALI uses Manchester (bi-phase) encoding to send the
Start bit and the information bits. The information rate
is 1200 bps with an acceptable range of ± 10%. One bit
time is 833.33 µs. The Most Significant bit (MSb) is sent
out first (Figure 7).
FIGURE 6:
CIRCUIT
+12-22V DC
Out DALI+ (D)
 2012 Microchip Technology Inc.
DS01465A-page 3
AN1465
FIGURE 7:
DALI TRANSMISSION
Forward Frame (control device –› control
gear)
Forward frame is the packet sent by the control device
to the control gear. It consists of one Start bit, eight
address bits, eight data bits and two Stop bits. The bits
are sent MSb first.
FIGURE 8:
FORWARD FRAME
s = Start bit which is a logical 1
YAAA AAAS = Address byte
XXXX XXXX = Data byte
I = Stop bit (Idle line)
DS01465A-page 4
 2012 Microchip Technology Inc.
AN1465
Addressing scheme for Address byte ‘YAAA AAAS’:
Y = 0 indicate individual or short address.
Address byte for Short Address: 0AAA AAAS (0-63)
Y = 1 indicate group address or broadcast.
Address byte for group address: 100A AAAS (0-15)
Address byte for broadcast: 1111 111S
S = Selector bit:
If ‘0’ data byte = direct arc power level
If ‘1’ data byte = command
Special Commands:
1010 0000 to 1111 1101
Backward Frame (control gear –› control
device)
Backward frame is the response packet sent by the
control gear back to the control device. It consists of
one Start bit, eight data bits and two Stop bits. The bits
are sent MSb first.
FIGURE 9:
BACKWARD FRAME
s = Start bit, which is a logical 1
Timing
XXXX XXXX = Data byte
As mentioned previously, the bit transfer rate for DALI
is 1200 bits per second with room for an error of ±10%.
‘Te’ is used to indicate half-bit time, which is 416.67 µs.
A forward packet lasts for 38 Te, which is equal to 15.83
ms. A backward frame takes 22 Te or 9.17 msec. The
time between two consecutive forward frames is at
least 22 Te. The time between forward frame and backward frame is greater than or equal to 7 Te, and less
than or equal to 22 Te. The time between backward
frame and forward frame is at least 22 Te.
I = Stop bit (Idle line)
Backward frame data byte: In a response frame
(Backward frame) ‘0xFF’ is considered a ‘Yes’. If a
response is expected and the line stays Idle, response
is considered a ‘No’ from the control gear. Other values
vary depending on the command the control gear is
responding to.
FIGURE 10:
FRAME TIMING
 2012 Microchip Technology Inc.
DS01465A-page 5
AN1465
Manchester Encoding/Decoding
Any packet sent between the control device and control
gear is a bi-phase Manchester encoded packet. The
packet is then decoded, and the address and
messages are then processed accordingly. Our lighting
communication board has a PIC16F1947 microcontroller unit along with an isolated DALI communication
circuit interface and a simple power supply. Please see
“Appendix A” for the schematic details.
1
0
bit-time
Since the signal from the DALI bus is inverted by the
opto-coupler, the following explanation is how the PIC®
microcontroller views the Manchester encoding/decoding.
Manchester Encoding
The outgoing message is encoded using Timer1, and
the packet is sent out using the RC5 pin. An interrupt is
generated using Timer1 every Te, which is 416.67 µs.
Te is the half-bit time, and this is where we want to
change the phase of the signal. If we were sending out
a ‘1’ as our bit, the first half is ‘1’ and at the interrupt the
signal is reversed and vice versa. As a result, the output is a Manchester encoded packet, ready to be
decoded by the control gear if sent by the control
device, or decoded by the control device if sent as a
response by the control gear back to the control device.
The Manchester code is a digital encoding format in
which symbol ‘1’ is represented by a falling edge (high
followed by low), and symbol ‘0’ is represented by a
rising edge (low followed by high). Both the high and
low pulses have equal width, which is equal to half the
bit period.
FIGURE 12:
MANCHESTER
ENCODING OF A BIT
FIGURE 11:
MANCHESTER ENCODING
IDLE
1
1
0
1
0
0
1
0
IDLE
CLK
Signal
Manchester
encoded
DS01465A-page 6
 2012 Microchip Technology Inc.
AN1465
Sample Code
EXAMPLE 1:
void TransmitFrame(void)
{
static uint8_t bitcount = 0;
if (TxFlag.TransmitMode && TE_TMR_INT_ENABLE)
{
switch (makeframe)
{
case start:
......................................
......................................
break;
case alldata:
if (TxFlag.Secondhalf)
{
DATA_OUT ^= 1;
TxFlag.Secondhalf = CLEAR;
bitcount++;
if (bitcount > 15)
{
makeframe=stop;
bitcount = 0;
}
}
else
{
if (FwdFrame.Word & 0x8000) DATA_OUT = DALI_LO;
else DATA_OUT=DALI_HI;
FwdFrame.Word <<= 1;
TxFlag.Secondhalf = SET;
makeframe=alldata;
}
break;
case stop:
..........................................
..........................................
break;
..........................................
..........................................
}
 2012 Microchip Technology Inc.
DS01465A-page 7
AN1465
Manchester Decoding
Manchester decoding is more complicated than
Manchester encoding. As the reception starts, the
receiver, whether it be the control gear or the control
device, makes sure the packet is received in its entirety
starting with the Start bit, then an 8- or 16-bit message
and, finally, at least two idles to indicate the Stop bit.
The decoding is done using the external interrupt pin
RB0 on the PIC16F1947. This pin is specially used to
generate an interrupt every time the phase of the
incoming signal changes. Timer1 is used to generate
interrupt every 3/4th of the bit, so the value is measured
at that point, and that decides whether the bit is a ‘0’ or
a ‘1’. Timer1 is reset and reloaded in the middle of the
bit when the external interrupt happens, and that keeps
the error due to drifting in check.
MANCHESTER DECODING
FIGURE 13:
0
1
1
0
0
Manchester
encoded
¾ bit-time
¾ bit-time
¾ bit-time
¾ bit-time
Manchester
decoded
0
DS01465A-page 8
1
1
0
0
 2012 Microchip Technology Inc.
AN1465
Sample Code
EXAMPLE 2:
void ReceiveFrame(void)
{
static uint16_t count = 0;
static uint16_t HalfBitTime=0;
static uint16_t LoadHalfBitTime=0;
if (RxFlag.ReceiveMode)
{
switch (makeframe)
{
case start:
............................
............................
break;
case address:
if (count <= 7)
{
if (TE_TMR_INT_ENABLE && TE_TMR_INT_FLAG)
{
TE_TMR_INT_FLAG = CLEAR;
TE_TMR_ON=CLEAR;
receivebuff <<= 1;
if (DATA_IN_INT== DALI_LO)
{
SET_INT_FALLING_EDGE();
receivebuff |= 0x01;
}
else SET_INT_RISING_EDGE();
TE_TMR_INT_ENABLE = CLEAR;
TE_TMR_ON = CLEAR;
EDGE_INT_ENABLE= SET;
}
else if (EDGE_INT_ENABLE)
{
EDGE_INT_ENABLE = CLEAR;
TE_TMR_INT_ENABLE = SET;
TE_TMR_VALUE = TMRLoadVal;
TE_TMR_ON = SET;
count++;
}
else
{
RxFlag.Error = SET;
RxFlag.ListenMode = SET;
break;
}
if (count <= 7)
makeframe = address;
else
{
count = 0;
makeframe = data;
EDGE_INT_ENABLE = CLEAR;
EDGE_INT_FLAG = CLEAR;
TE_TMR_INT_ENABLE = SET;
TE_TMR_VALUE = TMRLoadVal;
TE_TMR_ON = SET;
FwdFrame.Byte.Address = receivebuff;
receivebuff = CLEAR;
}
}
break;
.............................................
.............................................
}
 2012 Microchip Technology Inc.
DS01465A-page 9
AN1465
CONCLUSION
The DALI circuit with simple power supply and
Manchester encoded/decoded communication implemented using PIC16F1947 along with the ‘C’ code,
provides a solid foundation for implementing DALI
commissioning and commands for both the control
device, as well as the control gear.
REFERENCES:
[1] International Standard CEI IEC 60929, Third
edition 2006-01
[2] International Standard IEC 62386-101, Edition
1.0 2009-06
[3] International Standard IEC 62386-102, Edition
1.0 2009-06
DS01465A-page 10
 2012 Microchip Technology Inc.
IN
LOOP
IN
J6
1
2
J9
1
2
ED130/2DS EDSTL130/02
TB2
ED130/2DS EDSTL130/02
DALI Bus
TB1
RJSSE-5080-02
J3
1
3
2
J1
U2
3
4
TCLT1000
2
1
R6
2.2K
D4
MM5Z5V1
2
4
6
8
10
12
14
16
INT/RB0
DALI IN
R8
1K
10K
120R
R4
1K
1/4W
R3
PZT2222A
Q1
3
D3
U1
2
1
BAV99-7-F
TCLT1000
4
1
10R
1W
R2
2
330R
R5
J4
INT/RB0 DALI IN
+5V DALI LIMITED CURRENT SUPPLY
Q2
MMBT2222A-TP
P1
R1
0R
R7
+5V
Polarized 1
3
DALI OUT SDO/RC5
5
7
9
11
13
15
SUPPLY
POWER
BGX 50A E6327
1
D5
SS23-TP
D1
POWER
LOOP
1
2
LOOP
3
TX+ B1
TX- B2
RX+ B3
B4
B5
RX- B6
GND B7
GND B8
A1
TX+
TX- A2
A3
RX+
A4
A5
A6
RXGND A7
GND A8
2
4
1
 2012 Microchip Technology Inc.
2
SDO/RC5 DALI OUT
J5
FIGURE 14:
1
2
J2
AN1465
APPENDIX A
DALI SCHEMATICS
DS01465A-page 11
AN1465
NOTES:
DS01465A-page 12
 2012 Microchip Technology Inc.
Note the following details of the code protection feature on Microchip devices:
•
Microchip products meet the specification contained in their particular Microchip Data Sheet.
•
Microchip believes that its family of products is one of the most secure families of its kind on the market today, when used in the
intended manner and under normal conditions.
•
There are dishonest and possibly illegal methods used to breach the code protection feature. All of these methods, to our
knowledge, require using the Microchip products in a manner outside the operating specifications contained in Microchip’s Data
Sheets. Most likely, the person doing so is engaged in theft of intellectual property.
•
Microchip is willing to work with the customer who is concerned about the integrity of their code.
•
Neither Microchip nor any other semiconductor manufacturer can guarantee the security of their code. Code protection does not
mean that we are guaranteeing the product as “unbreakable.”
Code protection is constantly evolving. We at Microchip are committed to continuously improving the code protection features of our
products. Attempts to break Microchip’s code protection feature may be a violation of the Digital Millennium Copyright Act. If such acts
allow unauthorized access to your software or other copyrighted work, you may have a right to sue for relief under that Act.
Information contained in this publication regarding device
applications and the like is provided only for your convenience
and may be superseded by updates. It is your responsibility to
ensure that your application meets with your specifications.
MICROCHIP MAKES NO REPRESENTATIONS OR
WARRANTIES OF ANY KIND WHETHER EXPRESS OR
IMPLIED, WRITTEN OR ORAL, STATUTORY OR
OTHERWISE, RELATED TO THE INFORMATION,
INCLUDING BUT NOT LIMITED TO ITS CONDITION,
QUALITY, PERFORMANCE, MERCHANTABILITY OR
FITNESS FOR PURPOSE. Microchip disclaims all liability
arising from this information and its use. Use of Microchip
devices in life support and/or safety applications is entirely at
the buyer’s risk, and the buyer agrees to defend, indemnify and
hold harmless Microchip from any and all damages, claims,
suits, or expenses resulting from such use. No licenses are
conveyed, implicitly or otherwise, under any Microchip
intellectual property rights.
Trademarks
The Microchip name and logo, the Microchip logo, dsPIC,
FlashFlex, KEELOQ, KEELOQ logo, MPLAB, PIC, PICmicro,
PICSTART, PIC32 logo, rfPIC, SST, SST Logo, SuperFlash
and UNI/O are registered trademarks of Microchip Technology
Incorporated in the U.S.A. and other countries.
FilterLab, Hampshire, HI-TECH C, Linear Active Thermistor,
MTP, SEEVAL and The Embedded Control Solutions
Company are registered trademarks of Microchip Technology
Incorporated in the U.S.A.
Silicon Storage Technology is a registered trademark of
Microchip Technology Inc. in other countries.
Analog-for-the-Digital Age, Application Maestro, BodyCom,
chipKIT, chipKIT logo, CodeGuard, dsPICDEM,
dsPICDEM.net, dsPICworks, dsSPEAK, ECAN,
ECONOMONITOR, FanSense, HI-TIDE, In-Circuit Serial
Programming, ICSP, Mindi, MiWi, MPASM, MPF, MPLAB
Certified logo, MPLIB, MPLINK, mTouch, Omniscient Code
Generation, PICC, PICC-18, PICDEM, PICDEM.net, PICkit,
PICtail, REAL ICE, rfLAB, Select Mode, SQI, Serial Quad I/O,
Total Endurance, TSHARC, UniWinDriver, WiperLock, ZENA
and Z-Scale are trademarks of Microchip Technology
Incorporated in the U.S.A. and other countries.
SQTP is a service mark of Microchip Technology Incorporated
in the U.S.A.
GestIC and ULPP are registered trademarks of Microchip
Technology Germany II GmbH & Co. & KG, a subsidiary of
Microchip Technology Inc., in other countries.
All other trademarks mentioned herein are property of their
respective companies.
© 2012, Microchip Technology Incorporated, Printed in the
U.S.A., All Rights Reserved.
Printed on recycled paper.
ISBN: 9781620765715
QUALITY MANAGEMENT SYSTEM
CERTIFIED BY DNV
== ISO/TS 16949 ==
 2012 Microchip Technology Inc.
Microchip received ISO/TS-16949:2009 certification for its worldwide
headquarters, design and wafer fabrication facilities in Chandler and
Tempe, Arizona; Gresham, Oregon and design centers in California
and India. The Company’s quality system processes and procedures
are for its PIC® MCUs and dsPIC® DSCs, KEELOQ® code hopping
devices, Serial EEPROMs, microperipherals, nonvolatile memory and
analog products. In addition, Microchip’s quality system for the design
and manufacture of development systems is ISO 9001:2000 certified.
DS01465A-page 13
Worldwide Sales and Service
AMERICAS
ASIA/PACIFIC
ASIA/PACIFIC
EUROPE
Corporate Office
2355 West Chandler Blvd.
Chandler, AZ 85224-6199
Tel: 480-792-7200
Fax: 480-792-7277
Technical Support:
http://www.microchip.com/
support
Web Address:
www.microchip.com
Asia Pacific Office
Suites 3707-14, 37th Floor
Tower 6, The Gateway
Harbour City, Kowloon
Hong Kong
Tel: 852-2401-1200
Fax: 852-2401-3431
India - Bangalore
Tel: 91-80-3090-4444
Fax: 91-80-3090-4123
India - New Delhi
Tel: 91-11-4160-8631
Fax: 91-11-4160-8632
Austria - Wels
Tel: 43-7242-2244-39
Fax: 43-7242-2244-393
Denmark - Copenhagen
Tel: 45-4450-2828
Fax: 45-4485-2829
India - Pune
Tel: 91-20-2566-1512
Fax: 91-20-2566-1513
France - Paris
Tel: 33-1-69-53-63-20
Fax: 33-1-69-30-90-79
Japan - Osaka
Tel: 81-66-152-7160
Fax: 81-66-152-9310
Germany - Munich
Tel: 49-89-627-144-0
Fax: 49-89-627-144-44
Atlanta
Duluth, GA
Tel: 678-957-9614
Fax: 678-957-1455
Boston
Westborough, MA
Tel: 774-760-0087
Fax: 774-760-0088
Chicago
Itasca, IL
Tel: 630-285-0071
Fax: 630-285-0075
Cleveland
Independence, OH
Tel: 216-447-0464
Fax: 216-447-0643
Dallas
Addison, TX
Tel: 972-818-7423
Fax: 972-818-2924
Detroit
Farmington Hills, MI
Tel: 248-538-2250
Fax: 248-538-2260
Indianapolis
Noblesville, IN
Tel: 317-773-8323
Fax: 317-773-5453
Los Angeles
Mission Viejo, CA
Tel: 949-462-9523
Fax: 949-462-9608
Santa Clara
Santa Clara, CA
Tel: 408-961-6444
Fax: 408-961-6445
Toronto
Mississauga, Ontario,
Canada
Tel: 905-673-0699
Fax: 905-673-6509
Australia - Sydney
Tel: 61-2-9868-6733
Fax: 61-2-9868-6755
China - Beijing
Tel: 86-10-8569-7000
Fax: 86-10-8528-2104
China - Chengdu
Tel: 86-28-8665-5511
Fax: 86-28-8665-7889
China - Chongqing
Tel: 86-23-8980-9588
Fax: 86-23-8980-9500
Korea - Daegu
Tel: 82-53-744-4301
Fax: 82-53-744-4302
China - Hangzhou
Tel: 86-571-2819-3187
Fax: 86-571-2819-3189
Korea - Seoul
Tel: 82-2-554-7200
Fax: 82-2-558-5932 or
82-2-558-5934
China - Hong Kong SAR
Tel: 852-2401-1200
Fax: 852-2401-3431
Malaysia - Kuala Lumpur
Tel: 60-3-6201-9857
Fax: 60-3-6201-9859
China - Nanjing
Tel: 86-25-8473-2460
Fax: 86-25-8473-2470
Malaysia - Penang
Tel: 60-4-227-8870
Fax: 60-4-227-4068
China - Qingdao
Tel: 86-532-8502-7355
Fax: 86-532-8502-7205
Philippines - Manila
Tel: 63-2-634-9065
Fax: 63-2-634-9069
China - Shanghai
Tel: 86-21-5407-5533
Fax: 86-21-5407-5066
Singapore
Tel: 65-6334-8870
Fax: 65-6334-8850
China - Shenyang
Tel: 86-24-2334-2829
Fax: 86-24-2334-2393
Taiwan - Hsin Chu
Tel: 886-3-5778-366
Fax: 886-3-5770-955
China - Shenzhen
Tel: 86-755-8203-2660
Fax: 86-755-8203-1760
Taiwan - Kaohsiung
Tel: 886-7-536-4818
Fax: 886-7-330-9305
China - Wuhan
Tel: 86-27-5980-5300
Fax: 86-27-5980-5118
Taiwan - Taipei
Tel: 886-2-2500-6610
Fax: 886-2-2508-0102
China - Xian
Tel: 86-29-8833-7252
Fax: 86-29-8833-7256
Thailand - Bangkok
Tel: 66-2-694-1351
Fax: 66-2-694-1350
Italy - Milan
Tel: 39-0331-742611
Fax: 39-0331-466781
Netherlands - Drunen
Tel: 31-416-690399
Fax: 31-416-690340
Spain - Madrid
Tel: 34-91-708-08-90
Fax: 34-91-708-08-91
UK - Wokingham
Tel: 44-118-921-5869
Fax: 44-118-921-5820
China - Xiamen
Tel: 86-592-2388138
Fax: 86-592-2388130
China - Zhuhai
Tel: 86-756-3210040
Fax: 86-756-3210049
DS01465A-page 14
Japan - Yokohama
Tel: 81-45-471- 6166
Fax: 81-45-471-6122
11/29/11
 2012 Microchip Technology Inc.