
Šablona Yeelight Color rozšiřuje čistě stmívací šablonu Yeelight o plné HSB řízení barev a nastavitelnou bílou (teplotu bílé). Cílí na stejnou rodinu Wi-Fi smart LED — barevné žárovky, pásky a stropní svítidla — s použitím identického Yeelight Inter-Operation Protocol na TCP portu 55443. Klíčový rozdíl je model zařízení: místo jednoduchého stmívače šablona zpřístupňuje PacketParserHSBLight, který dává TapHome nativní vlastnosti odstínu, sytosti, jasu a teploty bílé v jednom zařízení.
TapHome komunikuje se žárovkou přímo v lokální síti přes JSON-RPC — po povolení LAN Control na žárovce není potřeba cloudové připojení. Šablona polluje všech šest barevných vlastností naráz a reaguje na props notifikace zasílané žárovkou, takže změny z aplikace Yeelight nebo jiného ovladače se v TapHome objeví téměř okamžitě.
Hardwarové připojení
Yeelight žárovky jsou napájeny ze standardní sítě (typicky E27, E14, GU10 nebo 24V napájecí zdroj pro LED pásek podle produktu). Mezi TapHome a žárovkou není potřeba žádná kabeláž — veškerá komunikace probíhá přes Wi-Fi. Ž��rovka musí být ve stejné LAN / VLAN jako TapHome CCU, protože JSON-RPC protokol nemá autentifikaci ani šifrování a provoz nikdy neprochází přes Yeelight cloud.
Yeelight LAN protokol je nešifrovaný. Nevystavujte TCP port 55443 na veřejný internet a umístěte žárovky do důvěryhodného síťového segmentu — kdokoliv s přístupem do LAN může žárovce posílat příkazy.
Konfigurace
Povolení LAN Control
LAN Control (v některých regionech nazývaný Developer Mode) je na žárovce standardně vypnutý. Bez něj jsou TCP připojení na portu 55443 odmítnuta.
- Otevřete mobilní aplikaci Yeelight a spárujte žárovku s lokální Wi-Fi sítí procedurou SmartConfig / QuickConnect, pokud ještě není spárována.
- Vyberte cílovou žárovku v aplikaci.
- Klepněte na ikonu nastavení (vpravo nahoře) a otevřete LAN Control (v některých verzích firmwaru označené jako Developer Mode).
- Přepněte LAN Control na ON.
- Poznamenejte si IP adresu žárovky — zobrazuje se v informacích o zařízení v aplikaci Yeelight nebo ji najdete v tabulce DHCP pronájmů routeru.
Po povolení LAN Control žárovka naslouchá na TCP portu 55443 a pravidelně se oznamuje přes UDP multicast 239.255.255.250:1982.
Nastavení sítě
- IP adresa — TapHome šablona neobjevuje žárovky automaticky. Přiřaďte statickou IP nebo DHCP rezervaci v routeru, aby se adresa žárovky po obnovení pronájmu nezměnila.
- Stejný LAN segment — TapHome CCU a žárovka musí být ve stejné broadcastové doméně. Pokud jsou Wi-Fi a kabelová zařízení v oddělených VLAN, přidejte pravidlo firewallu povolující TCP 55443 mezi nimi.
Importní parametry
Při importu šablony v TapHome uživatel zadává tři hodnoty:
| Parametr | Popis | Výchozí hodnota |
|---|---|---|
ipAddress | IP adresa Yeelight žárovky v LAN | 192.168.0.1 (zástupná — nahraďte skutečnou IP) |
Port | TCP řídicí port na žárovce | 55443 |
Internal poll interval | Jak často šablona posílá get_prop (v milisekundách) | 10000 (10 s) |
Výchozí port 55443 je standardní Yeelight LAN Control port a neměl by se měnit, pokud žárovka není nakonfigurována na nestandardní port.
Mezi pollováním šablona reaguje i na
propsnotifikace, které žárovka posílá při změně stavu. V praxi to znamená, že změny barvy, jasu a zapnutí/vypnutí z aplikace Yeelight, nástěnného přepínače nebo jiného ovladače se v TapHome objeví téměř okamžitě, bez čekání na další poll.
Schopnosti zařízení
HSB barevné světlo (odstín, sytost, jas a zapnutí/vypnutí)
Šablona zpřístupňuje jedno HSB světelné zařízení. V každém pollovacím cyklu posílá get_prop požadavek na všech šest vlastností naráz:
| |
Listener skript parsuje odpověď a mapuje ji na nativní TapHome vlastnosti:
- Hue (
Hd) —result[0], celé číslo 0–359 stupňů - Saturation (
Sa) —result[1], procenta 0–100, děleno 100 na TapHome rozsah 0,0–1,0 - Brightness (
Hb) —result[2], procenta 1–100, děleno 100 na TapHome rozsah 0,0–1,0 - Power (
St) —result[3],"on"mapováno na 1,"off"mapováno na 0 (jas se také nastaví na 0 při vypnutí) - Color temperature (
Ct) —result[4], hodnota v Kelvinech nastavená jen kdyžcolor_mode = 2(režim bílé); jinak nastavená naNaN - Color mode —
result[5], určuje, zda seCtzapisuje (1= RGB,2= Temperature,3= HSV)
Přepínání barevného režimu
Šablona používá vlastnost Ct k určení aktivního barevného režimu:
Ct = NaN— žárovka je v HSV barevném režimu. Zápisy používajíset_hsvpro odstín a sytost.Ct = číslo— žárovka je v režimu bílé (teplota bílé). Zápisy používajíset_ct_abx.
TapHome neposílá explicitní příkaz pro přepnutí režimu. Místo toho uživatel nastaví teplotu bílé na číselnou hodnotu pro vstup do režimu bílé, nebo ji nastaví na NaN (výběrem barvy v HSB výběru) pro vstup do HSV režimu. Zápisové skripty kontrolují Ct před odesláním a přeskočí irelevantní příkaz — writesaturation se okamžitě vrátí pokud Ct není NaN a writecct se okamžitě vrátí pokud Ct je NaN.
Zápisové příkazy
Tři zápisové skripty řídí různé aspekty světla:
- Jas / napájení (
writebrightness) — pokud jas > 0, pošleset_power ["on","smooth",300]následovanéset_bright [úroveň,"smooth",300]. Pokud jas = 0, pošleset_power ["off","smooth",300]. - Odstín a sytost (
writesaturation) — pošleset_power ["on","smooth",300]následovanéset_hsv [odstín, sytost,"smooth",300]. Spustí se jen kdyžCt = NaN(HSV režim). - Teplota bílé (
writecct) — pošleset_power ["on","smooth",300]následovanéset_ct_abx [ct,"smooth",300]. Spustí se jen kdyžCtje číslo (režim bílé). Platný rozsah: 1700–6500 K (přesné limity závisí na modelu žárovky).
Všechny zápisy používají 300 ms plynulý přechod pro jemné ztlumení místo tvrdého skoku. Po každém zápisu se proměnná debounce nastaví na 1, což způsobí přeskočení následujícího pollovacího cyklu — tím se zabrání čtení zastaralého stavu během přechodu žárovky.
Diagnostika služeb
Dva servisní atributy na úrovni modulu se čtou přes samostatný get_prop požadavek (id=981):
- Barevný režim —
RGB,TemperatureneboHSV, dekódovaný z číselné vlastnosticolor_mode(1 / 2 / 3) pomocí výrazuSWITCHv listener skriptu modulu. - Teplota bílé — hodnota v Kelvinech hlášená jako
"{ct}K"(například"4000K"). Smysluplná jen když je žárovka v režimu Temperature.
Tyto atributy jsou diagnostické pouze pro čtení — skutečné řízení teploty bílé probíhá přes vlastnost Ct na úrovni zařízení a skript writecct popsaný výše.
Řešení problémů
Žárovka nereaguje na příkazy
Ověřte, že LAN Control je na žárovce povolen (aplikace Yeelight → nastavení žárovky → LAN Control). Bez něj žárovka odmítá všechna TCP připojení na portu 55443.
Potvrďte IP žárovky v aplikaci Yeelight nebo v tabulce DHCP pronájmů routeru a ujistěte se, že odpovídá importnímu parametru
ipAddress. Yeelight žárovky si standardně neuchovávají fixní IP — pronájem mohl vypršet a IP se změnit.Přiřaďte žárovce statickou IP nebo DHCP rezervaci, aby se adresa neměnila.
Zkontrolujte, že TapHome CCU a žárovka jsou ve stejné LAN / VLAN a že TCP
55443není blokován firewallem mezi nimi.Otestujte konektivitu manuálně:
telnet {bulb-ip} 55443a pošlete surový request následovaný\r\n:1{"id":1,"method":"get_prop","params":["hue","sat","bright","power","ct","color_mode"]}Funkční žárovka odpoví
{"id":1,"result":["<hue>","<sat>","<bright>","<power>","<ct>","<color_mode>"]}.
Barevné příkazy jsou ignorovány (odstín/sytost se nemění)
Skript writesaturation kontroluje Ct před odesláním set_hsv. Pokud je Ct nastaveno na číselnou hodnotu (režim bílé), skript se vrátí bez odeslání jakéhokoli příkazu. Pro ovládání HSV barvy nejprve nastavte teplotu bílé na NaN výběrem barvy v TapHome HSB výběru.
Podobně writecct se vrátí bez odeslání pokud Ct = NaN (HSV režim). Pro zápis teploty bílé musí být žárovka již v režimu bílé.
Chyba čtení: client quota exceeded
Každé TCP připojení k Yeelight žárovce je omezeno na 60 příkazů za minutu a žárovka akceptuje maximálně 4 souběžná připojení celkem. Pokud další systém polluje žárovku současně — Home Assistant, Yeelight cloudová relace, vlastní skript — kombinovaný provoz může vyvolat chyby limitu.
- Vypněte nebo zpomalte ostatní integrace sdílející žárovku.
- Ponechte TapHome poll interval na výchozích
10000ms nebo vyšších. Barevná šablona posílá jednoget_propna poll plus až třiset_*zápisy na změnu, což je hluboko pod kvótou 60 cmd/min. - Zavřete nepoužívané
telnetdebug relace — počítají se do limitu 4 připojení.
Chyba z��pisu HueSat nebo teploty bílé
Listener skript sleduje chyby zápisu samostatně pro každý typ příkazu — writeErrorBrightness pro zápisy napájení/jasu, writeErrorHueSat pro set_hsv zápisy a writeErrorCt pro set_ct_abx zápisy. Pokud se objeví chyba:
- Potvrďte, že žárovka je zapnuta — všechny
set_*příkazy kroměset_powerjsou akceptovány jen když je žárovka ve stavuon. - Ověřte, že hodnota teploty bílé je v rozsahu specifickém pro model (typicky 1700–6500 K pro barevné žárovky, 2700–6500 K pro stropní svítidla, 2700–6000 K pro ceiling3).
- Zkontrolujte surovou chybovou zprávu v TapHome diagnostice služeb pro konkrétní chybový kód vrácený žárovkou.
Změny z aplikace Yeelight se neprojevují
Šablona reaguje na props notifikace zasílané žárovkou, takže externí změny se normálně objeví do sekundy. Pokud ne:
- Notifikace mohla dorazit během opětovného navazování TCP socketu — následující poll (výchozí 10 s) stav zsynchronizuje.
- Některé starší verze firmwaru posílají notifikace jen když se aktivně posílá příkaz. Aktualizujte firmware žárovky z aplikace Yeelight.
- Žárovka mohla dosáhnout limitu 4 připojení — snižte počet souběžných klientů v LAN.
Yeelight zařízení podporují pouze 4 souběžná TCP připojení a 60 příkazů za minutu na připojení. Pokud TapHome a jiný systém (např. Home Assistant) pollují stejnou žárovku současně, komunikace může být nespolehlivá. Používejte poll interval 10 sekund nebo vyšší.
