Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. iobroker, MQTT und Shelly - Was geht wie?

    NEWS

    • ioBroker goes Matter ... Matter Adapter in Stable

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    iobroker, MQTT und Shelly - Was geht wie?

    This topic has been deleted. Only users with topic management privileges can see it.
    • mickym
      mickym Most Active @Laser last edited by

      @laser Na dann zeig mal Deine Aliaseinstellungen, wenn es da noch hapert.

      1 Reply Last reply Reply Quote 0
      • mickym
        mickym Most Active @Laser last edited by mickym

        @laser sagte in iobroker, MQTT und Shelly - Was geht wie?:

        @mickym ich werde diesen Weg gehen. Im mqtt klappt das Schalten und Lesen.

        Ein Vorteil ist halt, dass Du Dich auch an die Originaldoku halten kannst, wenn Du Informationen brauchst: https://shelly-api-docs.shelly.cloud/gen1/#shelly2-5-mqtt

        Hier sind solche Dinge auch beschrieben:
        d2b59eef-1e9e-46aa-b80b-10cf417e5ab9-image.png

        L 1 Reply Last reply Reply Quote 0
        • L
          Laser @mickym last edited by Laser

          @mickym
          b4fa859a-c3ed-4914-977d-7447dfa2552f-image.png

          dummerweise sieht man hier nicht den kompletten Pfad.
          Lesen:
          mqtt.2.shellies.shellyswitch25-3C6105E58ABC.relay.1
          Schreiben:
          mqtt.2.shellies.shellyswitch25-3C6105E58ABC.relay.1.command

          mickym 2 Replies Last reply Reply Quote 0
          • mickym
            mickym Most Active @Laser last edited by mickym

            @laser Ja dann kopiere ihn einfach raus und stelle ihn in Codetags rein. Aber sieht eigentlich gut aus.Vielleicht noch Leerzeichen bei dem ? aber das dürfte nichts ausmachen.

            1 Reply Last reply Reply Quote 0
            • mickym
              mickym Most Active @Laser last edited by

              @laser

              Hast Du auch beim Objekttyp deines Alias

              4d5d017f-ffee-4b03-af59-a4fce0152fb3-image.png

              Logikwert angegeben?

              L 1 Reply Last reply Reply Quote 0
              • L
                Laser @mickym last edited by

                @mickym Das war es! ich hatte "Zeichenkette".

                mickym 1 Reply Last reply Reply Quote 0
                • mickym
                  mickym Most Active @Laser last edited by

                  @laser sagte in iobroker, MQTT und Shelly - Was geht wie?:

                  @mickym Das war es! ich hatte "Zeichenkette".

                  Na dann ist ja alles gut!! 🙂

                  L 1 Reply Last reply Reply Quote 0
                  • L
                    Laser @mickym last edited by

                    @mickym Danke nochmal!

                    mickym 1 Reply Last reply Reply Quote 0
                    • mickym
                      mickym Most Active @Laser last edited by

                      @laser Gerne - und wenn Du in NodeRed - oder mit JSONs oder Objekten Schwierigkeiten hast, stehe ich gerne für Auskünfte bereit, wenn ich es selbst weiß.

                      L 1 Reply Last reply Reply Quote 1
                      • L
                        Laser @mickym last edited by Laser

                        Mein Shelly 2.5 schaltet nachts, etwa 2 Uhr, den Kanal 0 aus. Kann das ein Problem mit der Zeit sein? 14 Uhr soll er ausschalten.

                        mickym 1 Reply Last reply Reply Quote 0
                        • mickym
                          mickym Most Active @Laser last edited by mickym

                          @laser Ich habe keine Ahnung mit was Du schaltest. Das hat ja mit MQTT erst mal nichts zu tun, sondern mit Deiner Logikmaschine mit der Du schaltest.

                          Wenn das der Scheduler im Shelly selbst ist, dann musst Du halt schauen, dass der Shelly die richtige Zeit hat, wenn Du puzzelst, dann ist da halt was verkehrt, aber da können Dir die Puzzlefreunde besser helfen. Ich bin bekanntlich kein Verfechter dieser Puzzleteilchen. 😉

                          L 1 Reply Last reply Reply Quote 1
                          • L
                            Laser @mickym last edited by

                            @mickym Ich schalte über MQTT. Umweg über einen Alias.
                            Ist ja irre! Ein Scheduler war drin!

                            mickym 1 Reply Last reply Reply Quote 0
                            • mickym
                              mickym Most Active @Laser last edited by

                              @laser sagte in iobroker, MQTT und Shelly - Was geht wie?:

                              @mickym Ich schalte über MQTT. Umweg über einen Alias.
                              Ist ja irre! Ein Scheduler war drin!

                              Na dann hast Du ja den Fehler gefunden. Aber wie gesagt auch wenn Du über MQTT oder einen Alias schaltest, ist der Trigger ja entweder eine Logikmaschine oder ein Trigger im Shelly selbst. Sprich über welchen Weg Du schaltest ist erst mal unwichtig, wichtig was ja den Trigger zu finden und das hast Du ja nun getan.

                              L 1 Reply Last reply Reply Quote 1
                              • L
                                Laser @mickym last edited by Laser

                                @mickym Da ist eigentlich nur ein Script, welches den Shelly schaltet. Und weil 14 Uhr im Programm und 2 Uhr schaltet die Kiste, dachte ich irgendwie an 24/12 Stunden Problem. Ein Witz, daß der Scheduler ausgerechnet auf 2 Uhr stand.

                                mickym 1 Reply Last reply Reply Quote 0
                                • mickym
                                  mickym Most Active @Laser last edited by

                                  @laser Na ja wie gesagt, vielleicht hat das auch was mit dem Shelly Adapter zu tun gehabt (den ich nicht kenne), dass Du über diesen Adapter auch intern den Scheduler ansteuern kannst. Soweit ich weiß, hattest Du doch den Shelly mal mit dem Adapter angesteuert.

                                  L 1 Reply Last reply Reply Quote 0
                                  • L
                                    Laser @mickym last edited by Laser

                                    @mickym Schwer zu sagen, wie der Scheduler da rein kam. Ich dachte eigentlich, der Shelly war neu. Der Shelly- Adapter ist schon gut. So wie alle Adapter, wenn Sie gepflegt werden. IO Broker lebt doch von den Adaptern. Man kann nicht immer im Urschleim anfangen. Da löst man nie anspruchsvolle Aufgaben, weil die Zeit irgendwann nicht mehr reicht.

                                    mickym 1 Reply Last reply Reply Quote 0
                                    • mickym
                                      mickym Most Active @Laser last edited by mickym

                                      @laser Klar sind Adapter gut, aber sie bringen halt grundsätzlich eine zustätzliche Fehlerquelle mit und interpretieren halt die Dinge, die sie kennen. Sobald was neu ist, muss ein Entwickler wieder dran.
                                      Ich nutze ja auch Adapter, die Dinge oder APIs toll verkapseln (ein hervorragender Adapter ist zum Beispiel der mercedes-me Adapter, den ich hier mal besonders lobend herausstellen will, weil hier das mit der Authentifizierung nicht einfach ist und bei Problemen quasi noch am gleichen Tag vom Entwickler eine Lösung bereitgestellt wird). Aber alles was mqtt spricht betreibe ich lieber direkt, da braucht es in meinen Augen keine Adapter. mqtt ist ein allgemeines Protokoll und leicht lesbar. Man muss sich also nur mit den topics etc. auskennen und die Basis von JSON und das ist wirklich kein Hexenwerk.
                                      Teilweise ist das ja auch alles historisch gewachsen. Und über die Aliasfunktion, die ja nun richtig komfortabel ist, kann man auch selbst viele Dinge quasi "standardisieren".

                                      Aber lasser wir lieber die Diskussion, ich hab mir hier mit meiner Meinung schon genug Ärger zugezogen.

                                      Jeder hat halt so seine Meinung und das ist auch gut so. Ich bin ja wie gesagt auch kein Puzzlefreund und finde die "roten Knoten" viel mächtiger, wenn man nicht herkömmlich codieren will.

                                      HAL 1 Reply Last reply Reply Quote 0
                                      • HAL
                                        HAL @mickym last edited by

                                        @mickym Hallo mickym, ich stehe genau vor dem von Dir geschilderten Problem. Für meine neue WP habe ich einen neuen 3Phasen Shelly Energiezähler installiert. Aber dieses Gerät wird (noch) nicht vom Shelly Adapter unterstützt. Einen HW request habe ich in Github gestellt, aber KA wann der eingebaut wird.

                                        Mit dem Mqtt Server kann ich die json Daten sehen. Jetzt habe ich einige Daten und überlege, wie ich die in verschiedenen DP bekomme.
                                        Vielleicht kannst Du mir erklären, wie ich die Leistungsdaten ( z.B. Gesamtleistung war gerade 2,8kw = total_act_power":2865.999, und wenn möglich je Phase) in DP bekomme?

                                        Hier die json:

                                        {"src":"shellypro3em63-..........."shellypro3em63-........./events","method":"NotifyStatus","params":{"ts":............,"em:0":{"id":0,"a_act_power":-932.3,"a_aprt_power":2434.9,"a_current":10.391,"a_freq":50.0,"a_pf":0.38,"a_voltage":234.5,"b_act_power":2215.8,"b_aprt_power":2462.7,"b_current":10.524,"b_freq":50.0,"b_pf":0.90,"b_voltage":234.1,"c_act_power":1582.4,"c_aprt_power":2779.7,"c_current":11.904,"c_freq":50.0,"c_pf":0.57,"c_voltage":233.5,"n_current":null,"total_act_power":2865.999,"total_aprt_power":7677.312,"total_current":32.819}}}
                                        
                                        
                                        mickym 1 Reply Last reply Reply Quote 0
                                        • mickym
                                          mickym Most Active @HAL last edited by mickym

                                          @hal Nun du kannst Dir entweder Aliase erstellen, für die Datenpunkte, die Dich interessieren:
                                          https://forum.iobroker.net/post/980575

                                          Oder Du nutzt Deine Logikmaschine. Wenn Du NodeRed nutzt, habe ich auch einen Flow der Dir alles in einzelne Datenpunkte zerlegt, aber das braucht man in der Regel nicht.

                                          Also nachdem Dein Objekt ein Doppelpunkt enthält und auch deine Daten nicht sauber sind, habe ich das hier mal mit einem Alias für Dich nachgebaut:

                                          Also wenn Dein Datenpunkt diesen JSON enthält:

                                          {
                                            "method": "NotifyStatus",
                                            "params": {
                                              "em:0": {
                                                "id": 0,
                                                "a_act_power": -932.3,
                                                "a_aprt_power": 2434.9,
                                                "a_current": 10.391,
                                                "a_freq": 50,
                                                "a_pf": 0.38,
                                                "a_voltage": 234.5,
                                                "b_act_power": 2215.8,
                                                "b_aprt_power": 2462.7,
                                                "b_current": 10.524,
                                                "b_freq": 50,
                                                "b_pf": 0.9,
                                                "b_voltage": 234.1,
                                                "c_act_power": 1582.4,
                                                "c_aprt_power": 2779.7,
                                                "c_current": 11.904,
                                                "c_freq": 50,
                                                "c_pf": 0.57,
                                                "c_voltage": 233.5,
                                                "n_current": null,
                                                "total_act_power": 2865.999,
                                                "total_aprt_power": 7677.312,
                                                "total_current": 32.819
                                              }
                                            }
                                          }
                                          

                                          4ecee489-d47e-4885-b924-e234b4304047-image.png

                                          Dann ist da ein Doppelpunkt bei dem em:0 drin - und den musst Du dann in Deiner Konverierungsfunktion, wie folgt schreiben:

                                          JSON.parse(val).params['em:0'].total_act_power
                                          

                                          a56899d4-b52c-4357-a9c0-9a167d512be0-image.png

                                          35dcb417-8768-4e22-9468-250729f4528f-image.png

                                          Dann erhälst du im Alias auch Deinen Wert einzeln.

                                          HAL 3 Replies Last reply Reply Quote 0
                                          • HAL
                                            HAL @mickym last edited by HAL

                                            @mickym boah super DANKE, ich schaue mir das später richtig an und versuche das so umzusetzen.

                                            Hat geklappt , nochmals DANKE !

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            669
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            10
                                            167
                                            28704
                                            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