Shelly Plus 1 PM mit openHAB3 per mqtt schalten

  • Hallo Gemeinde,

    ich arbeite mich gerade in die Welt der Hausautomatisierung ein. Nach einiger Überlegung setze ich für mein erstes Projekt openHAB3 ein. Dazu hab ich mir einen Sack voll Shellys gekauft, u.a. Plug-S und Shelly 1 Plus PM.

    Die Plug-S konnten mit der Shelly-Binding eher schmerzlos in openHAB3 eingebunden werden. Nicht so die Plus1PM... da geht das Shelly-Binding in OH3 (noch?) nicht. Also MQTT. Das ist insofern kein großes Thema, weil ich das für eine Reihe anderer Gerätschaften (u.a. Lorawan) sowieso einsetzen will bzw. muss.

    Zur Zeit gelingt es mir, aus den regelmässigen Status-Meldungen der Shellys so Sachen wie aktuelle Netzspannung, Leistung usw. auszulesen. Auch kann ich über mosquitto_sub den Plus1PM per mqtt ein- und ausschalten. Was mir ums Verrecken nicht gelingt, ist dieses Wissen in eine Channel-Definition in openHAB3 umzusetzen. Leider ist die OH3-Doku für mich vom Typ "wenn man mal verstanden hat, wie die Sache geht, versteht man auch die Doku".

    Hat jemand einen Code-Schnipsel aus OH3 für einen funktionierenden Shelly Plus 1 PM? Vor allem die Kommando-Definition des Schalters wäre hilfreich, die Beispiele hier im Forum sind älter und nicht ganz aktuell...

    Martin

  • Um jetzt mal meine eigene Frage zu beantworten: mit dieser Channel-Definition in openHAB3 schalte ich den Shelly ein- und aus. Warum das jetzt so völlig anders geht (*) als die ganzen Beispiele im Internet, sei mal dahingestellt.


    [script] [/script][script][/script][script][/script][script][/script][script][/script][script][/script][script][/script][script][/script][script][/script][script][/script][script][/script][script][/script][script][/script][script][/script][script]

    Code
    - id: "12345"    channelTypeUID: mqtt:switch    label: test schalter    description: ""    configuration:      commandTopic: shellies/ShP1PM-2/rpc      stateTopic: test_state      off: '{"id":123, "src":"user_1", "method":"Switch.Set",        "params":{"id":0,"on":false}}'      on: '{"id":123, "src":"user_1", "method":"Switch.Set",        "params":{"id":0,"on":true}}'

    [script][script][script][script][script][script][script][script][script][script][script][script][script][script][/script]

    (*) Die Beispiele sagen was von "topic: shellies/xxx/relay/command/ und Payload "on" bzw. "off". Darauf reagiert mein Plus1PM nicht... der will das als JSON wie oben.


    [/script][/script][/script][/script][/script][/script][/script][/script][/script][/script][/script][/script][/script][/script]

    Einmal editiert, zuletzt von Martin_J (7. Februar 2022 um 09:36)

  • Ich stehe zur Zeit vor genau dem gleichen Problem und kann meine bisherigen,leider vergeblichen Versuche, schon kaum noch zählen.

    Wenn ich deinen zweiten Beitrag richtig verstehe, hast du das Problem nun selbst gelöst.

    Mir würde es sehr helfen , wenn du ergänzend noch einen Screenshot der tatsächlichen Channel Definition für das Generic MQTT Thing in OH3 hier einstellen würdest.