Hallo zusammen,
ich Baste jetzt seit mehreren Tagen an meiner Fhem Automation auf einem Raspberry mit Z-Wave Platine herum.
Das meiste klappt auch mittlerweile wunderbar, nur bei einer Sache komme ich momentan nicht weiter...
Ich habe ein notify das folgendes machen soll, sobald der logitech harmony hub den Status beamer off sendet:
-Leinwand fährt hoch
-Abhängig vom dämmerungszustand aus twilight soll entschieden werden ob der Rollo hochzufahren ist, oder ob er unten bleiben soll, da es draußen bereits dunkel ist.
Allerdings schaffe ich es irgendwie nicht den State (1-6) aus twilight auszulesen.
Habe jetzt schon mehrere Varianten versucht...
Hier mal mein letzter Versuch:
(Eintrag DEF)
harmony_22849931:power.*off {fhem ("set Wohnzimmer_Rollo_Rechts off;;set Wohnzimmer_Rollo_Links off;;set Wohnzimmer_Leinwand_hoch on-for-timer 40") if ReadingsVal("T","state","") <= "2")}
alternativ habe ich es auch mit Value("T:state") <= "2" versucht, jedoch passiert auch hier nichts.
Irgendwo ist hier noch der Wurm drin.
Vielleicht kann mir einer von euch ein bisschen auf die Sprünge helfen.
Danke im Voraus
Grüße
Neo Dee
<= 2 sollte es sein
Hallo Paul,
erstmal danke für deine Antwort.
Wen du schreibst "<= 2" sollte es heißen,
dann meinst du damit die "" bei der auszulesenden Variable sollen Weg, richtig?
Also so:
harmony_22849931:power.*off {fhem ("set Wohnzimmer_Rollo_Rechts off;;set Wohnzimmer_Rollo_Links off;;set Wohnzimmer_Leinwand_hoch on-for-timer 40") if ReadingsVal("T","state","") <= 2)}
???
Ich habe das mal eben so umgeändert, aber noch immer keine Reaktion, der Leinwand.
Grüsse
Hi,
Coding wird lesbarer, wenn du das "#" im Editor benutzt ;-)
Dein twilight device heisst "T" nehme ich an?
Wenn das wirklich die Angaben aus der DEF sind, sollte ein einfacher ";" reichen.
Versuch doch mal dich dem Problem über das Kommando-Feld zu nähern (also erstmal {ReadingsVal("T","state","")}
eingeben und gucken, was da rauskommt, dann schrittweise erweitern...
Grüße,
Oli
Hi Oli,
ja genau Twilight ist als "T" definiert.
Ich habe den Code aus der DEF rauskopiert.
Wo sollte der ";" fehlen?
Wen ich
{ReadingsVal("T","state","")}
im Kommando Feld eingebe, passiert nach drücken von enter nichts.
Keine Ausgabe oder Fehlermeldung.
Sollte als Rückmeldung die aktuelle Variable ausgelesen werden?
Nachtrag:
Ich habe es gerade eben noch einmal versucht, in bekomme nun "1" als Rückmeldung.
Twilight steht jetzt auch auf "1"
Kann es sein das es Probleme beim auslesen gibt wen twilight auf "0" steht?
Prinzipiell sollte das auslesen also gehen.
Grüße
Dominik
Warum arbeitest Du mit ReadingsVal und nicht einfacher mit Value?
So ich glaube jetzt läuft es...
harmony_22849931.*off {fhem ("set Wohnzimmer_Rollo_Rechts on;set Wohnzimmer_Rollo_Links on;set Wohnzimmer_Leinwand_hoch on-for-timer 40") if((Value "T") gt 2)}
Irgendwie sind in den Code ";;" statt einem ";" rein gekommen.
Hatte das notifiy noch einmal ohne if Bedingung versucht zu triggern, hatte aber ebenfalls nicht mehr funktioniert...
Bezüglich ReadingsVal und Value, sollte es doch eigentlich keinen unterschied machen welche ich nehme, oder?
Die einzige Frage für mich ist momentan noch was Twilight zurückliefert wen der State auf "0" steht.
Ich werde jetzt mal noch ausführlich testen und bedanke mich schon einmal für eure Hilfe.
Hab wieder einiges dazugelernt.
Grüße
Dominik
Hallo,
define Wertetest notify T:light.* Log(3,"$NAME $EVENT")
So kannst du prüfen was in den Variablen steht die zum ausführen des notify geführt haben.
ZitatIrgendwie sind in den Code ";;" statt einem ";" rein gekommen.
Im DEF einfache ; und dann Finger weg von der fhem.cfg und bloss nichtsmehr dran ändern (es sei den über DEF).
Die ;; in der Konfig haben schon seine Richtigkeit.
FHEM weiß schon was es macht beim speichern ;)
ZitatBezüglich ReadingsVal und Value, sollte es doch eigentlich keinen unterschied machen welche ich nehme, oder?
Readings lassen sich nur mit ReadingsVal auslesen.
Value liest den STATE (oder war es state ??? ).
ZitatDie einzige Frage für mich ist momentan noch was Twilight zurückliefert wen der State auf "0" steht.
Na wenn im State 0 steht kann Twilight auch nur 0 liefern.
Grüße