[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

gent

Hi,

in reload nach dem Austausch der Module aus dem devel branch ergibt bei mir folgendes:


Can't modify constant item in division (/) at ./FHEM/32_YeeLight.pm line 1584, near "100;"
Global symbol "$hue" requires explicit package name at ./FHEM/32_YeeLight.pm line 1586.
Global symbol "$hue" requires explicit package name at ./FHEM/32_YeeLight.pm line 1588.
Global symbol "$val" requires explicit package name at ./FHEM/32_YeeLight.pm line 1589.
Global symbol "$sat" requires explicit package name at ./FHEM/32_YeeLight.pm line 1589.
Global symbol "$val" requires explicit package name at ./FHEM/32_YeeLight.pm line 1590.
Global symbol "$sat" requires explicit package name at ./FHEM/32_YeeLight.pm line 1590.
Global symbol "$val" requires explicit package name at ./FHEM/32_YeeLight.pm line 1591.
Global symbol "$sat" requires explicit package name at ./FHEM/32_YeeLight.pm line 1591.
Global symbol "$val" requires explicit package name at ./FHEM/32_YeeLight.pm line 1597.
Global symbol "$val" requires explicit package name at ./FHEM/32_YeeLight.pm line 1601.
Global symbol "$val" requires explicit package name at ./FHEM/32_YeeLight.pm line 1605.
Global symbol "$val" requires explicit package name at ./FHEM/32_YeeLight.pm line 1609.
Global symbol "$val" requires explicit package name at ./FHEM/32_YeeLight.pm line 1613.
Global symbol "$val" requires explicit package name at ./FHEM/32_YeeLight.pm line 1617.
Unmatched right curly bracket at ./FHEM/32_YeeLight.pm line 1625, at end of line
./FHEM/32_YeeLight.pm has too many errors.
fhem auf rPi3 mit USB boot und M2, cul866 (hm), homebridge, FlowerSens, Shelly, Harmony, WemosD1, Sonoff/Tasmota, grafana, mqtt/mosquitto

thaliondrambor

Zitat von: gent am 04 Mai 2017, 18:12:53
Hi,

in reload nach dem Austausch der Module aus dem devel branch ergibt bei mir folgendes:


Can't modify constant item in division (/) at ./FHEM/32_YeeLight.pm line 1584, near "100;"
Global symbol "$hue" requires explicit package name at ./FHEM/32_YeeLight.pm line 1586.
Global symbol "$hue" requires explicit package name at ./FHEM/32_YeeLight.pm line 1588.
Global symbol "$val" requires explicit package name at ./FHEM/32_YeeLight.pm line 1589.
Global symbol "$sat" requires explicit package name at ./FHEM/32_YeeLight.pm line 1589.
Global symbol "$val" requires explicit package name at ./FHEM/32_YeeLight.pm line 1590.
Global symbol "$sat" requires explicit package name at ./FHEM/32_YeeLight.pm line 1590.
Global symbol "$val" requires explicit package name at ./FHEM/32_YeeLight.pm line 1591.
Global symbol "$sat" requires explicit package name at ./FHEM/32_YeeLight.pm line 1591.
Global symbol "$val" requires explicit package name at ./FHEM/32_YeeLight.pm line 1597.
Global symbol "$val" requires explicit package name at ./FHEM/32_YeeLight.pm line 1601.
Global symbol "$val" requires explicit package name at ./FHEM/32_YeeLight.pm line 1605.
Global symbol "$val" requires explicit package name at ./FHEM/32_YeeLight.pm line 1609.
Global symbol "$val" requires explicit package name at ./FHEM/32_YeeLight.pm line 1613.
Global symbol "$val" requires explicit package name at ./FHEM/32_YeeLight.pm line 1617.
Unmatched right curly bracket at ./FHEM/32_YeeLight.pm line 1625, at end of line
./FHEM/32_YeeLight.pm has too many errors.


Ich kann den Fehler leider weder nachvollziehen noch reproduzieren. Das liegt hauptsächlich daran, dass sowohl die Datei auf meinem PC, als auch die auf Github, nur bis Zeile 1597 geht, aber deine Fehlermeldungen bis Zeile 1625.
Ist dir eventuell beim Download was schief gegangen?

gent

Ich bin auf die gíthub Seite gegangen
https://github.com/thaliondrambor/32_YeeLight.pm/tree/devel
und habe dort Download Zip gewählt. Dann die beiden *.pm Files auf den FHEM Server geladen und dann ein reload in FHEM gemacht...

Ich habe die beiden Datein noch vom 13.04.2017 und nachdem ich die wieder auf den FHEM Server hochgeladen habe, waren die Fehler weg.

Viele Grüße
fhem auf rPi3 mit USB boot und M2, cul866 (hm), homebridge, FlowerSens, Shelly, Harmony, WemosD1, Sonoff/Tasmota, grafana, mqtt/mosquitto

thaliondrambor

Zitat von: gent am 04 Mai 2017, 22:04:44
Ich bin auf die gíthub Seite gegangen
https://github.com/thaliondrambor/32_YeeLight.pm/tree/devel
und habe dort Download Zip gewählt. Dann die beiden *.pm Files auf den FHEM Server geladen und dann ein reload in FHEM gemacht...

Ich habe die beiden Datein noch vom 13.04.2017 und nachdem ich die wieder auf den FHEM Server hochgeladen habe, waren die Fehler weg.

Viele Grüße

Komisch, ich habe die Dateien auch per ZIP runtergeladen und auch diese haben 1597 Zeilen. Ich hänge die Version nochmal hier an.

gent

Hi,

vergiss es: Irgendjemand hat den "default" mode meines SCP-Tools auf "ignorieren" statt "überschreiben" gestellt. Jetzt sind beide *.pm Dateien tatsächlich auf dem FHEM Server ausgetauscht und ein reload geht ohne Fehler durch...

Sorry.

Viele Grüße
fhem auf rPi3 mit USB boot und M2, cul866 (hm), homebridge, FlowerSens, Shelly, Harmony, WemosD1, Sonoff/Tasmota, grafana, mqtt/mosquitto

oberlon

Hallo,

habe auch seit zwei Tagen meine erste YeeLight (Color) und das einbinden in fhem ging recht problemlos. Habe dann auch den devel Zweig probiert und über fhem macht er auch alles was er soll.
Leider habe ich noch Probleme mit homebridge. Mein mapping sieht zZ so aus
clear
On=power,cmdOn=on,cmdOff=off
Hue=hue,cmd=hue
Brightness=bright,cmd=bright
Saturation=sat,cmd=sat

Leider ist die Wahl der Farbe noch ein Glücksspiel.
Mai 05 16:59:35  homebridge[18268]: [2017-05-05 16:59:35] [FHEM] yeelight: executing set cmd for Hue with value 328
Mai 05 16:59:35  homebridge[18268]: [2017-05-05 16:59:35] [FHEM]   executing: http://127.0.0.1:8083/fhem?cmd=set%20yeelight%20hue%20328&XHR=1
Mai 05 16:59:35  homebridge[18268]: [2017-05-05 16:59:35] [FHEM] yeelight: executing set cmd for Saturation with value 2
Mai 05 16:59:35  homebridge[18268]: [2017-05-05 16:59:35] [FHEM]   executing: http://127.0.0.1:8083/fhem?cmd=set%20yeelight%20sat%202&XHR=1
Mai 05 16:59:35  homebridge[18268]:   2017-05-05 16:59:35 caching: yeelight-sat: 2
Mai 05 16:59:35  homebridge[18268]: [2017-05-05 16:59:35] [FHEM]     caching: Saturation: 2 (as number; from '2')
Mai 05 16:59:37  homebridge[18268]:   2017-05-05 16:59:37 caching: yeelight-hue: 328
Mai 05 16:59:37  homebridge[18268]: [2017-05-05 16:59:37] [FHEM]     caching: Hue: 328 (as number; from '328')
Mai 05 16:59:37  homebridge[18268]:   2017-05-05 16:59:37 caching: yeelight-sat: 100
Mai 05 16:59:37  homebridge[18268]: [2017-05-05 16:59:37] [FHEM]     caching: Saturation: 100 (as number; from '100')


Durch den Sprung von Sat von 2 auf 100 kommt natürlich komplett was anderes raus.
Gibt es dafür vielleicht eine Lösung?

darthi

Danke noch einmal für die Updates. Ich bekomme leider auch mit der letzten dev Version noch immer Fehler im Log angezeigt:
Argument "No get implemented for Stehleuchte" isn't numeric in numeric lt (<) at FHEM/Color.pm line 435.
Use of uninitialized value in string eq at ./FHEM/32_YeeLight.pm line 1324.


Danke für den Support!

thaliondrambor

Zitat von: darthi am 09 Mai 2017, 18:35:41
Danke noch einmal für die Updates. Ich bekomme leider auch mit der letzten dev Version noch immer Fehler im Log angezeigt:
Argument "No get implemented for Stehleuchte" isn't numeric in numeric lt (<) at FHEM/Color.pm line 435.
Use of uninitialized value in string eq at ./FHEM/32_YeeLight.pm line 1324.


Danke für den Support!

Den ersten Fehler kann ich leider nicht so ganz nachvollziehen. Der kommt aus der Color.pm und nicht direkt aus dem YeeLight-Modul. Da wäre es mal interessant das Log-Level höher zu stellen, damit man sehen kann, wann bzw. nach welchem Befehl der Fehler kommt.
Beim zweiten Fehler gibt es anscheinend kein power-Reading. Dafür wäre ein list des Devices gut.

sledge

Hallo,

zunächst mal vielen Dank für das Modul - meine umfangreichen aliexpress-Lieferungen habe ich heute mal in Betrieb genommen.

Frage: Wenn ich das Attribut stateFormat verwende, zB
attr <device> stateFormat power
erscheint jetzt das Glühbirnensymbol, welches den Zustand der Lampe widerspiegelt - alles fein. Versuche ich jetzt jedoch, die Lampe zu schalten oder Parameter zu ändern, kommt folgende Fehlermeldung:

Can't send command if bulb is not connected. Try "reopen" and check, if bulb is powered. Current state is off

Sieht für mich so aus, als greift das Modul auf "state" in seiner aktuellen Definition zu - sollte doch eher auf das Internal "STATE" zugreifen?

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, ...

thaliondrambor

Zitat von: sledge am 12 Mai 2017, 14:21:59
Hallo,

zunächst mal vielen Dank für das Modul - meine umfangreichen aliexpress-Lieferungen habe ich heute mal in Betrieb genommen.

Frage: Wenn ich das Attribut stateFormat verwende, zB
attr <device> stateFormat power
erscheint jetzt das Glühbirnensymbol, welches den Zustand der Lampe widerspiegelt - alles fein. Versuche ich jetzt jedoch, die Lampe zu schalten oder Parameter zu ändern, kommt folgende Fehlermeldung:

Can't send command if bulb is not connected. Try "reopen" and check, if bulb is powered. Current state is off

Sieht für mich so aus, als greift das Modul auf "state" in seiner aktuellen Definition zu - sollte doch eher auf das Internal "STATE" zugreifen?

Gruß, Tom

Ich greife nirgendswo in dem Modul auf das Reading "state" zu. Und die Fehlermeldung überprüft das Internal "STATE". Auch ganz hinten, der letzte Teil der Fehlermeldung gibt den Wert "$hash->{STATE}" aus.
Ich vermute mal, dass stateFormat das Internal ändert.

Wenn du den Zustand der Lampe sehen möchtest versuche es doch mal anstatt mit "stateFormat" mit attr <device> 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");}}}

Wenn du nicht den Devel-Branch benutzt, musst du noch die Color.pm aktivieren mit define colorInit notify global:INITIALIZED {use Color}

zobi

Hi,

ich habe mal eine Frage:
Wie kann man bei den Yeelights mehrere set in einer Zeile ausführen?
Hintergrund:
ich würde gerne mit Lightscene mehere Lichtstimmungen machen und dabei die Farbe und Helligkeit ändern.
Bei meinen HUEs kann ich das so schreiben

Set HUE1 bri198 : rgb 00FF00

Bei den Yeelights funktioniert das bei mir aber nicht...(bright anstatt bri bei den Yeelights)
Kann das jmd bestätigen oder liegt es an mir?
Gibt es dafür eine Lösung?
VG
zobi

justme1968

bei den hue ist das in diesem fall auch nicht nötig. set rgb ändert farbe, helligkeit und sättigung. also einfach 00AA00 oder ähnlich verwenden wenn das rot dunkler sein soll.

das mit den mehreren sets brauchst du nur wenn du das hsv oder xy farb modell verwendest da dann nur ein (oder zwei) der drei komponenten pro kommando geändert werden.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

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

zobi

Hey,
danke für die schnelle Antwort. Ich hab es glaube ich ein bisschen komisch erklärt...
Es ging mir ja  darum, wie ich in dem Lightscene modul die Farbe und Helligkeit einer Yeelight ändern kann:

die einzelnen Befehle wären:

set Y2 bright 100
set Y2 rgb 00FF00

In dem Lightscene modul habe ich allerdings nur die Möglichkeit eine Zeille pro device einzugeben, also müsste es so heißen:
set Y2 bright 100 : rgb 00FF00

Die HUE habe ich nur als Beispiel aufgeführt, weil es dort so funktionert.

Edit: ok bei den HUE ändert sich die Helligkeit beim Ändern des rgb werts, bei den Yeelights aber nicht.
Hättest du da eine Idee wie ich bei den Yeelights Helligkeit und Farbe gleichzeitig ändern kann?

Alexk30

Hi,

Bei Lightscene funktioniert das mit den YeeLight so:
setcmd set FlurLampe1 rgb FFFFFF ; set FlurLampe1 bright 100 ; set FlurLampe1 ct 3780

Ändert die Farbe, Helligkeit und "FarbWärme"

reinni123

Hat sonst noch jemand das Problem das sich nach einigen Minuten nachdem das Modul geladen wurde eine erhöhte Systemlast einstellt?