[32_YeeLight.pm][Devel 32_YeeLightBridge.pm] - Modul für Yeelight Wifi Lampen

Begonnen von thaliondrambor, 14 Dezember 2016, 22:21:55

Vorheriges Thema - Nächstes Thema

sledge

Zitat von: vbs am 05 März 2018, 15:34:36
Ich hab mal hier ein Attribut "autoConnect" hinzugefügt. Wenn man das auf "0" setzt, dann baut das Modul nicht ständig eine Verbindung auf. Muss man dann händisch mit "reopen" machen. Werde mal versuchen, das mit einem PRESENCE-Device, welches engmaschig pingt, zu bewerkstelligen:
https://github.com/verybadsoldier/32_YeeLight.pm
Hm, denke schon, dass das vorgesehen ist. Die App bietet ja eine ganz gute Konfiguration an, was im Stromlos-Fall passieren soll.


Perfekt. Endlich bin ich einen Großteil meiner "freezes" im Log los. Werde das auch via Presence lösen, denke ich.


Danke dafür.
FHEM: debian Intel-NUC / 25 x MAX!, 15 x HM-bidcos, MQTT, 3 x 1wire, 20 x Shelly, 20 x Tasmota, 12 x Yeelight, Opentherm-GW, Espeasy, alexa-fhem, kodi, unifi, musiccast, ...

vbs

Ich hatte das noch etwas weiter umgebaut und betreibe es jetzt bei mir doch mit "autoConnect" und ohne Presence-Device. Das Modul versucht jetzt regelmäßig non-blocking und stillschweigend eine Verbindung aufzubauen. Ich glaube jede Minute. Das ist also soweit ok mMn und verursacht keine Freezes mehr.
Das mit autoConnect=0 und Presence-Ping braucht man eigentlich nur, wenn einem die Minute zu lang ist und man das abkürzen möchte.

sledge

Zitat von: vbs am 21 März 2018, 11:56:53
Ich hatte das noch etwas weiter umgebaut und betreibe es jetzt bei mir doch mit "autoConnect" und ohne Presence-Device. Das Modul versucht jetzt regelmäßig non-blocking und stillschweigend eine Verbindung aufzubauen. Ich glaube jede Minute. Das ist also soweit ok mMn und verursacht keine Freezes mehr.
Das mit autoConnect=0 und Presence-Ping braucht man eigentlich nur, wenn einem die Minute zu lang ist und man das abkürzen möchte.


OK, schaue ich mir an.


Frage (ohne es genau zu wissen): Kann es sein, dass der JSON-Request an die Lampen immer gleich aussieht (also zB incl. "rgb" usw), unabhängig vom Model. Meine das so in StatusRequest gesehen zu haben. Müsste doch eigentlich ähnlich wie $list modellabhängig aufgebaut werden?


Bzgl. autoConnect und freezes probiere ich nächste Tage.


Gruß Tom
FHEM: debian Intel-NUC / 25 x MAX!, 15 x HM-bidcos, MQTT, 3 x 1wire, 20 x Shelly, 20 x Tasmota, 12 x Yeelight, Opentherm-GW, Espeasy, alexa-fhem, kodi, unifi, musiccast, ...

vbs

Ist auf jeden Fall so implementiert, wie du es beschreibst. Ich vermute mal, dass die Lampe dann nur diejenigen Felder beantwortet, die sie auch unterstützt. Sprich: es schadet nichts, wenn man nach mehr fragt, z.B. "rgb".

no_Legend

Zitat von: vbs am 21 März 2018, 12:51:18
Ist auf jeden Fall so implementiert, wie du es beschreibst. Ich vermute mal, dass die Lampe dann nur diejenigen Felder beantwortet, die sie auch unterstützt. Sprich: es schadet nichts, wenn man nach mehr fragt, z.B. "rgb".

Mal ne kurze Frage, welche Repo wird nun weitergepflegt oder weiter entwickelt?
Das aus dem ersten Post scheint noch ein haufen baustellen zu haben.
IntelNUC mit Ubuntu mit FHEM immer aktuell,2x HMLAN, CUL443, CUL868 -homekit/siri -tablet ui -homebridge
Device, diverse:
HM-SEC-KEY,HM-LC-BL1-FM,HM-SEC-SD,HM-Sen-DB-PCB,HM-Sec-RHS,HM-Sec-SC-2,HM-WDS10-TH-O,Harmony,Netamo, 433MHz Steckdosen uvm.

f-zappa

Zitat von: vbs am 21 März 2018, 11:56:53
Ich hatte das noch etwas weiter umgebaut und betreibe es jetzt bei mir doch mit "autoConnect" und ohne Presence-Device. Das Modul versucht jetzt regelmäßig non-blocking und stillschweigend eine Verbindung aufzubauen. Ich glaube jede Minute. Das ist also soweit ok mMn und verursacht keine Freezes mehr.
Das mit autoConnect=0 und Presence-Ping braucht man eigentlich nur, wenn einem die Minute zu lang ist und man das abkürzen möchte.

Moin,
eigentlich bräuchte man doch selbst das nicht. Die Lampen schicken ja alle Nase lang Broadcasts - insbesondere, sobald sie Strom bekommen. Wenn die Bridge kontinuierlich auf die Broadcasts lauscht, kann sie doch Devices automatisch connecten, wenn diese vorher disconnected waren und ein Broadcast eingeht. Ich hab selbst schon mal vor ein paar Monaten daran herumgefummelt, bin aber nicht weitergekommen. Mag sich das mal jemand mit besseren Perlkenntnissen ansehen?
Gruß, Uli

vbs

Zitat von: f-zappa am 21 März 2018, 17:25:30
Ich hab selbst schon mal vor ein paar Monaten daran herumgefummelt, bin aber nicht weitergekommen. Mag sich das mal jemand mit besseren Perlkenntnissen ansehen?
Finde die Idee gut, das zu nutzen. Zeig doch mal, wo es klemmt, evtl. kann jemand helfen.

Ajuba

Zitat von: no_Legend am 21 März 2018, 14:01:40
Mal ne kurze Frage, welche Repo wird nun weitergepflegt oder weiter entwickelt?
Das aus dem ersten Post scheint noch ein haufen baustellen zu haben.
Das würde mich auch interessieren. Zurzeit habe ich noch die Version vom ersten Post. Soll ich wechseln?
Ich hatte ja auch schon weiter oben gepostet, dass mich reichlich Logeinträge von Reconnects plagen. Wahrscheinlich sind die auch an meinen zeitweiligen Freezes Schuld.
Ach ja, eine Frage hätte ich noch: Braucht man für eine einzige Lampe nun das Bridge Modul oder nicht?
Zitat von: f-zappa am 21 März 2018, 17:25:30
Wenn die Bridge kontinuierlich auf die Broadcasts lauscht, kann sie doch Devices automatisch connecten, wenn diese vorher disconnected waren und ein Broadcast eingeht.
Ich war vorher der Meinung man braucht das Bridge Modul nur wenn man mehrere Lampen in einer Gruppe betreiben will.
FHEM auf RPi3, Homematic CCU3 mit Cuxd und CUL 868 für FS20, Siemens S7 über CP343-1,
DbLog zu MySQL auf NAS QNAP TS-253D,
Yeelight

vbs

Habe mich mal daran versucht, das Connecten an das NOTIFY zu knüpfen, wie von f-zappa vorgeschlagen. War eigentlich sogar alles im Modul auch schon vorbereitet, bis auf den Connect selbst. Hab ich mal eingecheckt. Also wer mag, kann gerne mal testen. autoConnect muss auf "1" stehen bzw. nicht gesetzt sein.

sledge

Zitat von: vbs am 21 März 2018, 22:47:53
Habe mich mal daran versucht, das Connecten an das NOTIFY zu knüpfen, wie von f-zappa vorgeschlagen. War eigentlich sogar alles im Modul auch schon vorbereitet, bis auf den Connect selbst. Hab ich mal eingecheckt. Also wer mag, kann gerne mal testen. autoConnect muss auf "1" stehen bzw. nicht gesetzt sein.


Count me in. Ab morgen abend. ;-)
FHEM: debian Intel-NUC / 25 x MAX!, 15 x HM-bidcos, MQTT, 3 x 1wire, 20 x Shelly, 20 x Tasmota, 12 x Yeelight, Opentherm-GW, Espeasy, alexa-fhem, kodi, unifi, musiccast, ...

no_Legend

Allen anschein nach will keine meine Frage oder die von Ajuba beantworten.

@VBS hast du nen Fork gemacht?
Wirst du das Modul irgendwann offiziell in FHEM Repo bringen?

Danke und Gruß Robert
IntelNUC mit Ubuntu mit FHEM immer aktuell,2x HMLAN, CUL443, CUL868 -homekit/siri -tablet ui -homebridge
Device, diverse:
HM-SEC-KEY,HM-LC-BL1-FM,HM-SEC-SD,HM-Sen-DB-PCB,HM-Sec-RHS,HM-Sec-SC-2,HM-WDS10-TH-O,Harmony,Netamo, 433MHz Steckdosen uvm.

vbs

Ich hab einfach das Ding genommen und ein paar Sachen geändert, die mich gestört haben. Ich habe aber ansonsten keine weiteren Pläne, das Modul als Maintainer zu übernehmen oder ähnliches. Ansonsten weiß ich auch nur das, was hier Thread für jedermann zu lesen ist: letzter Commit im Original-Repo war Aug2017. Letzter Post des Autors hier im Thread war auch irgendwann im letzten Jahr, wenn ich das richtig sehe.
Für nähere Infos zu den offiziellen Plänen des Moduls, kann dir wohl nur der Autor selbst Auskunft geben. Ich hab auch keine Meinung dazu, welches Modul verwendet werden "soll". :)

Ajuba

Hallo vbs

Danke für die klärende Stellungnahme. Ich habe auch gerade nachgerechnet, dass sich der Originalmodulautor seit einem halben Jahr nicht mehr geäußert hat.

Bevor ich mich an Tests mit deiner Version begebe: Kannst du mir vielleicht beantworten, ob man das Modul Bridge bei einer einzigen Lampe nun braucht oder nicht und ob es Verbesserungen bezüglich Verbindungsstabilität bringt?
Verwendest du es oder verwendest du nur das von dir modifizierte Yeelight Modul?

Ich frage deshalb soviel und probiere nicht einfach weil die Lampe im Produktiv-Einsatz als Schlaflicht im Kinderzimmer ist. Da kann ich dann natürlich abends nicht rumspielen damit.
FHEM auf RPi3, Homematic CCU3 mit Cuxd und CUL 868 für FS20, Siemens S7 über CP343-1,
DbLog zu MySQL auf NAS QNAP TS-253D,
Yeelight

vbs

Ich benutze es mit Bridge. Kann aber leider nicht mit Sicherheit sagen, ob es auch ohne geht. Diese o.g. NOTIFY-Funktionalität funktioniert aber definitiv nur mit Bridge.

f-zappa

Zitat von: vbs am 21 März 2018, 22:47:53
Habe mich mal daran versucht, das Connecten an das NOTIFY zu knüpfen, wie von f-zappa vorgeschlagen. War eigentlich sogar alles im Modul auch schon vorbereitet, bis auf den Connect selbst. Hab ich mal eingecheckt. Also wer mag, kann gerne mal testen. autoConnect muss auf "1" stehen bzw. nicht gesetzt sein.
So, ich bin zu deiner Version gewechselt. Endlich verhält sich das Ding so, wie es soll und müllt auch nicht mehr das Log voll.
Yeah!  Danke!