FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: thgorjup am 09 Dezember 2021, 19:28:14

Titel: DOIF Bewegungsmelder und Lichtschalter Problem
Beitrag von: thgorjup am 09 Dezember 2021, 19:28:14
Hallo,
ich habe einen HM Bewegungsmelder und einen Shelly One für den Lichtschalter.
Ich möchte wenn es zu dunkel ist beim Betreten des Raumes das Licht einschalten und nach 4 Minuten wieder ausschalten, falls keine Bewegung mehr erkannt wird. Aber wenn ich innerhalb von, sagen wir mal 3 Sekunden, den Lichtschalter von Hand betätige, soll das Licht permanent an bleiben. Könnt ihr mir helfen? Bei mir geht das Licht immer aus.


defmod AnkleideLichtAn DOIF ([HM_6B34C3_Motion:state] eq "motion" && [HM_43C2F3:brightness] < 180 && [Licht_Ankleide] eq "off") (set Licht_Ankleide on) (set Licht_Ankleide off)
attr AnkleideLichtAn do resetwait
attr AnkleideLichtAn wait 3,240



Danke und Gruß
Thomas
Titel: Antw:DOIF Bewegungsmelder und Lichtschalter Problem
Beitrag von: cetri am 10 Dezember 2021, 08:38:59
Hi,

ich habe das mit einem userreading in der Lampe gelöst. Wenn ich manuell einschalte wird das reading auf 1 gesetzt. Beim Ausschalten auf 0.

Das doif für den Bewegungsmelder schaltet nur wenn das userreading der Lampe 0 ist.

LG
Cetri

Titel: Antw:DOIF Bewegungsmelder und Lichtschalter Problem
Beitrag von: thgorjup am 10 Dezember 2021, 08:42:53
Das ist eine gute Lösung. Kannst du mir mal bitte aufzeigen, wie du das gemacht hast?
Woran erkenne ich, dass das Licht manuell geschaltet wurde?
Titel: Antw:DOIF Bewegungsmelder und Lichtschalter Problem
Beitrag von: thgorjup am 10 Dezember 2021, 09:07:49
Ich hab das jetzt erstmal so gemacht. Mal schauen ob das funzt....


defmod AnkleideLichtAn DOIF ([HM_6B34C3_Motion:state] eq "motion" && [HM_43C2F3:brightness] < 180 && ([Licht_Ankleide] eq "off" || [Licht_Ankleide:automatic] = 1) ) (set Licht_Ankleide on;; setreading Licht_Ankleide automatic 1) \
DOELSEIF ([Licht_Ankleide] eq "on" && [Licht_Ankleide:automatic] = 1) (set Licht_Ankleide off;; setreading Licht_Ankleide automatic 0)\

attr AnkleideLichtAn do resetwait
attr AnkleideLichtAn wait 0,300
Titel: Antw:DOIF Bewegungsmelder und Lichtschalter Problem
Beitrag von: MadMax-FHEM am 10 Dezember 2021, 09:21:23
Ich glaube ja nicht, dass das so funktioniert, weil: du müsstest es ja schaffen BEVOR der BWM eine Bewegung erkennt das Licht einzuschalten, weil ja nur dann erkannt wird, dass es bereits an ist und das DOIF somit "nichts" tut...
Weil sonst schaltet das DOIF ja das Licht und automatik auf 1 -> somit ist egal was danach der Schalter macht...

Und das hier:
Zitat
[Licht_Ankleide:automatic] = 1
ist eh falsch. Wirft das keinen Fehler (gut, kenne DOIF zu wenig) aber das müsste doch mind. so:


[Licht_Ankleide:automatic] == 1

(wobei ich nicht genau weiß, ob das nun eine "triggernde Abfrage" ist und somit eh nicht tut, weil es in fhem keine "gleichzeitigen" Events gibt)

Wenn du das nicht schaffst, also VOR dem BWM zu schalten, dann wird das wohl nix...

Ich habe ähnliches ABER: ich kann in fhem den Schalter "abfragen" bzw. schickt der Schalter eben einen Event -> darauf ein notify, welches eben auto/manu schaltet.

D.h. ich laufe in den Raum: BMW -> Licht geht an. Wenn ich dann den Schalter drücke -> manu-Modus / Licht bleibt an bis ich den Schalter wieder drücke...
(wenn ich es schaffe VOR dem BWM zu schalten, dann schaltet halt der Schalter auch das Licht ;) / ansonsten halt nur manu/auto)

Gruß, Joachim
Titel: Antw:DOIF Bewegungsmelder und Lichtschalter Problem
Beitrag von: thgorjup am 10 Dezember 2021, 11:30:57
Danke, ich probiere noch ein wenig rum und berichte.
Titel: Antw:DOIF Bewegungsmelder und Lichtschalter Problem
Beitrag von: cetri am 10 Dezember 2021, 13:20:43
Zitat von: MadMax-FHEM am 10 Dezember 2021, 09:21:23
Ich glaube ja nicht, dass das so funktioniert, weil: du müsstest es ja schaffen BEVOR der BWM eine Bewegung erkennt das Licht einzuschalten, weil ja nur dann erkannt wird, dass es bereits an ist und das DOIF somit "nichts" tut...
Weil sonst schaltet das DOIF ja das Licht und automatik auf 1 -> somit ist egal was danach der Schalter macht...

Kommt drauf an wie es eingestellt ist. Bei mir läuft es so das der Schalter auch dann dann reading auf 1 setzt wenn die Lampe schon an ist. Das doif für den Bewegungsmelder prüft beim Ausschalten das reading und wird nur aktiv wenn das reading 0 ist. Läuft ohne Probleme
Titel: Antw:DOIF Bewegungsmelder und Lichtschalter Problem
Beitrag von: MadMax-FHEM am 10 Dezember 2021, 13:25:01
Zitat von: cetri am 10 Dezember 2021, 13:20:43
Kommt drauf an wie es eingestellt ist. Bei mir läuft es so das der Schalter auch dann dann reading auf 1 setzt wenn die Lampe schon an ist. Das doif für den Bewegungsmelder prüft beim Ausschalten das reading und wird nur aktiv wenn das reading 0 ist. Läuft ohne Probleme

Ich habe ja auch nicht geschrieben, dass es generell nicht funktioniert ein entspr. Reading zu setzen...
...mache ich ja auch.

Ich habe geschrieben, dass es verm. SO (wie es im geposteten DOIF steht) wohl nicht funktionieren wird...
...siehe auch meine Erläuterungen.

EDIT: das DOIF reagiert ja nicht (wie auch mein notify) auf den Schalter, sondern eben auf den BWM...

Gruß, Joachim