NEWS
Wie Shelly per MQTT Abfragen, Steuern
-
Ich habe bereits einige Shellys im Einsatz, jedoch alle mit Tasmota.
Nun habe ich im Sicherungskasten einen Shelly Pro 2 der einen Heizstab steuert. Eigentlich würde ich diesen gerne auf der Shelly Firmware lassen.
Wie kann ich diesen denn dann im iobroker per MQTT auslesen oder steuern? Ich habe einen mosquitto Server laufen, alles konfiguriert. In den Datenpunkten habe ich jetzt einen langen JSON String bei RPC... leider finde ich kaum Doku. Wie kann ich nun aus dem iobroker heraus per MQTT die 2 Relais schalten? -
@Tobi82 Es gibt einen Shelly Adapter, mit dessen DP kannst du nach erfolgter Einbindung deines Pro 2 die Relais komfortabel schalten.
-
Der Adapter spannt dann einen eigenen MQTT-Adapter auf oder kann man das ändern ? Ich habe alles zentral auf einem mosquitto Server laufen...war mir bisher sehr sympatisch alles zentral zu haben
-
@tobi82 Du machst einfach darunter einen RPC Topic im mqtt und schreibst dann folgenden JSON:
{"id":123, "src":"user_1", "method":"Switch.Set", "params":{"id":0,"on":true}}
Warum einen Shelly Adapter nutzen, wenn Du bereits mosquitto hast und somit eine funktionierende Infrastruktur hast.
So was steht in dieser Doku: https://shelly-api-docs.shelly.cloud/gen2/General/RPCProtocol
Wobei ich dieses 2. Generation API auch unübersichtlich finde.
-
Ich bin zu blöd...muss ich da jetzt nen neuen Datenpunkt erstellen? Oder an den rpc Datenpunkt schicken? Mit JSON rumhantieren ist mir neu. Früher konnte man einfach true, oder false an nen Datenpunkt schicken...
-
@tobi82 Den rpc Datenpunkt (topic) musst Du direkt unter shelly_heizstab NEU erstellen unter events bekommst Du Rückmeldungen. Es war schon immer so, dass Du die topics auf die jemand hört selbst erstellen muss, sonst gäbs Endlosschleifen.
-
@tobi82 sagte in Wie Shelly per MQTT Abfragen, Steuern:
Früher konnte man einfach true, oder false an nen Datenpunkt schicken...
früher war alles besser
wie hast du das denn früher mit nstiven shelly gemacht?
die senden immer json, der Shelly Adapter zerlegt diese in DPs -
@homoran sagte in Wie Shelly per MQTT Abfragen, Steuern:
@tobi82 sagte in Wie Shelly per MQTT Abfragen, Steuern:
Früher konnte man einfach true, oder false an nen Datenpunkt schicken...
früher war alles besser
wie hast du das denn früher mit nstiven shelly gemacht?
die senden immer json, der Shelly Adapter zerlegt diese in DPsNein das stimmt nicht. In der Generation 1 API waren das schon von vorneherein einzelne topics - auch wenn man hier den command Datenpunkt selbst erstellen musste. Wie gesagt, dass ist immer erforderlich unter mqtt - da ein Gerät nicht gleichzeitig unter einem topic veröffentlichen kann, was es subscribed. mqtt kennt keine ACK-Flags.
Wie Du weisst bin ich kein Verfechter für jeden Gerätetyp einen eigenen Adapter zu nutzen, wenn ich alles unter mqtt haben kann. Auch ist JSON einer der effizientesten Methoden Information in einem Rutsch zu verarbeiten und auszuwerten. Alles in einzelnen Datenpunkten ist nicht immer ein Vorteil.
-
Ich habe den rpt erstellt und kann die Relais schalten, soweit erstmal gut, auch wenn ich es kompliziert finde in dem JSON rum zu hantieren. Wenn ich das Relais jedoch einschalte ändert sich nichts am Status, dort steht immernoch false. Wenn ich über den Browser schalte ebenfalls. Der Status wird nicht aktualisiert
-
Wie Du weisst bin ich kein Verfechter für jeden Gerätetyp einen eigenen Adapter zu nutzen, wenn ich alles unter mqtt haben kann. Auch ist JSON einer der effizientesten Methoden Information in einem Rutsch zu verarbeiten und auszuwerten. Alles in einzelnen Datenpunkten ist nicht immer ein Vorteil.
Das glaube ich. Bin überzeugt das JSON effizient ist, muss mich da mal reinarbeiten
-
@tobi82 Vielleicht ein Browserrefresh-Problem und wenn Du sowas mit Node-Red machen würdest, hättest Du auch nicht solche Probleme, da Du dann direkt mit Objekten und JSONS und mqtt arbeiten kannst.
EDIT: Inzwischen kann man sich bei den mqtt-Nodes auch die JSON-String Konvertierung sparen. Wie man in der Hilfe sieht, werden Objekte automatisch beim Schreiben konvertiert.
-
Vielen Dank schonmal. Werde mich mal mit den Sachen beschäftigen, kommt man in Zukunft scheinbar nicht drum herum.
-
@tobi82 mal mein Senf dazu. Du willst nicht mit JSON rumhantieren? Dann den Shelly-Adapter nutzen. Dach Doku auf GitHub auf MQTT konfigurieren und freuen.
Ihr schreibt hier eine Stunde rum, in einem Viertel der Zeit wäre Shelly Adapter installiert konfiguriert und der Shelly eingebunden. Dazu noch alle Datenpunkte vorhanden. -
@spacerx sagte in Wie Shelly per MQTT Abfragen, Steuern:
Dann den Shelly-Adapter nutzen.
Volle Zustimmung. Habe auch sechs neue Hutschienen Pro am Laufen. In null-komma-nix waren die im Adapter eingerichtet, alle Datenpunkte da wo sie sein sollen, Aliase angelegt und Skripte geballert, fertig war die Steuerung für zwei Heizstäbe mit jeweils drei Phasen.
Das Zeug kostet genug Kohle, da habe ich nicht noch die Zeit (und Lust) alles manuell anzulegen
-
Wie gesagt es gibt Leute die finde JSON gut und die haben keine Lust für jeden Gerätetyp einen eigenen Adapter mit eigenem Port einzurichten und Aufwand wenn es mal eingerichtet ist, ist nicht mehr oder weniger als beim Adapter. Ich verstehe nicht, warum ihr jemand der mit mosquitto bereits eine zentrale MQTT-Infrastruktur besitzt, ihm mitteilt wie dumm er ist, dass er den Adapter nicht nutzt. Wie gesagt bestimmte Informationen nicht in einzelnen Datenpunkten zu haben, sondern sie in einem Objekt zu haben ist auch oft von Vorteil, insbesondere wenn man mehrere Werte miteinander vergleichen will.
Aber ich merke schon - ihr habt Eure Sichtweise und wollt die mit aller Gewalt durchsetzen. Eure Unlust muss sich nicht gleich auf andere auswirken.
-
@mickym sagte in Wie Shelly per MQTT Abfragen, Steuern:
Aber ich merke schon - ihr habt Eure Sichtweise und wollt die mit aller Gewalt durchsetzen.
Fehlinterpreation, um nicht zu sagen Unterstellung!
@mickym sagte in Wie Shelly per MQTT Abfragen, Steuern:
ihm mitteilt wie dumm er ist,
das macht hier kein Mensch!
nur wenn es heisst...
@tobi82 sagte in Wie Shelly per MQTT Abfragen, Steuern:
Mit JSON rumhantieren ist mir neu
@tobi82 sagte in Wie Shelly per MQTT Abfragen, Steuern:
es kompliziert finde in dem JSON rum zu hantieren.
@tobi82 sagte in Wie Shelly per MQTT Abfragen, Steuern:
Bin überzeugt das JSON effizient ist, muss mich da mal reinarbeiten
@tobi82 sagte in Wie Shelly per MQTT Abfragen, Steuern:
Werde mich mal mit den Sachen beschäftigen, kommt man in Zukunft scheinbar nicht drum herum.
... dann darf man doch mal darauf hinweisen, dass es mit dem Adapter out of the Box sofort funktioniert!
-
War nicht "böse" gemeint, sondern nur (auch) eine Sichtweise. Jedem das seine und wie er mag.
Ich mag's wenn's "fluppt" und habe mir mit geflashten Thermostaten und MQTT einen abgebrochen, was aber (wie meist) ein Problem des Nutzers warAlso nichts für ungut @mickym - hab sogar node red im Einsatz
-
@homoran sagte in Wie Shelly per MQTT Abfragen, Steuern:
@mickym sagte in Wie Shelly per MQTT Abfragen, Steuern:
ihm mitteilt wie dumm er ist,
das macht hier kein Mensch!
Ein Politiker würde jetzt zu Recht sagen, wie immer die Medien einem die Worte verdrehen, in dem man Sätze aus dem Kontext reißt.
Vollständig hieß es:
warum ihr jemand der mit mosquitto bereits eine zentrale MQTT-Infrastruktur besitzt, ihm mitteilt wie dumm er ist, dass er den Adapter nicht nutzt.Nur um das etwas zu relativieren.
-
@mickym sagte in Wie Shelly per MQTT Abfragen, Steuern:
Nur um das etwas zu relativieren.
war auch so gemeint. Aber auch da hat niemand gesagt dass @Tobi82 dafür zu dumm ist!
Soweit zum Kontext
-
@homoran Sagen wir mal meine Wortwahl war provokant, für das was hier manche auszudrücken versuchen:
@tobi82 mal mein Senf dazu. Du willst nicht mit JSON rumhantieren? Dann den Shelly-Adapter nutzen.
Im Umkehrschluss, wenn Du doch mit JSON rumhantieren willst, dann ....
Mit meinem Worten: Wenn Du schnell und effizient sein willst, dann nutzt Du den Shelly Adapter.
Wenn nicht, dann ....
Na ja. Lassen wir das. - Ich denke jeder kann zwischen den Zeilen lesen.