Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Node-Red
    5. Shelly Plus 2PM schalten via MQTT und Nodered

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Shelly Plus 2PM schalten via MQTT und Nodered

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      m.gans last edited by

      Hallo Zusammen.

      Ich bin gerade dran MQTT zu lernen.

      Ich habe einen Shelly Plus 2PM mit dem AddON und möchte den gerne mittels MQTT via NodeRed schalten.

      Das auslesen der verschiedenen Werte (Temperatur, Spannung etc.) funktioniert alles einwandfrei.

      Nur beim schalten des Shellys via MQTT habe ich so meine Probleme.

      Eigentlich sollte das doch via .../command/switch:<id> funktionieren?
      9b16a98d-e1d7-4c36-91b5-e6c1f2bfa284-image.png

      In NodeRed habe ich zwei Injects Nodes gemacht:

      ON
      25ee16c2-5420-4ba4-9c1e-66fd3c899bf9-image.png

      OFF
      da12d8f6-9b59-49e5-847a-b556acd4eab1-image.png

      In MQTT Exlorer sieht das ganze dann aber so aus:
      73d404a1-48ff-45eb-b8da-4b9c1e67f359-image.png

      Hier fehlt komischerweise das command topic.. Auch nach einem Hard-Reset des Shellys ist das command topic nicht da.

      Was muss ich tun, damit ich dieses Shelly schalten kann?
      Ich glaube ich muss das command topic hädnisch hinzufügen, nur wie?

      mickym 1 Reply Last reply Reply Quote 0
      • mickym
        mickym Most Active @m.gans last edited by mickym

        @faithlux Das command topic fehlt immer - weil der Shelly kaum was publishen kann auf was er selbst hört. Dann schreib die payload mal in Kleinbuchstaben. Du musst nichts händisch hinzufügen, wenn Du es in das topic schreibst:

        shellyplus2pm-c82e18072c9c/command/switch:0
        

        falls Du als mqtt broker den Broker im iobroker mqtt Adapter nimmst, mach alle Haken weg und schau auf Fehler. Ich empfehle Dir lieber mosquitto als broker zu nehmen und den mqtt Adapter als Client zu betreiben.

        M 1 Reply Last reply Reply Quote 1
        • M
          m.gans @mickym last edited by

          @mickym habe den gesamten raspberry neu aufgesetzt und mosquitto ebenfalls neu installiert. nun geht alles.
          Danke trotzdem für deine Hilfe. 😊

          Jetzt habe ich aber ein neues Problem, bei dem ich nicht weiss wie ich das löse.. eventuell hast du mir da auch Tipps. 😊
          Da mein Shelly 2PM das AddON besitzt, will ich dass bei einer definierten Obertemperatur das Shelly einschaltet und bei einer definierten Untertemperatur wieder ausschaltet.

          Ich habe versicht mit einem Change-Node den payload.tC abzufangen und daraus den Celsius-Wert an eine Hysterese weiterzugeben. Doch das scheint so nicht zu funktionieren..

          Wie kann ich das bewerkstelligen?

          mickym 1 Reply Last reply Reply Quote 0
          • mickym
            mickym Most Active @m.gans last edited by mickym

            @faithlux Wieso Du nimmst die payload.tC und dann in eine Switch Node und danach zwei Change Nodes mit der entsprechenden Aktion.

            M 1 Reply Last reply Reply Quote 1
            • M
              m.gans @mickym last edited by

              @mickym Okay.. hmm.. ich bin absoluter anfänger. Darum frage ich so "doof" nach..
              Wie würdest du das mit den Change nodes machen? Also was für einstellungen?

              mickym 1 Reply Last reply Reply Quote 0
              • mickym
                mickym Most Active @m.gans last edited by mickym

                @faithlux Also kopier hier mal das was Du aus Deiner MQTT-Node bekommst als Objekt hier in Tags. Ich geh jetzt mal davon aus dass aus Deinem Temperatur Objekt folgendes Objekt heruaskommt.

                {"id":100, "tC":28.1, "tF":82.5}
                

                Was soll denn nun Deine Ein - und was Deine Ausschalttemperatur sein?

                0c6f41f8-7009-4c42-a0f1-2f097e44a6c8-image.png

                Hier mal der Flow zum Spielen:

                [{"id":"72961cb986f3e4a6","type":"inject","z":"289f539dcc33814e","name":"Temperatur 100","props":[{"p":"payload"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"{\"id\":100, \"tC\":28.1, \"tF\":82.5}","payloadType":"json","x":280,"y":5360,"wires":[["ad370a51d8614520","5cbcda072c1ebcbe"]]},{"id":"ad370a51d8614520","type":"debug","z":"289f539dcc33814e","name":"Eingangsobjekt","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":500,"y":5300,"wires":[]},{"id":"5cbcda072c1ebcbe","type":"switch","z":"289f539dcc33814e","name":"","property":"payload.tC","propertyType":"msg","rules":[{"t":"gt","v":"30","vt":"num"},{"t":"lt","v":"20","vt":"num"}],"checkall":"true","repair":false,"outputs":2,"x":470,"y":5360,"wires":[["478eb1320fb048e1"],["7d6f8301db0a3452"]]},{"id":"7d6f8301db0a3452","type":"change","z":"289f539dcc33814e","name":"Schalte ein","rules":[{"t":"set","p":"payload","pt":"msg","to":"on","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":630,"y":5380,"wires":[["af371db8ef9eb07d"]]},{"id":"478eb1320fb048e1","type":"change","z":"289f539dcc33814e","name":"Schalte aus","rules":[{"t":"set","p":"payload","pt":"msg","to":"off","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":630,"y":5340,"wires":[["af371db8ef9eb07d"]]},{"id":"af371db8ef9eb07d","type":"debug","z":"289f539dcc33814e","name":"Schalte","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":820,"y":5360,"wires":[]}]
                

                M 1 Reply Last reply Reply Quote 1
                • M
                  m.gans @mickym last edited by m.gans

                  @mickym Das sieht genau so aus..

                  Oberer Temperaturwert Shelly schaltet ein: ab 22°C
                  Unterer Temperaturwert Shelly schaltet aus: ab 10°C

                  Wo füge ich diesen Flow ein.. das rall ich bis dato auch noch nicht. Aber ich will es lernen, da es schon Spass macht. Darum sorry.. 😅

                  mickym 2 Replies Last reply Reply Quote 0
                  • mickym
                    mickym Most Active @m.gans last edited by mickym

                    @faithlux Na dann kühlt Dein Shelly? Hast du meinen Flow schon importiert?

                    Wo füge ich diesen Flow ein.. das rall ich bis dato auch noch nicht. Aber ich will es lernen, da es schon Spass macht.

                    Du kopierst das im Spoiler in die Zwischenablage. Dann in das Menü - Import:

                    a1d48422-16f3-4021-8826-92a5d91bf5c1-image.png

                    und dann in das rote Fenster den Inhalt der Zwischenablage rein kopieren -

                    2aeb4115-e468-4e40-b49a-a8859b603479-image.png

                    Dann auf Import - dann auf Übernehmen und dann mit der Inject Node verschiedene Temperaturen ausprobieren.

                    In der Inject Node kannst Du einfach verschiedene Temperaturen reinschreiben und dann mit Inject now ausprobieren ohne immer neu zu Übernehmen

                    11ff242e-2f0c-4687-b936-cfc09ba46b2d-image.png

                    1 Reply Last reply Reply Quote 0
                    • mickym
                      mickym Most Active @m.gans last edited by

                      @faithlux sagte in Shelly Plus 2PM schalten via MQTT und Nodered:

                      Oberer Temperaturwert Shelly schaltet ein: ab 22°C
                      Unterer Temperaturwert Shelly schaltet aus: ab 10°C

                      Das ist nicht ganz logisch ohne unter ober. 22°C ist auch ab 10°C - wie gesagt in meiner Switch Node habe ich Dir eine Hystere eingebaut - musst halt die Werte ändern.

                      M 2 Replies Last reply Reply Quote 0
                      • M
                        m.gans @mickym last edited by

                        @mickym
                        Okay. Es klappt. Danke. 😅👍
                        Ich habe da zu wenig weit gedacht, das mit dem ersten Switch Node habe ich auch so gemact.
                        Die zwei Schalt Node habe ich allerdings nicht gemacht. Bin direkt auf den Ausgang gefahren.

                        Eigentlich logisch, dass das so nicht klappen kann.

                        Besten Dank!!!!

                        mickym 1 Reply Last reply Reply Quote 0
                        • mickym
                          mickym Most Active @m.gans last edited by mickym

                          @faithlux Tja ohne die Change Nodes schickst du ja Dein Temperaturobjekt an Dein Switch Command topic und der kann damit ja nichts anfangen.

                          1 Reply Last reply Reply Quote 0
                          • M
                            m.gans @mickym last edited by m.gans

                            @mickym
                            Eben.. habs nun auch gemerkt. Bin seit 10 Stunden dran, diverse Sachen programmieren etc. Habs einfach nicht mehr durchblickt.. dazu bin ich das alles neu am lernen.

                            Das ist nicht ganz logisch ohne unter ober. 22°C ist auch ab 10°C - wie gesagt in meiner Switch Node habe ich Dir eine Hystere eingebaut - musst halt die Werte ändern.

                            Nun ja, daran soll am Ende ein Lüfter betrieben werden, der ab 22°C einschaltet und dann ab 10°C (der Wert ist in der Tat bissl tief) wieder ausschaltet.
                            Das ganze könnte man ja auch direkt im Shelly Web Interface so bewerkstelligen.. mir ist das aber zu einfach, deshalb mache ich den "Umweg" via NodeRed. 😅

                            mickym 2 Replies Last reply Reply Quote 0
                            • mickym
                              mickym Most Active @m.gans last edited by

                              @faithlux sagte in Shelly Plus 2PM schalten via MQTT und Nodered:

                              @mickym
                              Eben.. habs nun auch gemerkt. Bin seit 10 Stunden dran, diverse Sachen programmieren etc. Habs einfach nicht mehr durchblickt.. dazu bin ich das alles neu am lernen.

                              Das ist nicht ganz logisch ohne unter ober. 22°C ist auch ab 10°C - wie gesagt in meiner Switch Node habe ich Dir eine Hystere eingebaut - musst halt die Werte ändern.

                              Nun ja, daran soll am Ende ein Lüfter betrieben werden, der ab 22°C einschaltet und dann ab 10°C (der Wert ist in der Tat bissl tief) wieder ausschaltet.
                              Das ganze könnte man ja auch direkt im Shelly Web Interface so bewerkstelligen.. mir ist das aber zu einfach, deshalb mache ich den "Umweg" via NodeRed. 😅

                              cc685025-7f97-4f00-a5c7-49861f9fae2e-image.png

                              Ja nur dann ist es unter 10°C und über 22°C

                              M 1 Reply Last reply Reply Quote 0
                              • mickym
                                mickym Most Active @m.gans last edited by

                                @faithlux sagte in Shelly Plus 2PM schalten via MQTT und Nodered:

                                Das ganze könnte man ja auch direkt im Shelly Web Interface so bewerkstelligen.. mir ist das aber zu einfach, deshalb mache ich den "Umweg" via NodeRed.

                                ja dann kannst Du damit ja auch noch andere Dinge machen - zum Beispiel eine Lampe leuchten lassen. 😉

                                1 Reply Last reply Reply Quote 0
                                • M
                                  m.gans @mickym last edited by

                                  @mickym habe das bereits angepasst..
                                  und habs direkt mal simuliert mit einem Föhn und einem Eispad
                                  ed2dbce3-357f-437a-936f-5d8ea0205e65-image.png

                                  klappt super! 😄

                                  1 Reply Last reply Reply Quote 1
                                  • First post
                                    Last post

                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate

                                  1.1k
                                  Online

                                  31.7k
                                  Users

                                  79.7k
                                  Topics

                                  1.3m
                                  Posts

                                  2
                                  15
                                  1814
                                  Loading More Posts
                                  • Oldest to Newest
                                  • Newest to Oldest
                                  • Most Votes
                                  Reply
                                  • Reply as topic
                                  Log in to reply
                                  Community
                                  Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                  The ioBroker Community 2014-2023
                                  logo