TapHome

Intesis IBOX-MBS-DALI

Modbus RTU
Autor
Posljednje ažuriranje: 10. 2026

Potreban je vanjski pristupnik (gateway)

Intesis IBOX-MBS-DALI (IBMBSDAL0640000) — stranica proizvoda

Intesis IBOX-MBS-DALI

Intesis IBOX-MBS-DALI je pretvornik protokola DALI na Modbus tvrtke Intesis (dio HMS Networks) koji DALI-2 predspojne naprave za rasvjetu i grupe prikazuje kao Modbus holding registre. Predložak TapHome namijenjen je jednokanalnoj varijanti RTU (kataloški broj IBMBSDAL0640000, ponovno izdan kao INMBSDAL0640200) i sa sustavom TapHome povezuje se preko RS-485 Modbus RTU na priključku Port B pristupnika.

TapHome prodaje noviji pristupnik serije 700, kataloški broj IN703DAL0640000 (DALI-2 na Modbus TCP i RTU poslužitelj, 1 DALI kanal). Prema korisničkom priručniku proizvođača (v1.0.11) koristi istu Modbus mapu registara, pa ovaj predložak vrijedi i za njega.

Predložak pokriva puni adresabilni kapacitet jedne DALI linije: 64 pojedinačne predspojne naprave (ECG) (kratke adrese 0–63) i 16 DALI grupa. Svaka predspojna naprava podržava povratno očitanje stvarne razine (0–100 %), stanje kvara predspojne naprave/žarulje i upis razine snage (arc power), razine pri uključenju, razine pri kvaru sustava, vremena postupnog prijelaza (fade time) i brzine postupnog prijelaza (fade rate). DALI grupe omogućuju skupno prigušivanje, samo za upis (bez povratnog očitanja). Na razini modula četiri skupne servisne radnje (Sve — uključi, Sve — isključi, Sve — postavi razinu pri uključenju, Sve — postavi razinu pri kvaru sustava) jednim Modbus upisom djeluju na svaku predspojnu napravu na DALI liniji.

Kratke DALI adrese, članstvo u grupama, scene i najmanja/najveća razina moraju se unaprijed postaviti besplatnim alatom za puštanje u rad Intesis MAPS prije nego što TapHome može adresirati pojedinačne predspojne naprave; predložak TapHome ne pretražuje DALI mrežu i ne dodjeljuje adrese.

Hardversko spajanje

Varijante pristupnika

Predložak TapHome izrađen je za jednokanalni RTU pristupnik. Dvokanalna varijanta ima identičnu mapu registara, ali nema Modbus RTU (samo TCP), pa nije kompatibilna s ovim predloškom za RS-485.

Kataloški brojDALI kanaliKapacitet ECGGrupeModbus RTUModbus TCP
IN703DAL0640000 (serija 700)16416Da (Port B)Da
IBMBSDAL0640000 / INMBSDAL064020016416Da (Port B)Da
IBMBSDAL1280000 / INMBSDAL1280200212832NeDa
Intesis IBOX-MBS-DALI — raspored priključaka na jednokanalnoj (Modbus RTU + TCP) i dvokanalnoj (samo Modbus TCP) varijanti

Predložak TapHome koristi formulu registra 7000 × channel + 100 × ECG + signal, izračunanu uz channel = 0. To točno odgovara jednokanalnom IBOX-MBS-DALI i pristupniku serije 700 IN703DAL0640000.

Raspored konektora (jednokanalni IBOX-MBS-DALI)
Raspored konektora jednokanalnog IBOX-MBS-DALI — napajanje, DALI Port A, Ethernet, Console, EIA232/EIA485 Port B

Pogled odozgo na jednokanalni IBOX-MBS-DALI:

  • Power — tropolna utična vijčana stezaljka, 24 VDC ±10 % (+ / − / uzemljenje)
  • Port A / DALI — dvopolna narančasta stezaljka, A3 (DA+) i A4 (DA−), DALI napajanje 16 VDC
  • Ethernet — 1× RJ45 10/100 Mbps (Modbus TCP)
  • Console — mini USB 2.0 tipa B za konfiguraciju u alatu Intesis MAPS
  • Port B / Modbus RTU — EIA485 tropolna vijčana stezaljka B1 (B+) / B2 (A−) / B3 (SGND) i EIA232 muški SUB-D9 (alternativa)
  • USB — USB 2.0 tipa A samo za USB memorije (najviše 150 mA)
  • SWA / SWB — DIP sklopke (SWA je rezervirana, SWB upravlja zaključenjem i polarizacijom RS-485, vidi Konfiguracija niže)
Napajanje
  • Ulaz: 24 VDC ±10 % na tropolnoj stezaljci (+, −, uzemljenje)
  • Izvor: NEC Class 2 ili Limited Power Source (LPS), razreda SELV
  • Zaštita na dovodu: potreban je zaštitni prekidač 250 V / 6 A
  • Uzemljenje: smije se uzemljiti samo preko negativne stezaljke, nikada preko pozitivne

Kako biste izbjegli petlje uzemljenja koje mogu oštetiti pristupnik i spojenu opremu, nikada ne koristite DC napajanje s uzemljenom pozitivnom stezaljkom. Uzemljite samo preko negativne stezaljke ili napajanje ostavite neuzemljeno.

Ožičenje RS-485 Modbus RTU (Port B, EIA485)

Spojite sabirnicu RS-485 sustava TapHome na blok stezaljki EIA485 na priključku Port B:

Stezaljka IBOX-MBS-DALISignalTapHome RS-485
B1B+ (D+)A+ / D+
B2A− (D−)B− / D−
B3SGND (referentna masa)GND

Pazite na polaritet. B1 = B+ (D+) i B2 = A− (D−). Zamjena A/B prekida komunikaciju bez dojave greške i bez oštećenja hardvera.

Specifikacija kabela (ograničenja EIA485):

  • Najveća duljina: 1200 m na jednom segmentu RS-485
  • Najveći broj čvorova: 32 uređaja, uključujući TapHome master i IBOX-MBS-DALI
  • Zaključenje: 120 Ω na svakom kraju sabirnice. Centralna jedinica TapHome Core ima ugrađen otpornik od 120 Ω na stezaljkama BUS, pa IBOX-MBS-DALI treba uključeno zaključenje samo ako se nalazi na udaljenom kraju segmenta RS-485 (vidi DIP sklopku SWB niže)

Ako je pristupnik ugrađen u sredinu sabirnice RS-485 (ne na kraju), ostavite SWB u položaju OFF i ne dodajte vanjski zaključni otpornik.

Alternativa EIA232: muški konektor SUB-D9 na priključku Port B daje sučelje EIA232 koje koristi samo TX, RX i GND, s najvećom duljinom kabela 15 m. TapHome izvorno ne podržava RS-232, pa je EIA485 standardni spoj za TapHome.

Ožičenje sabirnice DALI (Port A)

Spojite DALI liniju na narančastu dvopolnu stezaljku priključka Port A:

  • A3 — DA+
  • A4 — DA−

IBOX-MBS-DALI daje napon sabirnice 16 VDC (±2 %), uz zajamčenu DALI struju od 235 mA (najviše 250 mA); serija 700 IN703DAL0640000 jamči 230 mA (najviše 250 mA). Prema standardu DALI nije osjetljiv na polaritet, ali ovo unutarnje napajanje mora se uključiti u alatu Intesis MAPS prije nego što bilo kakva DALI komunikacija proradi, vidi Puštanje DALI u rad niže.

DALI kapacitet na jednoj liniji (ostavite približno 10 % rezerve za dinamičke procese):

  • Do 64 predspojne naprave (ECG) (tipično 2 mA svaka → 128 mA)
  • Do 64 DALI ulazna uređaja / 16 preporučeno kad se koriste tipkala (tipično 5 mA svako)
  • Primjer proračuna: 64 ECGs × 2 mA + 16 sensors × 5 mA = 208 mA < 235 mA × 90 %
  • Primjer proračuna za IN703DAL0640000 (podaci proizvođača): 63 ECGs × 2 mA + 16 sensors × 5 mA = 206 mA < 230 mA × 90 %

DALI je po prirodi spora sabirnica (1200 baud), a pristupnik se pokreće 1,5 s i isključuje 7 s. DALI naredbe iz sustava TapHome stižu do predspojnih naprava s malim, ali ne nultim kašnjenjem u odnosu na izravno žičano upravljanje.

Konfiguracija

DIP sklopka SWB — zaključenje i polarizacija RS-485

DIP sklopka SWB na jednokanalnom IBOX-MBS-DALI upravlja samo svojstvima sabirnice RS-485; na ovom pristupniku Modbus adresa (slave) ne postavlja se DIP sklopkama (adresa (slave) postavlja se u alatu Intesis MAPS, vidi niže).

PoložajONOFF
1Zaključenje 120 Ω aktivnoZaključenje neaktivno
2Polarizacija aktivnaPolarizacija neaktivna
3Polarizacija aktivnaPolarizacija neaktivna
  • Položaj 1 = ON — uključuje unutarnji zaključni otpornik od 120 Ω. Koristite ga kad je IBOX-MBS-DALI na posljednjem fizičkom mjestu na sabirnici RS-485.
  • Položaji 2 i 3 = ON — uključuju prednapon sabirnice (polarizaciju). Koristite ih kad ga ne osigurava nijedan drugi master na sabirnici. Centralna jedinica TapHome Core osigurava prednapon na svojim stezaljkama BUS, pa obično mogu ostati OFF.

SWA je na ovoj reviziji hardvera rezervirana za buduću upotrebu i nema utjecaja na rad.

Komunikacijski parametri Modbus RTU

Svi parametri RTU postavljaju se u projektu Intesis MAPS i moraju točno odgovarati postavkama modula u sustavu TapHome.

ParametarVrijednostiZadano u predlošku
Brzina prijenosa1200, 2400, 4800, 9600, 19200, 38400, 56700, 1152009600
Paritetnema, parna, neparnanema
Stop bitovi1, 21
Podatkovni bitovi88
Adresa (slave)1–247Postavlja se u MAPS

Pristupnik Intesis na jednokanalnoj varijanti podržava Modbus RTU i Modbus TCP istodobno. TapHome koristi RTU; paralelni nadzorni sustav (BMS) ili dijagnostički alat može istu mapu registara i dalje čitati preko TCP bez ometanja.

Uključivanje Modbus komunikacije

Modbus komunikacija uključuje se učitavanjem valjanog projekta u pristupnik alatom Intesis MAPS (na ovom modelu DIP sklopke u tome ne sudjeluju). Ukratko:

  1. Instalirajte Intesis MAPS na računalo sa sustavom Windows i spojite se na pristupnik preko USB Console ili Etherneta.
  2. Otvorite ili izradite projekt na temelju INMBSDAL---0200-Template (za seriju 700 IN703DAL0640000 odaberite predložak IN-MBS-DALI-64, tj. aplikaciju Modbus).
  3. Na kartici Configuration → Modbus Slave postavite brzinu prijenosa, paritet, stop bitove i adresu (slave) tako da odgovaraju sustavu TapHome.
  4. Na kartici Configuration → DALI uključite unutarnje DALI napajanje sabirnice 16 VDC (vidi Puštanje DALI linije u rad).
  5. Kliknite Send za prijenos konfiguracije; pristupnik se automatski ponovno pokreće.
  6. Pomoću Diagnostic → Viewers provjerite Modbus okvire na priključku Port B (TX/RX).
Konfiguracija DALI napajanja sabirnice u alatu Intesis MAPS — prije puštanja u rad uključite DALI napajanje 16 VDC u konfiguraciji pristupnika
Puštanje DALI linije u rad

DALI adresiranje obavlja se u alatu Intesis MAPS, a ne u sustavu TapHome. Predložak TapHome kratke DALI adrese 0–63 i adrese grupa 0–15 povezuje preko pomaka registra; fizičke predspojne naprave i grupe najprije moraju biti vezane na te adrese.

Postupak puštanja u rad u glavnim crtama (cijeli postupak je u korisničkom priručniku Intesis, Prilog A):

  1. U alatu MAPS otvorite projekt za jednokanalni pristupnik i idite na Configuration → DALI → ECG Channel A.
  2. Kliknite Commissioning → Scan kako biste pronašli predspojne naprave na sabirnici DALI.
  3. Svakoj predspojnoj napravi dodijelite kratku adresu (0–63) pomoću gumba Wink (fizička predspojna naprava zatrepće radi prepoznavanja) ili Auto Addr. (automatska dodjela adresa redom).
  4. Po želji postavite parametre svake predspojne naprave: Device Type (0 = fluorescentna, 1 = sigurnosna, 6 = LED, …), najmanju / najveću razinu, razinu pri uključenju, razinu pri kvaru sustava, konfiguraciju scena i članstvo u grupama (0–15).
  5. Kliknite Commissioning → Set All kako biste konfiguraciju iz alata MAPS prenijeli na sabirnicu DALI.
  6. Kliknite Send kako biste konfiguraciju na razini pristupnika (Modbus parametri, mapa signala) vratili u IBOX-MBS-DALI.

Nakon puštanja u rad predspojne naprave prepoznate po kratkoj adresi u sustavu TapHome (npr. ECG 5 → registar H:506) odgovaraju fizičkim predspojnim napravama jedan prema jedan. Članstvo u grupama također mora biti definirano u alatu MAPS kako bi uređaji DALI grupa radili, iako predložak za svaku predspojnu napravu daje servisne radnje Dodaj u DALI grupu / Ukloni iz DALI grupe koje na kompatibilnom firmveru mogu promijeniti članstvo u grupi tijekom rada.

Prema korisničkom priručniku r1.5 (svibanj 2024.) signali 29 i 30 (Add to DALI Group / Remove from DALI Group) na trenutačnom firmveru označeni su kao Not used. Predložak TapHome i dalje daje te radnje jer su radile na ranijem firmveru, ali trajna dodjela grupa treba se postaviti u alatu Intesis MAPS, a ne upisivati tijekom rada.

Korisnički priručnik serije 700 IN703DAL0640000 (v1.0.11) navodi signale 29 i 30 kao čitanje/upis, pa bi prema priručniku radnje na tom pristupniku trebale biti dostupne.

Pregled mape registara

TapHome koristi jednu formulu za sve registre:

1
2
3
H:address = 7000 × channel + 100 × ECG + signal      (individual ECG)
H:address = 7000 × channel + 20 × group + 6400..6415  (DALI group)
H:address = 7000 × channel + 6800..6815              (broadcast)

Na jednokanalnoj varijanti uvijek je channel = 0. Predložak daje sljedeće raspone registara:

RasponFunkcijaKoristi ga predložak
H:0 – H:3Bitmaska kvarova predspojne naprave/žarulje (ECG 63..0, 4× UInt16)Da — kao failRegister na razini modula
H:SA+5Bitmaska stanja predspojne naprave (za svaki ECG)Da — greške, upozorenja i informacije za svaki ECG
H:SA+6Stvarna razina ECG 0–100 % (čitanje)Da — povratna informacija o položaju dimera
H:SA+7Vrsta uređaja ECG (enum)Da — kao servisni atribut
H:SA+11..+14Razina pri uključenju / pri kvaru sustava, fade time / rate (čitanje)Da — kao servisni atributi
H:SA+15Razina snage (arc power) ECG 0–100 % (upis)Da — writelevel, linearno preslikan u Min/Max
H:SA+23..+30Postavljanje fade time/rate, postavljanje razina, dodavanje u grupu / uklanjanje iz grupeDa — kao servisne radnje za svaki ECG
H:6400 + 20·GRRazina snage (arc power) grupe 0–100 % (upis)Da — kao uređaj DALI grupa samo za upis
H:6801Skupno arc power isključeno/uključeno (0/100 %)Da — kao radnje modula Sve — uključi / Sve — isključi
H:6812 / H:6813Skupno postavljanje razine pri uključenju / pri kvaru sustavaDa — kao servisne radnje modula

Ulazni uređaji (senzori prisutnosti, tipkala, senzori osvjetljenja) na adresama 14000 + 640·LINE + 10·IDX + INSTANCE + 1280·SIG nisu obuhvaćeni ovim predloškom.

Mogućnosti uređaja

Prigušivanje svake predspojne naprave (64 uređaja ECG)

Svaka kratka adresa 0–63 dostupna je kao zaseban uređaj vrste „Dimer” u sustavu TapHome (ECG 0 do ECG 63). Mogućnosti svakog ECG-a:

  • Stvarna razina — čita H:SA+6 (0–100 %) kao povratnu informaciju o položaju dimera
  • Razina snage (arc power) — upisuje H:SA+15 (0–100 %), linearno preslikano iz TapHome skale dimera 0–1 u postavljeni raspon predspojne naprave [min level, max level]
  • Stanje predspojne naprave — bitmaska na H:SA+5 pokreće dijagnostiku u sustavu TapHome: BallFail i LampFail javljaju grešku, BallLimit, Reset i PowerCycle javljaju upozorenje, FadeRun se prikazuje kao informacija, MissingShortAddr javlja grešku
  • Otkrivanje kvara komunikacije — modul čita 64-bitnu bitmasku kvarova na H:0 – H:3 i označava pojedinačne ECG-ove kao neispravne neovisno o stanju H:SA+5
Servisni atributi svakog ECG-a (metapodaci samo za čitanje)

Svaki uređaj ECG daje pet servisnih atributa koji čitaju njegovu trenutačnu DALI konfiguraciju:

  • Glavna vrsta uređaja — H:SA+7 enum (0–8): 0 = fluorescentna, 1 = sigurnosna, 2 = izbojna, 3 = halogena, 4 = sa žarnom niti, 5 = digitalni signal, 6 = LED, 7 = sklopna, 8 = upravljanje bojom
  • Razina pri uključenju [%] — H:SA+11 (0–100 %) — razina na koju se predspojna naprava vraća nakon uključenja napajanja sabirnice DALI
  • Razina pri kvaru sustava [%] — H:SA+12 (0–100 %) — razina na koju predspojna naprava prelazi pri kvaru sabirnice DALI
  • Vrijeme postupnog prijelaza — H:SA+13 (0–15) — DALI indeks fade time (vrijeme do postizanja ciljne razine pri izravnom upisu razine snage)
  • Brzina postupnog prijelaza — H:SA+14 (1–15) — DALI indeks fade rate (brzina promjene razine pri naredbama za povećanje / smanjenje)
Servisne radnje svakog ECG-a (upis)

Svaki ECG daje i šest servisnih radnji za promjenu konfiguracije tijekom rada:

  • Postavi razinu pri uključenju — upisuje H:SA+27 (0–100 %)
  • Postavi razinu pri kvaru sustava — upisuje H:SA+28 (0–100 %)
  • Postavi vrijeme postupnog prijelaza — upisuje H:SA+23 (0–15)
  • Postavi brzinu postupnog prijelaza — upisuje H:SA+24 (1–15)
  • Dodaj u DALI grupu — upisuje H:SA+29 s brojem grupe (0–15); vidi upozorenje uz puštanje u rad iznad
  • Ukloni iz DALI grupe — upisuje H:SA+30 s brojem grupe (0–15)

Predložak svaki upis automatski potvrđuje s H:SA+4 = 1 (Update All ECG Status), čime se osvježavaju vrijednosti koje pristupnik drži u međuspremniku.

DALI grupe (16 skupnih dimera samo za upis)

DALI grupa 0 do DALI grupa 15 dostupne su kao uređaji vrste „Dimer” samo za upis:

  • Registar za upis: H:6400 + 20 × GR (npr. grupa 0 = H:6400, grupa 15 = H:6700)
  • Ponašanje: upis vrijednosti dimera 0–1 u sustavu TapHome šalje Arc Power Level = Le × 100 svakoj predspojnoj napravi koja je član te DALI grupe
  • Nema povratnog očitanja — signal grupe nema registar stvarne razine, pa TapHome razinu grupe prati samo prema unosu korisnika, a ne prema stvarnom stanju predspojnih naprava

Grupe koristite za prostorije ili zone u kojima se više predspojnih naprava prigušuje zajedno. Članstvo u grupi postavlja se za svaki ECG servisnom radnjom Dodaj u DALI grupu ili (bolje) u alatu Intesis MAPS.

Skupne radnje na razini modula

Glavni modul (Intesis DALI) daje četiri servisne radnje koje odjednom djeluju na svaku predspojnu napravu na DALI liniji:

  • Sve — uključi — upisuje H:6801 = 1 i svakom ECG-u skupno šalje 100 %
  • Sve — isključi — upisuje H:6801 = 0 i svakom ECG-u skupno šalje 0 %
  • Sve — postavi razinu pri uključenju — upisuje H:6812 (0–100 %) i postavlja razinu na koju se sve predspojne naprave vraćaju nakon uključenja napajanja DALI
  • Sve — postavi razinu pri kvaru sustava — upisuje H:6813 (0–100 %) i postavlja razinu na koju sve predspojne naprave prelaze pri kvaru sabirnice DALI

To je brže od pojedinačnih upisa za svaki ECG kad sve predspojne naprave trebaju postići isto ciljno stanje (npr. hitno isključivanje, jutarnja postavka).

LED indikatori stanja i tipke

LED indikatori stanja i tipke IBOX-MBS-DALI — Run, Error, Port A TX/RX (DALI), Port B TX/RX (Modbus RTU), Button A, Button B
LEDStanjeZnačenje
RunUgašena / zelenaNema napajanja / uređaj je napajan i radi
ErrorUgašena / crvenaNema greške / stanje greške
Port A Tx / Rx (DALI)Ugašena / treperi zeleno / treperi žutoNema aktivnosti / TX paket prema sabirnici DALI / RX paket sa sabirnice DALI
Port B Tx / Rx (Modbus RTU)Ugašena / treperi zeleno / treperi žutoNema aktivnosti / TX paket na RS-485 / RX paket na RS-485
Indikator Button AUgašena / zelenaSkupno stanje DALI: OFF / RECALL_MAX_LEVEL
Indikator Button BUgašena / zelenaNema zadanu funkciju (može se postaviti u MAPS)

Button A (DALI A) — pritiskom se skupna DALI naredba izmjenjuje između RECALL_MAX_LEVEL (100 %) i OFF, što je korisno za brzu provjeru DALI linije na licu mjesta bez sustava TapHome. Nakon 30 s LED tipke Button A se gasi, a predspojne naprave vraćaju se na prethodnu razinu.

Button B — na ovom pristupniku nema zadanu funkciju; u alatu Intesis MAPS može se postaviti kao radnja RS-485.

Ugradnja

Na DIN šinu (preporučeno)
Ugradnja IBOX-MBS-DALI na DIN šinu — standardna šina EN60715 TH35, pričvrsne kopče u tvorničkom unutarnjem položaju

EN60715 TH35, po mogućnosti u metalnom ormaru spojenom na uzemljenje. Pričvrsne kopče ostavite u tvorničkom unutarnjem položaju, najprije zakvačite gornji rub šine, a zatim pritisnite prema dolje da donji dio sjedne.

Ugradnja na zid
Ugradnja IBOX-MBS-DALI na zid — pričvrsne kopče pomaknute prema van kako bi se otvorile rupe za montažu
  1. Pomaknite pričvrsne kopče iz izvornog položaja (za ugradnju na DIN šinu) guranjem prema van dok ne sjednu u položaj za ugradnju na zid.
  2. Kućište pričvrstite na zid kroz montažne rupe na kućištu.
Prostor i okruženje
  • Prostor za ugradnju: oko uređaja ostavite 130 × 100 × 100 mm (V × Š × D) za konektore i kabele. Neto dimenzije: 90 × 88 × 56 mm (serija 700 IN703DAL0640000: 90 × 88 × 58 mm).
  • Okruženje: IP20, samo za unutarnju ugradnju. Radna temperatura od 0 °C do +50 °C (korisnički priručnik) / +60 °C (upute za ugradnju), vlažnost 5–95 % bez kondenzacije. Serija 700 IN703DAL0640000 radi od −10 °C do +60 °C.

Rješavanje problema

Nema Modbus komunikacije (LED Port B Tx/Rx ostaju ugašene)
  1. Provjerite ožičenje RS-485 — provjerite polaritet B1 (B+) / B2 (A−) prema stezaljkama RS-485 sustava TapHome; njihova zamjena je najčešća pogreška.
  2. Provjerite SGND — spojite B3 na masu sustava TapHome. Nedostatak signalne mase drugi je najčešći uzrok nepouzdanog RTU.
  3. Uskladite serijske parametre — brzina prijenosa, paritet, stop bitovi i adresa (slave) u sustavu TapHome moraju točno odgovarati vrijednostima u projektu Intesis MAPS.
  4. Provjerite DIP sklopke SWB — ako je pristupnik na fizičkom kraju sabirnice RS-485, postavite SWB položaj 1 = ON (zaključenje 120 Ω). Ako je u sredini sabirnice, postavite sve položaje SWB na OFF.
  5. Provjerite ne zauzima li pristupnik neka TCP veza — pristupnik dopušta 5 istodobnih TCP veza i 1 RTU master; pogrešno postavljena veza MAPS ne blokira RTU, ali tijekom otklanjanja pogrešaka u sustavu TapHome preporučljivo je zatvoriti MAPS.
Modbus radi, ali DALI predspojne naprave ne odgovaraju
  1. Uključite unutarnje napajanje sabirnice DALI — novi pristupnici isporučuju se s isključenim DALI napajanjem. Otvorite Intesis MAPS → Configuration → DALI → DALI Channel A, postavite Power the DALI bus = Enabled, a zatim kliknite Send za slanje konfiguracije. Bez napajanja sabirnice pristupnik pri svakom DALI upisu javlja hardversku grešku.
  2. Brza provjera — pritisnite Button A na pristupniku. Pristupnik bi trebao skupno poslati RECALL_MAX_LEVEL i uključiti/isključiti svaku spojenu predspojnu napravu. Ako se ništa ne dogodi, problem je u samoj sabirnici DALI (ožičenje, napon, napajanje predspojnih naprava).
  3. Pokrenite pretraživanje sabirnice u alatu MAPS — Commissioning → Scan na DALI Channel A prikazuje svaku predspojnu napravu koju pristupnik vidi. Predspojne naprave koje nedostaju obično znače da ECG-ovi nemaju napajanje, da kratka DALI adresa nije dodijeljena ili da je sabirnica DALI prekinuta.
  4. Provjerite kratke adrese — TapHome ECG 5 adresira na registru H:506; ako kratka adresa 5 nije dodijeljena u alatu MAPS, registar postoji, ali fizička predspojna naprava nije vezana na njega.
Određeni ECG u sustavu TapHome javlja kvar

TapHome za svaki ECG prikazuje dva izvora kvara:

  • failRegister modula (H:0 – H:3) — jedan bit po ECG-u. Postavljeni bit javlja grešku komunikacije (pristupnik uopće ne može komunicirati s predspojnom napravom).
  • Stanje predspojne naprave ECG (H:SA+5) — bitmaska za svaki ECG. BallFail i LampFail javljaju grešku (hardverski kvar predspojne naprave ili žarulje), MissingShortAddr javlja grešku (ECG je odgovorio, ali nema kratku adresu), BallLimit, Reset i PowerCycle javljaju upozorenje, FadeRun je informativan.

Za uklanjanje kvara zamijenite neispravnu predspojnu napravu ili ponovno dodijelite kratku adresu u alatu MAPS.

Upis je prihvaćen, ali predspojna naprava ne mijenja razinu
  1. Provjerite da predspojna naprava nije u postupnom prijelazu — FadeRun na H:SA+5 znači da je predspojna naprava upravo u postupnom prijelazu; pričekajte da završi. Kraće vrijeme postupnog prijelaza (H:SA+23) smanjuje primjetno kašnjenje.
  2. Provjerite Min / Max Level — TapHome svoju skalu dimera 0–1 linearno preslikava u raspon [min level, max level] očitan iz predspojne naprave (H:SA+9 / H:SA+10). Ako su obje vrijednosti jednake, predspojna naprava ne može mijenjati razinu; ponovno postavite najmanju/najveću razinu u alatu MAPS.
  3. Dodaj u DALI grupu / Ukloni iz DALI grupe — na najnovijem firmveru r1.5 ove radnje za svaki ECG označene su kao zastarjele; dodjelu grupa umjesto toga obavite u alatu MAPS. Korisnički priručnik serije 700 IN703DAL0640000 navodi ih kao čitanje/upis.

Dostupni uređaji

Intesis DALI Modul
Servisne radnje
Sve — uključiSvim predspojnim napravama na DALI liniji skupno šalje razinu snage 100 % — hitno uključivanje ili jutarnja postavka jednim Modbus upisom
Sve — isključiSvim predspojnim napravama na DALI liniji skupno šalje razinu snage 0 % — hitno isključivanje ili postavka za čišćenje jednim Modbus upisom
Sve — postavi razinu pri uključenjuSvim predspojnim napravama skupno šalje novu razinu pri uključenju (0–100 %) — razinu na koju se vraćaju nakon uključenja napajanja sabirnice DALI
Sve — postavi razinu pri kvaru sustavaSvim predspojnim napravama skupno šalje novu razinu pri kvaru sustava (0–100 %) — razinu na koju prelaze pri kvaru sabirnice DALI

Intesis Dali

Čitanje (modul)
failRegister := modbusr(H, base_modifier + 0, Uint16) + 
(modbusr(H, base_modifier + 1, Uint16) << 16) +
(modbusr(H, base_modifier + 2, Uint16) << 32) +
(modbusr(H, base_modifier + 3, Uint16) << 48)
Servisne radnje
All - On
modbusw(H, base_modifier + 6801, uint16, 1);
All - Off
modbusw(H, base_modifier + 6801, uint16, 0);
All - Set Power-on Level
Parametri: Level (0–100 Lvl)
modbusw(H, base_modifier + 6812, uint16, Lvl);
All - Set System-failure Level
Parametri: Level (0–100 Lvl)
modbusw(H, base_modifier + 6813, uint16, Lvl);
ECG 0 Dimer

Pojedinačna DALI predspojna naprava na kratkoj adresi 0 — dimer s povratnim očitanjem stvarne razine, stanjem kvara predspojne naprave/žarulje, upisom razine snage te postavljanjem vremena/brzine postupnog prijelaza i razine pri uključenju / pri kvaru sustava za svaki ECG

Registar: H:6 → H:15 UInt16 Jedinica: % numeric
Servisni atributi
Glavna vrsta uređajaVrsta DALI uređaja — fluorescentna (0), sigurnosna (1), izbojna (2), halogena (3), sa žarnom niti (4), digitalni signal (5), LED (6), sklopna (7) ili upravljanje bojom (8)
Razina pri uključenjuRazina (0–100 %) na koju se predspojna naprava vraća nakon uključenja napajanja sabirnice DALI
Razina pri kvaru sustavaRazina (0–100 %) na koju predspojna naprava prelazi pri kvaru sabirnice DALI
Vrijeme postupnog prijelazaDALI indeks fade time (0–15) — vrijeme do postizanja ciljne razine pri izravnom upisu razine snage
Brzina postupnog prijelazaDALI indeks fade rate (1–15) — brzina promjene razine pri naredbama za povećanje / smanjenje
Servisne radnje
Postavi razinu pri uključenjuUpisuje novu razinu pri uključenju (0–100 %) u ovaj ECG
Postavi razinu pri kvaru sustavaUpisuje novu razinu pri kvaru sustava (0–100 %) u ovaj ECG
Postavi vrijeme postupnog prijelazaUpisuje novi DALI indeks fade time (0–15) u ovaj ECG
Postavi brzinu postupnog prijelazaUpisuje novi DALI indeks fade rate (1–15) u ovaj ECG
Dodaj u DALI grupuDodjeljuje ovaj ECG DALI grupi (0–15) kako bi se njime moglo upravljati skupnim dimerom grupe
Ukloni iz DALI grupeUklanja ovaj ECG iz navedene DALI grupe (0–15)

ECG 0

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 1 Dimer
Registar: H:106 → H:115 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 1

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 2 Dimer
Registar: H:206 → H:215 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 2

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 3 Dimer
Registar: H:306 → H:315 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 3

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 4 Dimer
Registar: H:406 → H:415 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 4

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 5 Dimer
Registar: H:506 → H:515 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 5

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 6 Dimer
Registar: H:606 → H:615 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 6

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 7 Dimer
Registar: H:706 → H:715 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 7

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 8 Dimer
Registar: H:806 → H:815 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 8

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 9 Dimer
Registar: H:906 → H:915 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 9

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 10 Dimer
Registar: H:1006 → H:1015 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 10

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 11 Dimer
Registar: H:1106 → H:1115 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 11

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 12 Dimer
Registar: H:1206 → H:1215 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 12

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 13 Dimer
Registar: H:1306 → H:1315 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 13

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 14 Dimer
Registar: H:1406 → H:1415 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 14

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 15 Dimer
Registar: H:1506 → H:1515 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 15

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 16 Dimer
Registar: H:1606 → H:1615 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 16

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 17 Dimer
Registar: H:1706 → H:1715 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 17

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 18 Dimer
Registar: H:1806 → H:1815 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 18

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 19 Dimer
Registar: H:1906 → H:1915 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 19

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 20 Dimer
Registar: H:2006 → H:2015 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 20

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 21 Dimer
Registar: H:2106 → H:2115 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 21

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 22 Dimer
Registar: H:2206 → H:2215 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 22

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 23 Dimer
Registar: H:2306 → H:2315 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 23

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 24 Dimer
Registar: H:2406 → H:2415 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 24

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 25 Dimer
Registar: H:2506 → H:2515 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 25

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 26 Dimer
Registar: H:2606 → H:2615 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 26

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 27 Dimer
Registar: H:2706 → H:2715 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 27

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 28 Dimer
Registar: H:2806 → H:2815 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 28

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 29 Dimer
Registar: H:2906 → H:2915 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 29

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 30 Dimer
Registar: H:3006 → H:3015 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 30

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 31 Dimer
Registar: H:3106 → H:3115 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 31

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 32 Dimer
Registar: H:3206 → H:3215 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 32

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 33 Dimer
Registar: H:3306 → H:3315 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 33

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 34 Dimer
Registar: H:3406 → H:3415 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 34

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 35 Dimer
Registar: H:3506 → H:3515 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 35

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 36 Dimer
Registar: H:3606 → H:3615 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 36

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 37 Dimer
Registar: H:3706 → H:3715 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 37

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 38 Dimer
Registar: H:3806 → H:3815 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 38

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 39 Dimer
Registar: H:3906 → H:3915 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 39

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 40 Dimer
Registar: H:4006 → H:4015 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 40

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 41 Dimer
Registar: H:4106 → H:4115 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 41

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 42 Dimer
Registar: H:4206 → H:4215 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 42

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 43 Dimer
Registar: H:4306 → H:4315 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 43

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 44 Dimer
Registar: H:4406 → H:4415 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 44

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 45 Dimer
Registar: H:4506 → H:4515 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 45

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 46 Dimer
Registar: H:4606 → H:4615 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 46

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 47 Dimer
Registar: H:4706 → H:4715 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 47

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 48 Dimer
Registar: H:4806 → H:4815 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 48

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 49 Dimer
Registar: H:4906 → H:4915 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 49

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 50 Dimer
Registar: H:5006 → H:5015 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 50

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 51 Dimer
Registar: H:5106 → H:5115 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 51

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 52 Dimer
Registar: H:5206 → H:5215 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 52

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 53 Dimer
Registar: H:5306 → H:5315 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 53

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 54 Dimer
Registar: H:5406 → H:5415 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 54

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 55 Dimer
Registar: H:5506 → H:5515 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 55

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 56 Dimer
Registar: H:5606 → H:5615 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 56

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 57 Dimer
Registar: H:5706 → H:5715 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 57

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 58 Dimer
Registar: H:5806 → H:5815 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 58

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 59 Dimer
Registar: H:5906 → H:5915 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 59

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 60 Dimer
Registar: H:6006 → H:6015 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 60

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 61 Dimer
Registar: H:6106 → H:6115 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 61

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 62 Dimer
Registar: H:6206 → H:6215 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 62

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
ECG 63 Dimer
Registar: H:6306 → H:6315 UInt16 Jedinica: % numeric
Servisni atributi
Main Device Type
Power On Level [%]
System Failure Level [%]
Fade Time
Fade Rate
Servisne radnje
Set Power-on Level
Set System-failure Level
Set Fade Time
Set Fade Rate
Add to DALI Group
Remove from DALI Group

ECG 63

Čitanje (modul)
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
int shift := floor(SA / 32);

if(getbit(failRegister >> 32*shift,SA - 32*shift) = 1, adderror("DALI communication error, Ballast/Lamp Failure"));
if(getbit(status,0) = 1, adderror("Ballast Fail"));
if(getbit(status,1) = 1, adderror("Lamp Fail"));
#if(getbit(status,2) = 1, addwarning("Lamp Power On"));
if(getbit(status,3) = 1, addwarning("Ballast Limit"));
if(getbit(status,4) = 1, addinfo("Fade Run"));
if(getbit(status,5) = 1, addwarning("Reset"));
if(getbit(status,6) = 1, adderror("Missing Short Address"));
if(getbit(status,7) = 1, addwarning("Power Cycle"));
Inicijalizacija
var base := base_modifier + (100 * SA);
modbusw(H, base + 4, uint16, 1);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);
Čitanje razine
var base := base_modifier + (100 * SA);
status := modbusr(H, base + 5, uint16);
level := modbusr(H, base + 6, uint16);
minLevel := modbusr(H, base + 9, uint16);
maxLevel := modbusr(H, base + 10, uint16);

# fade run or updating values or <=1% diff
var diff := abs(level - Le * 100);
if getbit(status,4) or (diff > 0 and diff <= 1) or count > 0
	count := count -1;
	return(le);
else
	if level = 0
		return(0);
	else
		return(linear(level, minLevel, if(minLevel=0, 0, 0.01), maxLevel, 1));
	end
end
Zapis razine
var base := base_modifier + (100 * SA);
if !isnull(Le)
	count := 2;
	if le = 0
		modbusw(H, base + 15, uint16, 0);
	else
		modbusw(H, base + 15, uint16, linear(le, if(minLevel=0, 0, 0.01), minLevel, 1, maxLevel));
	end
end
#trigger update
modbusw(H, base + 4, uint16, 1);
Servisni atributi
Main Device Type

var base := base_modifier + (100 * SA);

switch(modbusr(H, base + 7, uint16),
0, "Fluorescent",
1, "Emergency",
2, "Discharge",
3, "Halogen",
4, "Incandescent",
5, "Digital signal",
6, "LED",
7, "Switching",
8, "Color control",
255, "Other",
"Unknown")
Power On Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 11, uint16);
System Failure Level [%]
var base := base_modifier + (100 * SA);
modbusr(H, base + 12, uint16);
Fade Time
var base := base_modifier + (100 * SA);
modbusr(H, base + 13, uint16);
Fade Rate
var base := base_modifier + (100 * SA);
modbusr(H, base + 14, uint16);
Servisne radnje
Set Power-on Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 27, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set System-failure Level
Parametri: Level (0–100 Lvl)
var base := base_modifier + (100 * SA);
modbusw(H, base + 28, uint16, Lvl);
modbusw(H, base + 4, uint16, 1);
Set Fade Time
Parametri: Fade Time (0–15 FT)
var base := base_modifier + (100 * SA);
modbusw(H, base + 23, uint16, FT);
modbusw(H, base + 4, uint16, 1);
Set Fade Rate
Parametri: Fade Rate (1–15 FR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 24, uint16, FR);
modbusw(H, base + 4, uint16, 1);
Add to DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 29, uint16, GR);
modbusw(H, base + 4, uint16, 1);
Remove from DALI Group
Parametri: Group (0–15 GR)
var base := base_modifier + (100 * SA);
modbusw(H, base + 30, uint16, GR);
modbusw(H, base + 4, uint16, 1);
DALI grupa 0 Dimer

Skupni dimer samo za upis za sve ECG-ove dodijeljene DALI grupi 0 — nema povratnog očitanja, TapHome razinu prati samo prema unosu korisnika

UInt16 Jedinica: % numeric

DALI grupa 0

Zapis razine
if !isnull(Le)
	modbusw(H, (20 * GA) + 6400 + base_modifier, uint16, Le * 100);
end
DALI grupa 1 Dimer
UInt16 Jedinica: % numeric

DALI grupa 1

Zapis razine
if !isnull(Le)
	modbusw(H, (20 * GA) + 6400 + base_modifier, uint16, Le * 100);
end
DALI grupa 2 Dimer
UInt16 Jedinica: % numeric

DALI grupa 2

Zapis razine
if !isnull(Le)
	modbusw(H, (20 * GA) + 6400 + base_modifier, uint16, Le * 100);
end
DALI grupa 3 Dimer
UInt16 Jedinica: % numeric

DALI grupa 3

Zapis razine
if !isnull(Le)
	modbusw(H, (20 * GA) + 6400 + base_modifier, uint16, Le * 100);
end
DALI grupa 4 Dimer
UInt16 Jedinica: % numeric

DALI grupa 4

Zapis razine
if !isnull(Le)
	modbusw(H, (20 * GA) + 6400 + base_modifier, uint16, Le * 100);
end
DALI grupa 5 Dimer
UInt16 Jedinica: % numeric

DALI grupa 5

Zapis razine
if !isnull(Le)
	modbusw(H, (20 * GA) + 6400 + base_modifier, uint16, Le * 100);
end
DALI grupa 6 Dimer
UInt16 Jedinica: % numeric

DALI grupa 6

Zapis razine
if !isnull(Le)
	modbusw(H, (20 * GA) + 6400 + base_modifier, uint16, Le * 100);
end
DALI grupa 7 Dimer
UInt16 Jedinica: % numeric

DALI grupa 7

Zapis razine
if !isnull(Le)
	modbusw(H, (20 * GA) + 6400 + base_modifier, uint16, Le * 100);
end
DALI grupa 8 Dimer
UInt16 Jedinica: % numeric

DALI grupa 8

Zapis razine
if !isnull(Le)
	modbusw(H, (20 * GA) + 6400 + base_modifier, uint16, Le * 100);
end
DALI grupa 9 Dimer
UInt16 Jedinica: % numeric

DALI grupa 9

Zapis razine
if !isnull(Le)
	modbusw(H, (20 * GA) + 6400 + base_modifier, uint16, Le * 100);
end
DALI grupa 10 Dimer
UInt16 Jedinica: % numeric

DALI grupa 10

Zapis razine
if !isnull(Le)
	modbusw(H, (20 * GA) + 6400 + base_modifier, uint16, Le * 100);
end
DALI grupa 11 Dimer
UInt16 Jedinica: % numeric

DALI grupa 11

Zapis razine
if !isnull(Le)
	modbusw(H, (20 * GA) + 6400 + base_modifier, uint16, Le * 100);
end
DALI grupa 12 Dimer
UInt16 Jedinica: % numeric

DALI grupa 12

Zapis razine
if !isnull(Le)
	modbusw(H, (20 * GA) + 6400 + base_modifier, uint16, Le * 100);
end
DALI grupa 13 Dimer
UInt16 Jedinica: % numeric

DALI grupa 13

Zapis razine
if !isnull(Le)
	modbusw(H, (20 * GA) + 6400 + base_modifier, uint16, Le * 100);
end
DALI grupa 14 Dimer
UInt16 Jedinica: % numeric

DALI grupa 14

Zapis razine
if !isnull(Le)
	modbusw(H, (20 * GA) + 6400 + base_modifier, uint16, Le * 100);
end
DALI grupa 15 Dimer
UInt16 Jedinica: % numeric

DALI grupa 15

Zapis razine
if !isnull(Le)
	modbusw(H, (20 * GA) + 6400 + base_modifier, uint16, Le * 100);
end
Povezivanje: Modbus RTU • 9600 baud• 8N1 • Slave ID: $[SlaveId]
Moguća poboljšanja (40)
  • H:6800 Broadcast Arc Power Level — Write 0–100 % to set every ballast on the DALI line to the same arc power level — not exposed as an action; only per-group (6400+20*GR) and All On/Off (6801) are wired up
  • H:6802 Broadcast Step Down / Up — 0 = Step Down, 1 = Step Up applied to all ECGs on the line (step size controlled by each ECG's Fade Rate)
  • H:6803 Broadcast Recall Min Level — Write 1 → every ballast jumps to its individually configured Min Level
  • H:6804 Broadcast Recall Max Level — Write 1 → every ballast jumps to its individually configured Max Level
  • H:6805 Broadcast Go to Scene — Write 0–15 to recall a DALI scene on every ballast (scenes pre-configured in MAPS or via Set Scene action per ECG)
  • H:6806 Broadcast Store Current Level as Scene — Write 0–15 to save the current arc power level of every ballast into the selected scene slot
  • H:6807 Broadcast Clear/Remove Scene — Write 0–15 to erase the selected scene on every ballast
  • H:6808 Broadcast Set Fade Time — Write 0–15 to apply the same fade-time index to every ballast (faster than per-ECG configuration for uniform fades)
  • H:6809 Broadcast Set Fade Rate — Write 1–15 to apply the same fade-rate index to every ballast
  • H:6810 Broadcast Set Min Level — Write 0–100 % to set the same minimum dim level on every ballast
  • H:6811 Broadcast Set Max Level — Write 0–100 % to set the same maximum dim level on every ballast
  • H:6814 Broadcast Multicontrol — Compound register — 0=Off, 1=100%, 2=StpUp, 3=StpDwn, 1XX=GoScene(XX), 2XX=StoreScene, 3XX=RmvScene, 1XXX=FdRate, 2XXX=FdTime, 3XXX=MinLvl, 4XXX=MaxLvl, 5XXX=PwrOnLvl, 6XXX=SysFailLvl; enables 'one-write many-ops' for advanced BMS scripting
  • H:SA+8 Physical Minimum Level (per ECG) — Hardware-defined minimum dim level per ballast (distinct from user-settable Min Level at +9); read-only
  • H:SA+16 Arc Power Off/On (per ECG) — R/W toggle: 0 = Off, 1 = 100 %; TapHome writes arc power level at +15 instead which covers the same capability
  • H:SA+17 Step Down/Up (per ECG) — 0 = Step Down, 1 = Step Up — relative dimming per ballast using the stored fade-rate
  • H:SA+18 Recall Min Level (per ECG) — Write 1 → this ECG jumps to its Min Level
  • H:SA+19 Recall Max Level (per ECG) — Write 1 → this ECG jumps to its Max Level
  • H:SA+20 Go to Scene (per ECG) — 0–15 scene recall per ballast
  • H:SA+21 Store Current Level as Scene (per ECG) — 0–15 scene save per ballast
  • H:SA+22 Clear/Remove Scene (per ECG) — 0–15 scene clear per ballast
  • H:SA+25 Set Min Level (per ECG) — 0–100 %; R/W — TapHome reads current min via service attribute Fade Time but does NOT expose a writer for minLevel (template caches the read value into minLevel variable for writelevel linear mapping)
  • H:SA+26 Set Max Level (per ECG) — 0–100 %; mirror of the above for maxLevel
  • H:SA+31 Multicontrol (per ECG) — Compound write (see Broadcast Multicontrol for encoding) — advanced single-register scripting entry-point per ECG
  • H:6401+20*GR Group Arc Power Off/On — Group-wide 0/100 % toggle; template only exposes Arc Power Level (group writelevel), so ON/OFF is achievable only by writing 0 or 100
  • H:6402+20*GR Group Step Down/Up — Relative dim per group
  • H:6403+20*GR Group Recall Min Level
  • H:6404+20*GR Group Recall Max Level
  • H:6405+20*GR Group Go to Scene — 0–15
  • H:6406+20*GR Group Store Current Level as Scene — 0–15
  • H:6407+20*GR Group Clear/Remove Scene — 0–15
  • H:6408+20*GR Group Set Fade Time — 0–15
  • H:6409+20*GR Group Set Fade Rate — 1–15
  • H:6410+20*GR Group Set Min Level — 0–100 %
  • H:6411+20*GR Group Set Max Level — 0–100 %
  • H:6412+20*GR Group Set Power-on Level — 0–100 %
  • H:6413+20*GR Group Set System-failure Level — 0–100 %
  • H:SA+42..+73 Emergency Control Gear (EML) signals — Failure Status, Emergency Mode, Battery Charge, Function/Duration test control, Rated Duration, Prolong Time, Store* parameters — Entire DALI Emergency (Part 202) feature set: SA+42 Failure Status, +43 Emergency Mode, +44 Emergency Status, +45 Battery Charge %, +46..+49 test schedule, +50..+57 timing/level config, +60..+68 trigger writes (Rest, Inhibit, Start/Stop tests, Reset Lamp Time), +69..+73 Store* R/W settings; ECGs of type 1 (Emergency) in this template fall back to the generic Fluorescent/LED script, so none of these are surfaced — dedicated EML template would be needed
  • H:SA+80..+93 LED Control Gear (Device Type 6) signals — Failure Status bitmask, Gear Type, Dimming Curve, Operating Modes, Reference Running, Current Protector, Fast Fade Time, Enable/Disable Current Protector, Select Dimming Curve, Store Fast Fade Time — Advanced LED diagnostics and tuning per DALI-2 Part 207; template uses only the common signals (0..28) so LED-specific bits are not exposed even though gateway supports them
  • 14000 + 640*LINE + 10*IDX + INSTANCE + 1280*SIG DALI Input Devices (Occupancy, Light sensors, Push buttons, Absolute inputs) — Gateway supports up to 64 DALI input devices per line (recommended 16 with push buttons) — occupancy (0/1/2/3), light level (lux), push-button event bitmask (press/release/short/double/long), absolute input (0–100 % / raw); template exposes NO input devices. Local management (gateway directly drives ECGs from push-button events) is also unused. This is the largest feature gap for IBOX-MBS-DALI integrations that use DALI-native sensors
  • H:SA+29 (Add to DALI Group), H:SA+30 (Remove from DALI Group) Add/Remove DALI Group (per ECG) — Firmware-drift deprecation: the r1.5 manual (May 2024) marks signals 29–30 as 'Not used' in the common-signals table, but the TapHome template still exposes them as per-ECG service actions ('Add to DALI Group' / 'Remove from DALI Group') because they were functional on earlier firmware where this template was authored. Behavior on latest firmware should be verified before relying on group-membership-at-runtime writes; configure groups via Intesis MAPS commissioning instead for stable deployments

Izvori

Pronašli ste problem s ovim predloškom uređaja?

Recite nam što ne radi, što nedostaje ili kako bi se predložak trebao ponašati. Vaše povratne informacije pomažu nam da katalog bude točan.

Provjerio TapHome

Želite ovo koristiti u svojoj centralnoj jedinici TapHome Core?

Otvorite ovaj predložak na portalu Customer Portal kako biste ga primijenili na jedan od svojih domova ili predložili poboljšanje i poslali ga natrag u katalog.

Otvorite na portalu