Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. OpenMQTT Gateway Wetterstation Iobroker Datenpunkt JSON

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    OpenMQTT Gateway Wetterstation Iobroker Datenpunkt JSON

    This topic has been deleted. Only users with topic management privileges can see it.
    • Jens G.
      Jens G. last edited by

      Hallo an alle,
      habe mir einen ESP32 WROOM DevKit 1 und Sensor RXB6 für 433Mhz bestellt. Alles aufs Breadboard gepackt und die Software OpenMQTT ESP32-pilight installiert. Soweit so gut, nun liest er die Daten aus, allerdings nur im JSON Format.
      Wie kann ich nun aus dem JSON folgendes auslesen Temperatur, Luftfeuchtigkeit und Batterie?
      Wetterstation ist Digoo R8s mit Protokoll Nexus dank pilight
      So siehts aktuell aus
      Screenshot 2022-09-26 at 14-35-45 objects - smarthomepi.png

      Freue mich über jeden hilfreichen Vorschlag

      O 2 Replies Last reply Reply Quote 0
      • O
        oFbEQnpoLKKl6mbY5e13 @Jens G. last edited by

        Ich würde mich der Frage anschließen wollen, da ich gerade mit den ersten Tuya-Geräten zum MQTT-Adapter umgezogen bin. Der Sonoff-Adapter "exportiert" zwar alle Sensorwerte automatisch in Datenpunkte, ich würde aber gerne den MQTT-Adapter verwenden. Mit googlen bin ich leider nicht weitergekommen.

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

          Im Prinzip kannst du im Bedarfsfall jederzeit auf einen Wert aus einem JSON zugreifen, dann musst du halt beschreiben wo du ihn brauchst. Alternativ erstellst halt Datenpunkte als Alias oder Du nimmst meinen Node-Red Flow, der erstellt Dir aus jedem JSON einzelne Datenpunkte unter 0_userdata.0

          Im Prinzip ist JSON eine sehr effiziente Methode Daten zu übertragen und man pickt sich nur im jeweiligen Anwendungsfall den benötigten Wert raus.

          1 Reply Last reply Reply Quote 0
          • O
            oFbEQnpoLKKl6mbY5e13 last edited by

            @mickym

            Vielen Dank für deine Antwort, das hat mir auf die richtige Spur geholfen!

            Ich kann mir mit folgendem Blockly Attribute auf der Konsole ausgeben:

            kjdk.JPG

            Das Anlegen eines Datenpunktes unter alias.0 hat hingegen leider nicht funktioniert:

            alias.JPG

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

              @ofbeqnpolkkl6mby5e13 Du erstellst einen Datenpunkt unter alias.0 und zeigst dann auf den originalen Wert im mqtt-Adapter und modifizierst die Lesefunktion.

              Beispiel: Du hast unter mqtt folgenden Wert stehen.

              ba3fa7bd-6751-40da-a580-2e8da12a22d4-image.png

              Du kannst sehr wohl Aliase selbst erstellen - der Device Adapter ist derzeit in meinen Augen nicht geeignet.

              O paul53 2 Replies Last reply Reply Quote 0
              • paul53
                paul53 @oFbEQnpoLKKl6mbY5e13 last edited by paul53

                @ofbeqnpolkkl6mby5e13 sagte: Das Anlegen eines Datenpunktes unter alias.0 hat hingegen leider nicht funktioniert:

                Eigene Datenpunkte legt man unter "0_userdata.0" an, was auch per Blockly funktioniert.

                Für Datenpunkte unter "alias.0" benötigt man kein Skript, da Konvertierungsmöglichkeiten enthalten sind.

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

                  @mickym

                  Okay, eine Grundsatzdiskussion dazu hatte ich auch gerade gefunden:

                  https://github.com/ioBroker/ioBroker.js-controller/issues/906

                  ldittmar81 created this issue in ioBroker/ioBroker.js-controller

                  closed Nicht Alias DP unter alias.0 erstellen #906

                  1 Reply Last reply Reply Quote 0
                  • O
                    oFbEQnpoLKKl6mbY5e13 @paul53 last edited by

                    @paul53 sagte in OpenMQTT Gateway Wetterstation Iobroker Datenpunkt JSON:

                    Eigene Datenpunkte legt man unter "0_userdata.0" an, was auch per Blockly funktioniert.

                    Das mache ich natürlich schon lange über das bekannte Skript hier aus dem Forum. Aber danke!

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

                      @ofbeqnpolkkl6mby5e13 Ich zeig Dir gerade einen Weg - aber halt nicht so ungeduldig. siehe mein letzten Post. Normalerweise machst Du unter alias.0 eine Gerät und darunter dann einen Status zum Beispiel temperatur.

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

                        @mickym sagte: der Device Adapter ist derzeit in meinen Augen nicht geeignet.

                        Der Alias-Manager ist besser geeignet.
                        Die grundlegende Ordner-Struktur unter "alias.0" erstellt man besser manuell im Tab "Objekte".

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

                          @paul53 sagte in OpenMQTT Gateway Wetterstation Iobroker Datenpunkt JSON:

                          @mickym sagte: der Device Adapter ist derzeit in meinen Augen nicht geeignet.

                          Der Alias-Manager ist besser geeignet.

                          Ja aber das Admin Interface finde ich inzwischen bestens geeignet.

                          Jedenfalls sollte man halt erst ein Gerät anlegen und darunter dann die States - hier mal an meinem Beispiel:

                          eb2cd3cc-c4b3-401e-851f-85dcf2cd5dfa-image.png

                          Der mqtt-datenpunkt enthält nun folgenden JSON:

                          {"battery":30,"device":{"applicationVersion":5,"dateCode":"20191205","friendlyName":"temperatur/bad","hardwareVersion":30,"ieeeAddr":"0x001xxxxxxxxxxxxxx","manufacturerID":4151,"manufacturerName":"LUMI","model":"WSDCGQ11LM","networkAddress":xxxxx,"powerSource":"Battery","softwareBuildID":"3000-0001","stackVersion":2,"type":"EndDevice","zclVersion":1},"humidity":47.22,"last_seen":"2022-09-27T14:01:37+02:00","linkquality":255,"power_outage_count":6,"pressure":937.4,"temperature":23.48,"voltage":2955}
                          

                          Wie schon von @paul53 erwähnt bekommst Du Warnmeldugen solange Du den originalen Datenpunkt nicht angibst.

                          9dd187d8-110c-4701-a439-013535055682-image.png

                          Den gibst Du also direkt dort ein und für die Lesefunktion gibst Du das

                          JSON.parse(val).gewünschter_Wert
                          

                          an

                          paul53 O Negalein 4 Replies Last reply Reply Quote 1
                          • paul53
                            paul53 @mickym last edited by paul53

                            @mickym sagte: das Admin Interface finde ich inzwischen bestens geeignet.

                            Ich auch, da ich weiß, dass man erst einmal eine Warnung erhält, bevor man die ID des Original-DP zuweisen konnte.

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

                              @mickym

                              Das ist natürlich eine geniale Lösung! Vielen, vielen Dank!

                              1 Reply Last reply Reply Quote 0
                              • O
                                oFbEQnpoLKKl6mbY5e13 @Jens G. last edited by

                                @jens-g

                                Ich hoffe, das hilft auch dir.

                                Jens G. 1 Reply Last reply Reply Quote 0
                                • Jens G.
                                  Jens G. @oFbEQnpoLKKl6mbY5e13 last edited by

                                  @ofbeqnpolkkl6mby5e13 Hallo vielen Dank für die hilfreichen Tipps, aber bei mir steht immer Aussentemperatur das ist mein Datenpunkt = 0.

                                  Hier mein Blockly dazu

                                  Screenshot 2022-09-27 at 15-18-50 javascript - smarthomepi.png

                                  paul53 O 2 Replies Last reply Reply Quote 0
                                  • paul53
                                    paul53 @Jens G. last edited by paul53

                                    @jens-g
                                    Den Datenpunkt erzeugt man nur einmal außerhalb eines Triggers mit richtigen Common-Attributen. Innerhalb des Triggers verwendet man "aktualisiere".

                                    Bild_2022-09-27_152816484.png

                                    Jens G. 1 Reply Last reply Reply Quote 0
                                    • O
                                      oFbEQnpoLKKl6mbY5e13 @Jens G. last edited by

                                      @jens-g

                                      Wie du siehst, habe ich mit einem Alias einen anderen Weg gewählt. So wie du jetzt, wollte ich das ursprünglich auch machen. Da mir das nicht gelungen ist, kann ich dazu nichts sagen. Ich empfehle dir den Beitrag von @mickym .

                                      1 Reply Last reply Reply Quote 0
                                      • Jens G.
                                        Jens G. @paul53 last edited by Jens G.

                                        @paul53 Danke werde ich sofort ändern. So nun warte ich auf die nächste Änderung. Hat funktioniert ganz großes Dankeschön an dich endlich kann ich es in meine Visualisierung einbinden. Wie bekomme ich den nun die Einheit angezeigt beispielsweise °C
                                        Screenshot 2022-09-27 at 15-36-45 objects - smarthomepi.png

                                        mickym 1 Reply Last reply Reply Quote 0
                                        • mickym
                                          mickym Most Active @Jens G. last edited by

                                          @jens-g Klick auf das Bleistiftsymbol und füge Unit hinzu

                                          a1efe31c-1e75-44c9-8d93-7a70393c6f4e-image.png

                                          Jens G. 1 Reply Last reply Reply Quote 0
                                          • Jens G.
                                            Jens G. @mickym last edited by Jens G.

                                            @mickym Vielen Dank habe ich doch glatt übersehen, jetzt läufts.

                                            Jens G. 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

                                            911
                                            Online

                                            31.8k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            6
                                            63
                                            3227
                                            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