Openhab 3: Homematic Binding online aber es werden keine Homematic Devices gefunden

Hallo,

Ich betreibe mittlerweile seit einigen Jahre ohne größere Probleme Homegear auf einem Raspi. Aktuell läuft bei mir das Nightly Version 0.9.22110315-3600 unter Raspbian Buster.
Jetzt hatte ich mir gedacht, ich probiere mal Openhab aus. So eine langjährig etablierte Kombination wie Openhab mit Homematic Binding und Homegear – das funktioniert doch sicher „out of the box“, was kann da schon schiefgehen…

Um meine stabil laufende Homegear Installation nicht zu beeinflussen, habe ich Openhab auf einem zweiten Raspi installiert (IP 192.168.178.35). Auf keinem der beiden Raspis ist eine Firewall aktiv und die benötigten Ports sind auch nicht durch andere Programme belegt. Openhab und das Homematic Binding sind jeweils die neuste Version.

Das Homematic Binding verbindet sich auch mit Homegear und wird in Openhab als „Online“ angezeigt.
In Openhab und im Homematic Binding habe ich alle Konfigurationen auf den default Werten belassen und eigentlich nur die Adresse des Raspis eingesetzt, auf dem Homegear läuft.
Nach meinem Verständnis sollten dann durch das Binding alle Homematic Devices automatisch erkannt werden und in der Openhab Inbox auftauchen. Hier tut sich aber leider gar nichts und es erscheinen keine Devices.

Was ich auch nicht verstehe: Wie der Auszug des Logfiles zeigt, verbindet sich Openhab anscheinend mit dem RPC-Server von Homegear, aber dann startet Homegear neu - das ist doch sicher nicht das erwartete Verhalten?

11/07/22 12:47:28.383 RPC Server (Port 2001): Info: Client number 593 is calling RPC method: init (2) Parameters:
(String) binary://192.168.178.35:9126
11/07/22 12:47:28.383 Info: Client with IP ::ffff:192.168.178.35 is calling "init".
11/07/22 12:47:28.383 Info: Removing server "binary://192.168.178.35".
11/07/22 12:47:28.399 RPC Server (Port 2001): Info: Connection from ::ffff:192.168.178.35:38544 accepted. Client number: 638
11/07/22 12:47:28.400 RPC Server (Port 2001): Info: RPC server client id for client number 638 is: 638
11/07/22 12:47:28.403 RPC Server (Port 2001): Info: Client number 638 is calling RPC method: getDeviceDescription (1) Parameters:
(String) BidCoS-RF
11/07/22 12:47:28.438 RPC Server (Port 2001): Info: Connection from ::ffff:192.168.178.35:38546 accepted. Client number: 639
11/07/22 12:47:28.439 RPC Server (Port 2001): Info: RPC server client id for client number 639 is: 639
11/07/22 12:47:28.443 RPC Server (Port 2001): Info: Client number 639 is calling RPC method: listBidcosInterfaces (1) Parameters:
11/07/22 12:47:28.477 RPC Server (Port 2001): Info: Connection from ::ffff:192.168.178.35:38548 accepted. Client number: 640
11/07/22 12:47:28.477 RPC Server (Port 2001): Info: RPC server client id for client number 640 is: 640
11/07/22 12:47:28.479 RPC Server (Port 2001): Info: Client number 640 is calling RPC method: init (1) Parameters:
(String) http://openhab.validation:1000
11/07/22 12:47:28.479 Info: Client with IP ::ffff:192.168.178.35 is calling "init".
11/07/22 12:47:28.567 RPC Server (Port 2001): Info: Connection from ::ffff:192.168.178.35:38558 accepted. Client number: 641
11/07/22 12:47:28.567 RPC Server (Port 2001): Info: RPC server client id for client number 641 is: 641
11/07/22 12:47:28.568 RPC Server (Port 2001): Info: Client number 641 is calling RPC method: init (2) Parameters:
(String) binary://192.168.178.35:9126
(String) 66aa9bc4-f311-46cc-b255-37ae06cadc3d
(Integer) 34
11/07/22 12:47:28.568 Info: Client with IP ::ffff:192.168.178.35 is calling "init".
11/07/22 12:47:28.569 Info: Adding server "binary://192.168.178.35".
11/07/22 12:47:28.569 Info: Calling init methods on server "binary://192.168.178.35".
11/07/22 12:47:28.577 RPC Server (Port 2001): Info: Connection from ::ffff:192.168.178.35:38560 accepted. Client number: 642
11/07/22 12:47:28.577 RPC Server (Port 2001): Info: RPC server client id for client number 642 is: 642
11/07/22 12:47:28.578 RPC Server (Port 2001): Info: Client number 642 is calling RPC method: setInstallMode (2) Parameters:
(Boolean) 1
(Integer) 60
(Integer) 1
11/07/22 12:47:28.578 Module HomeMatic BidCoS: Info: Pairing mode enabled.
11/07/22 12:47:28.581 RPC Server (Port 2001): Info: Client number 642 is calling RPC method: getInstallMode (2) Parameters:
11/07/22 12:47:28.594 RPC Server (Port 2001): Info: Client number 642 is calling RPC method: listDevices (2) Parameters:
11/07/22 12:47:28.745 Module HomeMatic BidCoS: CUL "My-CUL": Info: Ignoring too small packet: A06354FEBBF8ADCE7

11/07/22 12:47:30.252 Starting Homegear...

Zum Testen habe ich Openhab nochmal auf einem weiteren Computer installiert (Windows Laptop) und hier zeigt sich das gleiche Issue und es werden auch keine Homematic Geräte in Openhab gefunden.

Alle Foreneinträge sowohl hier als auch im Openhab Forum habe ich schon durchgearbeitet, aber bis jetzt ohne Erfolg.
Das bringt mich so langsam zu der Auffassung, dass es sich entweder um einen Bug handelt oder das Problem vor dem Computer sitzt und ich etwas übersehe…

Hat hierzu jemand eine Idee?

Vielen Dank!

Viele Grüße

FiveEights

Hallo,

hier noch ein Extrakt aus dem Openhab-Logfile.
Ich hoffe, dass ich den relevanten Teil zum Verbindungsaufbau des Bindings mit Homegear “erwischt” habe:

> 14:47:32.237 [DEBUG] [ternal.handler.HomematicBridgeHandler] - HomematicConfig[gatewayAddress=raspi-hg,callbackHost=192.168.178.35,xmlCallbackPort=9125,binCallbackPort=9126,gatewayType=auto,rfPort=2001,wiredPort=2000,hmIpPort=2010,cuxdPort=8701,groupPort=9292,timeout=15,discoveryTimeToLive=-1,installModeDuration=60,socketMaxAlive=900]
> 14:47:32.359 [INFO ] [nternal.communicator.client.RpcClient] - Interface 'WIRED' on gateway '61ae080193' not available, disabling support
> 14:47:32.369 [INFO ] [nternal.communicator.client.RpcClient] - Interface 'HMIP' on gateway '61ae080193' not available, disabling support
> 14:47:32.378 [INFO ] [nternal.communicator.client.RpcClient] - Interface 'CUXD' on gateway '61ae080193' not available, disabling support
> 14:47:32.388 [INFO ] [nternal.communicator.client.RpcClient] - Interface 'GROUP' on gateway '61ae080193' not available, disabling support
> 14:47:32.398 [DEBUG] [communicator.AbstractHomematicGateway] - Initializing gateway with id '61ae080193'
> 14:47:32.404 [INFO ] [communicator.AbstractHomematicGateway] - HmGatewayInfo[id=HOMEGEAR,type=Homegear,firmware=0.9.22110315-3600,address=VBC8828257,rf=true,wired=false,hmip=false,cuxd=false,group=false]
> 14:47:32.410 [DEBUG] [communicator.AbstractHomematicGateway] - Used Homematic transfer modes: RF:BIN_RPC
> 14:47:32.417 [DEBUG] [rnal.communicator.server.BinRpcServer] - Initializing BIN-RPC server at port 9126
> 14:47:32.423 [DEBUG] [nternal.communicator.client.RpcClient] - Register callback for interface BidCos-RF
> 14:47:32.436 [DEBUG] [overy.HomematicDeviceDiscoveryService] - Stopping Homematic discovery scan
> 14:47:32.450 [DEBUG] [overy.HomematicDeviceDiscoveryService] - Waiting for finishing Homematic device discovery scan
> 14:47:32.460 [DEBUG] [overy.HomematicDeviceDiscoveryService] - Finished Homematic device discovery scan on gateway '61ae080193'
> 14:47:32.468 [DEBUG] [overy.HomematicDeviceDiscoveryService] - Starting Homematic discovery scan
> 14:47:32.474 [DEBUG] [nternal.communicator.client.RpcClient] - Submitting setInstallMode(on=true, time=60, mode=1)
> 14:47:32.489 [DEBUG] [overy.HomematicDeviceDiscoveryService] - Successfully put controller in install mode. Remaining time: 60 seconds
> 14:47:32.494 [DEBUG] [overy.HomematicDeviceDiscoveryService] - Waiting for finishing Homematic device discovery scan
> 14:47:32.695 [DEBUG] [rnal.communicator.client.BinRpcClient] - BinRpcMessage socket failure, sending message again 1/3
> 14:47:32.705 [DEBUG] [rnal.communicator.client.BinRpcClient] - BinRpcMessage socket failure, sending message again 2/3
> 14:47:32.712 [DEBUG] [rnal.communicator.client.BinRpcClient] - BinRpcMessage socket failure, sending message again 3/3
> 14:47:32.719 [ERROR] [overy.HomematicDeviceDiscoveryService] - Verbindungsaufbau abgelehnt (Connection refused)
> java.net.ConnectException: Verbindungsaufbau abgelehnt (Connection refused)
>         at java.net.PlainSocketImpl.socketConnect(Native Method) ~[?:?]
>         at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:412) ~[?:?]
>         at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:255) ~[?:?]
>         at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:237) ~[?:?]
>         at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) ~[?:?]
>         at java.net.Socket.connect(Socket.java:609) ~[?:?]
>         at org.openhab.binding.homematic.internal.communicator.client.SocketHandler.getSocket(SocketHandler.java:50) ~[?:?]
>         at org.openhab.binding.homematic.internal.communicator.client.BinRpcClient.sendMessage(BinRpcClient.java:80) ~[?:?]
>         at org.openhab.binding.homematic.internal.communicator.client.BinRpcClient.sendMessage(BinRpcClient.java:95) ~[?:?]
>         at org.openhab.binding.homematic.internal.communicator.client.BinRpcClient.sendMessage(BinRpcClient.java:95) ~[?:?]
>         at org.openhab.binding.homematic.internal.communicator.client.BinRpcClient.sendMessage(BinRpcClient.java:95) ~[?:?]
>         at org.openhab.binding.homematic.internal.communicator.client.BinRpcClient.sendMessage(BinRpcClient.java:71) ~[?:?]
>         at org.openhab.binding.homematic.internal.communicator.client.RpcClient.listDevices(RpcClient.java:211) ~[?:?]
>         at org.openhab.binding.homematic.internal.communicator.AbstractHomematicGateway.getDeviceDescriptions(AbstractHomematicGateway.java:453) ~[?:?]
>         at org.openhab.binding.homematic.internal.communicator.AbstractHomematicGateway.loadAllDeviceMetadata(AbstractHomematicGateway.java:377) ~[?:?]
>         at org.openhab.binding.homematic.internal.discovery.HomematicDeviceDiscoveryService.lambda$0(HomematicDeviceDiscoveryService.java:209) ~[?:?]
>         at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) [?:?]
>         at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?]
>         at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304) [?:?]
>         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]
>         at java.lang.Thread.run(Thread.java:829) [?:?]
> 14:48:32.467 [DEBUG] [overy.HomematicDeviceDiscoveryService] - Stopping Homematic discovery scan
> 14:48:32.483 [DEBUG] [nternal.communicator.client.RpcClient] - Submitting setInstallMode(on=false, time=0, mode=1)
> 14:48:32.501 [DEBUG] [overy.HomematicDeviceDiscoveryService] - Finished Homematic device discovery scan on gateway '61ae080193'
> 14:48:32.504 [DEBUG] [overy.HomematicDeviceDiscoveryService] - Waiting for finishing Homematic device discovery scan
> 14:48:32.512 [DEBUG] [communicator.AbstractHomematicGateway] - Starting connection tracker for gateway with id '61ae080193'
> 14:48:32.523 [DEBUG] [overy.HomematicDeviceDiscoveryService] - Finished Homematic device discovery scan on gateway '61ae080193'

Ich habe z.B. in Openhab noch ein Binding für Shelly-Devices im Einsatz und das zeigt genau das erwartete Verhalten: Sobald z.B. eine neue Shelly-Steckdose online ist, wird diese automatisch erkannt und erscheint in der Openhab Inbox.

Ich kann doch nicht der einzige Openhab-User in der ganzen Community sein, bei dem die Verbindung zu Homegear nicht funktioniert :confused:

Viele Grüße

FiveEights

Hallo,
ich habe auch auf die Homegear version 0.9 geupdated und danach funktioniert die Verbindung zwischen Homegear und Openhab nicht mehr.

Gruß
TheSkater

Ich habe ein Openhab 2.x und die Verbindung funktioniert mit einem relativ aktuellen nightly.

Probiert doch mal die Verbindungsparameter anzupassen. Vielleicht hat sich da ein default geändert.

Es liegt wohl an der Homegear-Installation selbst. Ich sehe zwar keien Fehlermeldugn im Logfile, aber das commdandline interface läuft nicht richtig. Ich kann zwar CLI aufrufen, aber selbst das Hilfemenü wird nicht angezeigt und es kommt keine Antwort mehr:


> openhabian@openHABianPi:~ $ sudo homegear -r
> [sudo] password for openhabian:
> Connected to Homegear (version 0.9.22112505-3605).
> 
> Please type >>help<< to list all available commands.
> > h

Homegear habe ich nun gelöscht und neu insalliert, so dass es wieder läuft.
Allerdings habe ich jetz in openhab das Problem, dass die Homemaic Bridge nicht funktionert:

Bei mir zeigt Openhab auch die Fehlermeldung “Connection Refused”

14:47:32.237 [DEBUG] [ternal.handler.HomematicBridgeHandler] - HomematicConfig[gatewayAddress=raspi-hg,callbackHost=192.168.178.35,xmlCallbackPort=9125,binCallbackPort=9126,gatewayType=auto,rfPort=2001,wiredPort=2000,hmIpPort=2010,cuxdPort=8701,groupPort=9292,timeout=15,discoveryTimeToLive=-1,installModeDuration=60,socketMaxAlive=900]
14:47:32.359 [INFO ] [nternal.communicator.client.RpcClient] - Interface 'WIRED' on gateway '61ae080193' not available, disabling support
14:47:32.369 [INFO ] [nternal.communicator.client.RpcClient] - Interface 'HMIP' on gateway '61ae080193' not available, disabling support
14:47:32.378 [INFO ] [nternal.communicator.client.RpcClient] - Interface 'CUXD' on gateway '61ae080193' not available, disabling support
14:47:32.388 [INFO ] [nternal.communicator.client.RpcClient] - Interface 'GROUP' on gateway '61ae080193' not available, disabling support
14:47:32.398 [DEBUG] [communicator.AbstractHomematicGateway] - Initializing gateway with id '61ae080193'
14:47:32.404 [INFO ] [communicator.AbstractHomematicGateway] - HmGatewayInfo[id=HOMEGEAR,type=Homegear,firmware=0.9.22110315-3600,address=VBC8828257,rf=true,wired=false,hmip=false,cuxd=false,group=false]
14:47:32.410 [DEBUG] [communicator.AbstractHomematicGateway] - Used Homematic transfer modes: RF:BIN_RPC
14:47:32.417 [DEBUG] [rnal.communicator.server.BinRpcServer] - Initializing BIN-RPC server at port 9126
14:47:32.423 [DEBUG] [nternal.communicator.client.RpcClient] - Register callback for interface BidCos-RF
14:47:32.436 [DEBUG] [overy.HomematicDeviceDiscoveryService] - Stopping Homematic discovery scan
14:47:32.450 [DEBUG] [overy.HomematicDeviceDiscoveryService] - Waiting for finishing Homematic device discovery scan
14:47:32.460 [DEBUG] [overy.HomematicDeviceDiscoveryService] - Finished Homematic device discovery scan on gateway '61ae080193'
14:47:32.468 [DEBUG] [overy.HomematicDeviceDiscoveryService] - Starting Homematic discovery scan
14:47:32.474 [DEBUG] [nternal.communicator.client.RpcClient] - Submitting setInstallMode(on=true, time=60, mode=1)
14:47:32.489 [DEBUG] [overy.HomematicDeviceDiscoveryService] - Successfully put controller in install mode. Remaining time: 60 seconds
14:47:32.494 [DEBUG] [overy.HomematicDeviceDiscoveryService] - Waiting for finishing Homematic device discovery scan
14:47:32.695 [DEBUG] [rnal.communicator.client.BinRpcClient] - BinRpcMessage socket failure, sending message again 1/3
14:47:32.705 [DEBUG] [rnal.communicator.client.BinRpcClient] - BinRpcMessage socket failure, sending message again 2/3
14:47:32.712 [DEBUG] [rnal.communicator.client.BinRpcClient] - BinRpcMessage socket failure, sending message again 3/3
14:47:32.719 [ERROR] [overy.HomematicDeviceDiscoveryService] - Verbindungsaufbau abgelehnt (Connection refused)
java.net.ConnectException: Verbindungsaufbau abgelehnt (Connection refused)
        at java.net.PlainSocketImpl.socketConnect(Native Method) ~[?:?]
        at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:412) ~[?:?]
        at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:255) ~[?:?]
        at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:237) ~[?:?]
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) ~[?:?]
        at java.net.Socket.connect(Socket.java:609) ~[?:?]
        at org.openhab.binding.homematic.internal.communicator.client.SocketHandler.getSocket(SocketHandler.java:50) ~[?:?]
        at org.openhab.binding.homematic.internal.communicator.client.BinRpcClient.sendMessage(BinRpcClient.java:80) ~[?:?]
        at org.openhab.binding.homematic.internal.communicator.client.BinRpcClient.sendMessage(BinRpcClient.java:95) ~[?:?]
        at org.openhab.binding.homematic.internal.communicator.client.BinRpcClient.sendMessage(BinRpcClient.java:95) ~[?:?]
        at org.openhab.binding.homematic.internal.communicator.client.BinRpcClient.sendMessage(BinRpcClient.java:95) ~[?:?]
        at org.openhab.binding.homematic.internal.communicator.client.BinRpcClient.sendMessage(BinRpcClient.java:71) ~[?:?]
        at org.openhab.binding.homematic.internal.communicator.client.RpcClient.listDevices(RpcClient.java:211) ~[?:?]
        at org.openhab.binding.homematic.internal.communicator.AbstractHomematicGateway.getDeviceDescriptions(AbstractHomematicGateway.java:453) ~[?:?]
        at org.openhab.binding.homematic.internal.communicator.AbstractHomematicGateway.loadAllDeviceMetadata(AbstractHomematicGateway.java:377) ~[?:?]
        at org.openhab.binding.homematic.internal.discovery.HomematicDeviceDiscoveryService.lambda$0(HomematicDeviceDiscoveryService.java:209) ~[?:?]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) [?:?]
        at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304) [?:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]
        at java.lang.Thread.run(Thread.java:829) [?:?]
14:48:32.467 [DEBUG] [overy.HomematicDeviceDiscoveryService] - Stopping Homematic discovery scan
14:48:32.483 [DEBUG] [nternal.communicator.client.RpcClient] - Submitting setInstallMode(on=false, time=0, mode=1)
14:48:32.501 [DEBUG] [overy.HomematicDeviceDiscoveryService] - Finished Homematic device discovery scan on gateway '61ae080193'
14:48:32.504 [DEBUG] [overy.HomematicDeviceDiscoveryService] - Waiting for finishing Homematic device discovery scan
14:48:32.512 [DEBUG] [communicator.AbstractHomematicGateway] - Starting connection tracker for gateway with id '61ae080193'
14:48:32.523 [DEBUG] [overy.HomematicDeviceDiscoveryService] - Finished Homematic device discovery scan on gateway '61ae080193'

Ich habe weiterhin ganz stark den Verdacht, dass es am Homegear RPC-Server liegt.
Mir fällt aber keine Idee ein, wie ich das weiter debuggen könnte - wenn jemand einen Tipp für mich hat, dann schaue ich aber gerne nochmal weiter.

Viele Grüße

FiveEights

Bei mir hatte jede Installation in letzter Zeit den Abbruch der Installation des ersten Familienmoduls (bei mir philips-hue) zur Folge. Eine zweite Installation hat dieses Problem behoben. Kann es sein, dass sowas bei euch auch passiert ist, nur eben mit homematic?