Hauptmenü

sleep beenden !

Begonnen von maxxim, 15 Juni 2015, 23:56:31

Vorheriges Thema - Nächstes Thema

maxxim

#15
Ich habe deshalb gefragt, weil ich das schon bereits im Eingabefeld eingegeben hatte und es zeigt nichts an  ???

Aber in der ersten Zeile von 98_DOIF.pm steht :

$Id: 98_DOIF.pm 6848 2014-11-01 11:43:38Z damian-s $

flurin

Zitat von: maxxim am 16 Juni 2015, 22:45:44
Ich habe deshalb gefragt, weil ich das schon bereits im Eingabefeld eingegeben hatte und es zeigt nichts an  ???

Komisch! Probier mit:

version


dann sollten alle Module angezeigt werden.

flurin

Zitat von: maxxim am 16 Juni 2015, 22:45:44
Ich habe deshalb gefragt, weil ich das schon bereits im Eingabefeld eingegeben hatte und es zeigt nichts an  ???

Aber in der ersten Zeile von 98_DOIF.pm steht :

$Id: 98_DOIF.pm 6848 2014-11-01 11:43:38Z damian-s $

Okey, das ist uralt! Führe ein Update aus!

maxxim

Es ist zum heulen ...

Dauernd timeout !

Global global http://fhem.de/fhemupdate/CHANGED: Select timeout/error:

FHEM läuft auf einem Raspberry.


flurin

#19
Zitat von: maxxim am 16 Juni 2015, 23:04:59
Es ist zum heulen ...

Dauernd timeout !

Global global http://fhem.de/fhemupdate/CHANGED: Select timeout/error:

FHEM läuft auf einem Raspberry.

Ein Update wird einfach durch Eingabe von "update" im Eingabefeld ausgeführt:


update


und dein Raspberry muss mit dem Internet verbunden sein.




maxxim

Also update wurde dauern abgebrochen aber update FHEM/98_DOIF.pm hat geklappt :)

Es ist jetzt die neuset Version installiert.
Aber es klappt leider nocht nicht !

Danke für Deine Geduld !

flurin

Zitat von: maxxim am 16 Juni 2015, 23:21:39
Also update wurde dauern abgebrochen aber update FHEM/98_DOIF.pm hat geklappt :)

Es ist jetzt die neuset Version installiert.
Aber es klappt leider nocht nicht !

Danke für Deine Geduld !

Es ist schon wichtig, dass alle Module auf dem neusten Stand sind.
Versuch es nochmals.

Wenn du soweit bist, dann poste folgende Lists


list Licht_Intervall


und

list di_step


Gute Nacht  :)

maxxim

Hallo wuppi68,

die ersten zwei Zeilen werden automatisch beim Abspeichern gelöscht :


define blinker at +*00:00:40 set Wohnzimmer_Licht on-for-timer 20
set blinker inactive


Gruß
max

Wuppi68

Zitat von: maxxim am 17 Juni 2015, 08:44:54
Hallo wuppi68,

die ersten zwei Zeilen werden automatisch beim Abspeichern gelöscht :


define blinker at +*00:00:40 set Wohnzimmer_Licht on-for-timer 20
set blinker inactive


Gruß
max

mach mal aus dem +* ein *+ ... könnte funktionieren
FHEM unter Proxmox als VM

flurin

#24
Zitat von: maxxim am 17 Juni 2015, 09:01:50
- Die Lichter gehen alle sofort an.

Bei wait 00:01:00 ist ja logisch! 01 = 1 Sekunde, 00 = 0 Sekunden! Siehe auch Commandref.

Oben habe ich es so angegeben:

attr di_step wait 0:10:10


Wir kommen schneller weiter, wenn du das Beispiel vorläufig nicht änderst.

Zitat von: maxxim am 17 Juni 2015, 09:01:50
- Das Wohnzimmer-Licht (Wohn) geht nicht nach 20 sek. aus, es bleibt an obwohl auf der FHEM-Seite das Icon für Wohnzimmer-Licht dunkel wird.

Grundsätzlich sollten die Geräte-Definitionen bzw. -Eigenschaften stimmen.
Unterstützt dein Gerät on-for-timer?

Teste den Befehl bem Eingabefeld:

set Arbeit on-for-timer 20


Zitat von: maxxim am 17 Juni 2015, 09:01:50
- Das Unterbrechen mit einem Klick auf "off" bei "Licht_Intervall" funktioniert auch nicht.

Bei den kurzen Pausen war es vermutlich nicht möglich, es richtig zu testen. Bei mir funktioniert Licht_Intervall.
Die Reihenfolge erfolgt einmal, so habe ich deine Angaben verstanden. Wenn du eine endlose Wiederholung brauchst, dann muss die "Schaltung" erweitert werden. Aber erst, wenn das aktuelle DOIF bei dir grundsätzlich funktioniert.

Gruss
flurin

maxxim

#25
Hallo flurin,

sorry, ich habe einiges ausprobiert und am Ende aus Versehen eine falsche Kopie eingefügt....

Könntest du mir vielleicht kurz erklären, was attr di_step wait 00:10:00 bewirkt ?


Danke und Gruß
max


flurin

#26
Zitat von: maxxim am 17 Juni 2015, 13:39:47
Könntest du mir vielleicht kurz erklären, was attr di_step wait 00:10:00 bewirkt ?

Es steht eigentlich in Commandref:

Zitat
Verzögerungen

Verzögerungen für die Ausführung von Kommandos werden pro Kommando über das Attribut "wait" definiert. Syntax:

attr <Modulname> wait <Sekunden für das erste Kommando>:<Sekunden für das zweite Kommando>:...

Für Kommandos ohne Verzögerung werden Sekundenangaben ausgelassen oder auf Null gesetzt. Die Verzögerungen werden nur auf Events angewandt und nicht auf Zeitsteuerung. Eine bereits ausgelöste Verzögerung wird zurückgesetzt, wenn während der Wartezeit ein anders Kommando, ausgelöst durch ein neues Ereignis, ausgeführt werden soll.


attr di_step wait 0:10:10


Das DOIF hat 3 Befehle (cmd_1, cmd_2 und cmd_3). cmd_1 wird ohne, cmd_2 mit 10 Sek. und cmd_3 mit 10 Sek. Verzögerung ausgeführt.

Mit dem DOIF wird eine "Schrittsteuerung" realisiert. Zu jedem Schritt (step) wird eine Verzögerung mittels Attribut "wait" zugeordnet. du_count ist eine Hilfsvariable, um die Schritte zu zählen und bewirkt, dass nur ein DOIF/DOELSEIF Zweig  sequenziell ausgeführt wird.

maxxim

#27
Hallo flurin,

vielen Danke für deine super Erklärung !

Also der Code funktioniert soweit aber aus irgendeinem Grund gibt es nach ein paar Durchläufen immer wieder Aussätzer, d.h. es passiert einfach nichts mehr und dann entferne ich den Code (oder auskommentieren), abspeichern, wieder den Code einfügen und dann läuft alles wieder einwandfrei bis zum nächsten Ausfall, ich habe das jetz mehrere Male ausprobiert. Im Logfile steht auch nichts...

Die Steckdosen kann ich jederzeit ein und ausschalten (set Wohn on oder set Arbeit on-for-timer 20) also an den Steckdosen oder Verbindung liegt es nicht.

Hier ist der Code : (aus set kueche on habe ich set kueche on-for-timer 20 gemacht)



define Licht_Intervall dummy
attr Licht_Intervall eventMap /on:Activ/off:Inactiv/
attr Licht_Intervall room xy
attr Licht_Intervall setList on off
attr Licht_Intervall webCmd on:off


define du_count dummy

define di_step DOIF ([Licht_Intervall:?Activ]) (set Wohn on-for-timer 20, setreading du_count state 1) DOELSEIF ([?Licht_Intervall] eq "Activ" and [du_count] == 1) (set Arbeit on-for-timer 20, setreading du_count state 2) DOELSEIF ([?Licht_Intervall] eq "Activ" and [du_count] == 2) (set Kueche on-for-timer 20, setreading du_count state 0)
attr di_step wait 0:10:10


Sehr seltsam !

Gruß
max

flurin

#28
Zitat von: maxxim am 17 Juni 2015, 20:16:56
Also der Code funktioniert soweit aber aus irgendeinem Grund gibt es nach ein paar Durchläufen immer wieder Aussätzer, d.h. es passiert einfach nichts mehr und dann entferne ich den Code (oder auskommentieren), abspeichern, wieder den Code einfügen und dann läuft alles wieder einwandfrei bis zum nächsten Ausfall, ich habe das jetz mehrere Male ausprobiert. Im Logfile steht auch nichts...

Den Fehler kann ich nicht reproduzieren. Ich werde die Schaltung auf meinem System zyklisch laufen lassen.
Evtl. finden wir auch einen Freiwilligen, der das DOIF testet.

Gruss
flurin

Edit:

Versuch es mit diesem wait:

attr di_step wait 1:10:10


Also eine Verzögerung von 1 Sek. bei cmd_1