MiLight Lampen mit MilightHub(sidoh) und HTTPMOD

Begonnen von snowfly, 26 Februar 2018, 09:28:28

Vorheriges Thema - Nächstes Thema

snowfly

Hallo Forum,

nachdem ich mit den Modulen Milight und WiFilight nicht so recht glücklich geworden bin
habe ich mich mal hingsesetzt und was mit HTTPMOD zusammengebastelt um
mit der REST-Api des MiLight-Hubs zu sprechen.

Fast alles funktioniert auch:
-Nachführung(wenn mit FB geschaltet wird)
-CCT
-RGB_CCT
-FUT089
-Nacht Modus
...

Etwas langsam läuft das ganze, so mit ca. 1 Befehl/Sekunde.

Anpassen sollte kein Problem sein, einfach die Pfade anpassen und die nicht benötigten
"set0XXXX" rauswerfen(z.B. hue bei CCT-Lampen)


Das einzige was ich noch gerne hätte ist ein dynamisches und farbiges Icon
für die Lampe.
Wenn mir da noch jemand einen Tip hat -> immer her damit.


EDIT Ergänzung:
Funktionsweise:
FHEM <--> HTTPMOD <--> Netzwerk <--> MilightHub(sidoh)  --> 2.4GHz Milight Lampen
Fernbedienung -----------------------------------^---------------------^

Demo:
https://www.youtube.com/watch?v=1Bu30jm2rtk&feature=youtu.be



hier die DEFs:
defmod RGB_CCT_alle HTTPMOD http://192.168.0.113/gateways/0x0abc/rgb_cct/0 30
attr RGB_CCT_alle userattr get01Data get01Name get01TextArg:0,1 get01URL requestData requestHeader1 requestHeader2 set01Data set01Hint set01Name set01TextArg:0,1 set01URL set02Data set02Name set02URL set03Data set03Name set03URL set04Data set04Name set04URL set05Data set05Hint set05Name set05TextArg:0,1 set05URL set06Data set06Hint set06Name set06URL set07Data set07Name set07TextArg:0,1 set07URL set08Data set08Name set08URL setHeader1 setParseResponse:0,1
attr RGB_CCT_alle devStateIcon ON:light_light_dim_100:xoff OFF:light_light_dim_00:xon
attr RGB_CCT_alle eventMap /state ON:xon/ /state OFF:xoff/
attr RGB_CCT_alle extractAllJSON 1
attr RGB_CCT_alle group Licht
attr RGB_CCT_alle icon light_control
attr RGB_CCT_alle requestData {"get" :["state"]}
attr RGB_CCT_alle requestHeader1 Content-Type: application/json
attr RGB_CCT_alle requestHeader2 Accept: */*
attr RGB_CCT_alle room Unsorted,Wohnzimmer
attr RGB_CCT_alle set01Data {"status":$val}
attr RGB_CCT_alle set01Hint on,off
attr RGB_CCT_alle set01Name status
attr RGB_CCT_alle set01TextArg 1
attr RGB_CCT_alle set01URL http://192.168.0.113/gateways/0x0abc/rgb_cct/0
attr RGB_CCT_alle set02Data {"brightness":$val}
attr RGB_CCT_alle set02Name brightness
attr RGB_CCT_alle set02URL http://192.168.0.113/gateways/0x0abc/rgb_cct/0
attr RGB_CCT_alle set03Data {"saturation":$val}
attr RGB_CCT_alle set03Name saturation
attr RGB_CCT_alle set03URL http://192.168.0.113/gateways/0x0abc/rgb_cct/0
attr RGB_CCT_alle set04Data {"hue":$val}
attr RGB_CCT_alle set04Name hue
attr RGB_CCT_alle set04URL http://192.168.0.113/gateways/0x0abc/rgb_cct/0
attr RGB_CCT_alle set05Data {"state":$val}
attr RGB_CCT_alle set05Hint on,off
attr RGB_CCT_alle set05Name state
attr RGB_CCT_alle set05TextArg 1
attr RGB_CCT_alle set05URL http://192.168.0.113/gateways/0x0abc/rgb_cct/0
attr RGB_CCT_alle set06Data {"color_temp":$val}
attr RGB_CCT_alle set06Hint 160,360
attr RGB_CCT_alle set06Name color_temp
attr RGB_CCT_alle set06URL http://192.168.0.113/gateways/0x0abc/rgb_cct/0
attr RGB_CCT_alle set07Data {"command":"night_mode"}
attr RGB_CCT_alle set07Name night_mode
attr RGB_CCT_alle set07TextArg 1
attr RGB_CCT_alle set07URL http://192.168.0.113/gateways/0x0abc/rgb_cct/0
attr RGB_CCT_alle set08Data {"level":$val}
attr RGB_CCT_alle set08Name level
attr RGB_CCT_alle set08URL http://192.168.0.113/gateways/0x0abc/rgb_cct/0
attr RGB_CCT_alle setHeader1 Content-Type: application/json
attr RGB_CCT_alle setParseResponse 1
attr RGB_CCT_alle userReadings hsv {ReadingsVal($name,'hue','0').','.ReadingsVal($name,'saturation','100').','.ReadingsVal($name,'brightness','100')},\
rgb {ReadingsVal($name,'color_r','0').','.ReadingsVal($name,'color_g','100').','.ReadingsVal($name,'color_b','100')}
attr RGB_CCT_alle webCmd night_mode:color_temp:hsv
attr RGB_CCT_alle widgetOverride night_mode:uzsuSelect,NACHT color_temp:colorpicker,CT,160,1,360 \
hsv:colorpicker,HSV,hue,0,1,360,saturation,0,1,100,brightness,0,1,255



rico5588

Hallo Snowfly,

welche Version von Milight bridge nutzt du?

MFG Rico
Geht nicht gibt's nicht.
NUC-I3+Proxmox, Fritzbox 7590 AX, Synology DS414
Dimplex Wärmepumpe, Lüftungsanlage, Solarlog 1200
HM,IT,Lacross,EspEasy,Modbus,MQTT2, Freund von Shelly

snowfly

MiLight Bridge oder so sind nicht im Spiel,
nur HTTPMOD und sidohs MilightHub.

Mit den Modulen hat es bei mir nicht zufriedenstellend funktioniert,
daher die Lösung mit der REST-API.

(Und inzwischen laufen sie auch zufriedenstellend mit EchoDot
ohne Java. :))

rico5588

Könntest du vom hub mal einen link schicken. Klingt nach selbstbau oder?
Geht nicht gibt's nicht.
NUC-I3+Proxmox, Fritzbox 7590 AX, Synology DS414
Dimplex Wärmepumpe, Lüftungsanlage, Solarlog 1200
HM,IT,Lacross,EspEasy,Modbus,MQTT2, Freund von Shelly

snowfly

#4
Jetz hab ich es erst kapiert...
Du meinst die HW-Bridge.

Damit hat die Bastelei ja angefangen, ich habe nur eine IBox2...
(Die jetzt nicht mehr benötigt wird)

Hier der Link zu MilightHub
https://github.com/sidoh/esp8266_milight_hub

Der Selbstbau hält sich in Grenzen:
1x NodeMCU
1x nrf24l01
7x Steckkäbelchen
ca. 5€
(! Der CE-Pin in der MilightHub Config muss angepasst werden sonst gibt es eine Resetschleife)

Beta-User

Kannst auch ein MySensors-GW von hexenmeister nehmen.

Gibt einen Thread, der sich (auch) damit beschäfigt. Wie gesagt: der PIN muß in der SW/der Weboberfläche geändert werden.

Ich würde aber einen nRF mit PA+LNA empfehlen (ich habe die 1100m-Variante im Einsatz, zwischenzeitlich würde ich wohl die geschirmte 2100m-Variante nehmen, da sollte man aber vermutlich den PA-Level anpassen).

@snowfly:
Danke für's posten!
Der Thread hier ist schon länger auf meiner Lesezeichen-Liste, damit ich das auch bei Gelegenheit mal ohne die alten Module funzt.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

rico5588

So nun bin ich doch Neugirig gworden...

Ich habe folgende Lampe gekauft und wollte nun mithilfe der Milight bridge (IBOX2) diese Steuern. Jedoch wird die IBOX2 von Fhem nicht richtig unterstützt.
https://www.ebay.de/itm/LED-Deckenleuchte-Silber-K%C3%BCche-Deckenlampe-Flur-Dimmbar-Wohnzimmer-IP44-12W-96W/331871127745?ssPageName=STRK%3AMEBIDX%3AIT&var=541154052512&_trksid=p2057872.m2749.l2649
Von daher habe ich dieses Projekt nicht weiter verfolgt...
Ich verstehe das jetzt so.
Du kannst entweder die IBOX2 direkt ansteuern mit dem "HTTPMOD" oder aber über den Selbstbau?Richtig?
Geht nicht gibt's nicht.
NUC-I3+Proxmox, Fritzbox 7590 AX, Synology DS414
Dimplex Wärmepumpe, Lüftungsanlage, Solarlog 1200
HM,IT,Lacross,EspEasy,Modbus,MQTT2, Freund von Shelly

Beta-User

Nur der Vollständigkeit halber: Zu der genannten Hardware kann ich nichts sagen, ich habe nur "alte" Milight-Bulbs bzw. LED-Controller.

Auf der ebay-Seite lese ich aber auch nichts von 2.4GHz, Milight oder dem von dir genannten controller.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

rico5588

Es war nicht vorgesehen das dies eine Art Milight Produkt wird. Daher der Link, es ging nur um die Lampe. Als sie dann da lag und ich die Fernbedienung gesehen habe dachte ich das sieht au wie Milight....
Die FB ist eine 2,4 Ghz Remote.
Ich könnte mir auch vorstellen nochmehr von Milight zu kaufen, jedoch muss die Steuerungsmöglichkeit aus Fhem vorher klar sein.
Daher meine Fragen.
Geht nicht gibt's nicht.
NUC-I3+Proxmox, Fritzbox 7590 AX, Synology DS414
Dimplex Wärmepumpe, Lüftungsanlage, Solarlog 1200
HM,IT,Lacross,EspEasy,Modbus,MQTT2, Freund von Shelly

snowfly

#9
Scheinbar muss ich doch ausführlicher werden :o

Kurzform:
FHEM <--> HTTPMOD <--> Netzwerk <--> MilightHub(sidoh)  --> 2.4GHz Milight Lampen
Fernbedienung -----------------------------------^---------------------^

Textform:
In FHEM das HTTPMOD-Device aus dem 1.Post anlegen,
das schickt dem MilightHub, bei Reading änderung, per HTTP-Requests einen JSON String
oder pollt alle 30s bei angegebener Adresse (http://192.168.0.113/gateways/0x0abc/rgb_cct/0)

Die IP-Adresse(192.168.0.113) muss an die des MilightHub angepasst werden
und die Lampen Adresse (0x0abc), Mode (rgb_cct) und Gruppe (0) auf die Daten
worauf die Lampen angelernt wurden.

Im MilightHub einfach nur die Lampen pairen.
Oder die evtl. schon vorhandene Programmierung sniffen
und Device settings anpassen.

Tja, mehr ist es eigentlich gar nicht.




Beta-User

Zitat von: rico5588 am 10 März 2018, 11:04:29
Ich könnte mir auch vorstellen nochmehr von Milight zu kaufen, jedoch muss die Steuerungsmöglichkeit aus Fhem vorher klar sein.
Meine pers. Meinung: "Kauf was gscheits..."
Details zur Begründung in dem verlinkten Thread, ziemlich am Anfang.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

rico5588

OK ich hatte gelesen das es kleinere Verzögerung gibt...
Hast du Gegenempfehlungen im Bereich RGB Beleuchtung?
Geht nicht gibt's nicht.
NUC-I3+Proxmox, Fritzbox 7590 AX, Synology DS414
Dimplex Wärmepumpe, Lüftungsanlage, Solarlog 1200
HM,IT,Lacross,EspEasy,Modbus,MQTT2, Freund von Shelly

Beta-User

Das mit den "kleineren Verzögerungen" ließe sich evtl. mit dieser Art der Ansteuerung hier umgehen.
Das war also von vornherein nicht der Punkt, ich will aber die ganzen Details hier nicht wiederholen.

Mit Alternativen tu' ich mich schwer, da ich nichts RGB-Mäßiges mehr selbst einsetze. Hue+Verwandtschaft scheint die meisten zu überzeugen, ist halt ziemlich teuer. Vielleicht siehst du dir die IKEA-Lösung mal an, das scheint auch mit anderen Controllern ordentlich zu funktionieren. Aber bitte: Experten fragen, ich kann nur laut sagen: MiLight ist nicht so das Gelbe vom Ei, das fängt mit dem fehlenden Rückkanal an, was auch diese Lösung hier nur partiell beseitigt...

Btw: ich habe gesehen, dass auf dem Bild die Standard-FB abgebildet waren. Das sollte also mit der Sidoh-Bridge gehen (die kann auch das längere Protokoll, aber wie gut das funktioniert: keine Ahnung).
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

snowfly

#13
Hier noch eine kleine Demo:
https://www.youtube.com/watch?v=1Bu30jm2rtk&feature=youtu.be

Allerdings möchte ich die Nachteile nicht ganz verschweigen.
Manchmal bekommen nicht alle Lampen alle Kommandos mit.

Zum Thema "was gscheits..."
Leider sind die anderen nicht soviel besser wie teurer
und alle versuchen mit Absicht uns Bastler auszusperren.
Solange die guten auch nur ein schlechter Kompromiss sind
kaufe ich die Billigen. :'(


rico5588

OK Ibox bestellt werde sehen was passiert...
Danke für die Infos.
Geht nicht gibt's nicht.
NUC-I3+Proxmox, Fritzbox 7590 AX, Synology DS414
Dimplex Wärmepumpe, Lüftungsanlage, Solarlog 1200
HM,IT,Lacross,EspEasy,Modbus,MQTT2, Freund von Shelly