Newbiefrage CCU2 & HMIP - Status von Fensterkonatkt wird nicht akt.

Begonnen von smeagel, 14 November 2018, 20:25:51

Vorheriges Thema - Nächstes Thema

smeagel

Hi,

nachdem ich mit suchen und googlen nicht mehr weiterkomme, hoffe ich das mir
vielleicht hier jemand helfen kann.

Folgendes Szenario:

FHEM
CCU2
Fensterkontakt HMIP-SWDO

Habe es noch irgendwie hinbekommen das die CCU2 in fhem läuft,
der Kontakt ist auch eingebunden - allerdings bekomme ich in fhem
keine Statusänderung angezigt.

Wenn ich beim Fensterkontakt ein get update auslöse - wird der aktuelle Status
angezeigt.

Hier die entsprechenden Einträge in der fhem.cfg:

########################
# HM IP - CCU2         #
########################------------------------------------------------------
define HM_CCU2 HMCCU 192.168.168.172
attr HM_CCU2 ccuflags procrpc
attr HM_CCU2 devStateIcon (OK|Initialized):10px-kreis-gruen Error:10px-kreis-rot
attr HM_CCU2 event-on-change-reading .*
attr HM_CCU2 icon rc_HOME
attr HM_CCU2 room Homematic
attr HM_CCU2 rpcinterfaces BidCos-RF,HmIP-RF,VirtualDevices
attr HM_CCU2 rpcport 2001,2010,9292
attr HM_CCU2 stateFormat rpcstate/state
attr HM_CCU2 stripchar :
attr HM_CCU2 stripnumber 1
attr HM_CCU2 verbose 2
attr HM_CCU2 rpcserver on


define d_rpcBidCos_RF HMCCURPCPROC 192.168.168.172 BidCos-RF
attr d_rpcBidCos_RF alias CCU RPC BidCos-RF
attr d_rpcBidCos_RF eventMap /rpcserver on:on/rpcserver off:off/
attr d_rpcBidCos_RF icon rc_HOME
attr d_rpcBidCos_RF room Homematic
attr d_rpcBidCos_RF stateFormat rpcstate/state
attr d_rpcBidCos_RF verbose 2

define d_rpcHmIP_RF HMCCURPCPROC 192.168.168.172 HmIP-RF
attr d_rpcHmIP_RF alias CCU RPC HmIP-RF
attr d_rpcHmIP_RF eventMap /rpcserver on:on/rpcserver off:off/
attr d_rpcHmIP_RF icon rc_HOME
attr d_rpcHmIP_RF room Homematic
attr d_rpcHmIP_RF stateFormat rpcstate/state
attr d_rpcHmIP_RF verbose 2

define d_rpcVirtualDevices HMCCURPCPROC 192.168.168.172 VirtualDevices
attr d_rpcVirtualDevices alias CCU RPC VirtualDevices
attr d_rpcVirtualDevices eventMap /rpcserver on:on/rpcserver off:off/
attr d_rpcVirtualDevices icon rc_HOME
attr d_rpcVirtualDevices room Homematic
attr d_rpcVirtualDevices stateFormat rpcstate/state
attr d_rpcVirtualDevices verbose 2


define Fensterkontakt_1 HMCCUDEV 0000D709AA8737 1 readonly
attr Fensterkontakt_1 IODev HM_CCU2
attr Fensterkontakt_1 ccureadingfilter (ERROR_CODE|LOW_BAT|STATE)
attr Fensterkontakt_1 devStateIcon Open:fts_window_2w_tilt_l Closed:fts_window_2w
attr Fensterkontakt_1 event-on-update-reading .*
attr Fensterkontakt_1 group Türen und Fenster
attr Fensterkontakt_1 icon fts_window_2w_tilt
attr Fensterkontakt_1 room Homematic
attr Fensterkontakt_1 statechannel 1
attr Fensterkontakt_1 statedatapoint 1.STATE
attr Fensterkontakt_1 substitute STATE!(0|false):Closed,(1|true):Open;;LOW_BAT!(0|false):ok,(1|true):not ok


Schöne Grüße,
Thorsten

zap

Fehlermeldungen im Logfile? Aktuelle Version von HMCCU installiert? Hast du den RPC Server gestartet?
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

smeagel

Hi,

RPCServer sollte gestartet sein, HMCCU 4.3.007 -
hier die Einträge im Log:

2018.11.15 06:21:06 1: HMCCU: [HM_CCU2] Initialized version 4.3.007
2018.11.15 06:21:06 1: HMCCU: [HM_CCU2] HMCCU: Initializing device
2018.11.15 06:21:06 1: HMCCU: [HM_CCU2] HMCCU: Read 2 devices with 53 channels from CCU 192.168.168.172
2018.11.15 06:21:06 1: HMCCU: [HM_CCU2] HMCCU: Read 3 interfaces from CCU 192.168.168.172
2018.11.15 06:21:06 1: HMCCU: [HM_CCU2] HMCCU: Read 0 programs from CCU 192.168.168.172
2018.11.15 06:21:06 1: HMCCU: [HM_CCU2] HMCCU: Read 0 virtual groups from CCU 192.168.168.172
2018.11.15 06:21:06 1: HMCCURPCPROC: [d_rpcBidCos_RF] Initialized version 1.2 for interface BidCos-RF with I/O device HM_CCU2
2018.11.15 06:21:06 1: HMCCURPCPROC: [d_rpcHmIP_RF] Initialized version 1.2 for interface HmIP-RF with I/O device HM_CCU2
2018.11.15 06:21:06 1: HMCCURPCPROC: [d_rpcVirtualDevices] Initialized version 1.2 for interface VirtualDevices with I/O device HM_CCU2
2018.11.15 06:21:24 2: HMCCURPCPROC: [d_rpcBidCos_RF] RPC server process started for interface BidCos-RF with PID=16
2018.11.15 06:21:24 2: CCURPC: [d_rpcBidCos_RF] Initializing RPC server CB2001000002 for interface BidCos-RF
2018.11.15 06:21:24 1: HMCCURPCPROC: [d_rpcBidCos_RF] RPC server starting
2018.11.15 06:21:24 2: HMCCURPCPROC: [d_rpcHmIP_RF] RPC server process started for interface HmIP-RF with PID=17
2018.11.15 06:21:24 2: CCURPC: [d_rpcHmIP_RF] Initializing RPC server CB2010000002 for interface HmIP-RF
2018.11.15 06:21:24 1: HMCCURPCPROC: [d_rpcHmIP_RF] RPC server starting
2018.11.15 06:21:24 2: HMCCURPCPROC: [d_rpcVirtualDevices] RPC server process started for interface VirtualDevices with PID=18
2018.11.15 06:21:24 2: CCURPC: [d_rpcVirtualDevices] Initializing RPC server CB9292000002 for interface VirtualDevices
2018.11.15 06:21:24 2: HMCCURPCPROC: [d_rpcBidCos_RF] Callback server CB2001000002 created. Listening on port 7411
2018.11.15 06:21:24 2: CCURPC: [d_rpcBidCos_RF] CB2001000002 accepting connections. PID=16
2018.11.15 06:21:24 1: HMCCURPCPROC: [d_rpcVirtualDevices] RPC server starting
2018.11.15 06:21:24 2: HMCCURPCPROC: [d_rpcHmIP_RF] Callback server CB2010000002 created. Listening on port 7420
2018.11.15 06:21:24 2: CCURPC: [d_rpcHmIP_RF] CB2010000002 accepting connections. PID=17
2018.11.15 06:21:24 2: HMCCURPCPROC: [d_rpcVirtualDevices] Callback server CB9292000002 created. Listening on port 14702
2018.11.15 06:21:24 2: CCURPC: [d_rpcVirtualDevices] CB9292000002 accepting connections. PID=18
2018.11.15 06:21:25 2: HMCCURPCPROC: [d_rpcBidCos_RF] RPC server CB2001000002 enters server loop
2018.11.15 06:21:25 2: HMCCURPCPROC: [d_rpcBidCos_RF] Registering callback http://172.17.0.2:7411/fh2001 of type A with ID CB2001000002 at http://192.168.168.172:2001
2018.11.15 06:21:25 1: HMCCURPCPROC: [d_rpcBidCos_RF] RPC server CB2001000002 running
2018.11.15 06:21:25 2: HMCCURPCPROC: [d_rpcHmIP_RF] RPC server CB2010000002 enters server loop
2018.11.15 06:21:25 2: HMCCURPCPROC: [d_rpcHmIP_RF] Registering callback http://172.17.0.2:7420/fh2010 of type A with ID CB2010000002 at http://192.168.168.172:2010
2018.11.15 06:21:25 1: HMCCURPCPROC: [d_rpcHmIP_RF] RPC server CB2010000002 running
2018.11.15 06:21:25 2: HMCCURPCPROC: [d_rpcVirtualDevices] RPC server CB9292000002 enters server loop
2018.11.15 06:21:25 2: HMCCURPCPROC: [d_rpcVirtualDevices] Registering callback http://172.17.0.2:14702/fh9292 of type A with ID CB9292000002 at http://192.168.168.172:9292/groups
2018.11.15 06:21:35 1: HMCCURPCPROC: [d_rpcVirtualDevices] RPC server CB9292000002 running
2018.11.15 06:21:35 1: HMCCU: [HM_CCU2] All RPC servers running
2018.11.15 06:21:35 2: HMCCU: [HM_CCU2] Updated devices. Success=1 Failed=0


und im Anhang Screens von den Devices.



zap

Sieht prinzipiell gut aus. Seltsam sind die IDs der RPC Server Prozesse. Was für ein Betriebssystem ist das? Wenn es Windows ist: Hast Du eine Firewall aktiv, die die Verbindungen von der CCU blockiert? Du kannst auch mal im Log der CCU schauen. Da müssten Fehlermeldungen drin stehen.
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

smeagel

fhem läuft in einem Docker-Container auf Debian.

Ports sind durchgereicht:

2001/tcp 0.0.0.0:2001
2010/tcp 0.0.0.0:2010
9292/tcp 0.0.0.0:9292

welche Pakete werden für CCU2 benötigt? Habe librpc-xml-perl nachinstalliert - reicht das? Oder werden noch andere Pakete benötigt.
Firewall auf CCU2 sollte aus sein.

Was halt seltsam ist - manuell wird der Status aktualisiert.



smeagel

Nachtrag - Habe die CCU2 jetzt mal in einem fhem eingebunden der auf einem Raspi3 nativ unter Debian läuft - selbe fhem.cfg - läuft.

Scheint als ob bei der anderen installation was fehlt oder als ob ein Port Problem gäbe.


smeagel

hm.... läuft auf der Docker Instanz leider immer noch nicht.

Was an Ports benötigt die CCU2?

smeagel

Bin einen Schritt weiter - scheint an Callback-Server bzw. Ports zu liegen.

Wie und wo kann ich diese definieren?


VG,
Thorsten

zap

Es gab hier schon mal Fragen zu Docker Umgebungen. Ich glaube, das Attribut rpcServerAddr der HMCCURPCPROC Devices war die Lösung. Da muss eine bestimmte IP (die der Docker Umgebung oder die physikalische) eingetragen werden. Genau weiß ich das aber nicht. Such mal nach HMCCU und Docker.
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

smeagel

Es scheint an den Callback-Server und Port Einstellungen zu liegen.
Kann ich die irgendwie festlegen?

hoppel118

Server: Openmediavault, XEON E3-1240L-v5, Supermicro X11SSH-CTF, 64GB ECC RAM, SSD, RAID-Z2
Homebridge | Alexa | Yowsup
Homematic | HomeConnect | MQTT | Philips Hue | Sonos | Unifi Network & Protect | vbus | Xiaomi

zap

Zitat von: smeagel am 17 November 2018, 07:44:13
Es scheint an den Callback-Server und Port Einstellungen zu liegen.
Kann ich die irgendwie festlegen?

Habe ich doch oben geschrieben: rpcServerAddr. Auch für den Port gibt es ein Attribut. Lies die Commandref zu HMCCURPCPROC.
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

smeagel

#13
Die habe ich auch gelesen - ich kapiere es nur nicht WO ich die Callback Ports definieren muss.

CCU RPC HmIP-RF sagt:
Attribut rpcServerPort 2011

Logfile sagt:
2018.11.18 11:34:31 2: HMCCURPCPROC: [d_rpcHmIP_RF] Callback server CB2010000002 created. Listening on port 4031
2018.11.18 11:34:31 2: CCURPC: [d_rpcHmIP_RF] CB2010000002 accepting connections. PID=56

Wie kommt der Port 4031 zustande?


VG
Thorsten

zap

Zitat von: smeagel am 18 November 2018, 11:39:58
Die habe ich auch gelesen - ich kapiere es nur nicht WO ich die Callback Ports definieren muss.

CCU RPC HmIP-RF sagt:
Attribut rpcServerPort 2011


Wie kommt der Port 4031 zustande?


Der Port berechnet sich aus rpcServerPort+InterfacePort+CCUNummer*10. rpcServerPort ist eben das Attribut, InterfacePort ist der Port der CCU Schnittstelle (bei HmIP = 2010) und CCUNummer ist die laufende Nummer von HMCCU Instanzen (=1 bei einer CCU).

Also in Deinem Fall 2011+2010+1*10 = 4031

Wenn Du also einen bestimmten Port X nutzen möchtest, kannst Du das notwendige Attribut rpcServerPort wie folgt berechnen:

rpcServerPort = X-1*10-2010

Für 2011 also:

2011-10-2010 = -9

Negative Werte sind eher schlecht, Du solltest Dir also einen höheren Wunschport ausdenken.

Ich glaube aber, dass für Docker das Attribut rpcServerAddr das entscheidendere ist. Kenne mich damit aber zu wenig aus.




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