HUEGroup Readings state und pct

Begonnen von igami, 28 Dezember 2017, 09:36:46

Vorheriges Thema - Nächstes Thema

FunkOdyssey

Zitat von: hoppel118 am 01 Februar 2018, 12:51:14
Das ist ganz einfach zu verstehen. Da der ON-OFF-DIM-Status von der FHEM iOS App bei einer HUEGroup nicht erkannt wird, lag es für mich nahe, dass es mit den Readings zusammenhängt. Alle meine Posts beziehen sich auf die Readings, die durch das von igami entwickelte Script bereitgestellt werden, in Verbindung mit der App. Die Zeit, die igami investiert hat, hat sich meiner Ansicht nach in jedem Fall gelohnt. Die Readings ergeben nun genau das Ergebnis, was auch eine einzelne Leuchte liefert. Ich denke, dieses Ergebnis ist für alle interessant und nicht nur für einen einzelnen FHEM iOS App Nutzer. ;)

Kannst du vielleicht irgendwie versuchen, die Readings über das Attribut userreadings zu erzeugen? Reicht das evtl.?
Ich vermute aber, dass die App nicht nur das Reading subtype abfragt, sondern auch das Internal TYPE und somit die Zuordnung vornimmt.

justme1968

#46
anbei mal eine erste test version mit in die module eingebautem createGroupReadings attribut.

zum testen reicht es wenn man im Bridge device createGroupReadings auf 1 setzt.

wer es genauer haben möchte: über die kombination von createGroupReadings in der bridge und dein einzelnen hue groups sollte sich jedes gewünschte update verhalten für einzelne gruppen konfigurieren lassen.

aktuell werden readings für reachable, onoff, pct und bri erzeugt.

die auswahl ob die werte per min/max/durchschnitt berechnet werden kommt später noch.

das erzeugen eines icons über HUEDevice_devStateIcon ist noch nicht eingebaut!

edit 2018-02-02:
- funktioniert jetzt mit allen httpUtils varianten
- das icon für die gruppe wird erzeugt
- state reading wird erzeugt

edit 2018-02-04: eine version mit createGroupReadings attribute ist jetzt eingecheckt.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

hoppel118

Zitat von: FunkOdyssey am 01 Februar 2018, 13:35:30
Kannst du vielleicht irgendwie versuchen, die Readings über das Attribut userreadings zu erzeugen? Reicht das evtl.?
Ich vermute aber, dass die App nicht nur das Reading subtype abfragt, sondern auch das Internal TYPE und somit die Zuordnung vornimmt.

Siehst du, jede Diskussion lohnt sich. Vielen Dank für diesen Denkanstoß, mit folgendem zusätzlichen Befehl sehe ich nun den On-Off-Status der Gruppen. :D

attr HUEGroup2 subType extcolordimmer

Das habe ich gerade schnell bei allen Huegroups geändert. Geil! :D

Wir kommen dem Ziel näher! Nun wird mir in dem Feld des DIM-Levels sowohl das Wort "DIM" als auch "XX%" übereinander angezeigt. Das Wort "DIM" muss ich jetzt noch irgendwie weg kriegen, dann läuft alles. Was könnte dafür zuständig sein?

Farbe kann ich genauso wie bei einer einzelnen Leuchte einstellen, was allerdings auch vor Konfiguration des subType bereits ging.

Hier nochmal ein paar Screenshots von der Gruppe bzw. einer einzelnen Leuchte.

Danke, danke, danke euch allen schonmal! ;)
Server: Openmediavault, XEON E3-1240L-v5, Supermicro X11SSH-CTF, 64GB ECC RAM, SSD, RAID-Z2
Homebridge | Alexa | Yowsup
Homematic | HomeConnect | MQTT | Philips Hue | Sonos | Unifi Network & Protect | vbus | Xiaomi

hoppel118

#48
Zitat von: justme1968 am 01 Februar 2018, 14:52:44
anbei mal eine erste test version mit in die module eingebautem createGroupReadings attribut.

zum testen reicht es wenn man im Bridge device createGroupReadings auf 1 setzt.

Cool, habe ich direkt in mein System integriert. Ich kann über die FHEM iOS APP alles (on/off/Farbe/Dimm-Level) steuern.

Zitat von: justme1968 am 01 Februar 2018, 14:52:44
aktuell werden readings für reachable, onoff, pct und bri erzeugt.

Jupp, diese Readings sehe ich. Wichtig wäre hier noch "state", wobei ich das Reading an sich schon sehe. Folgende Probleme habe ich nun:

Wenn ich die Gruppe dimme, verändert sich der pct-Wert. Der Wert unter "state" müsste jedoch so wie in igami's Script gebaut werden. Wenn ich mich recht entsinne, funktioniert das in seinem Script wie folgt (schau aber lieber selbst nochmal):


  • x Leuchten einer Gruppe an - state=on
  • pct=100 einer Gruppe - state=on
  • pct=1-99 einer Gruppe - state=dimXX%
  • pct=0 einer Gruppe - state=off
  • alle Leuchten aus - state=off

Das onoff- und das state-Reading zeigen mir beide noch die letzten Status, die ich vor der Migration zu deinem Script erzeugt hatte, an. Da verändert sich nichts mehr an den Werten der Readings. Der ON-OFF-Status in der FHEM App verändert sich nun auch nicht mehr. Die Lampengruppen bleiben laut Status Symbol an oder aus, genauso wie Sie bei der Migration geschaltet waren. Ich nehme an, dass das zusammenhängt.

onoff müsste ebenfalls wie in igami's Script folgende Werte liefern (Korellation zu state). Aber das ist dir wohl klar. ;)


  • x Leuchten einer Gruppe an - onoff=1
  • alle Leuchten aus - onoff=0

Wenn du Updates hast, immer her damit. Wenn ich ein bestimmtes Test-Szenario testen soll, auch kein Thema, musst nur beschreiben, was ich wie testen soll. Momentan schalte ich einfach nur, an/aus, dimme, wechsle die Farbe und schaue mir in den Readings die Veränderungen an. Eigentlich müsste das reichen. Ich bin aber gerade bereit alles was in diesem Zusammenhang steht zu testen! ;)

Gruß Hoppel
Server: Openmediavault, XEON E3-1240L-v5, Supermicro X11SSH-CTF, 64GB ECC RAM, SSD, RAID-Z2
Homebridge | Alexa | Yowsup
Homematic | HomeConnect | MQTT | Philips Hue | Sonos | Unifi Network & Protect | vbus | Xiaomi

justme1968

bei onoff hatte sich noch ein fehler eingeschlichen. ich habe die version oben korrigiert.

zu state muss ich mir erst noch etwas überlegen.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

hoppel118

#50
Hm..., jetzt verändern sich die zusätzlichen Readings gar nicht mehr. Ich habe alles getestet on/off/dim/Farbe wechseln. Das einzige was noch funktioniert ist all_on und any_on

Habe ich evtl. was falsch gemacht? Ich bin wie folgt vorgegangen:

Dateien herunterladen, fhem gestoppt, die beiden im FHEM-Verzeichnis vorhandenen Dateien überschrieben, Rechte geprüft -> passt, fhem gestartet, Bridge device createGroupReadings auf 1 gesetzt, Browser-Fenster neu geladen. Bei der Migration von igami's Script zu deinem habe ich das quasi genauso gemacht und das hat funktioniert.

Gruß Hoppel
Server: Openmediavault, XEON E3-1240L-v5, Supermicro X11SSH-CTF, 64GB ECC RAM, SSD, RAID-Z2
Homebridge | Alexa | Yowsup
Homematic | HomeConnect | MQTT | Philips Hue | Sonos | Unifi Network & Protect | vbus | Xiaomi

hoppel118

#51
Zitat von: justme1968 am 01 Februar 2018, 16:06:43
bei onoff hatte sich noch ein fehler eingeschlichen. ich habe die version oben korrigiert.

zu state muss ich mir erst noch etwas überlegen.

Habe gerade nochmal ein Bisschen mit deinem Modul und meinen HUEGroup-Attributen gespielt. Aber es bleibt dabei, da geht nichts mehr. Gib einfach Bescheid, wenn du wieder, was zum Testen hast. Ich bin erstmal wieder bei igami's Script gelandet. Das funktioniert ja nun schon ganz gut. Damit kann ich erstmal leben. Die 2 Probleme die ich nun mit der App in Bezug auf das Dimmen noch habe, möchte ich gern nochmal kurz beschreiben:


  • In der App gibt es rechts neben dem OFF-Button eine weitere Schaltfläche, um das DIM-Level einzustellen siehe Screenshot. Dort wird das Wort "DIM" mit dem DIM-Level in dem Format "XX%" überlagert. Eigentlich dürfte dort in der Schaltfläche nur noch das DIM-Level in dem Format "XX%" stehen
  • In der App gibt es einen Slider, um das DIM-Level zu justieren. Dieser funktioniert zwar grundsätzlich, also man kann dimmen, aber das aktuelle DIM-Level wird dort nicht "gespeichert" bzw. angezeigt. Wenn man das Fenster mit dem Slider über die zuvor unter Punkt 1 beschriebene Schaltfläche aufruft, steht dort immer "0%", egal welches DIM-Level gerade eingestellt ist, siehe Screenshot.

Zum 2. Punkten habe ich die Vermutung, dass es mit "bri", "hue" und/oder "sat" zusammenhängt. Die 3 Slider im fhem WebInterface hüpfen bei der HUEGroup auch immer wieder zurück auf "0", sobald man die "set"-Taste betätigt. Da du @justme1968 dich ja sowieso mit "bri" für das Standard-Modul beschäftigst, könnte ich da evtl. Glück haben, denn mit "bri" wird die Helligkeit eingestellt. [emoji2]

Wie gesagt, für mich ist das gerade alles Neuland. Ich taste mich gerade einfach an die Sache ran. Ich hoffe, ihr seht mir und meiner Euphorie etwas nach. [emoji6]

Schönen Abend noch!

Gruß Hoppel
Server: Openmediavault, XEON E3-1240L-v5, Supermicro X11SSH-CTF, 64GB ECC RAM, SSD, RAID-Z2
Homebridge | Alexa | Yowsup
Homematic | HomeConnect | MQTT | Philips Hue | Sonos | Unifi Network & Protect | vbus | Xiaomi

justme1968

ich habe oben noch mal ein update angehängt:
- funktioniert jetzt mit allen httpUtils varianten (die beiden letzen versionen waren nur für httpUtils = 1)
- das icon für die gruppe wird erzeugt
- state reading wird erzeugt
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

hoppel118

Moin justme1968,

habe das neue Model gerade ausprobiert. Bei all meinen HUEGruppen verändern sich weiterhin ausschließlich die Readings all_on und any_on, wenn ich die Gruppe ein- bzw. ausschalte. Irgendwas stimmt da noch nicht.

Hier mal ein paar Konfigauszüge:

#HUE Bridge
define HUEBridge HUEBridge XX.XX.XX.XX
attr HUEBridge icon hue_filled_bridge_v2
attr HUEBridge key XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
attr HUEBridge httpUtils 1


#HUE Wohnbereich Papierlampe
define OG_WZ_Wohnbereich_Papierlampe_oben HUEDevice 5  IODev=HUEBridge
attr OG_WZ_Wohnbereich_Papierlampe_oben userattr room_map structexclude
attr OG_WZ_Wohnbereich_Papierlampe_oben IODev HUEBridge
attr OG_WZ_Wohnbereich_Papierlampe_oben alias Wohnbereich Papierlampe oben
attr OG_WZ_Wohnbereich_Papierlampe_oben color-icons 2
attr OG_WZ_Wohnbereich_Papierlampe_oben devStateIcon {(HUEDevice_devStateIcon($name),"toggle")}
attr OG_WZ_Wohnbereich_Papierlampe_oben group Lichter
attr OG_WZ_Wohnbereich_Papierlampe_oben icon light_wire_system_2
attr OG_WZ_Wohnbereich_Papierlampe_oben model LCT012
attr OG_WZ_Wohnbereich_Papierlampe_oben room Beleuchtung
attr OG_WZ_Wohnbereich_Papierlampe_oben subType extcolordimmer
attr OG_WZ_Wohnbereich_Papierlampe_oben webCmd rgb:rgb ff0000:rgb DEFF26:rgb 0000ff:ct 490:ct 380:ct 270:ct 160:toggle:on:off
define OG_WZ_Wohnbereich_Papierlampe_mitte HUEDevice 6  IODev=HUEBridge
attr OG_WZ_Wohnbereich_Papierlampe_mitte userattr room_map structexclude
attr OG_WZ_Wohnbereich_Papierlampe_mitte IODev HUEBridge
attr OG_WZ_Wohnbereich_Papierlampe_mitte alias Wohnbereich Papierlampe mitte
attr OG_WZ_Wohnbereich_Papierlampe_mitte color-icons 2
attr OG_WZ_Wohnbereich_Papierlampe_mitte devStateIcon {(HUEDevice_devStateIcon($name),"toggle")}
attr OG_WZ_Wohnbereich_Papierlampe_mitte group Lichter
attr OG_WZ_Wohnbereich_Papierlampe_mitte icon light_wire_system_2
attr OG_WZ_Wohnbereich_Papierlampe_mitte model LCT012
attr OG_WZ_Wohnbereich_Papierlampe_mitte room Beleuchtung
attr OG_WZ_Wohnbereich_Papierlampe_mitte subType extcolordimmer
attr OG_WZ_Wohnbereich_Papierlampe_mitte webCmd rgb:rgb ff0000:rgb DEFF26:rgb 0000ff:ct 490:ct 380:ct 270:ct 160:toggle:on:off
define OG_WZ_Wohnbereich_Papierlampe_unten HUEDevice 7  IODev=HUEBridge
attr OG_WZ_Wohnbereich_Papierlampe_unten userattr room_map structexclude
attr OG_WZ_Wohnbereich_Papierlampe_unten IODev HUEBridge
attr OG_WZ_Wohnbereich_Papierlampe_unten alias Wohnbereich Papierlampe unten
attr OG_WZ_Wohnbereich_Papierlampe_unten color-icons 2
attr OG_WZ_Wohnbereich_Papierlampe_unten devStateIcon {(HUEDevice_devStateIcon($name),"toggle")}
attr OG_WZ_Wohnbereich_Papierlampe_unten group Lichter
attr OG_WZ_Wohnbereich_Papierlampe_unten icon light_wire_system_2
attr OG_WZ_Wohnbereich_Papierlampe_unten model LCT012
attr OG_WZ_Wohnbereich_Papierlampe_unten room Beleuchtung
attr OG_WZ_Wohnbereich_Papierlampe_unten subType extcolordimmer
attr OG_WZ_Wohnbereich_Papierlampe_unten webCmd rgb:rgb ff0000:rgb DEFF26:rgb 0000ff:ct 490:ct 380:ct 270:ct 160:toggle:on:off


#HUEGroup Wohnbereich Papierlampe
define HUEGroup2 HUEDevice group 2  IODev=HUEBridge
attr HUEGroup2 userattr extcolordimmer extcolordimmer_map room_map structexclude
attr HUEGroup2 IODev HUEBridge
attr HUEGroup2 alias Wohnbereich Papierlampe
attr HUEGroup2 color-icons 2
attr HUEGroup2 delayedUpdate 1
attr HUEGroup2 devStateIcon {(HUEDevice_devStateIcon($name),"toggle")}
attr HUEGroup2 group Lampen
attr HUEGroup2 icon light_wire_system_2
attr HUEGroup2 model LCT012
attr HUEGroup2 room Beleuchtung,Wohnzimmer
attr HUEGroup2 subType extcolordimmer
attr HUEGroup2 webCmd rgb:rgb ff0000:rgb DEFF26:rgb 0000ff:ct 490:ct 380:ct 270:ct 160:toggle:on:off


Hast du dazu eine Idee?

Gruß Hoppel
Server: Openmediavault, XEON E3-1240L-v5, Supermicro X11SSH-CTF, 64GB ECC RAM, SSD, RAID-Z2
Homebridge | Alexa | Yowsup
Homematic | HomeConnect | MQTT | Philips Hue | Sonos | Unifi Network & Protect | vbus | Xiaomi

justme1968

wenn das dein bridge device ist, hast du createGroupReadings nicht gesetzt.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

hoppel118

Jo, ist mir gerade selbst auch schon wieder eingefallen, dass du das gestern geschrieben hattest. Ich bin gerade am Testen. Das sieht erstmal gut aus. Ich melde mich später nochmal nach einem ausführlichen Test, evtl. auch erst morgen, eigentlich habe ich heute nicht so viel Zeit. ;)

Vielen Danke schonmal und Gruß Hoppel
Server: Openmediavault, XEON E3-1240L-v5, Supermicro X11SSH-CTF, 64GB ECC RAM, SSD, RAID-Z2
Homebridge | Alexa | Yowsup
Homematic | HomeConnect | MQTT | Philips Hue | Sonos | Unifi Network & Protect | vbus | Xiaomi

hoppel118

OK, gerade schon 2 Sachen entdeckt:


  • Du hast das reading "on" eingebaut. Das bleibt bei mir immer auf "0".
  • Wenn das reding "pct" auf "100" gesetzt wird, verändert sich "state" nicht zu "on", sondern bleibt bei dem letzten "dimXX%".

Bis später
Server: Openmediavault, XEON E3-1240L-v5, Supermicro X11SSH-CTF, 64GB ECC RAM, SSD, RAID-Z2
Homebridge | Alexa | Yowsup
Homematic | HomeConnect | MQTT | Philips Hue | Sonos | Unifi Network & Protect | vbus | Xiaomi

justme1968

die version von oben sollte kein on reading haben. nur onoff.

kann es sein das das on noch von früher ist?

das fehlende on habe ich eben behoben. neue version oben.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

hoppel118

Evtl. mache ich was falsch. Ich stoppe meinen fhem Server, überschreibe die beiden Dateien im FHEM-Verzeichnis mit deinen Dateien und starte den fhem Server wieder. Muss ich das irgendwie anders machen?

Mir ist nun allerdings gerade aufgefallen, dass das "on" reading lediglich bei 3 von 5 Gruppen angezeigt wird. Bei den anderen beiden Gruppen sehe ich das "on" reading nicht.

Browser Cache habe ich gelöscht, bringt nix, das Reading ist weiterhin bei den 3 Gruppen zu sehen. Hast du dazu eine Idee? Wie kriege ich das wieder weg?

Das reading "state" funktioniert nun, wie es soll. SUPER!!!

Mir ist gerade noch eine weitere Kleinigkeit aufgefallen. Wenn ich meinen FHEM Server starte, sehe ich in dem Icon bei den Gruppen immer ein rotes Fragezeichen, sobald ich auf auf das Icon, on oder off klicke, verschwindet das rote Fragezeichen, siehe Screenshot.

Gruß Hoppel
Server: Openmediavault, XEON E3-1240L-v5, Supermicro X11SSH-CTF, 64GB ECC RAM, SSD, RAID-Z2
Homebridge | Alexa | Yowsup
Homematic | HomeConnect | MQTT | Philips Hue | Sonos | Unifi Network & Protect | vbus | Xiaomi

justme1968

alte readings verschwinden nicht von alleine. die lassen sich mit deletereading löschen.

das Fragezeichen gibt es so lange kein aktueller stand von der bridge ausgelesen wurde.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968