Hallo ,
Habe im Schlafzimmer den Rolladenaktor (HM-LC-BI1PBU-FM) angelegt ,
nun möchte ich dass er täglich 1h nach Sonnenuntergang runter (off) fährt !
Habe dazu den Code
define *{sunset(3600)} set Rolladen_Schlafzimmer off
eingegeben !
welcher auch funktioniert !!!
nun möchte ich das der Rolladen an Wektagen um 8.00Uhr hochfährt, dazu habe ich folgenden Code verwendet ,
define *08:00 {\fhem("set Rolladen_Schlafzimmer on") if(!$we) }
am Wochenende soll der Rolladen um 11.00Uhr hochfahren, wofür ich diesen Code benutzt hab,
define *11:00 {\fhem("set Rolladen_Schlafzimmer on") if($we) }
desweiteren habe ich bei Google einen Kalender angelegt welcher mir im Frontend auch als active angezeigt wird !
leider fährt der Rolladen Werktags sowie am Wochenende nicht hoch!
Was ist falsch an meinen Codes ?
Gruß Marco
Hallo,
ZitatWas ist falsch an meinen Codes ?
Zeilenabschlusszeichen wenn man die fhem.cfg bearbeitet.
Zitatdefine *08:00 {\fhem("set Rolladen_Schlafzimmer on") if(!$we) }
Das \ hat nichts im Code verloren.
Grüsse
Also grad die \ entfernen ?
gruß Marco
Hallo,
ZitatAlso grad die \ entfernen ?
Am besten vergessen das es eine fhem.cfg gibt und ausschliesslich das DEF über FHEMWEB bearbeiten.
Dann kommen solche Fehler nicht vor.
ZitatWas ist falsch ...
Da war noch etwas.
Das FHEM-LogFile dient nicht dazu um Speicher zu füllen.
Dort finden sich auch diverse Fehlermeldungen die bei der Fehlersuche immens hilfreich sein können.
Grüsse
Irgendwie bekomme ich es nicht hin !
der Rolladen fährt einfach morgens nicht hoch !
habe im define vom at (Rollo_Schlafzimmer.hoch)
*10:45 {fhem(set Rolladen_Schlafzimmer up) if(!$we) }
*11:00 {fhem(set Rolladen_Schlafzimmer up) if($we) }
eingegeben aber mit dem Code keine Reaktion hervorgerufen !
auch das Logfile vom Rolladen_Schlafzimmer zeigt mir zu diesen Uhrzeiten leider nichts an !
Könnte sich mal jemand die Codes anschauen und mir einen kleinen Denkanstoss geben !
Gruß Marco
Hallo,
hier schreibst du on
Zitatdefine *08:00 {\fhem("set Rolladen_Schlafzimmer on") if(!$we) }
und hier up
Zitat*10:45 {fhem(set Rolladen_Schlafzimmer up) if(!$we) }
(!$we) klappt mWn auch nicht - sollte so sein (!($we))
Mit welchem Befehl bringst du deinen Rollladen den überhaupt dazu mal zu fahren (on - up - oder doch was anderes?).
Grüsse
Habe es auf up , down geändert !
werde jetzt mal
(!($we)) und ($we) probieren
ist das mit der klammersetzung so richtig ?
gruß Marco
habe den Code jetzt geändert und auch die Uhrzeit zum testen verändert
*11:35 {fhem(set Rolladen_Schlafzimmer up) if(!($we)) }
*11:00 {fhem(set Rolladen_Schlafzimmer up) if($we) }
hatte leider keinen Erfolg
der Code fürs Runterfahren funktioniert einwandfrei
*{sunset(3600)} set Rolladen_Schlafzimmer down
Hallo,
ich zitiere mich mal selbst:
ZitatDas FHEM-LogFile dient nicht dazu um Speicher zu füllen.
Zitatauch das Logfile vom Rolladen_Schlafzimmer zeigt mir zu diesen Uhrzeiten leider nichts an !
Ich meinte eigentlich das FHEM-Logfile.
Grüsse
sorry ,
hab ich mal wieder was falsch verstanden ;D
hier der Fehler !
2013.12.18 11:35:00 3: Rollo_Schlafzimmer.hoch: syntax error at (eval 28) line 1, near "*11:"
Bareword "up" not allowed while "strict subs" in use at (eval 28) line 1.
leider kann ich immer noch nichts damit anfangen
gruß Marco
Hallo,
Zitat*11:00 {fhem(set Rolladen_Schlafzimmer up) if($we) }
Naja. Versuchen wirs mal so:
*11:00 {fhem("set Rolladen_Schlafzimmer up") if($we) }
Zitatleider kann ich immer noch nichts damit anfangen
syntax error besagt das ein Fehler in der Schreibweise aufgetreten ist - des Syntax also falsch ist.
Bareword "up" ist dem System nicht bekannt und ist so auch nicht erlaubt.
das eine kann ein Folgefehler des anderen sein wenn Klammern und oder " falsch gesetzt sind.
Genug Info vorerst?
Dann mal viel Spass beim versuchen.
Grüsse
Habe es geändert und nun die Fehlermaldung im Logfile!
2013.12.18 12:30:00 3: Rollo_Schlafzimmer.hoch: syntax error at (eval 29) line 1, near "*11:"
Der Code sieht nun folgendermasen aus
*12:30 {fhem("set Rolladen_Schlafzimmer up") if(!($we)) }
*11:00 {fhem("set Rolladen_Schlafzimmer up") if($we) }
soll ich nun die Zeiten auch in Anführungszeichen setzen ?
Gruß Marco
Hallo,
menno, ich hasse Einzeiler 8)
Versuchs mal so bitte:
*11:00 {fhem("set Rolladen_Schlafzimmer up") if($we); }
Grüsse
Hallo,
denke dass sollte so aussehen.
*12:30 { if (!($we)) { fhem("Rolladen_Schlafzimmer up"); }}
*11:00 { if ($we) { fhem("Rolladen_Schlafzimmer up"); }}
Gruß
Hallo,
das ist das schöne an Perl (und einigen anderen Sprachen).
Die Bedingungen kann auch dahinter stehen.
Das ist dem System egal.
Grüsse
Wusste ich nicht. Sorry!
Für mich ist es halt davor logischer.
Hallo,
ZitatWusste ich nicht. Sorry!
Ist kein Problem - sollte ja auch nur ein Hinweis gewesen sein.
Falsch ist es ja nicht.
Du kannst die Bedingung des if auch vorne dran schreiben.
ZitatFür mich ist es halt davor logischer.
Programmiersprachen sind nicht immer logisch aufbebaut ;)
In notifys füge ich die Bedingungen auch immer vorne dran.
Nur beim WDT bin ich jetzt auch drüber gestolpert das die Schaltbedingung hinten dran steht.
Grüsse
Habe den code jetzt geändert aber leider war es wieder nix
*13:10 { if (!($we)) { fhem("Rolladen_Schlafzimmer up"); }}
*11:00 { if ($we) { fhem("Rolladen_Schlafzimmer up"); }}
dann bekomme ich die Fehlermeldungen
2013.12.18 12:30:00 3: Rollo_Schlafzimmer.hoch: syntax error at (eval 29) line 1, near "*11:"
2013.12.18 13:00:00 3: Rollo_Schlafzimmer.hoch: syntax error at (eval 30) line 1, near "*11:"
2013.12.18 13:05:00 3: Rollo_Schlafzimmer.hoch: syntax error at (eval 31) line 1, near "*11:"
2013.12.18 13:10:00 3: Rollo_Schlafzimmer.hoch: syntax error at (eval 32) line 1, near "*11:"
Gruß Marco
Zitat von: Heddes am 18 Dezember 2013, 13:14:27
Habe den code jetzt geändert aber leider war es wieder nix
*13:10 { if (!($we)) { fhem("Rolladen_Schlafzimmer up"); }}
*11:00 { if ($we) { fhem("Rolladen_Schlafzimmer up"); }}
Hallo Marco
versuchs mal so:
*13:10:00 { if (!($we)) { fhem("Rolladen_Schlafzimmer up"); }}
*11:00:00 { if ($we) { fhem("Rolladen_Schlafzimmer up"); }}
Hab ich probiert
folgende Fehlermeldung kam dabei heraus !
2013.12.18 15:00:00 3: Rollo_Schlafzimmer.hoch: syntax error at (eval 36) line 1, near "*11:"
mir ist aufgefallen dass im Internals bei NTM nicht die Uhrzeit wann er das nächste malschalten soll nicht richtig angegeben wird !
Ist das vielleicht das Problem ?
gruß Marco
...also dieser Code funktioniert bei mir tadellos...(irgendwie ist durch das Codegeschreibe das "set" untergegangen...)
define ROLL_Test at *15:24:40 { if (!($we)) { fhem("set SZU_ROLL oben")}}
so langsam weiß ich auch nicht mehr
neue Fehlermeldung
2013.12.18 16:05:00 3: Rollo_Schlafzimmer.hoch: Unknown command {, try help.
bei dem Code
*16:05 { if (!($we)) { fhem("set Rolladen_Schlafzimmer up")}}
*11:00 { if ($we) { fhem("set Rolladen_Schlafzimmer up")}}
devStateIcon up:shutter_open down:shutter_closed 20%:shutter_5 Funktioniert
eventMap on:up off:down
webCmd up:down:20%
Gruß Marco
Was genau gibst Du ein...? Versuch bitte dies:
define ROLL_Test1 at 17:42 { if (!($we)) { fhem("set Rolladen_Schlafzimmer up")}}
ohne Stern und mit aktuell passender Zeit...
Hallo ,
habe es jetzt genau so eingegeben ,
11:25 { if (!($we)) { fhem("set Rolladen_Schlafzimmer up")}}
dabei ist folgender Fehlercode im Logfile aufgetaucht
2013.12.19 11:25:00 3: Rollo_Schlafzimmer.hoch: Unknown command {, try help.
habe schon alles mögliche probiert !
komischerweise funktioniert das abwärtsfahren mit diesem Code,
*{sunset(3600)} set Rolladen_Schlafzimmer down
Gruß Marco
Hallo,
habe jetzt alle at`s nochmals angelegt ,
und nun scheint es zu funktionieren !
Danke ;D