Beim Einrichten einer Devolo Schaltsteckdose ist mir aufgefallen, dass hier im Vergleich zu meinem Fibaro GEN5 Wall-Plug das "reportedState" reading nicht immer aktualisiert wird, wenn die Steckdose ein oder ausgeschaltet wird. Beim Fibaro Plug lässt sich reportedState zuverlässig benutzen um herauszufinden, ob die Steckdose an oder aus is. Da "state" ja bei set config Änderungen auch einen anderen Zustand als on/off annehmen kann, ist das nicht immer zu gebrauchen. Stattdessen hat sich hier "reportedState" als zuverlässig erwiesen.
Bei der Devolo Steckdose wird reportedState jedoch nicht immer aktualisiert, wenn sich der Zustand ändert. "reportedState" und "state" können hier also unterschiedlich sein und im Zweifel hat reportedState dann den falschen Wert. Ist das Absicht? Soll das so sein? Schöner wäre es ja wie bei der Fibaro. :)
Internals:
CFGFN
DEF fbc617ef 3
IODev zw.Gateway
LASTInputDev zw.Gateway
MSGCNT 35
NAME OG.hw.SW.Waschmaschine
NR 39314
STATE off
TYPE ZWave
ZWaveSubDevice no
cmdsPending 0
homeId fbc617ef
isWakeUp
lastMsgSent 1540918869.47422
nodeIdHex 03
zw.Gateway_MSGCNT 35
zw.Gateway_RAWMSG 00132e00000501c37f7f7f7f0001030200000002010000
zw.Gateway_TIME 2018-10-30 18:01:09
READINGS:
2018-10-30 17:38:52 model Devolo home Control Home Control Smart Metering Plug MT02792
2018-10-30 17:38:52 modelConfig devolo/mt02792.xml
2018-10-30 17:38:52 modelId 0175-0001-0012
2018-10-30 18:00:00 power 0.1 W
2018-10-30 17:49:30 reportedState on
2018-10-30 18:01:09 state off
2018-10-30 18:01:09 timeToAck 0.064
2018-10-30 18:01:09 transmit OK
2018-10-30 17:41:56 voltage 241.6 V
Attributes:
IODev zw.Gateway
classes ZWAVEPLUS_INFO VERSION MANUFACTURER_SPECIFIC DEVICE_RESET_LOCALLY SECURITY POWERLEVEL ASSOCIATION ASSOCIATION_GRP_INFO SWITCH_BINARY ALARM CONFIGURATION METER SWITCH_ALL PROTECTION SCENE_ACTUATOR_CONF SCENE_ACTIVATION FIRMWARE_UPDATE_MD
event-on-change-reading .*
room Hauswirtschaft,ZWave
vclasses ALARM:1 ASSOCIATION:2 ASSOCIATION_GRP_INFO:1 CONFIGURATION:1 DEVICE_RESET_LOCALLY:1 FIRMWARE_UPDATE_MD:2 MANUFACTURER_SPECIFIC:2 METER:4 POWERLEVEL:1 PROTECTION:2 SCENE_ACTIVATION:1 SCENE_ACTUATOR_CONF:1 SECURITY:1 SWITCH_ALL:1 SWITCH_BINARY:1 VERSION:2 ZWAVEPLUS_INFO:2
Erläuterungen zu reportedState versus state siehe insbesondere:
https://forum.fhem.de/index.php/topic,74509.msg663636.html#msg663636
https://forum.fhem.de/index.php/topic,74509.msg722478.html#msg722478
Nach der Anleitung von Devolo (habe das Gerät nicht!) sollte nach meinem Verständnis immer reportedState=state sein, wenn u.a.
Controller in Assocgroup 1,
Konfiguration unverändert bzw. richtig verändert,
keine Telegrammverluste auftreten
Mehr sieht man vermutlich im verbose 5-Log bei Schaltvorgängen, die zu Abweichungen von state und reportedState führen.
Gruß, Christian
Schauen wir mal:
Ausgangssituation:
Internals:
CFGFN
DEF fbc617ef 3
IMAGE
IODev zw.Gateway
LASTInputDev zw.Gateway
MSGCNT 358
NAME DG.hw.SW.Waschmaschine
NR 39314
STATE off
TYPE ZWave
ZWaveSubDevice no
cmdsPending 0
homeId fbc617ef
isWakeUp
lastMsgSent 1540988848.10097
nodeIdHex 03
zw.Gateway_MSGCNT 358
zw.Gateway_RAWMSG 00137c00000200bf7f7f7f7f0000030000000003010000
zw.Gateway_TIME 2018-10-31 13:27:28
READINGS:
2018-10-30 20:36:32 assocGroup_1 Max 1 Nodes zw.Gateway
2018-10-30 20:36:32 assocGroups 1
2018-10-30 21:30:44 configAutoOffTimer 0
2018-10-30 21:30:45 configKWHMeterReportPeriod 6
2018-10-30 21:30:45 configLEDIndicationMode SwitchState
2018-10-30 21:30:45 configModeOfSwitchOffFunction Enable
2018-10-30 21:30:45 configRFOffCommandMode SwitchOff
2018-10-30 21:30:46 configRestoreSwitchStateMode LastSwitchState
2018-10-30 21:30:46 configThresholdOfKWhForLoadCaution 10000
2018-10-30 21:30:46 configWattMeterReportPeriod 720
2018-10-31 12:49:15 energy 0 kWh previous: 0 delta_time: 3600 s
2018-10-30 20:22:06 meterSupported type: energy scales: 0:kWh, 1:kVAh, 2:W, 3:pulseCount, 4:V, 5:A, 6:PowerFactor resetable: yes
2018-10-30 21:31:35 model Devolo home Control Home Control Smart Metering Plug MT02792
2018-10-30 21:31:35 modelConfig devolo/mt02792.xml
2018-10-30 21:31:35 modelId 0175-0001-0012
2018-10-30 19:15:35 neighborList OG.kz.SW.Lego
2018-10-31 12:16:58 neighborUpdate done
2018-10-31 13:23:31 power 0.1 W
2018-10-30 21:31:42 powerlvlTest node 0 status 0 frameAck 0
2018-10-30 21:31:49 protection Local: unprotected RF: unprotected
2018-10-31 07:55:53 reportedState off
2018-10-31 13:27:28 state off
2018-10-30 21:32:00 swa none
2018-10-31 13:27:28 timeToAck 0.030
2018-10-31 13:27:28 transmit OK
2018-10-30 21:32:06 version Lib 3 Prot 4.34 App 1.14 HW 1 FWCounter 0
2018-10-30 21:32:20 versionClass_114 2
2018-10-30 21:32:23 versionClass_44 1
2018-10-30 21:32:21 versionClass_50 4
2018-10-30 21:32:23 versionClass_94 2
2018-10-30 17:41:56 voltage 241.6 V
2018-10-30 21:32:39 zwavePlusInfo version:01 role:AlwaysOnSlave node:Z-Wave+Node installerIcon:0700 userIcon:0700
Attributes:
DbLogInclude energy,power
IODev zw.Gateway
classes ZWAVEPLUS_INFO VERSION MANUFACTURER_SPECIFIC DEVICE_RESET_LOCALLY SECURITY POWERLEVEL ASSOCIATION ASSOCIATION_GRP_INFO SWITCH_BINARY ALARM CONFIGURATION METER SWITCH_ALL PROTECTION SCENE_ACTUATOR_CONF SCENE_ACTIVATION FIRMWARE_UPDATE_MD
event-on-change-reading power,energy,state,realState
neighborListPos 148.36283220328082,335.6790869641525
room Hauswirtschaft,ZWave
vclasses ALARM:1 ASSOCIATION:2 ASSOCIATION_GRP_INFO:1 CONFIGURATION:1 DEVICE_RESET_LOCALLY:1 FIRMWARE_UPDATE_MD:2 MANUFACTURER_SPECIFIC:2 METER:4 POWERLEVEL:1 PROTECTION:2 SCENE_ACTIVATION:1 SCENE_ACTUATOR_CONF:1 SECURITY:1 SWITCH_ALL:1 SWITCH_BINARY:1 VERSION:2 ZWAVEPLUS_INFO:2
verbose 5
state = reportedState
Nach "set ... on":
Internals:
CFGFN
DEF fbc617ef 3
IMAGE
IODev zw.Gateway
LASTInputDev zw.Gateway
MSGCNT 360
NAME DG.hw.SW.Waschmaschine
NR 39314
STATE on
TYPE ZWave
ZWaveSubDevice no
cmdsPending 0
homeId fbc617ef
isWakeUp
lastMsgSent 1540988941.92061
nodeIdHex 03
zw.Gateway_MSGCNT 360
zw.Gateway_RAWMSG 00137d00000500c17f7f7f7f0000030000000003020000
zw.Gateway_TIME 2018-10-31 13:29:01
Helper:
DBLOG:
power:
logdb:
TIME 1540988935.20426
VALUE 0
READINGS:
2018-10-30 20:36:32 assocGroup_1 Max 1 Nodes zw.Gateway
2018-10-30 20:36:32 assocGroups 1
2018-10-30 21:30:44 configAutoOffTimer 0
2018-10-30 21:30:45 configKWHMeterReportPeriod 6
2018-10-30 21:30:45 configLEDIndicationMode SwitchState
2018-10-30 21:30:45 configModeOfSwitchOffFunction Enable
2018-10-30 21:30:45 configRFOffCommandMode SwitchOff
2018-10-30 21:30:46 configRestoreSwitchStateMode LastSwitchState
2018-10-30 21:30:46 configThresholdOfKWhForLoadCaution 10000
2018-10-30 21:30:46 configWattMeterReportPeriod 720
2018-10-31 12:49:15 energy 0 kWh previous: 0 delta_time: 3600 s
2018-10-30 20:22:06 meterSupported type: energy scales: 0:kWh, 1:kVAh, 2:W, 3:pulseCount, 4:V, 5:A, 6:PowerFactor resetable: yes
2018-10-30 21:31:35 model Devolo home Control Home Control Smart Metering Plug MT02792
2018-10-30 21:31:35 modelConfig devolo/mt02792.xml
2018-10-30 21:31:35 modelId 0175-0001-0012
2018-10-30 19:15:35 neighborList OG.kz.SW.Lego
2018-10-31 12:16:58 neighborUpdate done
2018-10-31 13:28:55 power 0 W
2018-10-30 21:31:42 powerlvlTest node 0 status 0 frameAck 0
2018-10-30 21:31:49 protection Local: unprotected RF: unprotected
2018-10-31 07:55:53 reportedState off
2018-10-31 13:29:01 state on
2018-10-30 21:32:00 swa none
2018-10-31 13:29:01 timeToAck 0.053
2018-10-31 13:29:01 transmit OK
2018-10-30 21:32:06 version Lib 3 Prot 4.34 App 1.14 HW 1 FWCounter 0
2018-10-30 21:32:20 versionClass_114 2
2018-10-30 21:32:23 versionClass_44 1
2018-10-30 21:32:21 versionClass_50 4
2018-10-30 21:32:23 versionClass_94 2
2018-10-30 17:41:56 voltage 241.6 V
2018-10-30 21:32:39 zwavePlusInfo version:01 role:AlwaysOnSlave node:Z-Wave+Node installerIcon:0700 userIcon:0700
Attributes:
DbLogInclude energy,power
IODev zw.Gateway
classes ZWAVEPLUS_INFO VERSION MANUFACTURER_SPECIFIC DEVICE_RESET_LOCALLY SECURITY POWERLEVEL ASSOCIATION ASSOCIATION_GRP_INFO SWITCH_BINARY ALARM CONFIGURATION METER SWITCH_ALL PROTECTION SCENE_ACTUATOR_CONF SCENE_ACTIVATION FIRMWARE_UPDATE_MD
event-on-change-reading power,energy,state,realState
neighborListPos 148.36283220328082,335.6790869641525
room Hauswirtschaft,ZWave
vclasses ALARM:1 ASSOCIATION:2 ASSOCIATION_GRP_INFO:1 CONFIGURATION:1 DEVICE_RESET_LOCALLY:1 FIRMWARE_UPDATE_MD:2 MANUFACTURER_SPECIFIC:2 METER:4 POWERLEVEL:1 PROTECTION:2 SCENE_ACTIVATION:1 SCENE_ACTUATOR_CONF:1 SECURITY:1 SWITCH_ALL:1 SWITCH_BINARY:1 VERSION:2 ZWAVEPLUS_INFO:2
verbose 5
reportedState = off
state = on
Logfile:
2018.10.31 13:29:01 3: ZWave set DG.hw.SW.Waschmaschine on
2018.10.31 13:29:01 5: ZWDongle_Write 001303032501FF257d (fbc617ef)
2018.10.31 13:29:01 5: SW: 010a001303032501FF257d65
2018.10.31 13:29:01 5: ACK received, WaitForAck=>2 for 010a001303032501FF257d65
2018.10.31 13:29:01 4: ZWDongle_Read zw.Gateway: rcvd 011301 (answer ZW_SEND_DATA), sending ACK
2018.10.31 13:29:01 5: SW: 06
2018.10.31 13:29:01 5: zw.Gateway: dispatch 011301
2018.10.31 13:29:01 4: ZWDongle_Read zw.Gateway: rcvd 00137d00000500c17f7f7f7f0000030000000003020000 (request ZW_SEND_DATA), sending ACK
2018.10.31 13:29:01 5: SW: 06
2018.10.31 13:29:01 5: device ack reveived, removing 010a001303032501FF257d65 from dongle sendstack
2018.10.31 13:29:01 5: zw.Gateway: dispatch 00137d00000500c17f7f7f7f0000030000000003020000
2018.10.31 13:29:01 4: CMD:ZW_SEND_DATA ID:00 ARG:000500c17f7f7f7f0000030000000003020000 CB:7d
2018.10.31 13:29:01 4: zw.Gateway transmit OK for CB 7d, target DG.hw.SW.Waschmaschine
Lässt sich da was rauslesen?
Übrigens: reportedState wird offenbar verändert, wenn ich den Taster an der Dose zum Umschalten verwende. In dem Fall wird reportedState tatsächlich auf den korrekten Zustand gesetzt. Änderungen über FHEM scheinen das allerdings nicht auszulösen.
Ja, mein Verständnis der Anleitung ist falsch.
Im Log kommt keine Nachricht von einer Statusänderung durch den Aktor mittels SWITCH_BINARY vor; müsste eigentlich nach dem letzten Logeintrag kommen.
Aus der Anleitung https://products.z-wavealliance.org/ProductManual/File?folder=&filename=Manuals/2057/Home_Control_Schalt_Messsteckdose_2.0_2016_11_02_eng.pdf
"2-1-1 On/Off Event Report
When "on" or "off " state has been changed, it will send Binary Switch Report to the node of Grouping 1."
verstehe ich das anders.
Problem bei Assoziation/Konfiguration erkenne ich nicht.
Momentan fällt mir nur ein, nach jedem set ein get hinterherzuschicken, damit reportedState immer stimmt. Ist aber weit weg von ideal.