IObroker schaltet Shelly nach mqtt wieder aus

  • Hallo zusammen,

    habe einige Shellys am im IOBroker am laufen und alles klappt wunderbar.

    Jetzt wollte ich aber ein paar Lampen mit der App mqtt dash schalten weil ich die auch auf einem alten Handy habe was zu Hause rumliegt und flott läuft und auch für eine andere Anwendung brauche.

    Die Shelly laufen mit dem Shelly Adapter mitCoap.

    Am Shelly habe ich mqtt aktiviert und die Daten von meinem Broker auf Port 1883 angegeben.

    Verbindung klappt alles, auch schalten kann ich von mqtt dash.

    Die Lampe geht an und nach ca2 Sekunden macht sie der IObroker wieder aus weil sich dort nichts geändert hat.

    Ich benutze das topic shellies/shelly1-483FDA91AF1A/relay/0 zum schalten

    Kann mir jemand helfen und mich auf den richtigen Weg führen?

    Vielen Dank schonmal

    Grüße Uwe

  • Also ich schreibe mal was dazu, ohne das selbst so zu verwenden, aber...:

    ioBroker setzt normalerweise nicht ohne ein aktives Script o.ä. den Ausgang eines Shellys, sondern liest nur den Status ein.

    Wenn du per mqtt den Ausgangszustand eines Shellys änderst, sollte das für den ioBroker auch nix anderes sein, als wenn du per WebInterface den Ausgang togglest oder per angeschlossenen Hardware-Schalter agierst.

    Das Ändern des Ausgangszustands sollte ein Event auslösen, was über die CoIOT Schnittstelle als Nachricht den Objektzustand im ioBroker ändert.

    Öffne mal deine ioBroker Objektansicht als Statusanzeige und da müsstest du ja sehen, dass sich der Objektstatus aktualisiert in dem Moment, wenn du per mqtt vom Handy aus schaltest oder per Schalter etc...

    Was mir oben bei deinem Topic noch auffällt, das ist eigentlich das Topic für den Status-Abruf, weil das "command" am Ende fehlt.

    Um das Relais zu schalten, müsste das Topic heißen:

    Code
    shellies/shelly1-483FDA91AF1A/relay/0/command

    Etwas komisch, dass der Shelly dann trotzdem reagiert...

  • Vielen Dank,

    jetzt funktioniert es. Der comand hat gefehlr. Also ich kann per mqtt ein und ausschalten und der IOBroker ändert entsprechend seinen Zustand.

    Nur andersherumg geht es nicht. Schaltet der IOBROKER, sendet er nichts zum broker. Somit bleibt mqtt Dash auf dem alten Stand.