Autor Thema: [32_YeeLight.pm][Devel 32_YeeLightBridge.pm] - Modul für Yeelight Wifi Lampen  (Gelesen 34918 mal)

Offline Frazzor

  • New Member
  • *
  • Beiträge: 5
Hallo Tom,

genau soetwas meine ich. Hättest du da ein Beispiel für mich?

Danke schonmal.

Gruß
Michael

Offline Frazzor

  • New Member
  • *
  • Beiträge: 5
Hat sich erledigt, danke Tom :)

Gruß
Michael

Offline ih-sqeezer

  • Full Member
  • ***
  • Beiträge: 104
Hallo zusammen,

ich nutze seit einigen Monaten das YeeLight Modul in Verbindung mit einer YeeLight Stripe. Dies hat bisher immer wunderbar in FHEM und in parallel mit GoogleHome funktioniert. Vor ein paar Wochen gab es jedoch über die YeeLight App ein Firmware update für die Stripe. Seitdem komme ich via FHEM nicht mehr über IP:55443 auf die Stripe ("connection refused"). Mit der App und GoogleHome funktioniert jedoch weiterhin alles.

Kann das jemand bestätigen? Bzw. wird an dem Update für das FHEM Modul bereits gearbeitet?

Danke und beste Grüße,
Ingo

Offline Frazzor

  • New Member
  • *
  • Beiträge: 5
Hallo,

muss man vll wieder den Developmode einschalten?

Gruß
Michael

Offline ih-sqeezer

  • Full Member
  • ***
  • Beiträge: 104
Hallo Frazzor,

gute Idee gewesen, vielen Dank. Es heißt jedoch jetzt in der App "LAN-Steuerung", die man aktivieren muss. Jetzt funktioniert die Connection wieder via FHEM.

Nochmals danke und einen schönen Abend noch.

Grüße,
Ingo

Offline PingPong

  • Full Member
  • ***
  • Beiträge: 107
Hallo zusammen,

könnt Ihr mir sagen, wo ich "LAN-Steuerung" aktivieren muss?
Meine Lampe zeigt in fhem leider auch nur disconnected :-(

Danke Euch.

LG
Marc

Offline sledge

  • Full Member
  • ***
  • Beiträge: 240
In der Yeelight-App auf das entsprechende Gerät gehen, dann unten rechts auf das Menüsymbol, dann "LAN-Steuerung".

Fertig.

FHEM: Intel-NUC / 2 Cube-CUN + 20 FK + 4 ECO-Taster / HMLAN + HM-PB-2-WM55-2 + 4 HM-MOD-Re-8 / JeeLink + 17 TX29DTH / Jeelink + 7 PCA301 / HMUARTWLAN / Opentherm-Gateway / LGW+CUL868

Offline PingPong

  • Full Member
  • ***
  • Beiträge: 107
Yeelight-App. Das war dann wohl das Zauberwort. Die habe ich noch gar nicht :-)
Dachte die mi home App würde alles abdecken.

Schau ich mir dann heute abend an.
Danke erstmal.

Offline sledge

  • Full Member
  • ***
  • Beiträge: 240
Hi,

die aktuelle (durch das Modul erzeugte) Definition des Attributs devStateIcon hat meines Erachtens einen kleinen Schönheitsfehler: Ist die YeeLight-Lampe stromlos, steht sie auf "disconnected" - als devStateIcon wird jedoch der letzte Status angezeigt, da in der Definition der "disconnected"-Zweig nicht abgefragt wird.

Da mich das in der Darstellung ein wenig irritierte, hier Abhilfe:

1. Direkt im Attribut wie folgt ändern (wg. der Escape-Arie habe ich das bei jeder Lampe direkt gemacht und nicht über das FHEM Eingabefeld)
{my $state=ReadingsVal($name,"state","disconnected");my $power=ReadingsVal($name,"power","off");my $mode=ReadingsVal($name,"color_mode","RGB");if($state eq "disconnected"){return ".*:light_exclamation:";}else{if($power eq "off"){Color::devStateIcon($name,"rgb","rgb","power");}else{if($mode eq "RGB"){Color::devStateIcon($name,"rgb","rgb","bright");}elsif($mode eq "color temperature"){Color::devStateIcon($name,"rgb",undef,"bright");}}}}
Damit das auch für neue Lampen bei der Definition korrekt angelegt wird, hier noch der (Trivial-) Patch:

153c153
<     $attr{$name}{devStateIcon}  = '{my $power=ReadingsVal($name,"power","off");my $mode=ReadingsVal($name,"color_mode","RGB");if($power eq "off"){Color::devStateIcon($name,"rgb","rgb","power");}else{if($mode eq "RGB"){Color::devStateIcon($name,"rgb","rgb","bright");}elsif($mode eq "color temperature"){Color::devStateIcon($name,"rgb",undef,"bright");}}}' if (!defined($attr{$name}{devStateIcon}) && (!defined($model) || ($model eq "color") || ($model eq "stripe")));
---
>     $attr{$name}{devStateIcon}  = '{my $state=ReadingsVal($name,"state","disconnected");my $power=ReadingsVal($name,"power","off");my $mode=ReadingsVal($name,"color_mode","RGB");if($state eq "disconnected"){return ".*:light_exclamation:";}else{if($power eq "off"){Color::devStateIcon($name,"rgb","rgb","power");}else{if($mode eq "RGB"){Color::devStateIcon($name,"rgb","rgb","bright");}elsif($mode eq "color temperature"){Color::devStateIcon($name,"rgb",undef,"bright");}}}}' if (!defined($attr{$name}{devStateIcon}) && (!defined($model) || ($model eq "color") || ($model eq "stripe")));

Vielleicht kann es ja jemand gebrauchen.
FHEM: Intel-NUC / 2 Cube-CUN + 20 FK + 4 ECO-Taster / HMLAN + HM-PB-2-WM55-2 + 4 HM-MOD-Re-8 / JeeLink + 17 TX29DTH / Jeelink + 7 PCA301 / HMUARTWLAN / Opentherm-Gateway / LGW+CUL868

Offline ChHerrm

  • Full Member
  • ***
  • Beiträge: 113
Hallo,
ich nutze das Xiaomi Yeelight - Modul um die WLAN-Nachttischlampe zu schalten. Die befindet sich auch im Netzwerk, lässt sich anpingen, per Xiaomi-APP bedienen aber nicht mehr per FHEM. Vor einigen Wochen ging es noch, dann hatte sich das irgendwann erledigt.
Läuft das bei euch noch? ???

Hier die Konfiguration:
define Nachttisch YeeLight 192.168.0.XYZ
attr Nachttisch devStateIcon {my $power=ReadingsVal($name,"power","off");;my $mode=ReadingsVal($name,"color_mode","RGB");;if($power eq "off"){Color::devStateIcon($name,"rgb","rgb","power");;}else{if($mode eq "RGB"){Color::devStateIcon($name,"rgb","rgb","bright");;}elsif($mode eq "color temperature"){Color::devStateIcon($name,"rgb",undef,"bright");;}}}
attr Nachttisch eventMap on:an off:aus
attr Nachttisch group Licht
attr Nachttisch icon light_wall_3
attr Nachttisch room Wohnung
attr Nachttisch userReadings keepAlive
attr Nachttisch webCmd an:aus
attr Nachttisch widgetOverride bright:colorpicker,BRI,0,1,100 ct:colorpicker,CT,1700,10,6500 rgb:colorpicker,RGB
attr Nachttisch devStateIcon {my $power=ReadingsVal($name,"power","off");;my $mode=ReadingsVal($name,"color_mode","RGB");;if($power eq "off"){Color::devStateIcon($name,"rgb","rgb","power");;}else{if($mode eq "RGB"){Color::devStateIcon($name,"rgb","rgb","bright");;}elsif($mode eq "color temperature"){Color::devStateIcon($name,"rgb",undef,"bright");;}}}
attr Nachttisch widgetOverride bright:colorpicker,BRI,0,1,100 ct:colorpicker,CT,1700,10,6500 rgb:colorpicker,RGB

Die mangelnde Erreichbarkeit per FHEM äußert sich in der üblichen Meldung: "Can't send command if bulb is not connected. Try "reopen" and check, if bulb is powered. Current state is disconnected", bzw. Log-Eintrag: "Nachttisch: connect to http://192.168.0.XYZ:55443 timed out"
Ein "reopen" funktioniert aber nicht. Habt ihr das Problem auch momentan?

Das ist die Nachttischlampe:
https://www.aliexpress.com/item/Original-Smart-Xiaomi-Mijia-Bed-Bedside-Lamp-Bluetooth-WiFI-LED-Light-Touchlight-RGBW-Touch-Control-for/32837652474.html?spm=a2g0s.9042311.0.0.20df4c4ddFedjC

Offline sledge

  • Full Member
  • ***
  • Beiträge: 240
Mal ins Blaue: Bei einigen meiner Lampen musste ich vor ein paar Wochen den Entwicklermodus neu setzen in der App - die Symptome waren identisch - wurden von FHEM nicht mehr erreicht.

Also das auch mal in der YeeLight App überprüfen.... bei irgendeinem Update hatte sich da was verschoben.

Gruß, Tom

FHEM: Intel-NUC / 2 Cube-CUN + 20 FK + 4 ECO-Taster / HMLAN + HM-PB-2-WM55-2 + 4 HM-MOD-Re-8 / JeeLink + 17 TX29DTH / Jeelink + 7 PCA301 / HMUARTWLAN / Opentherm-Gateway / LGW+CUL868

Offline ChHerrm

  • Full Member
  • ***
  • Beiträge: 113
Perfekt, das war's schon! Ich hatte vorher gar nicht die Yeelight-App, das ging aber anfangs trotzdem per FHEM und die Mi-App. Aber jetzt Yeelight-App --> Firmware aktualisieren --> LAN-Steuerung zulassen.
Danke für den Hinweis!  :D

Offline Tardar

  • New Member
  • *
  • Beiträge: 34
Hey zusammen,

ist es geplant, die Strips für Szenen verfügbar zu machen ?
Der Status bleibt immer auf OPEN und ich würde in Szenen gerne Farben einstellen und nutzen - hauptsächlich am Fernseher.

Danke und liebe Grüße

Offline aisberg

  • Jr. Member
  • **
  • Beiträge: 55
von wo genau sollen die Module geladen werden? Könnte man das in der Anleitung im ersten Beitrag so beschreiben, dass man die richtigen Dateien verwendet, es richtig installiert und es dann richtig funktioniert?

In der Anleitung steht ganz am Anfang:
Zitat
Aktuelle Version hier: https://github.com/thaliondrambor/32_YeeLight.pm

und an anderer Stelle in diesem ersten Beitrag steht:
Zitat
Die 32_YeeLightBridge.pm und die 32_YeeLight.pm aus dem Devel-Branch herunterladen (https://github.com/thaliondrambor/32_YeeLight.pm/tree/devel)

Die Versionen unterscheiden sich, unter master ist noch was anderes.
Was ist denn nun richtig und warum gibt es so viele verschiedene Versionen?

Zuvor hatte ich das hier an einer anderen Stelle gefunden:
update add https://raw.githubusercontent.com/thaliondrambor/32_YeeLight.pm/master/controls_yeelight.txtdanach hatte es ganz einfach funktioniert, YeeLight Lampen einzubinden. Aber ich konnte keine YeeLightBridge definieren
define ylb YeeLightBridgeDa kommt immer nur
Zitat
Cannot load module YeeLightBridge

Wie der Modul geladen werden kann - keine Ahnung. Also habe ich versucht, die Anleitung zu verstehen (erster Beitrag), was man machen soll, damit die YeeLightBridge geladen wird. Verstanden habe ich es immer noch nicht.
Und dann habe ich verschiedene Versionen ausprobiert (master, dev, die aus dem ersten Link), also aus dem Internet geladen, per FTP auf den raspberrypi kopiert, fhem neu gestartet.
Und im Moment funktioniert überhaupt nichts mehr.

bei einem
reload 32_YeeLight.pmkommt so ein Fehler
Zitat
Excessively long <> operator at ./FHEM/32_YeeLight.pm line 21.

bei einem
Zitat
shutdown restart
kommt so was:

Zitat
Messages collected while initializing FHEM:
configfile: Cannot load module YeeLight
Cannot load module YeeLight
Cannot load module YeeLight

Autosave deactivated


Ich habe keine Ahnung, wie das in FHEM überhaupt mit Modulen funktioniert, die nicht standardmäßig in FHEM dabei sind, das ist sicherlich irgendwo dokumentiert, aber dann doch recht versteckt, so dass ich es mit diversen Suchen nicht gefunden habe.

Es war recht einfach, die Lampen in die YeeLight app zu bekommen, damit auch in die Mi Home App, und mit dem Google Assistent kann man die Dinger sogar per Sprache steuern.  Das mit FHEM hinzubekommen, ist aufwendig, wenn man nur alle paar Jahre Änderungen am FHEM vornimmt und daher kein Spezialist für FHEM ist.

Offline aisberg

  • Jr. Member
  • **
  • Beiträge: 55
ich hatte den Download aus GitHub falsch gemacht, man muss den Code als zip runterladen, nicht die Dateien selbst.
zwischen master und devel habe ich nur einen Unterschied gefunden:
Zitat
   my $name = $hash->{NAME};
in Zeile 1333

OK, jetzt funktionieren die Lampen wieder.
Aber eine YeeLightBridge kann ich immer noch nicht definieren. Und es war ja die Hoffnung, dass das irgendwie geht.

Der Fehler lautet nur ohne irgend welche weiteren Hinweise:
Zitat
Cannot load module YeeLightBridge