Hallo,
Ich habe seit kurzem das Problem, dass bei meinen Homematic IP-Dimmern der Status nicht mehr automatisch in FHEM aktualisiert wird. Ich kann nicht genau sagen, ab wann...
FHEM lauft seit Jahren auf einem Pi 3. System ist aktuell (naja, noch Stretch, aber aktualisiert). Mit Homematic-Steckmudul.
Das Problem besteht nur bei den beiden IP-Dimmern (HmIP-BDT), der konventionelle Dimmer (HM-LC-Dim1T-FM) wird bei Statusänderung über Alexa oder über den Schalter direkt aktualisiert.
In der PiVCCU (Firmware 3.51.6) werden alle Funktionen und Zustände korrekt angezeigt.
Hier eine Raw Definition von einem IP-Dimmer:
defmod HM_Dimmer_WZ_Couchtisch HMCCUDEV 0008D8A99549DC
attr HM_Dimmer_WZ_Couchtisch IODev d_ccu
attr HM_Dimmer_WZ_Couchtisch alexaName Lampe Couch
attr HM_Dimmer_WZ_Couchtisch alexaRoom Wohnzimmer
attr HM_Dimmer_WZ_Couchtisch ccureadingfilter (ERROR_CODE|ERROR_OVERHEAT|ACTUAL_TEMPERATURE|ACTIVITY_STATE|LEVEL)
attr HM_Dimmer_WZ_Couchtisch ccuscaleval LEVEL:0:1:0:100
attr HM_Dimmer_WZ_Couchtisch controldatapoint 4.LEVEL
attr HM_Dimmer_WZ_Couchtisch group 1 Lichtschalter
attr HM_Dimmer_WZ_Couchtisch hmstatevals ACTUAL_TEMPERATURE_STATUS!2:tempOverflow,3:tempUnderflow;;ERROR_OVERHEAT!(1|true):overheat
attr HM_Dimmer_WZ_Couchtisch room Homematic,Wohnzimmer
attr HM_Dimmer_WZ_Couchtisch statedatapoint 4.LEVEL
attr HM_Dimmer_WZ_Couchtisch statevals on:100,off:0
attr HM_Dimmer_WZ_Couchtisch stripnumber 1
attr HM_Dimmer_WZ_Couchtisch substexcl control
attr HM_Dimmer_WZ_Couchtisch substitute LEVEL!#0-0:off,#1-100:on;;ACTIVITY_STATE!0:unknown,1:up,2:down,3:stop;;ERROR_OVERHEAT!(0|false):no,(1|true):yes;;ACTUAL_TEMPERATURE_STATUS!0:normal,1:unknown,2:overflow,3:underflow
attr HM_Dimmer_WZ_Couchtisch webCmd control:on:off
attr HM_Dimmer_WZ_Couchtisch widgetOverride control:slider,0,10,100
setstate HM_Dimmer_WZ_Couchtisch off
setstate HM_Dimmer_WZ_Couchtisch 2020-05-04 19:03:56 0.ACTUAL_TEMPERATURE 0.0
setstate HM_Dimmer_WZ_Couchtisch 2020-05-04 19:03:56 0.ACTUAL_TEMPERATURE_STATUS normal
setstate HM_Dimmer_WZ_Couchtisch 2020-05-04 19:03:56 0.ERROR_CODE 0
setstate HM_Dimmer_WZ_Couchtisch 2020-05-04 19:03:56 0.ERROR_OVERHEAT no
Ich hoffe, ihr könnt mir helfen, ich bin im Moment mit meinem Latein am Ende. Wie bereits gesagt, läuft die gleiche Hardware-Configuration seit ca. 2 Jahren ohne Probleme. Lediglich FHEM Updates in nicht regelmäßigen abständen, sowie "sudo apt-get update && sudo apt-get upgrade" für den PI. System natürlich auch schon neu gestartet.
P.S.: Wenn den Dimmer über "get HM_Dimmer_WZ_Couchtisch update" anschubse, wird der Statur richtig aktualisiert
Gruß Thorsten
Interessant wäre auch ein "list" von d_ccu (die 50 virtuelle Taster kannst Du weglassen)
Kein Problem:
Internals:
CCUNum 1
Clients :HMCCUDEV:HMCCUCHN:HMCCURPC:HMCCURPCPROC:
DEF 192.168.1.102 ccudelay=180
FUUID 5c43a01c-f33f-0880-4af7-224e35dae8ca25fe
NAME d_ccu
NOTIFYDEV global,TYPE=(HMCCU|HMCCUDEV|HMCCUCHN)
NR 173
NTFY_ORDER 50-d_ccu
RPCState running
STATE running/OK
TYPE HMCCU
ccuaddr BidCoS-RF
ccuchannels 120
ccudevices 5
ccuif BidCos-RF
ccuinterfaces HmIP-RF,BidCos-RF,VirtualDevices
ccuip 192.168.1.102
ccuname ZENTRALE
ccustate active
ccutype CCU2/3
host 192.168.1.102
prot http
version 4.3.025
READINGS:
2020-05-04 18:29:56 count_channels 120
2020-05-04 18:29:56 count_devices 5
2020-05-04 18:29:56 count_groups 0
2020-05-04 18:29:56 count_interfaces 3
2020-05-04 18:29:56 count_programs 0
2020-05-04 18:30:27 rpcstate running
2020-05-04 18:30:27 state OK
hmccu:
defInterface BidCos-RF
defPort 2001
evtime 0
evtimeout 0
rpccount 0
rpcports
updatetime 0
adr:
Dimmer_WZ_Couchtisch:
address 0008D8A99549DC
addtype dev
valid 1
Dimmer_WZ_Couchtisch:0:
address 0008D8A99549DC:0
addtype chn
valid 1
Dimmer_WZ_Couchtisch_an:
address 0008D8A99549DC:1
addtype chn
valid 1
Dimmer_WZ_Couchtisch_aus:
address 0008D8A99549DC:2
addtype chn
valid 1
Dimmer_WZ_Couchtisch_dim:
address 0008D8A99549DC:4
addtype chn
valid 1
Ok, sieht schon mal gut aus.
Kannst Du noch bitte ein "list" vom Dimmer statt diese raw DEF posten?
Internals:
DEF 0008D8A99549DC
FUUID 5c43a01d-f33f-0880-db91-c396d44d54d8c15e
IODev d_ccu
NAME HM_Dimmer_WZ_Couchtisch
NR 174
STATE off
TYPE HMCCUDEV
ccuaddr 0008D8A99549DC
ccudevstate active
ccuif HmIP-RF
ccuname Dimmer_WZ_Couchtisch
ccutype HmIP-BDT
channels 8
statevals devstate|on|off
READINGS:
2020-05-04 19:03:56 0.ACTUAL_TEMPERATURE 0.0
2020-05-04 19:03:56 0.ACTUAL_TEMPERATURE_STATUS normal
2020-05-04 19:03:56 0.ERROR_CODE 0
2020-05-04 19:03:56 0.ERROR_OVERHEAT no
2020-05-04 19:03:56 0.UNREACH false
2020-05-04 19:03:56 3.ACTIVITY_STATE unknown
2020-05-04 19:03:56 3.LEVEL off
2020-05-04 19:03:56 3.LEVEL_STATUS 0
2020-05-04 19:03:56 4.ACTIVITY_STATE stop
2020-05-04 19:03:56 4.LEVEL off
2020-05-04 19:03:56 4.LEVEL_STATUS 0
2020-05-04 19:03:56 5.ACTIVITY_STATE stop
2020-05-04 19:03:56 5.LEVEL off
2020-05-04 19:03:56 5.LEVEL_STATUS 0
2020-05-04 19:03:56 6.ACTIVITY_STATE stop
2020-05-04 19:03:56 6.LEVEL off
2020-05-04 19:03:56 6.LEVEL_STATUS 0
2020-05-04 19:03:56 control 0
2020-05-04 19:03:56 hmstate off
2020-05-04 19:03:56 state off
hmccu:
devspec 0008D8A99549DC
dp:
0.ACTUAL_TEMPERATURE:
OSVAL 0.0
OVAL 0.000000
SVAL 0.0
VAL 0.000000
0.ACTUAL_TEMPERATURE_STATUS:
OSVAL normal
OVAL 0
SVAL normal
VAL 0
0.CONFIG_PENDING:
OVAL false
VAL false
0.DUTY_CYCLE:
OVAL false
VAL false
0.ERROR_CODE:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
0.ERROR_OVERHEAT:
OSVAL no
OVAL false
SVAL no
VAL false
0.ERROR_OVERLOAD:
OVAL false
VAL false
0.ERROR_UPDATE:
OVAL false
VAL false
0.INSTALL_TEST:
OVAL true
VAL true
0.OPERATING_VOLTAGE:
OVAL 0.000000
VAL 0.000000
0.OPERATING_VOLTAGE_STATUS:
OVAL 0
VAL 0
0.RSSI_DEVICE:
OVAL 205
VAL 206
0.RSSI_PEER:
OVAL 199
VAL 198
0.UNREACH:
OSVAL false
OVAL false
SVAL false
VAL false
0.UPDATE_PENDING:
OVAL false
VAL false
3.ACTIVITY_STATE:
OSVAL unknown
OVAL 0
SVAL unknown
VAL 0
3.LEVEL:
OSVAL on
OVAL 0.350000
SVAL off
VAL 0.000000
3.LEVEL_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
3.PROCESS:
OVAL 0
VAL 0
3.SECTION:
OVAL 15
VAL 15
3.SECTION_STATUS:
OVAL 0
VAL 0
4.ACTIVITY_STATE:
OSVAL stop
OVAL 3
SVAL stop
VAL 3
4.LEVEL:
OSVAL on
OVAL 0.350000
SVAL off
VAL 0.000000
4.LEVEL_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
4.PROCESS:
OVAL 0
VAL 0
4.SECTION:
OVAL 3
VAL 0
4.SECTION_STATUS:
OVAL 0
VAL 0
5.ACTIVITY_STATE:
OSVAL stop
OVAL 3
SVAL stop
VAL 3
5.LEVEL:
OSVAL off
OVAL 0.000000
SVAL off
VAL 0.000000
5.LEVEL_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
5.PROCESS:
OVAL 0
VAL 0
5.SECTION:
OVAL 0
VAL 0
5.SECTION_STATUS:
OVAL 0
VAL 0
6.ACTIVITY_STATE:
OSVAL stop
OVAL 3
SVAL stop
VAL 3
6.LEVEL:
OSVAL off
OVAL 0.000000
SVAL off
VAL 0.000000
6.LEVEL_STATUS:
OSVAL 0
OVAL 0
SVAL 0
VAL 0
6.PROCESS:
OVAL 0
VAL 0
6.SECTION:
OVAL 0
VAL 0
6.SECTION_STATUS:
OVAL 0
VAL 0
7.WEEK_PROGRAM_CHANNEL_LOCKS:
OVAL 0
VAL 0
Attributes:
IODev d_ccu
alexaName Lampe Couch
alexaRoom Wohnzimmer
ccureadingfilter (ERROR_CODE|ERROR_OVERHEAT|ACTUAL_TEMPERATURE|ACTIVITY_STATE|LEVEL)
ccuscaleval LEVEL:0:1:0:100
controldatapoint 4.LEVEL
group 1 Lichtschalter
hmstatevals ACTUAL_TEMPERATURE_STATUS!2:tempOverflow,3:tempUnderflow;ERROR_OVERHEAT!(1|true):overheat
room Homematic,Wohnzimmer
statedatapoint 4.LEVEL
statevals on:100,off:0
stripnumber 1
substexcl control
substitute LEVEL!#0-0:off,#1-100:on;ACTIVITY_STATE!0:unknown,1:up,2:down,3:stop;ERROR_OVERHEAT!(0|false):no,(1|true):yes;ACTUAL_TEMPERATURE_STATUS!0:normal,1:unknown,2:overflow,3:underflow
webCmd control:on:off
widgetOverride control:slider,0,10,100
Könnte sein, dass
a) der RPC Server für HmIP nicht mehr läuft
b) der Hmip Server Prozess auf der CCU ist abgeraucht oder in einem undefinierten Zustand
Bei a) den Server wieder starten
Bei b) die CCU neu starten (vorher RPC Server auf FHEM stoppen)
Aber warum denn
2020-05-04 18:30:27 rpcstate running
2020-05-04 18:30:27 state OK
?
Einige Werte sind merkwürdig, z.B.:
0.RSSI_DEVICE:
OVAL 205
VAL 206
0.RSSI_PEER:
OVAL 199
VAL 198
Was mir noch eingefallen ist: Früher, nach einem reboot vom PI, war der Status von allen HM-Devices eine Zeit lang "Initialize" und "Pending" oder so, das ist jetzt nicht mehr so...
Vielleicht wichtig
Gruss
Hat noch jemand eine Idee? VCCU neu installieren? Aber ich denke, die läuft korrekt...
Hast Du a) und b) von zap hieroben schon gemacht? Was ist das Ergebnis davon?
Die Logeinträge vom Starten der RPC Server wären auch interessant.
Hast Du weitere HmIP Devices? Werden die aktualisiert?
ZitatHast Du a) und b) von zap hieroben schon gemacht? Was ist das Ergebnis davon?
Beides gemacht, keine Änderung.
ZitatHast Du weitere HmIP Devices? Werden die aktualisiert?
Ja, habe neben den zwei IP Geräten HmIP-BDT, die nicht aktualisiert werden, noch einen Dimmer HM-LC-Dim1T-FM (Kein IP Gerät), und der wird korrekt aktualisiert.
ZitatDie Logeinträge vom Starten der RPC Server wären auch interessant.
Events (Filter: .*) FHEM log ResetCreate/Modify Device2020-05-06 19:27:49 CustomReadings SHIELD_Start_Taste keypress: 0
2020-05-06 19:27:50 XiaomiMQTTDevice 0x00158d00023d9303 transmission-state: incoming publish received
2020-05-06 19:27:50 XiaomiMQTTDevice 0x00158d00023d9303 battery: ok
2020-05-06 19:27:50 XiaomiMQTTDevice 0x00158d00023d9303 battery_level: 100
2020-05-06 19:27:50 XiaomiMQTTDevice 0x00158d00023d9303 motion
2020-05-06 19:27:50 XiaomiMQTTDevice 0x00158d00023d9303 occupancy: true
2020-05-06 19:27:50 XiaomiMQTTDevice 0x00158d00023d9303 illuminance_lux: 1000
2020-05-06 19:27:50 XiaomiMQTTDevice 0x00158d00023d9303 voltage: 3025
2020-05-06 19:27:50 XiaomiMQTTDevice 0x00158d00023d9303 lux: 1000
2020-05-06 19:27:50 XiaomiMQTTDevice 0x00158d00023d9303 illuminance: 1000
2020-05-06 19:27:50 XiaomiMQTTDevice 0x00158d00023d9303 no_occupancy_since: 30
2020-05-06 19:27:50 XiaomiMQTTDevice 0x00158d00023d9303 linkquality: 59
2020-05-06 19:27:53 CustomReadings SHIELD_Start_Taste keypress: 0
2020-05-06 19:27:53 HMCCURPCPROC d_rpc001102BidCos_RF rpcstate: starting
2020-05-06 19:27:53 HMCCURPCPROC d_rpc001102BidCos_RF busy
2020-05-06 19:27:53 HMCCU d_ccu busy
2020-05-06 19:27:53 HMCCURPCPROC d_rpc001102BidCos_RF RPC server starting
2020-05-06 19:27:53 HMCCU d_ccu OK
2020-05-06 19:27:53 HMCCURPCPROC d_rpc001102BidCos_RF rpcstate: working
2020-05-06 19:27:53 HMCCU d_ccu busy
2020-05-06 19:27:54 HMCCURPCPROC d_rpc001102BidCos_RF rpcstate: running
2020-05-06 19:27:54 HMCCU d_ccu rpcstate: running
2020-05-06 19:27:54 HMCCU d_ccu RPC server running
2020-05-06 19:27:54 HMCCU d_ccu OK
2020-05-06 19:27:54 HMCCURPCPROC d_rpc001102BidCos_RF OK
2020-05-06 19:27:54 HMCCURPCPROC d_rpc001102BidCos_RF RPC server CB2001001071001102 running
2020-05-06 19:27:54 HMCCUDEV HM_Dimmer_WZ_Esstisch 0.UNREACH: false
2020-05-06 19:27:54 HMCCUDEV HM_Dimmer_WZ_Esstisch 1.DIRECTION: none
2020-05-06 19:27:54 HMCCUDEV HM_Dimmer_WZ_Esstisch 1.LEVEL: off
2020-05-06 19:27:54 HMCCUDEV HM_Dimmer_WZ_Esstisch control: 0
2020-05-06 19:27:54 HMCCUDEV HM_Dimmer_WZ_Esstisch off
2020-05-06 19:27:54 HMCCUDEV HM_Dimmer_WZ_Esstisch hmstate: off
Komisch, beim starten der RPC Server wird nur der HMCCUDEV HM_Dimmer_WZ_Esstisch gefunden (HM-LC-Dim1T-FM ), die beiden Problem-IP-Dimmer tauchen gar nicht auf.
Laut Log wird der HmIp RPC Server nicht gestartet. Daher wird auch nichts aktualisiert.
Wie sehen denn die Attribute rpcinterfaces und rpcports vom Device d_ccu aus?
ZitatWie sehen denn die Attribute rpcinterfaces und rpcports vom Device d_ccu aus?
...die habe ich gar nicht.
defmod d_ccu HMCCU 192.168.1.102 ccudelay=180
attr d_ccu ccuaggregate name:battery,filter:name=^HM_.*,read:battery,if:any=low,else:ok,prefix:battery_,coll:comment!Batterien OK;;
attr d_ccu ccudef-readingfilter ^(LOW_?BAT|UNREACH)$
attr d_ccu ccudef-readingname ^(.+\.)?LOW_?BAT$:battery
attr d_ccu ccudef-substitute AES_KEY!(0|false):off,(1|true):on
attr d_ccu ccuflags procrpc
attr d_ccu cmdIcon on:general_an off:general_aus
attr d_ccu event-on-change-reading .*
attr d_ccu eventMap /rpcserver on:on/rpcserver off:off/
attr d_ccu room Geräte
attr d_ccu rpcevtimeout 1200
attr d_ccu rpcserver on
attr d_ccu stateFormat rpcstate/state
attr d_ccu stripnumber 1
setstate d_ccu running/OK
setstate d_ccu 2020-05-06 16:34:58 count_channels 120
setstate d_ccu 2020-05-06 16:34:58 count_devices 5
setstate d_ccu 2020-05-06 16:34:58 count_groups 0
setstate d_ccu 2020-05-06 16:34:58 count_interfaces 3
setstate d_ccu 2020-05-06 16:34:58 count_programs 0
setstate d_ccu 2020-05-06 19:33:46 rpcstate running
setstate d_ccu 2020-05-06 19:33:46 state OK
Ich habe jetzt
attr d_ccu rpcinterfaces BidCos-RF
attr d_ccu rpcport 2001
Gesetzt, Neustart, aber immer noch nichts.
defmod d_ccu HMCCU 192.168.1.102 ccudelay=180
attr d_ccu ccuaggregate name:battery,filter:name=^HM_.*,read:battery,if:any=low,else:ok,prefix:battery_,coll:comment!Batterien OK;;
attr d_ccu ccudef-readingfilter ^(LOW_?BAT|UNREACH)$
attr d_ccu ccudef-readingname ^(.+\.)?LOW_?BAT$:battery
attr d_ccu ccudef-substitute AES_KEY!(0|false):off,(1|true):on
attr d_ccu ccuflags procrpc
attr d_ccu cmdIcon on:general_an off:general_aus
attr d_ccu event-on-change-reading .*
attr d_ccu eventMap /rpcserver on:on/rpcserver off:off/
attr d_ccu room Geräte
attr d_ccu rpcevtimeout 1200
attr d_ccu rpcinterfaces BidCos-RF
attr d_ccu rpcport 2001
attr d_ccu rpcserver on
attr d_ccu stateFormat rpcstate/state
attr d_ccu stripnumber 1
setstate d_ccu error/Error
setstate d_ccu 2020-05-06 21:17:55 count_channels 120
setstate d_ccu 2020-05-06 21:17:55 count_devices 5
setstate d_ccu 2020-05-06 21:17:55 count_groups 0
setstate d_ccu 2020-05-06 21:17:55 count_interfaces 3
setstate d_ccu 2020-05-06 21:17:55 count_programs 0
setstate d_ccu 2020-05-06 21:22:42 rpcstate error
setstate d_ccu 2020-05-06 21:22:42 state Error
So, jetzt den rpcport auf 2010 gesetzt, und jetzt läuft es wieder. Keine Ahnung, wo die Einstellungen ab geblieben sind. Egal, vielen Dank für den Lösungsweg.
Wenn Du nur BidCos angibst, bekommst Du auch nur BidCos.
Lösche das rpcport Attribut. Ist veraltet. Setze in rpcinterfaces BidCos-RF und HmIP-RF. Dann Rpc Server starten