Ersatz Shelly 2.5 durch 2PM wird nicht Online

Geflasht oder ungeflasht ...

Moderator: seppy

hagun
Beiträge: 12
Registriert: 7. Dez 2019 11:32
Answers: 0

Ersatz Shelly 2.5 durch 2PM wird nicht Online

Beitrag von hagun »

Hallo alle zusammen,
Mir hat sich nach längerer Zeit wieder eimal ein Shelly 2.5 verabschiedet.
Habe mir also schon mal vorsorglich 3 2PM besorgt und wollte sie in Openhab 4.0.2 einbinden. Mit der App funktioniert alles.
In Openhab habe ich wie immer im Shelly Binding nach einem neuen Device suchen lassen, kommt aber nichts.
Wenn ich versuche das Gerät manuel einzubinden, meldet er nach eingabe der IP-Adresse "Status Unknown, Initialisierung oder Gerät im Schlafmodus.
Was mache ich falsch bei der Einrichtung, bin für jeden Hinweis dankbar.

Harka
Beiträge: 521
Registriert: 30. Apr 2021 13:13
Answers: 19

Re: Ersatz Shelly 2.5 durch 2PM wird nicht Online

Beitrag von Harka »

Moin,
aktualisiere Dein System mal. Die Shellys (Hard- und Software) und auch openHAB haben seither einige Updates erhalten. Alternativ kannst Du dann immer noch auf MQTT ausweichen.

hagun
Beiträge: 12
Registriert: 7. Dez 2019 11:32
Answers: 0

Re: Ersatz Shelly 2.5 durch 2PM wird nicht Online

Beitrag von hagun »

Hallo Harka,
Vielen Dank für den Tip, habe auf 4.3.4 aktualisiert und der Shelly wurde sofort gefunden.
Allerdings ist er noch immer Offline. Alles andere funktioniert einwandfrei.
Er sagt: CONFIGURATION_ERROR
Die IP-Adresse des Shelly Gerätes ist nicht konfiguriert.
Die IP-Adresse habe ich fest vergeben und kann sie auch aufrufen.
Werde jetzt noch eine Weile rumprobieren.
Vielen Dank auf jeden Fall.

hagun
Beiträge: 12
Registriert: 7. Dez 2019 11:32
Answers: 0

Re: Ersatz Shelly 2.5 durch 2PM wird nicht Online

Beitrag von hagun »

Hallo,
Also es sieht jetzt so aus, dass immer noch dieser Fehler kommt:
CONFIGURATION_ERROR
Die IP-Adresse des Shelly Gerätes ist nicht konfiguriert.

Bei Thing- Information sagt er mir: Unbekanntes Shelly-Gerät
Dieses Gerät wird derzeit nicht unterstützt, ggf. ist eine neuere Version des Bindings erforderlich
Wie gesagt, ich habe die neuste Openhab-Version 4.3.4 und auch das Shelly-Binding removed und neu installiert.
Kann man das shelly-Binding irgendwie updaten?
Was kann ich noch tun?

Harka
Beiträge: 521
Registriert: 30. Apr 2021 13:13
Answers: 19

Re: Ersatz Shelly 2.5 durch 2PM wird nicht Online

Beitrag von Harka »

Falls Du MQTT schon nutzt kannst darauf ausweichen.

Hier läuft Shelly Plus2PM Gen. 1 mit Shelly-Version 1.5.1 und Shelly-Binding problemlos. Es gab mal mit 1.4 Probleme, welche aber mit einem Update von OH behoben wurden.
Habe gerade auch nochmal die BackUp-Lösung via Mqtt bei aktivem Enable 'MQTT Control' getestet.

Code: Alles auswählen

UID: mqtt:topic:MQTT_Mosquitto_90:Rollo_WZ_02_Mqtt
label: Rollo_WZ_02_Mqtt
thingTypeUID: mqtt:topic
configuration: {}
bridgeUID: mqtt:broker:MQTT_Mosquitto_90
channels:
  - id: Rollo_WZ02_Position
    channelTypeUID: mqtt:number
    label: Position_Nummer
    configuration:
      commandTopic: Shelly2_RolloWZ_02/command/cover:0
      postCommand: true
      formatBeforePublish: pos,%s
      stateTopic: Shelly2_RolloWZ_02/status/cover:0
      transformationPattern:
        - JSONPATH:$.current_pos
  - id: Rollo_WZ02_Roller
    channelTypeUID: mqtt:rollershutter
    label: Rollo_WZ02_Widget
    configuration:
      formatBeforePublish: "%s"
      invert: false
      stop: stop
      commandTopic: Shelly2_RolloWZ_02/command/cover:0
      stateTopic: Shelly2_RolloWZ_02/status/cover:0
      transformationPattern:
        - JSONPATH:$.current_pos
      off: close
      on: open
  - id: Rollo_WZ02_Temperatur
    channelTypeUID: mqtt:number
    label: Rollo_WZ02_Temperatur
    configuration:
      stateTopic: Shelly2_RolloWZ_02/status/cover:0
      transformationPattern:
        - JSONPATH:$.temperature.tC
      unit: °C
  - id: Rollo_WZ02_Status
    channelTypeUID: mqtt:string
    label: Rollo_WZ02_Status
    configuration:
      commandTopic: Shelly2_RolloWZ_02/command/cover:0
      formatBeforePublish: "%s"
      invert: true
      stateTopic: Shelly2_RolloWZ_02/status/cover:0
      transformationPattern:
        - JSONPATH:$.state
  - id: Rollo_WZ02_Status2
    channelTypeUID: mqtt:string
    label: Rollo_WZ02_Status2
    description: ""
    configuration:
      stateTopic: Shelly2_RolloWZ_02/status/cover:0
      transformationPattern:
        - JSONPATH:$.state
Siehe auch https://community.openhab.org/t/oh3-exa ... les/141143

hagun
Beiträge: 12
Registriert: 7. Dez 2019 11:32
Answers: 0

Re: Ersatz Shelly 2.5 durch 2PM wird nicht Online

Beitrag von hagun »

Hallo Harka,
Ich fürchte Du setzt bei mir zu viel Wissen über Openhab und Mqtt voraus.
Der Code den Du geschickt hast, sollte wohl bei dem Thing das nicht Online gehen will, bei "Code" hinein, aber einfach kopieren geht ja auch nicht.
Wie bringe ich das hin?

Einen Mqtt-Broker habe ich im Einsatz für einige Tasmota-Plugs. Wenn es aber irgendwie geht, würde ich gerne eine Lösung ohne mqtt vorziehen, da ich hier im Forum gelesen habe, dass mqtt und shelly nicht gerade Freunde sind.
Früher oder später muss doch eine Lösung gefunden werden, da die 2.5er der Reihe nach ausfallen und durch den 2pm ersetzt werden sollen. Im Moment ist das Problem bei mir nicht so dringend, da die Rollos im Sommer nur als Sonnenschutz genutzt werden.
Aber vielen Dank für Deine Bemühungen.

Harka
Beiträge: 521
Registriert: 30. Apr 2021 13:13
Answers: 19

Re: Ersatz Shelly 2.5 durch 2PM wird nicht Online

Beitrag von Harka »

Moin,
kannst ja mal hier schauen -> https://community.openhab.org/t/shelly- ... 56862/4405

Wenn Du schon Tasmota nutzt sollte Mqtt zu packen sein.
Beim Shelly in den Settings/MQTT alle Haken rein, Daten vom Mqtt-Broker hinterlegen (bei Tasmota spicken) und MQTT_prefix anpassen sowie merken.
In OH bei Things ein neues Generic_MQTT_Thing anlegen und mit deiner Mqtt-Bridge verbinden. Damit hast Du schon mal den oberen Teil des Codes generiert. Nun kannst Du die Channels rein kopieren und vorm Speichern jeweils die id und label anpassen. Bei den Topic jeweils mein Prefix 'Shelly2_RolloWZ_02' ersetzen.
Speichern, beten, mit einem Item testen, fluchen. Wenn es wieder erwarten klappt kannst Du die bestehenden Items vom 2.5 nun mit den neuen Channels verbinden.

Benutzeravatar
udo1toni
Beiträge: 15335
Registriert: 11. Apr 2018 18:05
Answers: 247
Wohnort: Darmstadt

Re: Ersatz Shelly 2.5 durch 2PM wird nicht Online

Beitrag von udo1toni »

Grundsätzlich funktioniert Shelly mit mqtt ganz prima, es ist nur so, dass sich die Entwickler von Shelly gedacht haben, dass es zu einfach ist, weshalb sie dem Anwender aufbürden, maximal komplizierte Aufrufe zu erzeugen.

In Tasmota z.B. stat/MyDevice/POWER für den aktuellen Status ON/OFF, cmnd/MyDevice/POWER für den Befehl ON/OFF (oder TOGGLE, was openHAB aber nicht unterstützt)
Beim Shelly dann ein unnötig komplexes Topic und die Payload ein JSON Objekt, welches zwingend mehrere Bestandteile hat. Statt ON/OFF kommt trrue/false zum Einsatz, aber nicht im Status, da ist es on/off (oder man muss dann noch einen anderen Weg für die Gegenrichtung verwenden... wie gesagt, unnötig komplex)

Natürlich kann man Shelly komplett über mqtt steuern, incl. der gesamten Konfiguration. Man könnte das als Ausrede für die Komplexität der Aufrufe nutzen, gälte nicht das gleiche auch für Tasmota, welches ebenso vollständig per mqtt kontrolliert werden kann.
openHAB5.0.0 stable in einem Debian-Container (trixie, OpenJDK 21 headless runtime) (Proxmox 9.0.6, LXC)

freeman121083
Beiträge: 137
Registriert: 16. Jul 2018 06:32
Answers: 0

Re: Ersatz Shelly 2.5 durch 2PM wird nicht Online

Beitrag von freeman121083 »

Habe eine Shelly 2pm gen4 für mein Rollo. Dieses würde ich gerne über MQTT in Opnehab 5.x einbinden.
Ich bin mir noch nicht sicher wie die things dazu aussehen muss.
im Shelly selbst habe ich jetzt auf "Rollos_Garage/status/cover:0" ohne "RPC". (wobei mir hier die Vor-/Nachteile nicht klar sind)

Welche Transformation muss wo hin?

Hätte jemand ein Beispiel für mich?

Danke

Benutzeravatar
udo1toni
Beiträge: 15335
Registriert: 11. Apr 2018 18:05
Answers: 247
Wohnort: Darmstadt

Re: Ersatz Shelly 2.5 durch 2PM wird nicht Online

Beitrag von udo1toni »

Die Lösung über MQTT ist von Seiten Shelly maximal nutzerunfreundlich gestaltet worden, warum auch immer (Mutmaßung meinerseits: um die Nutzung der Shelly Cloud zu forcieren, aber dennoch Werbung damit machen zu können, dass das Gerät ohne Cloud funktioniert).

Die Doku dazu https://shelly-api-docs.shelly.cloud/ge ... vices/Mqtt gibt einen kleinen Einblick, was ich damit meine :)

Falls Du schon openHAB5 nutzt, wäre auch Matter einen Versuch wert (wird ebenfalls unterstützt, und im Gegensatz zu MQTT muss Shelly sich hier an alle Spielregeln halten). Außerdem könnte man einen Versuch mit knx/IP unternehmen (man benötigt dazu keine knx Umgebung und auch keine ETS - es wird lediglich der virtuelle Bus genutzt, man muss also knxd an den Start bringen und sowohl das knx Binding als auch den knx Support im Shelly aktivieren und korrekt konfigurieren.)
Beide Optionen haben vermutlich auch ihre Tücken, bei Matter ist die grundsätzliche Unterstützung erst seit kurzem überhaupt vorhanden und entsprechend wird noch nicht viel Wissen verfügbar sein. Für knx/IP gelten ähnliche Punkte zumindest für Dich (wenn Du keine Erfahrung mit knx hast...), nicht was man nicht lernen kann, aber halt schon etwas spezieller...

Aber zunächst zurück zu mqtt...

Laut https://shelly-api-docs.shelly.cloud/ge ... tt-control wären die Topics grundsätzlich

Code: Alles auswählen

<topic_prefix>/command/<component:id>

Für den Cover-Modus (Cover -> Rollladen) entsprechend https://shelly-api-docs.shelly.cloud/ge ... tt-control

Das ergäbe als Konfiguration bei einem Shelly, der den Namen "shelly1" trägt und im Shutter-Mode konfiguriert ist z.B.

Code: Alles auswählen

Type rollershutter : rs "Shutter 1" [
    commandTopic="shelly1/command/cover:0",formatBeforePublish="pos,%s",
    stateTopic="shelly1/status/cover:0",transformationPattern="JSONPATH:$.current_pos"
]
Ob das tatsächlich funktioniert, kann ich aber nicht versprechen, ich habe hier keine Shelly Devices (mit der Original Shelly Firmware). Hier würde auch ausschließlich Absolutposition unterstützt.
Die Variante für relative Steuerung wäre so:

Code: Alles auswählen

Type rollershutter : rs "Shutter 1" [
    commandTopic="shelly1/command/cover:0",on="open",off="close",stop="stop",
    stateTopic="shelly1/status/cover:0",transformationPattern="JSONPATH:$.current_pos"
]
Beides gleichzeitig über den selben Channel geht nicht, weil die Formatierung der verschiedenen Befehle so unterschiedlich ist. Man könnte versuchen, beide Channel gemeinsam an ein Rollershutter Item zu binden, aber auch hier gilt das gleiche wie oben... keine Garantie auf Funktion.

Vorbildlich ist das übrigens bei Tasmota gelöst, nutzt Dir aber nichts, weil der Shelly 2 PM nicht kompatibel mit Tasmota ist (zumindest die gen 4 Variante)
openHAB5.0.0 stable in einem Debian-Container (trixie, OpenJDK 21 headless runtime) (Proxmox 9.0.6, LXC)

Antworten