
Yeelight je značka Wi-Fi inteligentných LED svietidiel — jednofarebných žiaroviek, žiaroviek s nastaviteľnou bielou a plnofarebných žiaroviek, LED pásov a stropných svietidiel — ktoré vyrába spoločnosť Qingdao Yeelink (súčasť ekosystému Xiaomi). Každý Yeelight produkt s podporou LAN používa rovnaký JSON-RPC protokol Inter-Operation Protocol na TCP porte 55443, takže jedna šablóna TapHome pokrýva celú produktovú rodinu.
Šablóna sprístupňuje zariadenie typu stmievač: jas (0–100 %) a zapnutie/vypnutie s plynulými prechodmi. Aktuálny farebný režim a teplota bielej sa zobrazujú ako servisné atribúty len na čítanie. TapHome komunikuje so žiarovkou priamo v lokálnej sieti — po zapnutí LAN Control na žiarovke nie je potrebný účet v cloude Yeelight.
Hardvérové pripojenie
Yeelight žiarovky sa napájajú zo štandardnej siete (typicky E27, E14, GU10 alebo 24 V zdroj pre LED pásy — podľa produktu). Medzi TapHome a žiarovkou nie je potrebná žiadna kabeláž — celá komunikácia prebieha cez Wi-Fi. Žiarovka musí byť v rovnakej LAN / VLAN ako TapHome CCU, pretože JSON-RPC protokol nepoužíva autentifikáciu ani šifrovanie a komunikácia nikdy neprechádza cez cloud Yeelight.
LAN protokol Yeelight je nezašifrovaný. Nevystavuj TCP port 55443 do verejného internetu a umiestni žiarovky do dôveryhodného sieťového segmentu — ktokoľvek s prístupom do LAN môže žiarovke posielať príkazy.
Konfigurácia
Zapnutie LAN Control
LAN Control (v niektorých regiónoch označovaný ako Developer Mode) je na žiarovke predvolene vypnutý. Bez neho žiarovka odmieta TCP pripojenia na porte 55443.
- Otvor mobilnú aplikáciu Yeelight a spáruj žiarovku s lokálnou Wi-Fi sieťou cez SmartConfig / QuickConnect, ak ešte nie je spárovaná.
- Vyber cieľovú žiarovku v aplikácii.
- Ťukni na ikonu nastavení (vpravo hore) a otvor LAN Control (v niektorých firmvéroch označené ako Developer Mode).
- Prepni LAN Control na ON.
- Poznač si IP adresu žiarovky — zobrazuje sa v informáciách o zariadení v aplikácii Yeelight alebo ju možno zistiť z tabuľky DHCP leases na routeri.
Po zapnutí LAN Control žiarovka počúva na TCP porte 55443 a pravidelne sa inzeruje cez UDP multicast 239.255.255.250:1982.
Sieťová konfigurácia
- IP adresa — šablóna TapHome nerobí automatické vyhľadávanie žiaroviek. Prideľ žiarovke statickú IP alebo DHCP rezerváciu v routeri, aby sa adresa po obnove lease nezmenila.
- Rovnaký LAN segment — TapHome CCU a žiarovka musia byť v tej istej broadcast doméne. Ak sú Wi-Fi a drôtoví klienti v rôznych VLAN, pridaj firewall pravidlo povoľujúce TCP 55443 medzi nimi.
Importné parametre
Počas importu šablóny v TapHome používateľ zadáva tri hodnoty:
| Parameter | Popis | Predvolená hodnota |
|---|---|---|
ipAddress | IP adresa Yeelight žiarovky v LAN | 192.168.0.1 (placeholder — nahraď skutočnou IP) |
Port | TCP ovládací port žiarovky | 55443 |
Internal poll interval | Interval, v akom šablóna posiela get_prop (v milisekundách) | 10000 (10 s) |
Predvolený port 55443 je štandardný Yeelight LAN Control port a nemal by sa meniť, pokiaľ žiarovka nebola nakonfigurovaná na neštandardný port.
Medzi pollmi šablóna tiež reaguje na notifikácie
props, ktoré žiarovka sama posiela pri každej zmene stavu. V praxi to znamená, že zmeny jasu alebo zapnutia/vypnutia vykonané z aplikácie Yeelight, nástenného spínača alebo inej inštancie Home Assistant sa v TapHome prejavia takmer okamžite, bez čakania na ďalší poll.
Možnosti zariadenia
Stmievač (jas a zapnutie/vypnutie)
Šablóna sprístupňuje jedno stmievačové zariadenie. Pri každom polli posiela:
| |
a spracuje odpoveď result[0] (jas 1–100, delený 100 na rozsah TapHome 0.0–1.0) a result[1] ("on" / "off").
Zápisy sa prekladajú na dva JSON-RPC príkazy:
- Ak je cieľová úroveň väčšia ako nula, šablóna pošle
set_power ["on","smooth",300]a následneset_bright [round(level*100),"smooth",500]. 300 ms prechod pre zapnutie a 500 ms prechod pre jas poskytujú jemný fade namiesto tvrdého skoku. - Ak je cieľová úroveň nula, šablóna pošle
set_power ["off","smooth",300].
Stmievač tiež spracováva notifikácie props posielané žiarovkou (power / brightness), takže externé zmeny stavu sa v TapHome prejavia bez čakania na ďalší poll.
Farebný režim a teplota bielej (len na čítanie)
Dva servisné atribúty na úrovni modulu sa čítajú samostatným get_prop požiadavkom (id=981):
- Color mode —
RGB,TemperaturealeboHSV, dekódované z číselnej vlastnosticolor_mode(1 / 2 / 3) pomocou výrazuSWITCHv listener skripte. - Color temperature — hodnota v Kelvinoch reportovaná ako
"{ct}K"(napríklad"4000K"). Zmysluplná len vtedy, keď je žiarovka v režime Temperature. Typický rozsah podľa modelu: 1700–6500 K pre farebné žiarovky a pásy, 2700–6500 K pre stropné svietidlá (ceiling3 je obmedzený na 6000 K).
Oba atribúty sú len diagnostické — šablóna nedokáže prepnúť farebný režim ani zapísať novú teplotu bielej.
Ďalšie možnosti
Yeelight LAN protokol tiež ponúka ovládanie farieb RGB a HSV (set_rgb, set_hsv), nastavenie teploty bielej (set_ct_abx), programy farebných zmien (start_cf / stop_cf), preddefinované scény (set_scene), časovače spánku na žiarovke (cron_add), ovládanie zadného svetla na dvojsvetelných svietidlách (bg_* metódy) a music mode (set_music, reverzný TCP kanál obchádzajúci limit rýchlosti). Žiadnu z týchto funkcií súčasná TapHome šablóna stmievača neimplementuje — používatelia, ktorí potrebujú plnú farbu alebo efekty, musia šablónu rozšíriť alebo používať súbežne natívnu Yeelight aplikáciu.
Farbu, teplotu bielej a scény je možné pridať v budúcej aktualizácii šablóny cez ten istý TCP kanál. Read/write skripty PacketParser je možné rozšíriť o
set_ct_abx,set_rgbaleboset_scenebez zmeny importných parametrov.
Riešenie problémov
Žiarovka nereaguje na príkazy
Over, že LAN Control je na žiarovke zapnutý (Yeelight app → nastavenia žiarovky → LAN Control). Bez neho žiarovka odmieta všetky TCP pripojenia na porte 55443.
Skontroluj IP adresu žiarovky v aplikácii Yeelight alebo v DHCP tabuľke routera a uisti sa, že sa zhoduje s importným parametrom
ipAddress. Yeelight žiarovky predvolene nemajú pevnú IP — lease mohol expirovať a adresa sa zmenila.Prideľ žiarovke statickú IP alebo DHCP rezerváciu, aby sa adresa nemenila.
Skontroluj, že TapHome CCU a žiarovka sú v rovnakej LAN / VLAN a že TCP
55443nie je blokovaný firewallom medzi nimi.Otestuj pripojenie manuálne:
telnet {bulb-ip} 55443a pošli surový request ukončený\r\n:1{"id":1,"method":"get_prop","params":["bright","power"]}Platná žiarovka odpovie
{"id":1,"result":["<bright>","<power>"]}.
Read error: client quota exceeded
Každé TCP pripojenie k Yeelight žiarovke je obmedzené na 60 príkazov za minútu a žiarovka akceptuje maximálne 4 súčasné pripojenia (spolu 144 príkazov/minútu v celej LAN). Ak žiarovku súčasne polluje iný systém — Home Assistant, cloudová session Yeelight, vlastný skript — spojená premávka môže spôsobiť chyby rate-limitu, ktoré sa v TapHome hlásia ako Read error: client quota exceeded.
- Vypni alebo spomaľ ostatné integrácie, ktoré zdieľajú žiarovku.
- Ponechaj interval pollu v TapHome na predvolenej hodnote
10000ms alebo vyššej. Jedenget_propplus dvaset_*zápisy na zmenu bezpečne zostávajú pod kvótou 60 príkazov/minútu. - Zavri nepoužívané
telnetdebug sessions — tie sa počítajú do limitu 4 pripojení.
Servisný atribút Color temperature ukazuje “error”
Servisné atribúty Color mode a Color temperature čítajú color_mode a ct zo žiarovky. Ak ide o mono model (iba biela), ktorý nepodporuje nastaviteľnú bielu, alebo ak je žiarovka práve v režime RGB alebo HSV, hodnota ct nie je zmysluplná a listener skript hlási Color temperature ako "error". Ide o očakávané správanie, nie o chybu.
Zmeny v aplikácii Yeelight sa neprejavujú
Šablóna reaguje na notifikácie props posielané žiarovkou, takže externé zmeny sa bežne prejavia do sekundy. Ak nie:
- Notifikácia mohla prísť v čase, keď sa TCP socket obnovoval — nasledujúci poll (predvolene 10 s) ich zosynchronizuje.
- Niektoré staršie firmvéry posielajú notifikácie iba pri aktívne odoslanom príkaze. Aktualizuj firmvér žiarovky cez aplikáciu Yeelight.
- Žiarovka možno dosiahla limit 4 pripojení — zníž počet súčasných klientov v LAN.
