rpc/Shelly.GetComponents liefert nicht die Daten aller Komponenten

  • Hallo,

    lt. der RPC-Beschreibung sollte der Befehl "rpc/Shelly.GetComponents" alle Komponenten auflisten, die an den Gateway hängen. Ich habe derzeit 2 TRV's verbunden und bekomme als Rückmeldung sowohl blutrv200 als auch blutrv201 und jeweils auch die bthomedevices dazu. Bei den Sensoren ist das Ergebnis schon deutlich sparsamer. Zum einen wird der Sensor "externe Temperatur" nicht gelistet (obwohl die Funktion einwandfrei läuft) als auch die Sensoren der zweite bthomedevice werden nicht zurückgegeben. Liegt hier nicht eine Fehlfunktion vor oder wie bekommnt man die fehlenden Sensoren und deren ID's ? Über MQTT habe ich festgestellt, dass die ID's der Sensoren einfach hochgezählt werden (über alle Devices hinweg - egal ob TRV, DW oder HT) und damit eine Zuordnung zu den Devices nahezu unmöglich ist.

    Ist dies ein bekannter Fehler beim rpc oder habe ich etwas übersehen ?

    Grüße Frank

  • Ist doch gerade über Nacht neue Firmware für Gateway und TRVs rausgekommen, hat sich denn da was geändert?
    Mir ist letztens noch aufgefallen, dass da unvollständiger Kram kommt, z.B. von einem TRV wird der Batteriestand gemeldet, vom anderen nicht.
    Soweit ich einen, der sich mit der MQTT-Integration der TRVs befasst hat, verstanden habe, war die Sache mit der undurchsichtigen Durchnummerierung ein ziemliches Problem bei der Integration. Er meinte sinngemäss: Das Problem wäre Shelly bekannt, aber solange daran nichts geändert würde, müsste man halt mit Einschränkungen leben. Ist aber länger her, den aktuellen Stand kenne ich auch nicht. Jedenfalls ist sein Code kürzlich in HA gemerged worden, daher gehe ich mal davon aus das seine Aussagen dazu nicht einfach "Meinung" war.

  • Leider keine Besserung .... aber wenn man das Ergebnis von "rpc/Shelly.GetComponents" auswertet und mit den ID's von blutrv und bthomedevice und dem Befehl "/rpc/BTHomeDevice.GetKnownObjects" weitersucht, bekommt man die ID's zur jeweiligen Device aufgelistet. Allerdings ist nicht zu erkennen, welcher Sensor was tut .... (zumindest ich habe es noch nicht herausbekommen). Wäre echt gut, wenn das im Ergebnis von "BTHomeSensor.GetConfig" enthalten wäre.

  • So, nach weiterer Analyse von /rpc/BTHomeDevice.GetKnownObjects habe ich festgestellt, das obj_id in Zusammenhang mit idx verrät, um welchen Sensor es sich handelt:

    ID=1 : Batterie
    ID=58: Button
    ID=69: Temperatur => idx=0: Solltemperatur, idx=1: Temperatur intern, idx=2: Temperatur extern