
A Yeelight Color sablon a csak fényerőszabályozó Yeelight sablont bővíti teljes HSB színvezérléssel és állítható fehérrel (színhőmérséklet). Ugyanazt a Wi-Fi smart LED családot célozza meg — színes izzók, szalagok és mennyezeti lámpák — az azonos Yeelight Inter-Operation Protocol használatával a 55443-as TCP porton. A fő különbség az eszközmodell: egyszerű fényerőszabályozó helyett a sablon egy PacketParserHSBLight-ot tesz elérhetővé, amely a TapHome-nak natív árnyalat-, telítettség-, fényerő- és színhőmérséklet-tulajdonságokat ad egyetlen eszközben.
A TapHome közvetlenül a helyi hálózaton kommunikál az izzóval JSON-RPC-n keresztül — a LAN Control engedélyezése után nincs szükség felhőkapcsolatra. A sablon egyszerre kérdezi le mind a hat színtulajdonságot, és reagál az izzó által küldött props értesítésekre, így a Yeelight alkalmazásból vagy más vezérlőből végzett változtatások szinte azonnal megjelennek a TapHome-ban.
Hardveres csatlakozás
A Yeelight izzók a szabványos hálózatról kapnak tápellátást (jellemzően E27, E14, GU10 vagy 24 V-os tápegység LED szalagokhoz, terméktől függően). Nincs szükség kábelezésre a TapHome és az izzó között — minden kommunikáció Wi-Fi-n keresztül zajlik. Az izzónak ugyanabban a LAN / VLAN-ban kell lennie, mint a TapHome CCU, mert a JSON-RPC protokollnak nincs hitelesítése és titkosítása, és a forgalom soha nem halad át a Yeelight felhőn.
A Yeelight LAN protokoll titkosítatlan. Ne tegye elérhetővé az 55443-as TCP portot a nyilvános interneten, és helyezze az izzókat megbízható hálózati szegmensbe — bárki, aki hozzáfér a LAN-hoz, parancsokat küldhet az izzónak.
Konfiguráció
LAN Control engedélyezése
A LAN Control (egyes régiókban Developer Mode néven) alapértelmezetten ki van kapcsolva az izzón. Nélküle az 55443-as porton a TCP kapcsolatokat elutasítja.
- Nyissa meg a Yeelight mobilalkalmazást, és párosítsa az izzót a helyi Wi-Fi hálózattal a SmartConfig / QuickConnect eljárással, ha még nincs párosítva.
- Válassza ki a célizzót az alkalmazásban.
- Koppintson a beállítások ikonra (jobb felső sarokban), és nyissa meg a LAN Control menüpontot (egyes firmware-verziókban Developer Mode néven).
- Kapcsolja a LAN Control-t ON-ra.
- Jegyezze fel az izzó IP-címét — az alkalmazás eszközinformációiban jelenik meg, vagy kiolvasható a router DHCP bérlettáblájából.
A LAN Control engedélyezése után az izzó az 55443-as TCP porton figyel, és rendszeresen hirdeti magát UDP multicast 239.255.255.250:1982 címen.
Hálózati konfiguráció
- IP-cím — a TapHome sablon nem fedezi fel automatikusan az izzókat. Rendeljen statikus IP-t vagy DHCP-foglalást a routerben, hogy az izzó címe ne változzon a bérlet megújítása után.
- Azonos LAN-szegmens — a TapHome CCU-nak és az izzónak ugyanabban a broadcast tartományban kell lennie. Ha a Wi-Fi és a vezetékes kliensek külön VLAN-okban vannak, adjon hozzá egy tűzfalszabályt, amely engedélyezi a TCP 55443-at közöttük.
Importparaméterek
A sablon importálásakor a TapHome-ban a felhasználó három értéket ad meg:
| Paraméter | Leírás | Alapértelmezett |
|---|---|---|
ipAddress | A Yeelight izzó IP-címe a LAN-ban | 192.168.0.1 (helyőrző — cserélje le a valós IP-re) |
Port | TCP vezérlőport az izzón | 55443 |
Internal poll interval | Milyen gyakran küldi a sablon a get_prop-ot (ezredmásodpercben) | 10000 (10 s) |
Az alapértelmezett 55443-as port a szabványos Yeelight LAN Control port, és nem kell megváltoztatni, hacsak az izzó nem nem szabványos portra van konfigurálva.
A lekérdezések között a sablon a
propsértesítésekre is reagál, amelyeket az izzó állapotváltozáskor küld. Ez a gyakorlatban azt jelenti, hogy a Yeelight alkalmazásból, fali kapcsoló adapterből vagy más vezérlőből végzett szín-, fényerő- és ki/bekapcsolási változtatások szinte azonnal megjelennek a TapHome-ban, anélkül hogy a következő lekérdezésre kellene várni.
Eszközképességek
HSB színes lámpa (árnyalat, telítettség, fényerő és ki/be)
A sablon egyetlen HSB fényeszközt tesz elérhetővé. Minden lekérdezési ciklusban egyszerre kéri le mind a hat tulajdonságot egy get_prop kéréssel:
| |
A listener szkript feldolgozza a választ és natív TapHome tulajdonságokra képezi le:
- Hue (
Hd) —result[0], egész szám 0–359 fok - Saturation (
Sa) —result[1], százalék 0–100, osztva 100-zal a TapHome 0,0–1,0 tartományra - Brightness (
Hb) —result[2], százalék 1–100, osztva 100-zal a TapHome 0,0–1,0 tartományra - Power (
St) —result[3],"on"leképezve 1-re,"off"leképezve 0-ra (a fényerő szintén 0-ra áll kikapcsoláskor) - Color temperature (
Ct) —result[4], Kelvin érték, csakcolor_mode = 2(fehér mód) esetén beállítva; egyébkéntNaN - Color mode —
result[5], meghatározza, hogyCtíródik-e (1= RGB,2= Temperature,3= HSV)
Színmód váltás
A sablon a Ct tulajdonságot használja az aktív színmód meghatározására:
Ct = NaN— az izzó HSV színmódban van. Az írásokset_hsv-t használnak az árnyalathoz és telítettséghez.Ct = szám— az izzó fehér (színhőmérséklet) módban van. Az írásokset_ct_abx-et használnak.
A TapHome nem küld explicit módváltó parancsot. Ehelyett a felhasználó a színhőmérsékletet numerikus értékre állítja a fehér módba lépéshez, vagy NaN-ra állítja (szín kiválasztásával a HSB választóban) a HSV módba lépéshez. Az író szkriptek ellenőrzik a Ct-t küldés előtt és kihagyják az irreleváns parancsot — a writesaturation azonnal visszatér ha Ct nem NaN, és a writecct azonnal visszatér ha Ct NaN.
Írási parancsok
Három író szkript kezeli a fény különböző aspektusait:
- Fényerő / tápellátás (
writebrightness) — ha fényerő > 0, küldset_power ["on","smooth",300]-t, majdset_bright [szint,"smooth",300]-t. Ha fényerő = 0, küldset_power ["off","smooth",300]-t. - Árnyalat és telítettség (
writesaturation) — küldset_power ["on","smooth",300]-t, majdset_hsv [árnyalat, telítettség,"smooth",300]-t. CsakCt = NaN(HSV mód) esetén fut. - Színhőmérséklet (
writecct) — küldset_power ["on","smooth",300]-t, majdset_ct_abx [ct,"smooth",300]-t. Csak haCtszám (fehér mód). Érvényes tartomány: 1700–6500 K (pontos határok az izzómodelltől függnek).
Minden írás 300 ms-os smooth átmenetet használ a lágy tompításhoz az éles ugrás helyett. Minden írás után a debounce változó 1-re áll, ami a következő lekérdezési ciklus kihagyását okozza — ez megakadályozza az elavult állapot olvasását az izzó átmenete közben.
Szolgáltatásdiagnosztika
Két modulszintű szolgáltatásattribútum olvasódik egy külön get_prop kéréssel (id=981):
- Színmód —
RGB,TemperaturevagyHSV, a numerikuscolor_modetulajdonságból (1 / 2 / 3) dekódolvaSWITCHkifejezéssel a modul listener szkriptjében. - Színhőmérséklet — Kelvin érték
"{ct}K"formátumban (például"4000K"). Csak Temperature módban értelmes.
Ezek az attribútumok csak olvasható diagnosztikák — a tényleges színhőmérséklet-vezérlés az eszközszintű Ct tulajdonságon és a fent leírt writecct szkripten keresztül történik.
Hibaelhárítás
Az izzó nem reagál a parancsokra
Ellenőrizze, hogy a LAN Control engedélyezve van az izzón (Yeelight alkalmazás → izzó beállítások → LAN Control). Nélküle az izzó minden TCP kapcsolatot elutasít az 55443-as porton.
Erősítse meg az izzó IP-jét a Yeelight alkalmazásban vagy a router DHCP bérlettáblájában, és győződjön meg róla, hogy megegyezik az
ipAddressimportparaméterrel. A Yeelight izzók alapértelmezetten nem tartanak fix IP-t — a bérlet lejárhatott és az IP megváltozhatott.Rendeljen statikus IP-t vagy DHCP-foglalást az izzóhoz a címváltozás megelőzésére.
Ellenőrizze, hogy a TapHome CCU és az izzó ugyanabban a LAN / VLAN-ban van, és a TCP
55443nincs tűzfal által blokkolva közöttük.Tesztelje a kapcsolatot manuálisan:
telnet {bulb-ip} 55443és küldjön nyers kérést\r\nlezárással:1{"id":1,"method":"get_prop","params":["hue","sat","bright","power","ct","color_mode"]}Egy működő izzó
{"id":1,"result":["<hue>","<sat>","<bright>","<power>","<ct>","<color_mode>"]}választ ad.
A színparancsok figyelmen kívül vannak hagyva (árnyalat/telítettség nem változik)
A writesaturation szkript ellenőrzi a Ct-t a set_hsv küldése előtt. Ha Ct numerikus értékre van állítva (fehér mód), a szkript parancs küldése nélkül tér vissza. A HSV szín vezérléséhez először állítsa a színhőmérsékletet NaN-ra egy szín kiválasztásával a TapHome HSB választóban.
Hasonlóan a writecct küldés nélkül tér vissza ha Ct = NaN (HSV mód). Színhőmérséklet írásához az izzónak már fehér módban kell lennie.
Olvasási hiba: client quota exceeded
Minden TCP kapcsolat egy Yeelight izzóhoz 60 parancsra korlátozódik percenként, és az izzó összesen legfeljebb 4 egyidejű kapcsolatot fogad el. Ha egy másik rendszer egyidejűleg kérdezi le az izzót — Home Assistant, Yeelight felhőkapcsolat, egyéni szkript — az összesített forgalom sebességkorlátozási hibákat válthat ki.
- Kapcsolja ki vagy lassítsa le az izzót megosztó többi integrációt.
- Hagyja a TapHome lekérdezési intervallumot az alapértelmezett
10000ms-on vagy magasabban. A színes sablon egyget_prop-ot küld lekérdezésenként, plusz legfeljebb háromset_*írást változtatásonként, ami jóval a 60 cmd/min kvóta alatt marad. - Zárja be a nem használt
telnetdebug munkameneteket — beleszámítanak a 4 kapcsolatos korlátba.
HueSat vagy színhőmérséklet írási hiba
A listener szkript külön nyomon követi az írási hibákat minden parancstípushoz — writeErrorBrightness a tápellátás/fényerő írásokhoz, writeErrorHueSat a set_hsv írásokhoz és writeErrorCt a set_ct_abx írásokhoz. Ha hiba jelenik meg:
- Erősítse meg, hogy az izzó be van kapcsolva — minden
set_*parancsot aset_powerkivételével csakonállapotban fogad el az izzó. - Ellenőrizze, hogy a színhőmérséklet értéke a modellspecifikus tartományon belül van (jellemzően 1700–6500 K színes izzóknál, 2700–6500 K mennyezeti lámpáknál, 2700–6000 K ceiling3-nál).
- Ellenőrizze a nyers hibaüzenetet a TapHome szolgáltatásdiagnosztikában az izzó által visszaadott specifikus hibakódért.
A Yeelight alkalmazásban végzett változtatások nem jelennek meg
A sablon reagál az izzó által küldött props értesítésekre, így a külső változtatások normálisan egy másodpercen belül megjelennek. Ha nem:
- Az értesítés a TCP socket újraépítése közben érkezhetett meg — a következő lekérdezés (alapértelmezett 10 s) szinkronizálja az állapotot.
- Egyes régibb firmware-verziók csak aktív parancsküldéskor küldenek értesítést. Frissítse az izzó firmware-jét a Yeelight alkalmazásból.
- Az izzó elérhette a 4 kapcsolatos korlátot — csökkentse az egyidejű kliensek számát a LAN-ban.
A Yeelight eszközök csak 4 egyidejű TCP kapcsolatot és 60 parancsot percenként támogatnak kapcsolatonként. Ha a TapHome és egy másik rendszer (pl. Home Assistant) egyidejűleg kérdezi le ugyanazt az izzót, a kommunikáció megbízhatatlanná válhat. Használjon 10 másodperces vagy magasabb lekérdezési intervallumot.
