NEWS
Seit Update aktualisiert hm-rpc.0 nicht mehr
-
Hallo zusammen,
ich habe am letzten Wochenende meine ioBroker-Umgebung geupdatet.
Bedeutet, ich habe alle Adapter inkl. dem Host auf den neusten Stand gebracht.
Aber seit dem funktioniert meine Kommunikation mit der CCU3 nicht mehr richtig.
Und ich finde den Fehler nicht!Vielleicht vorweg:
Ich habe eine CCU3, die HM sowohl HMIP Komponenten bedient, im Einsatz.
Im ioBroker habe ich folgende Instanzen dafür laufen:- hm-rega.0 (HM und HMIP)
- hm-rpc.0 (HomeMatic - rfd - XML-RPC)
- hm-rpc.1 (HomeMatic IP - XML-RPC)
Nun zum Detail des Problems
Die Werte die von der CCU (dort sind sie richtig) ausgelesen werden sollen, werden nur von der Instanz hm-rpc.0 nicht mehr ausgelesen. Bei der Instanz hm-rpc.1 läuft es problemlos.
Der Tooltip auf dem Objekt (Bewegungsmelder Außenbereich - HM-Sen-MDIR-O-2) zeigt mir auch einen Timestamp und den Wert von gestern Abend an. Zu dem Zeitpunkt habe ich die Instanz neu angelegt. Denn dann funktioniert es auch kurzweilig, steigt aber schnell wieder aus.Was mich auch wundert ist, dass wenn ich die Geräte neu einlesen lassen möchte (in der Instanz den Haken dafür setzten), beginnt er auch den Neustart der Instanz durchzuführen. Aber es werden die Geräte nicht eingelesen.
Er stoppt hier:hm-rpc.0 2022-03-18 11:34:48.225 info Connected hm-rpc.0 2022-03-18 11:34:48.207 info xmlrpc client is trying to connect to x.x.x.x:2001/ with ["http://x.x.x.x:2000","ioBroker:hm-rpc.0:07ea31a9bab76917bb545aadffc714ed"] hm-rpc.0 2022-03-18 11:34:48.206 info xmlrpc server is trying to listen on 0.0.0.0:2000 hm-rpc.0 2022-03-18 11:34:48.094 info starting. Version 1.15.9 in /opt/iobroker/node_modules/iobroker.hm-rpc, node: v12.22.2, js-controller: 4.0.21 host.ioBroker 2022-03-18 11:34:47.474 info instance system.adapter.hm-rpc.0 started with pid 170674 host.ioBroker 2022-03-18 11:34:44.507 info instance system.adapter.hm-rpc.0 terminated with code 11 (ADAPTER_REQUESTED_TERMINATION) hm-rpc.0 2022-03-18 11:34:43.934 info Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason hm-rpc.0 2022-03-18 11:34:43.934 info terminating hm-rpc.0 2022-03-18 11:34:43.934 info Disconnected hm-rpc.0 2022-03-18 11:34:43.928 info xmlrpc -> x.x.x.x:2001/ init ["http://x.x.x.x:2000",""] hm-rpc.0 2022-03-18 11:34:43.927 info Got terminate signal TERMINATE_YOURSELF host.ioBroker host.ioBroker 2022-03-18 11:34:43.927 info stopInstance system.adapter.hm-rpc.0 send kill signal host.ioBroker host.ioBroker 2022-03-18 11:34:43.925 info stopInstance system.adapter.hm-rpc.0 (force=false, process=true)
Der Punkt im Adapter, welchen ich zum neu einlesen angehakt hatte ("Geräte neu einlesen (einmalig)"), bleibt auch weiterhin aktiv. Eigentlich sollte der ja nach dem Speichern auch deaktiviert werden (war zumindest immer so und ist beim hm-rpc.1 auch noch immer so).
Wenn ich die Geräte beim hm-rpc.1 neu einlese macht er auch nach dem "Connect", wo er beim hm-rpc.0 aufhört, auch wie gewohnt weiter. Dann kommen ja die eigentlichen Geräte.
hm-rpc.1 2022-03-18 11:54:35.293 info xmlrpc -> getParamsetDescription ["0008DD898F15B8:1","VALUES"] hm-rpc.1 2022-03-18 11:54:35.236 info xmlrpc -> getParamsetDescription ["0008DD898F15B8:0","VALUES"] hm-rpc.1 2022-03-18 11:54:35.089 info xmlrpc <- newDevices 93 hm-rpc.1 2022-03-18 11:54:35.089 info xmlrpc <- newDevices 93 hm-rpc.1 2022-03-18 11:54:34.871 info xmlrpc -> 0 devices hm-rpc.1 2022-03-18 11:54:34.822 info xmlrpc <- listDevices ["ioBroker:hm-rpc.1:be1379519939f2b1f21026fb89e2c48e"] hm-rpc.1 2022-03-18 11:54:34.067 info Connected
Warum will die Instanz nicht mehr richtig funktionieren?
Könnt ihr mir helfen?Gruß
Planlos -
@planlos sagte in Seit Update aktualisiert hm-rpc.0 nicht mehr:
node: v12.22.2
Vermutlich nicht Ursache, sollte aber dennoch auf die empfohlene Version 14 gebracht werden.
-
@planlos sagte: "http://x.x.x.x:2000"
Was macht der Port 2000 (HM wired) in den Logs? Prüfe mal die Konfiguration.
Mit der echten IP-Adresse aus dem Heimnetz kann niemand etwas anfangen. -
@paul53 Hmm, gute Frage. Ist mir noch gar nicht aufgefallen.
Wo müsste dieser Port stehen? Weder in der Instanz hm-rpc.0 noch im hm-rega.0 steht etwas von dem Port!? -
@planlos
Zeige mal die Konfiguration von hm-rpc.0. -
So, habe den Port 2000 einmal in der Firewall freigegeben. Danach funktioniert auch der Abruf der Geräte auf hm-rpc.0 wieder.
Aber woher kommt dieser Port 2000? In der Instanz ist der Port 2001 eingetragen. Und bei der Callback Adresse kann ich ja keinen Port mitgeben. Warum versucht er denn beim Callback die 2000 und nicht die 2001?
Aber besten Dank für den Hinweis mit dem Port. Bis ich weiß woher die 2000 kommt, kann ich das ja so weiter laufen lassen.
-
@planlos
Die Adapter-Adresse muss die IP-Adresse von ioBroker sein.
Wenn ioBroker nicht in einem Container läuft, kann die Callback-Adresse leer gelassen werden. -
@paul53 ioBroker läuft auf einem Docker Server. Sorry hätte ich vllt dazu sagen sollen.
Somit muss ich die Callback Adresse angeben.Und bei den Adapteradressen stehen sonst nur die internen Docker-Adressen zu Auswahl.
Somit bleibt mir hier nur die "Catchall"-AdresseAber trotzdem geb ich ja nirgends den Port 2000 mit.
Und diese Konfig hat bis vor dem Update sehr gut gehalten. -
@planlos sagte: bei den Adapteradressen stehen sonst nur die internen Docker-Adressen zu Auswahl.
Und eine davon ist die für ioBroker!
Als Callback-Adresse muss die des Docker-Hosts angegeben werden (ist wohl 192.168.5.11). -
@paul53 Jepp...die Docker-Host ist ja auch richtig.
Aber wenn ich die Adapter-Adresse anpasse, hat das keine Auswirkungen auf den Port.Daher ist es egal ob Catchall oder interne.
-
Sofern ich die Adapter Adresse anpasse, steht diese auch im Log und es läuft auch durch.
Trotzdem mit dem Port 2000.
Gebe ich dann den Adapter Port 2001 mit, springt er auch den Port 2002. -
Naja, ich danke dir und Thomas für die Hilfe.
Node ist nun auch aktuell. -
@planlos sagte: Port 2000 einmal in der Firewall freigegeben. Danach funktioniert auch der Abruf der Geräte auf hm-rpc.0 wieder.
Das darf nicht sein, wenn man nur auf rfd zugreifen will. Erstelle bitte Issue auf Github.
-
@paul53 erledigt
-
So, es gab bereits eine Rückmeldung:
Früher wurde immer der Adapter Port = Homematic Port genutzt. Mit der neuen Version wird im Standard jetzt der Port 2000 genutzt.
Stelle ich Port 2001 ein, wird der nächste freie Port genutzt. Port 2001 ist ja schließlich schon belegt.Somit ist das seit dem Update genau richtig wie die Instanz arbeitet.