NEWS
Shelly 1PM Mini Gen3 geht nicht mit ioBroker
-
@rallef Na dann schaltest Du mit dem Blockly true/false und schreibst nicht "on" oder "off"
-
@mickym ich möchte jetzt auch gerne den Verbrauch messen. Im Shelly Adapter gibt es den DP power. Kann ich den gleichen anlegen im MQTT und unter welchen Ordner?
-
@rallef Die Datenpunkte sind automatisch auch da- Bei der Generation 2 die Werte alle unter status switch:0 sein.
https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/Switch#status
Musst halt ggf. über einen Alias oder über Deine Logikmaschine rausholen, wenn Du willst.
-
@mickym ok danke
-
@mickym Im Moment schalte ich meine beiden Gen3 per http.
Ich vermute, Du schaltest Deine Shellys mit dem MQTT-Adapter. Wo ist denn der Nachteil im Vergleich zum Shelly-Adapter?
-
@kylo-ren Wenn der Shelly Adapter Deine Geräte unterstützt, dann hast Du bei der Steuerung über MQTT den Nachteil, dass Du die Information gebündelt bekommst und Steuern und Status in unterschiedelichen Datenpunkten erfolgen. Oder andersrum ausgedrückt, hast Du mit dem Shelly Adapter den Vorteil, dass die JSON-Strings von den Adaptern in einzelne Datenpunkte zerlegt werden und Steuern und Status in einem Datenpunkt über das ACK Flag gesteuert werden.
Generell bevorzuge ICH (also subjektive Einschätzung) die Nutzung reinen MQTTs und nicht durch Adapter, da
die Shellies sowie auch andere Geräte sprechen halt "nativ" oder vom Werk aus MQTT sprechen und der Haupt-Vorteil der Adapter, die Informationen von JSON-Strings in einzelne Datenpunkte zu zerlegen, ist halt Ansichtsache und für mich nicht relevant (subjektive Einschätzung). Man kann das auch mit Alias DP oder mit seiner Logikmaschine extrahieren, wenn man es braucht. Der Nachteil der Adapter ist halt immer, dass sie ggf. hinterher hinken, weil sie ggf. nur das interpretieren können, was sie kennen. Sprich sollte ein Gerät halt was publishen, was der Adapter nicht kennt, dann musst Du halt warten bis der Entwickler dieses Gerät mit dem Adapter unterstürtzt. Also der Nachteil reines MQTT zu nutzen ist - wenn man so will - alleine, dass man sich mit JSON Objekten auseinandersetzen muss.Der Vorteil und deswegen nutzte ich für alle Geräte die Mqtt sprechen keine Adapter, dass Du alles in einer Schnittstelle vereint hast. So nutzte ich keinen Sonoff-Adapter für Tasmota, für Shellies keinen Shelly Adapter, für Zigbee keinen Zigbee-Adapter, für owntracks keinen Owntracks Adapter - da alles nativ mqtt spricht. Auch habe ich mir meine eigenen Schnittstelle via mqtt gebaut um mit meinen MAX Thermostaten zu sprechen, die über fhem vollständiger steuerbar sind, als mit iobroker, HomeAssistant, NodeRed etc. .
Zusammengefasst - in meinen Augen hast Du ausser, dass die JSON Strings in einzelnen Datenpunkte zerlegt werden, keine Vorteile mit den Adaptern. Für viele ist aber der Vorteil alles bereits in eigenen Datenpunkten zu haben und auch Steuern und Status in einem Punkt zu haben, Vorteil genug, um diese Adapter zu nutzen, da sie sich halt nicht mit JSON auseinandersetzen wollen. Der Vorteil/Nachteil reines MQTT zu nutzen ist außerdem die vorhandene gute/schlechte Dolumentation durch den Hersteller. Beim Adapter liegts am Entwickler, wie gut die Datenpunkte dokumentiert sind.
-
Frage an die MQTT Experten. Ich kann den Shelly über MQTT .../command/switch:0=on/off schalten. Wie mache ich das, dass ich die Auto OFF Zeit einstellen kann.
Ich habe einen turnaround über http der funktioniert:async function sendeCommand(IP, Befehl, Wert) { try { require("request")(`http://${IP}/rpc/Switch.SetConfig?id=0&config={%22${Befehl}%22:${Wert}}`).on("error", (e) => { console.error(e); }); } catch (e) { console.error(e); } }; await sendeCommand('192.168.xxxx','auto_off_delay',500);
Aber wie gehts über mqtt - werde aus der Anleitung nicht schlau.
-
@peterk34 Nun Du musst halt über Dein rpc topic - das entsprechende Objekt schicken.
{ "id": 0, "src": "mycommand", "method": "Switch.SetConfig", "config": { "auto_off_delay":500 } }
So müsste es nach meinem Verständnis gehen.
Vielleicht geht auch ohne config objekt direkt.
{ "id": 0, "src": "mycommand", "method": "Switch.SetConfig", "auto_off_delay":500 }
Musst halt beides ausprobieren - eins wird schon funktionieren.
-
Guten Abend Zusammen,
Ich habe mir aus versehen einen Shelly plus 1 Mini der 3. Generation gekauft und leider erst hinterher feststellen müssen, das dieser vom Shelly Adapter noch nicht unterstützt wird. Deshalb habe ich den Kleinen über MQTT angebunden und kann diesen lesen, als auch über den Datenpunkt steuern:
Wenn ich "on" in diesem Datenpunkt auf false setzen, dann schaltet der Shelly.
Jetzt hapert es bei mir allerdings daran, das ich über node-red das ganze nicht angesteuert bekomme. Ich habe versucht mich hier durch das Forum zu lesen,aber meine node-red Erfahrungen sind doch recht Mau.
Ich habe aber zumindest die MQTT Anbindung hinbekommen (zumindest zeigt er mir für das Senden an, das er verbunden ist), und lesen kann ich auch, aber das senden klappt irgendwie nicht:Letztendlich steht in dem inject doch genau das drin, was auch in dem Datenpunkt drin steht. Aber wenn ich das inject "false" ausführe, dann passiert nichts am Shelly.
Wo ist mein Denkfehler? Kann mir vielleicht einer Erklären, wie ich hier vorgehen muss?Vielen Dank schon mal im Voraus und viele Grüße
UPDATE: Genau zwei Minuten nach dem Post hab ich was endeckt und es funktioniert jetzt auch:
Ich hatte das /rpc vergessen, somit war natürlich überhaupt kein Bezug zum Datenpunkt gegeben
Vielleicht hilft das ja irgend jemandem mal!
-
@noidea Nein - was möchtest du denn machen - Du willst doch einfach schalten und keine Konfiguration ändern.
Steht doch alles in der Doku: https://shelly-api-docs.shelly.cloud/gen2/Devices/Gen3/ShellyMini1G3
Du brauchst auch nicht den RPC Datenpunkt
<topic_prefix>/command/switch:0
Einfach in dieses topic "on,off oder toggle" reinschreiben
Das rpc topic funktioniert zwar generell für alles - aber zum einfachen Schalten braucht man den nicht mehr. (war nur in der Anfangszeit so)
-
Ah. Ich hab jetzt so viel rumgelesen, das ich das überhaupt nicht auf dem Schirm hatte.
Das sind für mich auch dier ersten Schritte im Thema MQTT und Shelly.Vielen Dank für die tolle und schnelle Rückmeldung. Dann weiß ich ja jetzt, wie ich es jetzt einfacher umsetzen kann.
-
Hallo zusammen,
Ich stand auch vor dem Problem, das der Shelly Adapter die Gen3 nicht erkannt hatte.
Der Übersicht halber wollte ich beim Shelly Adapter bleiben.
Vorteile/Nachteile zum MQTT lassen wir mal beiseite.
Helfen konnte ich mir, in dem ich beim Shelly in den MQTT-Settings das "G3" bei der "Client-ID" aus der Bezeichnung gelöscht habe.
Beim MQTT prefix muss nichts geändert werden oder je nach Bedarf.
Vielleicht funktioniert das ja auch bei anderen Gen3 Devices.
https://github.com/iobroker-community-adapters/ioBroker.shelly/issues/927 -
Hallo,
da ich mir ein paar weitere Shellys zulegen werde, würde ich gleich die Gen3-Shellys kaufen.
Funktionieren diese nun mit dem Adapter oder geht nur reines MQTT derzeit?
Es handelt sich um den Shelly 1PM Mini Gen3 und den Shelly 1 Mini Gen3.DANKE.
-
@manfredhi
Unabhängig davon, dass es auch hier im Thread schon geschrieben wurde steht es auch bei GitHub. -
@samson71 sagte in Shelly 1PM Mini Gen3 geht nicht mit ioBroker:
Unabhängig davon, dass es auch hier im Thread schon geschrieben wurde steht es auch bei GitHub.
Ja das hab ich schon vorher gelesen, auch das was bei Github steht.
Dort hab ich aber auch gelesen, dass es angeblich funktioniert wenn man aus der Client-ID das "G3" löscht.
Wollte halt wissen, ob es bei jemanden läuft oder nicht. -
@manfredhi sagte in Shelly 1PM Mini Gen3 geht nicht mit ioBroker:
Dort hab ich aber auch gelesen, dass es angeblich funktioniert wenn man aus der Client-ID das "G3" löscht.
Jaein. Das scheint bisher nur für bestimmte Aktoren zuzutreffen und ist wohl nicht zu veralgemeinern. Für den Shelly Plus 1 Mini Gen. 3 scheint das zu funktionieren.
-
Wenn man einen HTTP Request über JS macht und diesen Link http://IP.vom.Shelly.Gerät/relay/0?turn=on oder off einfügt dann braucht man kein MQTT bis der Adapter dies vielleicht durch ein Update dann doch kann
-
@rallef Die Screenshots sind größtenteils völlig unleserlich
-
@manfredhi sagte in Shelly 1PM Mini Gen3 geht nicht mit ioBroker:
@samson71 sagte in Shelly 1PM Mini Gen3 geht nicht mit ioBroker:
Unabhängig davon, dass es auch hier im Thread schon geschrieben wurde steht es auch bei GitHub.
Ja das hab ich schon vorher gelesen, auch das was bei Github steht.
Dort hab ich aber auch gelesen, dass es angeblich funktioniert wenn man aus der Client-ID das "G3" löscht.
Wollte halt wissen, ob es bei jemanden läuft oder nicht.Habe seit einigen Tagen zwei Shelly 1mini G3 und habe es mal getestet.
Neue Instanz für Shelly-MQTT und bei dem Shelly bei der Client-ID das "g3" gelöscht.
Ich muß sagen, es funktioniert über den Shelly-Adapter und er lässt sich schalten und macht bis jetzt auch keine Probleme.
-
habe auch meinen ersten Shelly bekommen.
Ein "PM mini 3.Gen" - ohne Relais nur zu Strommessung.
Diesen bekomme ich nicht in den Shelly Adapter eingebunden.
"Verbunden mit Gerät oder Dienst" bleibt rot.
in Github wird darauf verwiesen, dass der "1 mini und der 1PM mini" integriert wurden.github.com/iobroker-community-adapters/ioBroker.shelly/pull/935
Hat jemand Erfahrung mit dem PM mini ?
Shelly Adapter = Version 6.8.0 von Github.
Das löschen des "g3" in der Client ID und MQTT prefix löst das Problem nicht.