MQTT announce nicht verfügbar

  • Moin zusammen,

    ich möchte in meiner OH-Umgebung in Richtung Status-Infos und FW-Updates ein paar Punkte verbessern. Dabei bin ich über ein seltsames Verhalten meiner Shellys gestolpert - seltsam deshalb, weil es nicht der Dokumentation entspricht (oder ich habe einen Denkfehler?)

    Laut Dokumentation sollte es egal sein, ob ich

    Code
    shellies/<shellymodel>-<deviceid>/announce

    oder

    Code
    shellies/<shellymodel>-<deviceid>/command mit Payload "announce"

    verwende.

    Wenn ich die erste Variante versuche, egal ob manuell per MQTT-Explorer oder automatisch über OH, kassiere ich keine Rückmeldung.

    Wenn ich die zweite Variante nehme, dann klappt es (nur leider kann ich diese Variante, für das was ich vorhabe nicht nehmen).

    Daher mal eine Frage in die Runde: Hat jemand die erste Variante in Verwendung (oder weiß, was ich hier gerade falsch mache)?

    Bei mir sind ausschließlich 1PMs und 2.5er im Einsatz.

    Gruß,

    Karsten

    • Hilfreichste Antwort

    Hallo Karsten,

    bin zwar kein MQTT Experte aber command dient doch nur zum Senden eines Befehls.

    Abfragen laufen nur über den jeweiligen Topic.

    Bei mir sieht ein Shelly im MQTT Explorer so aus ..

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.

    Wenn du nun Firmware Infos auswerten möchtest, müsstet du in OH ein Thing auf announce des jeweiligen Shellies oder auf Alle machen

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.

    Und noch items

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.

    und dann hast du im PaperUI deine Ergebnisse

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.


    Natürlich kannst du in OH den eigehenden String noch zerlegen ....

    Jimmy

    Dutzende Shellys aller Art, Raspi4 mit OH3 und Crestron CP4 mit TSW als übergeordnetes Steuerungssystem.

  • Moin Jimmy,

    genau, den Weg über das StateTopic hatte ich wie bei dir gemacht, aber leider ohne Erfolg. Daher habe ich das Ganze auch per MQTT-Explorer zusätzlich probiert. In beiden Fällen klappt bei mir der Weg über

    Code
    shellies/<shellymodel>-<deviceid>/announce

    nicht.

    Kann es sein, dass diese Variante rein autark vom Shelly nur bei bestimmten Ereignissen, z.B. beim Connect einmal, published wird?

    => Hast du das announce selbst was via MQTT-Explorer published oder hast du dich z.B. mit dem Broker verbunden und danach den Shelly eingeschaltet/verbunden?

    Gruß,

    Karsten

  • Ich habe mir gerade mal das Logfile meines Routers angeschaut und die Zeitstempel der MQTT-Nachrichten verglichen. Insofern kann ich meine o.a. Frage nun beantworten:

    Die erste Variante (announce-Topic) wird bei bestimmten Ereignissen, wie z.B. WLAN-Anmeldung, vom Shelly selbst published.

    Die zweite Variante (command-Topic) dient dazu, den Shelly manuell dafür zu triggern.

    Nach nochmaligen Lesen der Shelly-Doku ist das auch stimmig bzw. so steht es dort auch dokumentiert. Also muss ich mir was anderes überlegen (z.B. eine Rule, die das command-Topic zusätzlich aufruft o.ä.).

  • Hallo Karsten,

    so tief stecke ich in der Materie nicht drin.

    Hatte nur gesehen dass es das announce Topic gibt und nach deinem Beitrag einfach mal bei mir im Broker und dann in OH angelegt.

    Kann es sein, dass diese Variante rein autark vom Shelly nur bei bestimmten Ereignissen, z.B. beim Connect einmal, published wird?

    Hab noch mal nachgeschaut. Das announce Topic wird z.B beim Reboot eines Shellies mit Werten gefüllt.

    Die zweite Variante (command-Topic) dient dazu, den Shelly manuell dafür zu triggern.

    Was schreibst du denn mittels Broker in das Command Topic zum Triggern rein ??

    Jimmy

    Dutzende Shellys aller Art, Raspi4 mit OH3 und Crestron CP4 mit TSW als übergeordnetes Steuerungssystem.

  • Dieses Thema enthält 2 weitere Beiträge, die nur für registrierte Benutzer sichtbar sind.