NEWS
[Adapter] Shelly Adapter mit MQTT
-
@FoodFighter said in [Adapter] Shelly Adapter mit MQTT:
Hallo,
ich muss jetzt mal nachfragen, weil mir einiges nicht ganz klar ist.
Zum Setup: ich nutze iobroker in einem Docker-Container (Bridge-Mode) , daher kommt mir die MQTT-Einstellung des Adapters sehr gelegen.
Weiterhin nutze ich einen Moquitto MQTT Broker in einem weiterem Container auf Port 1883 (Standart). Über diesen laufen auch diverse andere MQTT-Geräte.Wenn ich nun alles richtig verstehe, macht der Shelly-Adapter einen eigenen MQTT-Server auf, sobald man MQTT aktiviert (default auf Port 1882).
Es ist also nicht möglich die Shellies alle an einen bestehenden Broker senden zu lassen (in meinem falle Mosquitto) und gleichzeitig den Shelly-Adapter mit der MQTT Funktion zu nutzen - sehe ich das richtig?
Ich möchte die Shellys weiterhin an Mosquitto senden lassen, da diese Daten u.U. noch von anderen Containern außer ioBroker verwendet werden sollen.
Wenn ich dem Shelly-Adapter nun einfach Port 1883 zuweise und ihm das gleichen MQTT-User+Pwd zuweise, kommen keine Ergebnisse an. (Vermutlich weil der Port 1883 schon dem Mosquitto-Container zugewiesen ist).Ist es denn nicht möglich, dass sich dieser Shelly-Adapter die Daten einfach aus dem mqtt-client-Adapter raus zieht, welcher die Daten ja erfolgreich beim MQTT-Broker abholt? (Falls nein, wieso nicht?)
[Edit]
Bzw. wäre es machbar die Einstellungen derart zu erweitern, dass man den Shelly-Adapter zwischen MQTT-Server und Client umschalten könnte, für diejenigen, die den mqtt-client ohnehin schon für andere Geräte nutzen?
[/Edit]COAP fällt in meinem Falle flach, wegen der Bridge-Einstellung, die ich so auch gerne beibehalten würde.
Den Shelly-Adapter würde ich jedoch gerne zusätzlich zum bestehenden Mosquitto nutzen, da dieser Adapter doch einige Funktionen bietet, die das Arbeiten mit den Shellys in iobroker deutlich vereinfachen.
[Edit]
Was mir auch noch unklar scheint -> wenn man die Shellys per MQTT auf den Shelly-Adapter senden lässt, wird scheinbar die custom-MQTT-Prefix, die man im Shelly hinterlegt, ignoriert - ist das gewollt?Für Dumme steht es sogar in der github-repo, dass die Präfix nicht angepackt werden darf...
Ich würde auch gerne meinen bereits vorhandenen MQTT Broker verwenden. Kann der Adapter sich nicht einfach zu diesem subscriben?
-
@Diggewuff
Du kannst doch direkt alles an einen eigenen mqtt schicken und den Adapter weglassen. -
Ich möchte ungern alle topics für meine Shellies manuell konfigurieren. Das macht der Shelly Adapter ja super. Und zusätzlich finde ich klasse auch http für Datenpunkte zu nutzen die über MQTT nicht zur Verfügung stehen.
Das einzige was ich schade finde ist, dass der Adapter die MQTT Schnittstelle der Shellies komplett für sich alleine beansprucht, da der dedizierte eigene Broker verwendet werden muss auf, den sich ausschließlich Shelly Geräte verbinden können, so dass eine Zentralisierung der MQTT Vernetzung nicht mer möglich ist. Es seihe denn man verwendet ausschließlich Shelly Devices und nur IOBroker. -
@Diggewuff
Mein Shelly-MQTT läuft über einen anderen Port, als z.B. der Sonoff -
@Diggewuff sagte in [Adapter] Shelly Adapter mit MQTT:
ich kann dir nicht folgen was Du eigentlich vor hast.
Ich nutze ioBroker um verschiedenste Anbieter wie z.B. Shelly hersteller- und protokollneutral miteinander zu verbinden.
Ich wüsste nicht, warum ich noch einen Broker wie Mosquitto vor ioBroker schalten sollte. -
-
@e-s Hallo
Ich habe z.Z. Probleme mit meinen Shelly 1-PM der per MQTT an ioBroker sendet.
Ich kann die Webseite vom Shelly 1-PM aufrufen und Schalten dort wird mir auch die Schalterstellung und die Leistung angezeigt.
In ioBroker Objekten unter den Shelly sind keine Änderungen zu sehen.
Habe den Shelly Adapter auf 3.2.8 geupdatet, keine Änderungen.
Habe alle Einstellungen im Shelly und ioBroker kontrolliert.
Wenn ich den Adapter neu starte bekomme ich in der Log folgende Meldungen:shelly.0 2020-05-14 16:02:10.313 info (22654) Starting Shelly adapter in MQTT modus. Listening on 0.0.0.0:1882 shelly.0 2020-05-14 16:02:10.224 info (22654) Starting Adapter shelly.0 in version 3.2.8 shelly.0 2020-05-14 16:02:10.147 info (22654) starting. Version 3.2.8 in /opt/iobroker/node_modules/iobroker.shelly, node: v10.18.0
Wenn ich dann schalte sind auch in der Log keine Eintragungen vom Shelly
und auch keine aus javascript wo ich ein script laufen lasse welche die Leistung in die Laufzeit überwache und es werden Daten in InfluxDB gesandt.
Was kann ich machen ?
Gruß NetFritz -
@NetFritz Unter welcher HW läuft dei Iobroker? Zeig mal die MQTT Einstellungsseite deines Shelly
-
Hallo
Mein ioBroker läuft auf einem Timberwolfserver im Doker Container.
Hier meine MQTT Shelly Einstellungen.
Gruß NetFritz -
@NetFritz
Und wie sehen die mqtt Einstellungen im adapter aus? -
Hallo
Hier die MQTT Adapter Einstellungen.
Ich habe mir mal eben die Shelly Objekte angeshen.
Die haben alle den Zeitstempel vom 03. oder 04.05.20 .
Außer der connection Heute am 14.05.20 16:58.
Gruß NetFritz -
@NetFritz , Du siehst im ioBroker Logfile wenn sich die Shelly Geräte am Adapter anmelden. Das scheint nicht der Fall zu sein.
Wie ist denn die IP-Adresse von Deinem ioBroker im Docker Container? Wie ist der Docker Container konfiguriert? Im Host, Bride oder MCVLAN Modus?
VG -
Hallo
Der ioBroker Container ist im MCVLAN Modus konfiguriert.
Die IP-Adresse ist 192.168.2.2
Gruß NetFritz -
@NetFritz
Habe gerade gesehen, die gleiche Einstellung hat ja schon mal funktioniert.
Was hast du genau alles verändert, also wonach ist dir aufgefallen das es nicht mehr funktioniert. -
Hallo
Habe den Fehler wohl gefunden.
In der Shelly Webseite steht die IP 192.168.2.3
Auf 192.168.2.2 geändert
Hatte erst letzte Woche in der Fritzbox den Container eine feste IP vergeben.
War garnicht so einfach da das Häcken fehlte.
Erst nachdem ich den Container gestopt habe konnte ich ihn in der Fritz löschen, dann den Container in der Fritz unter Gerät hinzugefügt, dann konnte ich auch das Häckchen setzen.
Danke u. Gruß NetFritz -
@NetFritz Sorry war offline. Ist genau das was ich vermutet hatte. Schön das es jetzt läuft.
-
hi, ich habe mal eine Frage, passt evtl nicht ganz in das Thema, aber ich versuche es mal
ich stelle derzeit auch alle myéine shelly auf mqtt um, da ich ein eigenes ioT Netzwerk haben möchte
ich habe 2 unifi ap und möchte 2 unterschiedliche ssid verwenden, um die Shellys auch immer am richtigen AP verbunden zu haben.Frage, kann ich in der shelly App 2 verschiedene Wlan nutzen?
weiß das evtl. jemand?Danke
-
@dos1973 , ja man kann zwei WLAN Netze hinterlegen, aber er verbindet sich auch nur mit einem WLAN.
Wenn du die Netze trennst, ist das ja auch wenig sinnvoll den Shelly im IoT Netzwerk u. im Haus Netzwerk zu haben. -
Nein so meinte ich es nicht
Ich werde insgesamt 3 wlan netzt habenHaupwlan für alles Dos 2,4/ 5ghz
Iot_1-OG
Alle shellys aus 1 OG bekommen diesen wlanzugangIot_2-OG
Alle shellys aus 2 OG bekommen diesen wlanzugangDas klappt auch alles soweit mit den shellys.
Die Frage war, kann ich dennoch alle shelly in der Shelly App haben und steuern obwohl ich 2 unterschiedlich wlan zugangspunkte habe.
Frage zielt rein auf die shelly app. Bisher finde ich keine Option das zu ermöglichen
Edit
:Das es nicht sinnvoll ist das zu trennen verstehe ich nicht. Ich werde für die iot ein eigenen adressbereich haben -
@dos1973 Dann musst du das Handy mit der App auch in das jeweilige Netz setzen.