NEWS
[gelöst] ShellyPro 3EM Verbindung zu ioBroker nicht möglich
-
Das Problem wird hier ja oft beschrieben, aber leider keine Lösung dazu gefunden.
ioBroker läuft in einem Docker-Container
Verbindung zu externem Testbroker broker.hivemq.com:1883curl -X POST -d '{"id":1, "method":"Mqtt.SetConfig", "params":{"config":{"enable":true, "server":"broker.hivemq.com:1883"}}}' http://${SHELLY}/rpc {"id":1,"src":"shellypro3em-3ce90e6eb924","result":{"restart_required":true}}%
curl -X POST -d '{"id":1, "method":"Shelly.Reboot"}' http://${SHELLY}/rpc {"id":1,"src":"shellypro3em-3ce90e6eb924","result":null}%
curl -X POST -d '{"id":1, "method":"Mqtt.GetStatus"}' http://${SHELLY}/rpc {"id":1,"src":"shellypro3em-3ce90e6eb924","result":{"connected":true}}%
funktioniert also.
Verbindung zu ioBroker funktioniert nicht.
curl -X POST -d '{"id":1, "method":"Mqtt.SetConfig", "params":{"config":{"enable":true, "server":"192.168.0.12:1882"}}}' http://${SHELLY}/rpc {"id":1,"src":"shellypro3em-3ce90e6eb924","result":{"restart_required":true}}%
curl -X POST -d '{"id":1, "method":"Shelly.Reboot"}' http://${SHELLY}/rpc {"id":1,"src":"shellypro3em-3ce90e6eb924","result":null}%
curl -X POST -d '{"id":1, "method":"Mqtt.GetStatus"}' http://${SHELLY}/rpc {"id":1,"src":"shellypro3em-3ce90e6eb924","result":{"connected":false}}%
Die Einstellungen:
Das ioBroker log:
2023-12-03 13:24:37.166 - info: host.cdbb76fac596 stopInstance system.adapter.shelly.0 (force=false, process=true) 2023-12-03 13:24:37.168 - info: shelly.0 (397) Got terminate signal TERMINATE_YOURSELF 2023-12-03 13:24:37.169 - info: shelly.0 (397) terminating 2023-12-03 13:24:37.170 - info: shelly.0 (397) Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason 2023-12-03 13:24:37.209 - info: host.cdbb76fac596 stopInstance system.adapter.shelly.0 send kill signal 2023-12-03 13:24:37.670 - info: shelly.0 (397) terminating 2023-12-03 13:24:37.702 - info: host.cdbb76fac596 instance system.adapter.shelly.0 terminated with code 11 (ADAPTER_REQUESTED_TERMINATION) 2023-12-03 13:24:40.223 - info: host.cdbb76fac596 instance system.adapter.shelly.0 started with pid 1558 2023-12-03 13:24:40.891 - info: shelly.0 (1558) starting. Version 6.6.1 in /opt/iobroker/node_modules/iobroker.shelly, node: v18.19.0, js-controller: 5.0.16 2023-12-03 13:24:40.960 - info: shelly.0 (1558) Starting in MQTT mode. Listening on 0.0.0.0:1882 (QoS 0)
Es bleibt die übliche Fehlermeldung mit dem roten Kreuz: Verbunden mit Gerät oder Dienst.
Der shelly taucht auch nicht in den Objekten auf.
Mehrfaches Neuinstallieren der Instanz und des Adapters ohne Änderung
Versucht habe ich weiterhin eine Portweiterleitung von host auf Container des ports 1882 udpIch finde den Fehler nicht, wer kann mich in die richtige Richtung stupsen?
-
@michael-schütt sagte in ShellyPro 3EM Verbindung zu ioBroker nicht möglich:
Verbindung zu externem Testbroker broker.hivemq.com:1883
Siehe Doku. Der Shelly-Adapter stellt selbst einen MQTT-Broker bereit und verbindet sich nicht zu einem externen Broker. Du kannst so arbeiten, aber nur mit dem MQTT-Adapter und ohne den Shelly-Adapter.
Oder war das nur ein Beispiel? Danach auf den Screenshots sieht es ja richtig aus.
Hast Du Port 1882 im Container freigegeben?
-
@haus-automatisierung sagte in ShellyPro 3EM Verbindung zu ioBroker nicht möglich:
@michael-schütt sagte in ShellyPro 3EM Verbindung zu ioBroker nicht möglich:
Verbindung zu externem Testbroker broker.hivemq.com:1883
Siehe Doku. Der Shelly-Adapter stellt selbst einen MQTT-Broker bereit und verbindet sich nicht zu einem externen Broker. Du kannst so arbeiten, aber nur mit dem MQTT-Adapter und ohne den Shelly-Adapter.
Oder war das nur ein Beispiel? Danach auf den Screenshots sieht es ja richtig aus.
Meine Denkweise (kann falsch sein): Das war ein Test, ob das Problem am shelly oder am ioBroker liegt. Wenn der Test zu einem anderem broker funktioniert, liegt es nicht am shelly. Danach habe ich per
curl -X POST -d '{"id":1, "method":"Mqtt.SetConfig", "params":{"config":{"enable":true, "server":"192.168.0.12:1882"}}}' http://${SHELLY}/rpc
und nachfolgendem reboot des shelly wieder versucht, auf meinen ioBroker (192.168.0.12:1882) zu schalten.
Was fehlschlägt.curl -X POST -d '{"id":1, "method":"Mqtt.GetStatus"}' http://${SHELLY}/rpc {"id":1,"src":"shellypro3em-3ce90e6eb924","result":{"connected":false}}%
Hast Du Port 1882 im Container freigegeben?
Mmmh. Ich habe (wie oben beschrieben) eine Portweiterleitung auf 1882/UDP im container eingerichtet.
Falsch? Nicht ausreichend? -
Okay, 1882/TCP eingerichtet und es scheint zu funktionieren. War der Meinung, das es UDP sein muss.