Hi Zusammen,
mit dem aktuellsten Update kann ich meine Homematic Rolläden (HM-LC-Bl1PBU-FM) nicht mehr schließen.
ein set *device* pct 0
bringt die Fehlermeldung "Level not given" und im Log ein:
PERL WARNING: Argument "" isn't numeric in numeric eq (== ) at ./FHEM/10_CUL_HM.pm line 4676.
Alle anderen pct Werte (z.b. 1) funtkionieren.
Danke und Grüße
jannes
Ja genau,
und ein "Alexa setze Rolladen XY auf null Prozent" wird zwar mit einem "Okay" quittiert, der Rolladen fährt jedoch nicht. Das hatte früher problemlos funktioniert...
Gruß
oelidoc
Hallo,
kann ich bestätigen, ist bei mir genauso, "level not given" kommt beim Rolladenslider auf 0, auf 1 geht.
Gruß
Olaf
Neue Zeile 4676 in 10_CUL_HM.pm.
return "level not given" if($lvl == "");
Geht auf die Vorversion zurück oder kommentiert die Zeile aus.
Habe Martin gerade angeschrieben. Bin leider im Regex völlig unterbelichtet um zu verstehen, was die Zeile darüber bei "pct 0" liefert.
edit: Das Problem betrifft alle Homematic-Aktoren, die mit pct gesetzt werden (auch meine Dimmer mit Slidern).
Zitat von: Pfriemler am 12 Dezember 2017, 23:17:21
Neue Zeile 4676 in 10_CUL_HM.pm.
return "level not given" if($lvl == "");
Geht auf die Vorversion zurück oder kommentiert die Zeile aus.
Habe Martin gerade angeschrieben. Bin leider im Regex völlig unterbelichtet um zu verstehen, was die Zeile darüber bei "pct 0" liefert.
edit: Das Problem betrifft alle Homematic-Aktoren, die mit pct gesetzt werden (auch meine Dimmer mit Slidern).
edit 2: Logge ich $lvl kurz vor der Abfrage, so erhalte ich sowohl mit "set dimmer pct 0" als auch mit "set dimmer pct" beide Male eine numerische Null.
Mit einem Vergleich wie
if($lvl eq "") ist der Fehler natürlich weg und es funktioniert, aber warum in diesem Fall die Abfrage erfolgt, weiß nur Martin.
habe meine Version mal angehängt (eq statt ==, sonst identisch)
in ...fhem/FHEM drüberkopieren (also da wo die .pm alle sind) und "reload 10_CUL_HM.pm" in der Kommandozeile abschicken, kein Neustart nötig.
Gehts dann wieder bei Euch?
Ich habe mir erstmal mit "... pct 0.1 ..." geholfen
Mit eq anstelle == geht es bei mir wieder. Rollo fährt wieder runter.
Danke für den Workaround
Gruß
Kai
Gleicher Fehler hier.
Hab die alte Version erst mal wieder genommen.
Vielen Dank!
ein eq anstelle == hat es gefixt.
Grüße Jannes
Bei mir fahren die Jalousien nur nach einem Restart von fhem nicht hoch oder runter.
SchlafZi_hinten: set Jalo_SchlafZi_hinten:FILTER=pct=100 pct 0: level not given
Ein Tag später/nach einmal hoch_runter funktioniert dann alles.
Hoffi
Martin hat die 10_CUL_HM gefixt:
return "level not given" if(!defined $lvl);
Das macht Sinn!
Also ein reguläres Update und fertig.