ich habe hier eine ganz klassische Bewegungsmelder-Lichtschalter-Situation mit einer Doorbird-Klingel als Bewegungsmelder. Bei Dunkelheit soll der Bewegungsmelder das Licht im Eingangsbereich anschalten, und wenn nach Ablauf des Timers (10min) kein neuer Impuls kommt, darf das List wieder ausgehen.
Leider ist das Licht jeden morgen an...

Hier ist die Rule für das ganze:
Code: Alles auswählen
// Kopplung DoorBird DR_Klingel_Bewegung <-> LCN DR_Eingang_Licht
rule "Eingang Licht Bewegungsmelder"
when
Item DR_Klingel_Bewegung changed from OFF to ON // Bewegung wurde erkannt
then
if (STATUS_Helligkeit.state == 1) {
logInfo("status.rules", "Klingel Bewegungsmelder ausgelöst!")
tBewegungEingang?.cancel // zunächst eventuell laufende Timer entfernen
if(DR_Eingang_Licht.state != ON) DR_Eingang_Licht.sendCommand(ON) // Licht einschalten, falls noch nicht an.
logInfo("heizung.rules", "Licht angeschaltet.")
tBewegungEingang = createTimer(now.plusSeconds(600), [ | // Timer anlegen
if(DR_Eingang_Licht.state != OFF) DR_Eingang_Licht.sendCommand(OFF) // Licht ausschalten, falls noch nicht aus
tBewegungEingang = null // Timervariable deinitialisieren
logInfo("heizung.rules", "Licht ausgeschaltet.")
])
}
DR_Klingel_Bewegung.sendCommand(OFF)
end
Könntet Ihr da mal draufgucken? Ist evtl. nur ein dämlicher Tippfehler, oder aber ein größerer Denkfehler...
Danke Euch,
Simon