FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: joshi am 09 April 2017, 14:20:09

Titel: DOIF seit einigen Tagen nicht mehr funktional
Beitrag von: joshi am 09 April 2017, 14:20:09
Szenario: Es geht darum bei Babygeschrei eine Lampe einzuschalten und wieder auszuschalten wenn kein neues signal empfangen wurde.

Dieses habe ich wie folgt realisiert

define di_noise DOIF ([?{sunset()}-{sunrise()}] and [NoiseSensor]) (set Silke_Nachttisch on) (set Silke_Nachttisch off)
attr di_noise do resetwait
attr di_noise wait 0,300


Nun wird zwar bei einem Geräusch (per MQTT Sensor) noch immer das Licht eingeschaltet. Es wird jedoch permanent resetwait ausgeführt obwohl kein neues singal empfangen wird. D.h. die Lampe wird nie mehr ausgeschaltet.

Bis vor wenigen Tagen (etwa bis zur Zeitumstellung) funktionierte es problemlos, daher weiß ich nun nicht wo ich anfangen soll zu suchen.
Titel: Antw:DOIF seit einigen Tagen nicht mehr funktional
Beitrag von: Damian am 09 April 2017, 17:55:38
Da wird wohl NoiseSensor ständig triggern. Am besten Events mal im Eventmonitor beobachten.
Titel: Antw:DOIF seit einigen Tagen nicht mehr funktional
Beitrag von: joshi am 09 April 2017, 21:36:58
Der resettet sich auch bei 0:

2017-04-09 21:34:09 MQTT mqtt connection: active
2017-04-09 21:34:34 DOIF di_noise wait_timer: no timer
2017-04-09 21:34:34 DOIF di_noise wait_timer: 09.04.2017 21:39:34 cmd_1_2 NoiseSensor
2017-04-09 21:34:34 MQTT_DEVICE NoiseSensor transmission-state: incoming publish received
2017-04-09 21:34:34 DOIF di_noise wait_timer: no timer
2017-04-09 21:34:34 DOIF di_noise wait_timer: 09.04.2017 21:39:34 cmd_1_2 NoiseSensor
2017-04-09 21:34:34 MQTT_DEVICE NoiseSensor 0
2017-04-09 21:35:04 DOIF di_noise wait_timer: no timer
2017-04-09 21:35:04 DOIF di_noise wait_timer: 09.04.2017 21:40:04 cmd_1_2 NoiseSensor
2017-04-09 21:35:04 MQTT_DEVICE NoiseSensor transmission-state: incoming publish received
2017-04-09 21:35:04 DOIF di_noise wait_timer: no timer
2017-04-09 21:35:04 DOIF di_noise wait_timer: 09.04.2017 21:40:04 cmd_1_2 NoiseSensor
2017-04-09 21:35:04 MQTT_DEVICE NoiseSensor 0
Titel: Antw:DOIF seit einigen Tagen nicht mehr funktional
Beitrag von: joshi am 09 April 2017, 21:54:25
Solution:

for some reason stateFormat was set (apparently myqtt device does this on setup - and maybe on reboot?) consequently IF Device was always different from 0.
Titel: Antw:DOIF seit einigen Tagen nicht mehr funktional
Beitrag von: automatisierer am 09 April 2017, 22:11:49
Dann wirst du
[NoiseSensor]
wohl ein bisschen präzisieren müssen. So wie es jetzt ist, wird das DOIF ja bei jedem Event vom NoiseSensor getriggert.

Also in Richtung [NoiseSensor:Reading] oder [NoiseSensor] eq "there is a noise"
Titel: Antw:DOIF seit einigen Tagen nicht mehr funktional
Beitrag von: Damian am 09 April 2017, 23:09:40
Zitat von: automatisierer am 09 April 2017, 22:11:49
Dann wirst du
[NoiseSensor]
wohl ein bisschen präzisieren müssen. So wie es jetzt ist, wird das DOIF ja bei jedem Event vom NoiseSensor getriggert.

Also in Richtung [NoiseSensor:Reading] oder [NoiseSensor] eq "there is a noise"

Ich würde hier eher auf Events triggern und nicht auf Status, also [NoiseSensor:"<das auslösende Event>"]