Fibaro FGK-101 Fensterkontakt erzeugt mehrere Events "open/closed"

Begonnen von johnyrecon, 31 Dezember 2016, 08:56:42

Vorheriges Thema - Nächstes Thema

johnyrecon

Moin zusammen,

seit einiger Zeit setze ich mich mit fhem auseinander und spiele aktuell mit einem Fibaro Fensterkontakt FGK-101 Gen5 herum. Inklusion, Temperaturabfrage haben funktioniert. Nun generiert mir der Sensor bei Öffnen und Schließen immer mehrere State Events im EventMonitor.

Auszug EventMonitor:
2016-12-31 08:47:55 ZWave Az_Fenster alarm: AccessControl: Window/Door is open
2016-12-31 08:47:55 ZWave Az_Fenster open
2016-12-31 08:47:55 ZWave Az_Fenster reportedState: open
2016-12-31 08:47:56 ZWave Az_Fenster open
2016-12-31 08:47:56 ZWave Az_Fenster reportedState: open
2016-12-31 08:47:58 ZWave Az_Fenster alarm: AccessControl: Window/Door is closed
2016-12-31 08:47:58 ZWave Az_Fenster closed
2016-12-31 08:47:58 ZWave Az_Fenster reportedState: closed
2016-12-31 08:47:58 ZWave Az_Fenster closed
2016-12-31 08:47:58 ZWave Az_Fenster reportedState: closed


Ein list des Sensors bringt folgendes Ergebnis:
Internals:
   DEF        d5dc415b 5
   IODev      ZWDongle_0
   LASTInputDev ZWDongle_0
   MSGCNT     209
   NAME       Az_Fenster
   NR         66
   STATE      closed
   TYPE       ZWave
   ZWDongle_0_MSGCNT 209
   ZWDongle_0_RAWMSG 0004000503300300
   ZWDongle_0_TIME 2016-12-31 08:47:58
   ZWaveSubDevice no
   endpointChildren ZWave_Node_5.1
   homeId     d5dc415b
   isWakeUp   1
   lastMsgSent 1483168218.05769
   nodeIdHex  05
   Readings:
     2016-12-31 08:10:15   CMD             ZW_APPLICATION_UPDATE
     2016-12-31 08:47:58   alarm           AccessControl: Window/Door is closed
     2016-12-31 07:57:58   alarm_type_00   level 0 node 5 seconds 0
     2016-12-31 08:08:16   assocGroup_1    Max 1 Nodes ZWDongle_0
     2016-12-31 08:08:16   assocGroup_2    Max 5 Nodes
     2016-12-31 08:08:16   assocGroup_3    Max 5 Nodes
     2016-12-31 08:08:16   assocGroup_4    Max 5 Nodes ZWDongle_0
     2016-12-31 08:08:16   assocGroup_5    Max 5 Nodes
     2016-12-31 08:08:16   assocGroups     5
     2016-12-31 07:58:50   basicSet        0
     2016-12-30 10:34:08   battery         100 %
     2016-12-31 07:56:44   config2ndAssociationGroupTriggers10 switchAfterOpeningAndClosing
     2016-12-31 07:56:44   configAlarmBroadcast71 broadcastInactive
     2016-12-31 07:56:44   configAssociationsInZWaveNetwork72 allGroupsSentAsSecure
     2016-12-31 07:56:44   configCommandsSentTo2ndAssociation11 ONOFF
     2016-12-31 07:56:44   configDelayOfTamperAlarmCancellation30 5
     2016-12-31 07:56:44   configDoorWindowOrAlarmStatus2 doorWindowClosed
     2016-12-31 07:56:44   configHighTemperatureAlarmThreshold55 540
     2016-12-31 07:56:44   configIntervalOfTemperature50 300
     2016-12-31 07:56:44   configIntervalOfTemperatureReports52 0
     2016-12-31 07:56:44   configLowTemperatureAlarmThreshold56 40
     2016-12-31 07:56:44   configOperationMode1 DoorWindowsSensorOrExternal0
     2016-12-31 07:56:44   configRangeTestAfterDoubleClick4 disabled
     2016-12-31 07:56:44   configReportingTamperAlarm31 sendTamperCancelationReport
     2016-12-31 07:56:44   configSceneActivationFunctionality70 0
     2016-12-31 07:56:44   configTemperatureAlarmReports54 temperatureAlarmsDisabled
     2016-12-31 07:56:44   configTemperatureOffset53 0
     2016-12-31 07:56:44   configTemperatureReportsThreshold51 5
     2016-12-31 07:56:44   configTimeDelayOfOFFCommandFrame15 0
     2016-12-31 07:56:45   configTimeDelayOfONCommandFrame14 0
     2016-12-31 07:56:45   configTypeOfSentAlarmFrames20 DoorWindowSensorGeneralPurpose0
     2016-12-31 07:56:45   configValueOfOFFCommandFrameSentTo2nd13 0
     2016-12-31 07:56:45   configValueOfONCommandFrameSentTo2nd12 255
     2016-12-31 07:56:45   configVisualLEDIndications3 indicationOfAllEvents
     2016-12-31 08:10:15   mcaGroups       5
     2016-12-31 08:10:15   mca_1           Max 1 Nodes ZWDongle_0
     2016-12-31 08:10:15   mca_2           Max 10
     2016-12-31 08:10:16   mca_3           Max 10
     2016-12-31 08:10:16   mca_4           Max 10 Nodes ZWDongle_0
     2016-12-31 08:10:16   mca_5           Max 10
     2016-12-21 17:00:21   model           FIBARO System FGK101-ZW5 Door Opening Sensor
     2016-12-21 17:00:21   modelConfig     fibaro/fgk001-zw5.xml
     2016-12-21 17:00:21   modelId         010f-0701-1001
     2016-12-31 08:47:58   reportedState   closed
     2016-12-31 08:47:58   state           closed
     2016-12-31 08:13:55   temperature     20.75 C
     2016-12-31 08:10:18   timeToAck       0.027
     2016-12-31 08:10:18   transmit        OK
     2016-12-31 07:57:43   wakeup          notification
     2016-12-29 16:18:52   wakeupReport    interval 21600 target 1
Attributes:
   IODev      ZWDongle_0
   classes    ZWAVEPLUS_INFO ASSOCIATION ASSOCIATION_GRP_INFO APPLICATION_STATUS BASIC BATTERY CONFIGURATION CRC_16_ENCAP DEVICE_RESET_LOCALLY FIRMWARE_UPDATE_MD MANUFACTURER_SPECIFIC MULTI_CHANNEL_ASSOCIATION ALARM POWERLEVEL SECURITY SCENE_ACTIVATION SENSOR_ALARM SENSOR_BINARY SENSOR_MULTILEVEL VERSION WAKE_UP
   group      Security
   room       Büro,Wohnung


Dementsprechend wird ein notify auf "open" oder "closed" auch immer mehrfach ausgelöst. Kann es was mit den associations zu tun haben?


Danke und Gruß
Malte

A.Harrenberg

Hi,

ich kenne den Sensor nicht, aber Deine Vermutung dürfte richtig sein. Wenn in der Gruppe 1 und in der Gruppe 4 jeweils der Status gemeldet wird dann kommt es auch zwei mal an...

Mal in der Bedienungsanleitung nachsehen was in welcher Gruppe gesendet wird und ob man das evtl. konfigurieren kann.

Gruß,
Andreas.
FB 7360, Homematic und ZWave
Support for ZWave-SECURITY

johnyrecon

Das komische an der Sache ist, wenn ich die Gruppe 4 entferne erhalte folgende Events.

2016-12-31 09:25:00 ZWave Az_Fenster alarm: AccessControl: Window/Door is closed
2016-12-31 09:25:01 ZWave Az_Fenster alarm: AccessControl: Window/Door is open


Allerdings nicht im "State" sondern im Reading "Alarm".

A.Harrenberg

Hi,

ja, das wird über die Klasse ALARM/NOTIFICATION gemeldet und ist "normal". (Und das war vorher auch schon da, siehe erste Zeile deines Eventlogs...)
Reicht das nicht?

Was wird den in der Gruppe 4 gesendet? Kann man das evtl. konfigurieren? Teilweise kann man über einen Zahlencode (der binär ausgedrückt die einzelnen Werte darstellt) konfigurieren was gesendet wird.

Gruß,
Andreas.
FB 7360, Homematic und ZWave
Support for ZWave-SECURITY

krikan

Lösungsmöglichkeit bei ausschließlicher Assoziation mit Assogroup 1 über stateFormat: https://forum.fhem.de/index.php/topic,48639.msg489829.html#msg489829
Gruß, Christian

johnyrecon

So ganz verstehe ich das mit dem stateFormat noch nicht. Folgendes habe ich eingetragen: stateFormat {(split(/,|is /, ReadingsVal($name,"alarm","")))[1]}

Als Event kommt folgendes:
2016-12-31 10:15:25 ZWave Az_Fenster alarm: AccessControl: Window/Door is closed
2016-12-31 10:15:25 ZWave Az_Fenster alarm: AccessControl: Window/Door is open


Sorry für die blöden Fragen  :(

krikan

ZitatAllerdings nicht im "State" sondern im Reading "Alarm".
stateFormat ändert nicht den Event, sondern die Anzeige im STATE. Hatte aus obigem geschlossen, dass Dich fehlender STATE stört.
Für das notify solltest Du jetzt passendes regex/pattern (ungetestet: Az_Fenster:alarm..AccessControl.*closed) heraussuchen. Es dürfte auch nur noch ein Event für open/closed kommen.

johnyrecon

Erstmal danke für die Lösungsansätze. In der Tat bin ich verwundert über den fehlenden STATE. Bzw. steht bei mit dort aktuell wakeupInterval 86400 1 drin. Nach der Eingabe des stateFormat hat sich daran nichts geändert.

Das mit dem Deinem Vorschlag für das notify verstehe ich. Allerdings hätte ich damit in der Anzeige der Web Oberfläche immer noch keine Anzeige von Open/closed. Also ja, im Prinzip besteht das Hauptinteresse darin den fehlenden STATE hinzubekommen. Ich vermute nur das dieser Code {(split(/,|is /, ReadingsVal($name,"alarm","")))[1]} noch nicht ganz korrekt auf meine Events passt.

Internals:
   CFGFN
   DEF        d5dc415b 8
   IODev      ZWDongle_0
   LASTInputDev ZWDongle_0
   MSGCNT     113
   NAME       Az_Fenster
   NR         996
   STATE      open
   TYPE       ZWave
   ZWDongle_0_MSGCNT 113
   ZWDongle_0_RAWMSG 00040008097105000000ff061600
   ZWDongle_0_TIME 2016-12-31 11:58:44
   ZWaveSubDevice no
   homeId     d5dc415b
   isWakeUp   1
   lastMsgSent 1483175678.1467
   nodeIdHex  08
   Readings:
     2016-12-31 10:14:36   CMD             ZW_APPLICATION_UPDATE
     2016-12-31 11:58:44   alarm           AccessControl: Window/Door is open
     2016-12-31 10:09:40   alarm_AccessControl Window/Door is open, notificationIsOn
     2016-12-31 10:10:23   config2ndAssociationGroupTriggers10 switchAfterOpeningAndClosing
     2016-12-31 10:10:23   configAlarmBroadcast71 broadcastInactive
     2016-12-31 10:10:23   configAssociationsInZWaveNetwork72 allGroupsSentAsSecure
     2016-12-31 10:10:23   configCommandsSentTo2ndAssociation11 ONOFF
     2016-12-31 10:10:24   configDelayOfTamperAlarmCancellation30 5
     2016-12-31 10:10:24   configDoorWindowOrAlarmStatus2 doorWindowClosed
     2016-12-31 10:10:24   configHighTemperatureAlarmThreshold55 540
     2016-12-31 10:10:24   configIntervalOfTemperature50 300
     2016-12-31 10:10:24   configIntervalOfTemperatureReports52 0
     2016-12-31 10:10:24   configLowTemperatureAlarmThreshold56 40
     2016-12-31 10:10:24   configOperationMode1 DoorWindowsSensorOrExternal0
     2016-12-31 10:10:24   configRangeTestAfterDoubleClick4 disabled
     2016-12-31 10:10:24   configReportingTamperAlarm31 sendTamperCancelationReport
     2016-12-31 10:10:24   configSceneActivationFunctionality70 0
     2016-12-31 10:10:24   configTemperatureAlarmReports54 temperatureAlarmsDisabled
     2016-12-31 10:10:24   configTemperatureOffset53 0
     2016-12-31 10:10:24   configTemperatureReportsThreshold51 10
     2016-12-31 10:10:24   configTimeDelayOfOFFCommandFrame15 0
     2016-12-31 10:10:24   configTimeDelayOfONCommandFrame14 0
     2016-12-31 10:10:24   configTypeOfSentAlarmFrames20 DoorWindowSensorGeneralPurpose0
     2016-12-31 10:10:24   configValueOfOFFCommandFrameSentTo2nd13 0
     2016-12-31 10:10:24   configValueOfONCommandFrameSentTo2nd12 255
     2016-12-31 10:10:24   configVisualLEDIndications3 indicationOfAllEvents
     2016-12-31 09:59:22   model           FIBARO System FGK101-ZW5 Door Opening Sensor
     2016-12-31 09:59:22   modelConfig     fibaro/fgk001-zw5.xml
     2016-12-31 09:59:22   modelId         010f-0701-1001
     2016-12-31 09:47:38   state           wakeupInterval 86400 1
     2016-12-31 11:13:24   temperature     23.25 C
     2016-12-31 10:14:38   timeToAck       0.036
     2016-12-31 10:14:38   transmit        OK
     2016-12-31 09:48:36   wakeup          notification
Attributes:
   IODev      ZWDongle_0
   classes    ZWAVEPLUS_INFO ASSOCIATION ASSOCIATION_GRP_INFO APPLICATION_STATUS BASIC BATTERY CONFIGURATION CRC_16_ENCAP DEVICE_RESET_LOCALLY FIRMWARE_UPDATE_MD MANUFACTURER_SPECIFIC MULTI_CHANNEL_ASSOCIATION ALARM POWERLEVEL SECURITY SCENE_ACTIVATION SENSOR_ALARM SENSOR_BINARY SENSOR_MULTILEVEL VERSION WAKE_UP
   room       Büro
   stateFormat {(split(/,|is /, ReadingsVal($name,"alarm..AccessControl","")))[1]}
   vclasses   ALARM:5 APPLICATION_STATUS:1 ASSOCIATION:2 ASSOCIATION_GRP_INFO:1 BASIC:1 BATTERY:1 CONFIGURATION:1 CRC_16_ENCAP:1 DEVICE_RESET_LOCALLY:1 FIRMWARE_UPDATE_MD:3 MANUFACTURER_SPECIFIC:2 MULTI_CHANNEL_ASSOCIATION:3 POWERLEVEL:1 SCENE_ACTIVATION:1 SECURITY:1 SENSOR_ALARM:1 SENSOR_BINARY:1 SENSOR_MULTILEVEL:5 VERSION:2 WAKE_UP:2 ZWAVEPLUS_INFO:2



johnyrecon

Also im Prinzip wäre mein Ziel das im STATE open/closed angezeigt werden.

krikan

Events sind nicht gleichzusetzen mit Readings.

Mit ReadingsVal liest Du ein Reading aus. In Deinem stateFormat willst Du das Reading alarm_AccessControl auslesen. Also bitte den Readingnamen korrekt übernehmen (mein obiger Link führt zum richtigen Code); du darfst dort nicht mit Regex .. arbeiten. Das gilt nur für regex in notify.

johnyrecon

Ok, verstanden. In der tat wird in der Weboberfläche jetzt open und closed angezeigt.

Für das notify muss ich mir also jetzt noch etwas anhand Deines Vorschlages bauen.

ZitatstateFormat ändert nicht den Event, sondern die Anzeige im STATE. Hatte aus obigem geschlossen, dass Dich fehlender STATE stört.
Für das notify solltest Du jetzt passendes regex/pattern (ungetestet: Az_Fenster:alarm..AccessControl.*closed) heraussuchen. Es dürfte auch nur noch ein Event für open/closed kommen.

throbin

Hi,

das Notify bspw. funktioniert:

(EG_Kueche_Fenstersensor:alarm_AccessControl:.*) {
  if ($EVTPART3 eq "open,")
  {
    ...
  }
  else
  {
    ...
  }
}


Gruß
throbin

johnyrecon

Danke Leute, ich denke so langsam steige ich dahinter. So läuft es erstmal.

Danke Euch und einen guten Rutsch  :)!