Loxone - Teil 5 - YeeLight-Integration
Neben den gängigen Philips Hue Lampen, ist YeeLight eine günstige Alternative, welche zudem noch ohne Zentrale/Bridge auskommt. Das liegt daran, dass die Leuchtmittel direkt ins WLAN eingebunden werden und per TCP/IP angesteuert werden können. In Sachen Verarbeitung und Farbwiedergabe müssen sich die günstigeren YeeLight aber auf keinen Fall verstecken! Und eine Integration in Loxone ist ebenfalls möglich. Wie genau das geht, lernst Du in diesem Video. Der komplizierste Teil ist sicherlich die Formel, welche aus den Loxone RGB-Werten, die korrekten Infos für die YeeLight umrechnet. Aber auch das wird alles in diesem Beitrag bereitgestellt. Für Dich ist es also nur Copy und Paste.
Was Du brauchst?
- Ein Loxone-System
- Eine/Mehrere YeeLight WLAN-Leuchtmittel
Video
Befehle
Hier findest Du die YeeLight-Dokumentation
Herleitung der Formel für die Umrechnung
R + G * 1000 + B * 1000000 = 43015100 (R = 100, G = 15, B = 43)
(B * 1000000) + (G * 1000) + R = 043 015 100 (B = 43, G = 15, R = 100)
// Werte errechnen
B = INT(I1 / 1000000)
G = INT((I1 - B * 1000000) / 1000)
R = I1 - B * 1000000 - G * 1000
// Unbekannte ersetzen
B = INT(I1 / 1000000)
G = INT((I1 - INT(I1 / 1000000) * 1000000) / 1000)
R = I1 - INT(I1 / 1000000) * 1000000 - INT((I1 - INT(I1 / 1000000) * 1000000) / 1000) * 1000
// Auf die Basis 255 umrechnen
B = INT(INT(I1 / 1000000) / 100 * 255)
G = INT(INT((I1 - INT(I1 / 1000000) * 1000000) / 1000) / 100 * 255)
R = INT((I1 - INT(I1 / 1000000) * 1000000 - INT((I1 - INT(I1 / 1000000) * 1000000) / 1000) * 1000) / 100 * 255)
// An die richtige stelle schieben
B = INT(INT(I1 / 1000000) / 100 * 255)
G = INT(INT((I1 - INT(I1 / 1000000) * 1000000) / 1000) / 100 * 255) * 256
R = INT((I1 - INT(I1 / 1000000) * 1000000 - INT((I1 - INT(I1 / 1000000) * 1000000) / 1000) * 1000) / 100 * 255) * 256 * 256
In den Formel-Baustein muss also folgendes eingetragen werden. Einfach kopieren - ich habe es getestet und es funktioniert wunderbar.
INT(INT(I1 / 1000000) / 100 * 255) + INT(INT((I1 - INT(I1 / 1000000) * 1000000) / 1000) / 100 * 255) * 256 + INT((I1 - INT(I1 / 1000000) * 1000000 - INT((I1 - INT(I1 / 1000000) * 1000000) / 1000) * 1000) / 100 * 255) * 256 * 256
Digitalausgang Power:
EIN: { "id": 1, "method": "set_power", "params": ["on", "smooth", 500]}\r\n
AUS: { "id": 1, "method": "set_power", "params": ["off", "smooth", 500]}\r\n
Analogausgang Farbe:
EIN: { "id": 1, "method": "set_rgb", "params": [<v>, "smooth", 500]}\r\n