NEWS
Homematic RPC und Gerätebeschreibungen
-
@smartstuffcoyote sagte in Homematic RPC und Gerätebeschreibungen:
scheint das Problem eine fehlende letzte geschweifte Klammer zu sein.
und der Rest ist vollständig?
oder bricht das JSON vor einem unzulässigen Zeichen ab und der gesamte Rest incl. schließender Klammer fehlt? -
@Homoran Naja, woher soll.ich wissen, ob da noch was kommen sollte? Das JSON wird valide, wenn ich eine geschweifte Klammer hinzufüge, und wenn da noch was fehlt, müsste das nächste Zeichen Whitespace oder ein Komma sein, ansonsten wäre die JSON-Erstellung schrott.
-
@smartstuffcoyote sagte in Homematic RPC und Gerätebeschreibungen:
müsste das nächste Zeichen Whitespace oder ein Komma sein, ansonsten wäre die JSON-Erstellung schrott.
und genau das ist möglicherweise passiert.
@smartstuffcoyote sagte in Homematic RPC und Gerätebeschreibungen:
woher soll.ich wissen, ob da noch was kommen sollte?
gute Frage!
ich weiß jetzt nicht in welcher Reihenfolge die Elemente sind.
Vielleicht lässt sich daran erkennen was als nächstes kommen müsste -
@homoran Als nächstes käme in der Geräteliste ein HM-Sec-SCo namens "FK Bad" bzw. "FK Bad:1" (fängt auch mit BM Außen an und dann dir CCU-Komponenten). Ich vermute immer mehr, so wie du vermutlich auch, dass der Fehler irgendwo CCU-seitig ist und der Rega deswegen auf die Nase fällt.
Vielleicht finde ich in den Logs auf der CCU irgendwas.
-
@smartstuffcoyote sagte in Homematic RPC und Gerätebeschreibungen:
du vermutlich auch, dass der Fehler irgendwo CCU-seitig ist
ja, und wenn es da ein nicht zulässiges Zeichen in irgendeiner Bezeichnung ist.
-
@homoran Ich hab keine Geräte umbenannt oder neue installiert. Auch der "BM außen" hieß schon immer so. Ansonsten hab ich Umlaute in den Namen, aber das wars.
Mal schauen, was.die Logs sagen. Bin grad unterwegs.
-
In den Logs sehe ich jetzt nichts auffälliges. Außer der Beschwerde darüber, dass der Aufruf vom hm-rega so lange zu beantworten dauert (7-9 Sekunden blockierter Thread). Das dürfte aber okay sein und verschwindet dann irgendwann.
Das Debug-Logging vom hm-rega-Adapter zeigt auch bei den Rohdaten, dass das JSON einfach aufhört. Einen Weg, den Call des Adapters nachzuvollziehen, hab ich noch nicht gefunden - kennt den jemand? Ich mag grad nicht versuchen, den Quellcode des Adapters zu verstehen. Ich hab da eh keine Ahnung von.
Ich hab jetzt auf Raspberrymatic umgestellt. Das Verhalten ist unverändert. WTF.
-
Gibt es eine Lösung für das Problem?
Ich habe jetzt das gleiche Problem. Habe heute ein neues HM IP Gerät in der CCU3 hinzugefügt. Im IOB wurde nur die Seriennummer und nicht, wie bei den anderen Geräten der Name, angezeigt. Also in der hm-rpc.1 Instanz den Haken bei Geräte neu einlesen gesetzt und seitdem sind jetzt alle Namen weg.
In der hm-rpc.0 Instanz sind die HM (ohne IP) Geräte und die sind alle mit Namen. Die Verbindung zur CCU3 besteht, die dazugehörigen Instanzen hm-rega und hm-rpc sind alle grün. Es gibt keine Linux Updates und nur für Shelly und Zigbee ein Adapterupdate. Also alles aktuell.
Ich habe den IoBroker und auch die CCU3 neu gestartet. Leider erfolglos, es werden keine Namen mehr angezeigt.
Gruß, Johannes
-
@jojo58 sagte: in der hm-rpc.1 Instanz den Haken bei Geräte neu einlesen gesetzt und seitdem sind jetzt alle Namen weg.
Danach mal die hm-rega.0 Instanz neu gestartet?
-
Ja, erst nur die hm-rega und hm-rpc und dann sogar den ganzen IOB (ist eine Proxmox VM) neu gestartet.
-
@jojo58 Ich hab vorerst aufgegeben und benutze in meinen Programmen eine Map, in der ich die Beschreibungen und Geräte nochmal pflege. Ist zwar doof, ich will aber mein Programm fertig bekommen.
-
@jojo58 sagte: Ja, erst nur die hm-rega
In der Konfiguration ist hm-rpc.1 angehakt und im Tab "SYNCHRONISIERE" Namen?
Falls ja, wurden die Namen nicht aus der CCU übernommen, sondern in ioBroker manuell eingegeben. Um so etwas zu vermeiden, verwendet man Alias, bei denen keine Namen bei Neueinlesen von Geräten überschrieben werden. -
Ja, in hm-rega ist bei HM IP die hm-rpc.1 eingetragen und bisher wurden auch die Namen angezeigt. In den Objekten also als erstes in der Spalte ID die Seriennummer und in der Spalte Name stand der Name der in der CCU3 hinterlegt ist. Ich habe dort nie Namen manuell eingetragen. Ich habe auch einen RPI und dort stehen noch die Namen, bis auf das neue HM IP Gerät, da steht nur die Nummer. Da lasse ich die Geräte aber nicht neu einlesen.
Klar, ich bin nachdem ich den IoBroker besser kannte, auch auf Alias umgestiegen und habe nach und nach alles umgestellt. Es gibt aber noch alte Scripte die nicht auf die Aliasse zugreifen, sondern direkt auf die Objekte von den Adaptern. Das ist aber nicht so tragisch.
Es ist nur blöd, wenn man etwas sucht und nur die Nummern angezeigt werden, sprechende Namen wie SD-21-Wasserkocher sind da schon deutlich hilfreicher.
-
@smartstuffcoyote sagte in Homematic RPC und Gerätebeschreibungen:
Ich hab vorerst aufgegeben und benutze in meinen Programmen eine Map
Ich lege dafür Alias an...
-
@jojo58 sagte: in hm-rega ist bei HM IP die hm-rpc.1 eingetragen
... und im Tab "SYNCHRONISIERE" ist Namen angehakt?
-
Jau...
-
Das ist bei mir auch angehakt. Ab sogar abgehakt und was anderes (Räume) angehakt, alles neu geladen (seitdem hab ich die Räume wieder) und dann wieder zurückgedreht und die Synchronisation der Namen wieder gesetzt.
Hast du auch die Fehlermeldung in den Protokollen?
-
Ich habe gestern bei mir einige Geräte anderen Räumen zugewiesen und andere Namen vergeben.
Danach den RPC und Rega neu gestartet. Zu Beginn waren auch nur die IDs der Geräte da, hat ca. 5 Minuten gedauert und dann kamen nach und nach die Namen im iob an.
@JoJo58 was für ein Gerät wurde denn wie zugefügt? Namen, Gewerk usw.
-
Guten Morgen, ich habe Abends selten Zeit mich an den PC zu setzen, daher erst jetzt die Antwort.
Ich hatte eine Fehlermeldung vom hm-rega wegen einem Gerät:
hm-rega.0 2025-01-08 09:06:50.012 info update favorites to enum.favorites hm-rega.0 2025-01-08 09:06:50.000 info added/updated 1 objects hm-rega.0 2025-01-08 09:06:49.901 info Updated all datapoints hm-rega.0 2025-01-08 09:06:48.615 info request state values hm-rega.0 2025-01-08 09:06:48.614 error Cannot parse answer for devices: {"0008DD47B328D6":{"Name":"DA-Buero","Interface":"HmIP-RF"}, "0008DD47B328D6:0":{"Name":"DA-Buero%3A0","Interface":"HmIP-RF"}, "0008DD47B328D6:1":{"Name":"DA-Buero%3A1","Interface":"HmIP-RF"}, "0008DD47B328D6:2":{"Name":"DA-Buero%3A2","Interface":"HmIP-RF"}, "0008DD47B328D6:3":{"Name":"DA-Buero%3A3","Interface":"HmIP-RF"}, "0008DD47B328D6:4":{"Name":"DA-Buero%3A4","Interface":"HmIP-RF"}, "0008DD47B328D6:5":{"Name":"DA-Buero%3A5","Interface":"HmIP-RF"}, "0008DD47B328D6:6":{"Name":"DA-Buero%3A6","Interface":"HmIP-RF"}, "0008DD47B328D6:7":{"Name":"DA-Buero%3A7","Interface":"HmIP-RF"} hm-rega.0 2025-01-08 09:06:48.301 info time difference local-ccu 0s hm-rega.0 2025-01-08 09:06:48.241 info ReGaHSS 192.168.1.10 up hm-rega.0 2025-01-08 09:06:48.115 info subscribe hm-rpc.0.BidCoS-RF.50.PRESS_SHORT hm-rega.0 2025-01-08 09:06:47.543 info starting. Version 5.1.0 in /opt/iobroker/node_modules/iobroker.hm-rega, node: v20.18.1, js-controller: 7.0.6 hm-rega.0 2025-01-08 09:06:43.283 info terminating hm-rega.0 2025-01-08 09:06:42.796 info Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason hm-rega.0 2025-01-08 09:06:42.795 info terminating hm-rega.0 2025-01-08 09:06:42.781 info Got terminate signal TERMINATE_YOURSELF
Zuerst dachte ich an den Umlaut, also in der CCU3 umbenannt, gleiches Problem, nur etwas andere Meldung.
Dann war ich eben mal mutig und habe das Gerät aus der CCU3 gelöscht und auf Werkseinstellungen setzen lassen. Der HM-RPC hat das auch sofort mitbekommen und das Gerät aus den Objekten gelöscht. Dann die Instanzen wieder neu gestartet und vorher den Haken bei "Geräte neu einlösen" gesetzt, aber es kamen keine Namen.
Jetzt kommt aber eine andere Meldung:hm-rega.0 2025-01-08 09:24:54.017 error Cannot parse answer for devices: {
Auch hier hört die Meldung nach der geschweiften Klammer auf, wie @SmartStuffCoyote schon geschrieben hatte.
Also das Gerät wieder neu angelernt und konfiguriert, die Instanzen neu gestartet und das Gerät ist wieder in den Objekten zu sehen und ich kann es über den IOB steuern. Aber eben alles ohne Namen.
@wendy2702 Ich hatte gestern nur eine HmIP-PSM-2 Steckdose mit Namen "SD-22" hinzugefügt. Raum ist "Bad" und Gewerk "Energiemanagement". Also alles Standards.
-
Eigentlich gibt es in meinen Augen nur zwei Möglichkeiten: entweder liest der Adapter den Datenstrom falsch aus und kappt das letzte Zeichen weg, oder CCU-seitig ist irgendetwas kaputtgegangen was das JSON nicht richtig sendet - und keiner bemerkt es, weil man die Änderung ja doch nur eher zufällig mitbekommt (wenn an einen ioBroker o. ä. einsetzt und wenn sich für die Namen der Geräte interessiert und wenn es dabei irgendwo eine Änderung gab).