Ich habe folgendes DOIF u.a. in der Diele "laufen":
defmod Bew_Diele_DOIF_1 DOIF ([21:00-15:59] and [BewM_Diele:state] eq "on") (set Schuhschrank on) (set Kamin on) DOELSEIF ([21:00-15:59] and [BewM_Diele:state] eq "off")(set Schuhschrank off)(set Kamin off)
attr Bew_Diele_DOIF_1 do resetwait
attr Bew_Diele_DOIF_1 room Diele
attr Bew_Diele_DOIF_1 wait 1,7:1,7
Da der Bewegungsmelder nicht immer ein "off" schickt wollte ich mein DOIF "umgestalten":
defmod Bew_Diele_DOIF_1 DOIF ([21:00-15:59] and [BewM_Diele:state] eq "on") (set Schuhschrank on-for-timer 300) (set Kamin on-for-timer 300) (set BewM_Diele off)
attr Bew_Diele_DOIF_1 do resetwait
attr Bew_Diele_DOIF_1 room Diele
attr Bew_Diele_DOIF_1 wait 1,7:1,7
Wie würdet ihr das realisieren?
Danke für jeden Denkanstoss
Das Attribut "wait" passt jetzt nicht mehr richtig.
Helfen würde Infos über das Device "BewM_Diele".
Ein Bewegungsmelder das on und off sendet und auf off gesetzt werden kann? ??? Irgendwie komisch.
Habe folgendes List aus FHEM kopiert
Internals:
CUL433_MSGCNT 42
CUL433_RAWMSG i544555
CUL433_RSSI -66.5
CUL433_TIME 2020-01-06 21:13:08
DEF FFF0F0FFFF FF F0
FUUID 5d2b395f-f33f-0409-8871-55ae60b4f761cd21
IODev CUL433
LASTInputDev CUL433
MSGCNT 51
NAME BewM_Diele
NR 70
STATE off
TYPE IT
XMIT fff0f0ffff
XMITdimdown 00
XMITdimup 00
XMIToff f0
XMITon ff
mySduino_DMSG i544555
mySduino_MSGCNT 12
mySduino_Protocol_ID 3
mySduino_RAWMSG MS;P0=-435;P1=-13646;P4=1252;P6=532;P7=-1165;D=61674067406740676767406767674067406740674067406740;CP=6;SP=1;R=8;m1;
mySduino_RSSI -70
mySduino_TIME 2020-01-05 08:26:49
CODE:
1 fff0f0ffff
Helper:
DBLOG:
state:
logdb:
TIME 1578391277.48623
VALUE off
READINGS:
2019-07-14 20:23:57 protocol V1
2020-01-07 11:01:17 state off
Attributes:
IODev CUL433
protocol V1
room Bewegungsmelder
Hi,
hier mal ein anderer Lösungsansatz:
Fall 1 Event vom Melder und Licht ist nicht an -> schalte licht an und erstelle/ändere ein at zum abschalten nach zeit X
Fall 2 Event vom Melder und Licht ist an -> ändern des at zum abschalten nach zeit X
Sprich bei jedem ON Event wird die Zeit zum abschalten neu gesetzt (verlängert), kommt kein weiteres ON Event, greift irgendwann das AT und schaltet das Licht aus (und löscht sich danach)
(["ESPEasy_Wemos_104:on"] ##PIR Meldung
and [?Bad_all] eq "off" ## kein Licht an
)
(set Bad_all on, ## schalte licht an
defmod Bad_all_aus at +00:05:00 set Bad_all off) ## setze/aendere at fuer Licht aus
DOELSEIF
(["ESPEasy_Wemos_104:on"] ## PIR Meldung
and [?Bad_all] ne "off") ## Licht an
(defmod Bad_all_aus at +00:05:00 set Bad_all off) ## setze/aendere at fuer Licht aus
Grüße
Achim
Wenn das Licht on-for-timer beherrscht und dessen Timer bei erneutem on-for-timer neu startet (bin nicht sicher, ob das generell tut oder welche Aktoren das so machen), dann kann man sich den "at-Timer" in fhem "sparen", weil er dann "ausgelagert" im Aktor läuft...
Gruß, Joachim
es könnte schon reichen:
defmod Bew_Diele_DOIF_1 DOIF ([?21:00-15:59] and ["ESPEasy_Wemos_104:on"]) ((set Schuhschrank,Kamin on)) ((set Schuhschrank,Kamin off))
attr do resetwait
attr wait 0,300
@Damian
jetzt haste zwar meinen PIR mit den Lampen von @Kuehnhackel vereint ;-) aber ich werde das auch mal so ausprobieren, spart mir dann evtl die AT-Geschichte
Vielleicht wäre auch Homezone eine Option: https://forum.fhem.de/index.php/topic,98594.msg919493.html#msg919493