HMCCU und FHEM friert beim (neu)start ein

Begonnen von MobiusOne, 06 Dezember 2018, 23:44:00

Vorheriges Thema - Nächstes Thema

MobiusOne

Hallo,

erstmal ein großes Dankeschön wegen der Möglichkeit der Einbindung der CCU in FHEM! Dadurch sind meine Regeln deutlich komplexer geworden ;)


Ich verwende meine CCU (früher Raspberrymatic und jetzt PiVCCU) seit mehr als 6 Monate, und habe schon seit längerer Zeit ein Problem beim Neustart (Update) der CCU und Neustart von FHEM und des HMCCU-Moduls (verdacht). Meine CCU starte ich eigentlich nur wegen eines Updates mal neu, das Problem tritt aber auch bei einem normalen Neustart der CCU auf.

Nachdem die CCU gestartet ist und ich in FHEM die HMCCU manuell starte, friert meine FHEM-Instanz Komplet ein. Meistens funktioniert das System nach mehreren Minuten wieder (60%), das Plugin gibt eine Fehlermeldung aus (30%, nach ein paarmal probieren funktioniert es meistens) oder FHEM kommt nicht mehr hoch und hängt (10%). Das Problem trat bei mir bei Raspberrymatic und derzeit bei PiVCCU auf. Ich habe die CCU bereits in den letzten Monaten mehrmals Komplet, ohne Backup, wiederhergestellt. In FHEM musste ich regelmäßig die komplette CCU und alle Geräte entfernen und neu anlegen (wegen den besagten 10%). In Kombination mit einer neu Konfiguration in Homebridge ist dies immer etwas lästig.

Ist dies ein bekanntes Problem, oder stimmt etwas bei meiner Konfiguration nicht?
defmod CCU HMCCU 192.168.2.209
attr CCU ccudef-readingfilter (ACOUSTIC_ALARM_SELECTION|ACTUAL_TEMPERATURE|ALARM_STATUS|CONFIG_PENDING|CURRENT|DURATION_UNIT|DURATION_VALUE|DUTY_CYCLE|^ENERGY_COUNTER$|ENERGY_COUNTER_OVERFLOW|ERROR_CODE|ERROR_NON_FLAT_POSITIONING|ERROR_OVERHEAT|FREQUENCY|HUMIDITY|ILLUMINATION|LOW_BAT|MOISTURE_DETECTED|MOTION|OPERATING_VOLTAGE|OPTICAL_ALARM_SELECTION|POWER|PRESS|PRESS_LONG|PRESS_SHORT|RSSI_DEVICE|RSSI_PEER|SABOTAGE|SMOKE_DETECTOR_COMMAND|STATE|TEST_RESULT|TIME_OF_OPERATION|UNREACH|UPDATE_PENDING|VOLTAGE|WATERLEVEL_DETECTED)
attr CCU ccuflags procrpc
attr CCU cmdIcon on:general_an off:general_aus
attr CCU comment get CCU devicelist create ^.* t=dev defattr save room=HomematicIP
attr CCU eventMap /rpcserver on:on/rpcserver off:off/
attr CCU group Bridges
attr CCU room HWR
attr CCU rpcinterfaces HmIP-RF
attr CCU rpcport 2010
attr CCU stateFormat rpcstate/state

setstate CCU running/OK
setstate CCU 2018-12-06 23:09:09 count_channels 279
setstate CCU 2018-12-06 23:09:09 count_devices 42
setstate CCU 2018-12-06 23:09:09 count_groups 0
setstate CCU 2018-12-06 23:09:09 count_interfaces 3
setstate CCU 2018-12-06 23:09:09 count_programs 15
setstate CCU 2018-12-06 23:07:36 rpcstate running
setstate CCU 2018-12-06 23:07:40 state OK


Da das System nun gerade funktioniert, kann ich gerade keine Logs oder Fehlermeldungen anhängen. Ich würde mich aber bereit erklären nochmals ein Neustart der CCU hierfür durchzuführen ;)

Gibt es ein bestimmtes Verbose Level der eingestellt werden sollte? Sollte ich noch was beachten oder werden noch andere Informationen benötigt?

Das Modul HMCCU ist derzeit auf Version 4.3.008

Schonmal vielen Dank

zap

Das mit den Neustarts der CCU habe ich nicht verstanden.

Wie gehst Du bei einem (geplanten) CCU Neustart vor? Empfehlen würde ich:

1. In FHEM die RPC-Server stoppen (set CCU rpcserver off)
2. CCU neu starten
3. Lange genug warten ;-). Bis alle CCU Prozesse laufen, dauert es. Manchmal kann man sich am WebInterface anmelden, obwohl noch nicht alle Prozesse gestartet sind (z.B. der HM-IP Server)
4. In FHEM die RPC-Server starten (set CCU rpcserver on)

Hast Du noch die Logs vom regulären Start der RPC Server? Hast Du Dir mal den Log der CCU angeschaut, wenn das Problem auftritt?


2xCCU3, Fenster, Rollläden, Themostate, Stromzähler, Steckdosen ...)
Entwicklung: FHEM auf AMD NUC (Ubuntu)
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: FULLY, Meteohub, HMCCU, AndroidDB

MobiusOne

Hi zap,

danke für deine Antwort!

Deine vorgeschlagene Reihenfolge verwende ich immer. Ich habe gerade ein Update und Neustart der CCU (PiVCCU) durchgeführt und anschließend getestet. Nach ungefähr 10 Minuten habe ich den RCPServer wieder eingeschaltet, nach zwei weiteren Minuten lief wieder alles  ;D

Folgenden Output habe ich von FHEM erhalten (sieht gut aus):
2018.12.08 19:19:06 2: HMCCURPCPROC: [d_rpcBidCos_RF] RPC server process started for interface BidCos-RF with PID=14914
2018.12.08 19:19:06 2: CCURPC: [d_rpcBidCos_RF] Initializing RPC server CB2001002250 for interface BidCos-RF
2018.12.08 19:19:06 1: HMCCURPCPROC: [d_rpcBidCos_RF] RPC server starting
2018.12.08 19:19:06 2: HMCCURPCPROC: [d_rpcBidCos_RF] Callback server CB2001002250 created. Listening on port 7411
2018.12.08 19:19:06 2: CCURPC: [d_rpcBidCos_RF] CB2001002250 accepting connections. PID=14914
2018.12.08 19:19:06 2: HMCCURPCPROC: [d_rpcHmIP_RF] RPC server process started for interface HmIP-RF with PID=14915
2018.12.08 19:19:06 2: CCURPC: [d_rpcHmIP_RF] Initializing RPC server CB2010002250 for interface HmIP-RF
2018.12.08 19:19:06 1: HMCCURPCPROC: [d_rpcHmIP_RF] RPC server starting
2018.12.08 19:19:06 2: HMCCURPCPROC: [d_rpcHmIP_RF] Callback server CB2010002250 created. Listening on port 7420
2018.12.08 19:19:06 2: CCURPC: [d_rpcHmIP_RF] CB2010002250 accepting connections. PID=14915
2018.12.08 19:19:06 2: HMCCURPCPROC: [d_rpcBidCos_RF] RPC server CB2001002250 enters server loop
2018.12.08 19:19:06 2: HMCCURPCPROC: [d_rpcBidCos_RF] Registering callback http://192.168.2.250:7411/fh2001 of type A with ID CB2001002250 at http://192.168.2.209:2001
2018.12.08 19:19:06 1: HMCCURPCPROC: [d_rpcBidCos_RF] RPC server CB2001002250 running
2018.12.08 19:19:06 2: HMCCURPCPROC: [d_rpcHmIP_RF] RPC server CB2010002250 enters server loop
2018.12.08 19:19:06 2: HMCCURPCPROC: [d_rpcHmIP_RF] Registering callback http://192.168.2.250:7420/fh2010 of type A with ID CB2010002250 at http://192.168.2.209:2010
2018.12.08 19:19:07 1: HMCCURPCPROC: [d_rpcHmIP_RF] RPC server CB2010002250 running
2018.12.08 19:19:07 4: HMCCU: [CCU] Set rpcstate to running
2018.12.08 19:19:07 1: HMCCU: [CCU] All RPC servers running
2018.12.08 19:19:07 2: CCURPC: [d_rpcBidCos_RF] CB2001002250 NewDevice received 52 device and channel specifications
2018.12.08 19:19:08 2: CCURPC: [d_rpcHmIP_RF] CB2010002250 NewDevice received 269 device and channel specifications
2018.12.08 19:22:27 2: HMCCU: [CCU] Updated devices. Success=42 Failed=0



Ich werde es weiter beobachten und mich nochmals melden ;)

MobiusOne

Hallo zap,

leider muss ich meine Drohung war machen und mich wieder melden. Ich hatte heute auf die neuste Version von dir aktualisiert (4.3.010). Leider bekam ich keine Aktualisierungen mehr in FHEM rein. Bin nun wieder auf Version 4.3.008 zurück, hatte aber vor dem Update bereits seit heute dieses Problem. Bei CCU, CCU RPC BidCos-RF und CCU RPC HmIP-RF steht zwar überall Running, aber neue Daten erhielt ich keine mehr.
Im FHEM Log stand selber nichts verdächtiges. Interessanterweise konnte ich zwar noch lichter schalten, der Status wurde aber nicht angezeigt und der Schaltvorgang hat mehrere Sekunden gedauert. Es wird dann eine Fehlermeldung in FHEM angezeigt, dass der Vorgang nicht abgeschlossen werden konnte. Hätte ich gewusst, dass dies nicht im Log gespeichert wird, hätte ich diese kopiert.

Nach mehreren Neustarts von FHEM und Pivccu funktioniert es jetzt wieder. Eigentlich muss ich gefühlt, nach ein oder zwei Neustarts des Raspberrys mit Pivccu (FHEM lauft in Docker auf Synology) die komplette CCU und alle Geräte in FHEM löschen und neu anlegen. Ich warte auch immer eine weile, bis ich die CCU in FHEM wieder aktiviere (gerne auch mal ne ganze Nacht, leider ohne Besserung).

Nun scheine ich der einzige hier mit dieser Problematik zu sein. Was könnte ich machen, dass ich endlich von diesem Problem befreit bin? Soll ich eine CCU3 kaufen? Ist die Bastellösung Raspberry und PiVCCU das Problem? Ich habe letzte Woche noch die PiVCCU Komplet zurückgesetzt (aka Neuinstallation Raspberry) und ohne Backup wieder alle Geräte angelernt (47 Stück).

Internals:
   CCUNum     1
   Clients    :HMCCUDEV:HMCCUCHN:HMCCURPC:HMCCURPCPROC:
   DEF        192.168.2.209
   NAME       CCU
   NOTIFYDEV  global,TYPE=(HMCCU|HMCCUDEV|HMCCUCHN)
   NR         317
   NTFY_ORDER 50-CCU
   RPCState   running
   STATE      running/OK
   TYPE       HMCCU
   ccuaddr    BidCoS-RF
   ccuchannels 319
   ccudevices 47
   ccuif      BidCos-RF
   ccuinterfaces HmIP-RF,BidCos-RF,VirtualDevices
   ccuip      192.168.2.209
   ccuname    HM-RCV-50 BidCoS-RF
   ccustate   active
   ccutype    CCU2/3
   host       192.168.2.209
   version    4.3.008
   READINGS:
     2019-01-15 18:40:08   count_channels  319
     2019-01-15 18:40:08   count_devices   47
     2019-01-15 18:40:08   count_groups    0
     2019-01-15 18:40:08   count_interfaces 3
     2019-01-15 18:40:08   count_programs  20
     2019-01-15 19:00:23   rpcstate        running
     2019-01-15 19:00:25   state           OK
   hmccu:
     evtime     0
     evtimeout  0
     rpccount   0
     rpcports   2010
     updatetime 0
     adr:
       Viele Geräte
     rpc:
Attributes:
   ccudef-readingfilter (ACOUSTIC_ALARM_SELECTION|ACTUAL_TEMPERATURE|ALARM_STATUS|CONFIG_PENDING|CURRENT|DURATION_UNIT|DURATION_VALUE|DUTY_CYCLE|^ENERGY_COUNTER$|ENERGY_COUNTER_OVERFLOW|ERROR_CODE|ERROR_NON_FLAT_POSITIONING|ERROR_OVERHEAT|FREQUENCY|HUMIDITY|ILLUMINATION|LOW_BAT|MOISTURE_DETECTED|MOTION|OPERATING_VOLTAGE|OPTICAL_ALARM_SELECTION|POWER|PRESS|PRESS_LONG|PRESS_SHORT|RSSI_DEVICE|RSSI_PEER|SABOTAGE|SMOKE_DETECTOR_COMMAND|STATE|TEST_RESULT|TIME_OF_OPERATION|UNREACH|UPDATE_PENDING|VOLTAGE|WATERLEVEL_DETECTED)
   ccuflags   procrpc
   cmdIcon    on:general_an off:general_aus
   comment    get CCU devicelist create ^.* t=dev defattr save room=HomematicIP
   eventMap   /rpcserver on:on/rpcserver off:off/
   group      Bridges
   room       HWR
   rpcinterfaces HmIP-RF
   rpcport    2010
   rpcserveraddr 192.168.2.240
   stateFormat rpcstate/state
   verbose    4



Danke für deine Hilfe!