Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. [Gelöst] MQTT - Sonoff POW ENERGY JSON neuer Datenpunkt

    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

    [Gelöst] MQTT - Sonoff POW ENERGY JSON neuer Datenpunkt

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

      Mein erster Versuch. Nur leider bekomme ich keine Daten.

      Den Code habe ich hier im Forum gefunden.

      /*
      Json Converter Sonoff POW
      
      Setup: Pfad + Channel + SName setzen / immer ein . am ende
      
      */
      
      var pfad = "Keller.";
      var channel = "Waschmaschine.";
      var sname = "Waschmaschine.";
      
      // do not change
      
      var idwatt = pfad + channel + sname + 'Watt';
      var idvolt = pfad + channel + sname + 'Volt';
      var idampere = pfad + channel + sname + 'Ampere';
      
      // Create States
      
      createState(idwatt, 0,{type: 'number',name: 'Aktuelle Leistung', read: true,write: true,role: 'value'});
      createState(idvolt, 0,{type: 'number',name: 'Aktuelle Spannung', read: true,write: true,role: 'value'});
      createState(idampere, 0,{type: 'number',name: 'Aktueller Strom', read: true,write: true,role: 'value'});
      
      // script beginning
      on({id: 'mqtt.0.sonoff_pow.ENERGY', change: "any"}, function (obj) {
      
         //variabele erstellen fuer meine 3 beispiel objecte
              var volt;
              var watt;  
              var ampere; 
      
         try {obj = JSON.parse(getState('mqtt.0.sonoff_pow.ENERGY').val);
         } catch (e) {
                 console.error('Cannot parse: ' + getState('mqtt.0.sonoff_pow.ENERGY').val);
                 return;
          }
      
         volt = obj.Voltage;
         watt = obj.Power;
         ampere = obj.Current;
      
          setState(idwatt, watt);
          setState(idvolt, volt);
          setState(idampere, ampere);
      
         log(volt);
         log(watt);
         log(ampere);
      });
      
      1 Reply Last reply Reply Quote 0
      • A
        Asrock last edited by

        @kmxak:

        Hatte ich bereits beschrieben. Durchsuch mal meine Beiträge nach sonoff pow JSON converter `

        Habe ich gelesen.

        Der Code müsste von Dir sein.

        Ich denke das ich ein Problem mit dem PFAD - CHANEL - SNAME habe

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

          Musst du auch für dich umarbeiten.

          Gesendet von meinem SM-G930F mit Tapatalk

          1 Reply Last reply Reply Quote 0
          • A
            Asrock last edited by

            Was muss ich denn noch umarbeiten?

            Was ist der PFAD - CHANEL und SNAME

            > mqtt.0.sonoff_pow.ENERGY

            Habe ich jetzt in mqtt.0.waschmaschine.ENERGY geändert.

            ` > Sonoff Pow Module

            Waschmaschine

            –---------------------

            MQTT parameters

            Host (domus1)

            192.168.178.39

            –---------------------

            Port (1883)

            1882

            –---------------------

            Client (DVES_A03248)

            Waschmaschine

            –---------------------

            User (DVES_USER)

            Asrock

            –---------------------

            Password

            ••••••••

            –---------------------

            Topic = %topic% (sonoff)

            sonoff

            –---------------------

            Full Topic (%prefix%/%topic%/)

            /Keller/Waschmaschine

            –--------------------- `

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

              mach mir mal bitte einen screenshot vom iobroker objekten

              den full topic hatte ich bei mir default gelassen.

              1 Reply Last reply Reply Quote 0
              • A
                Asrock last edited by

                Ich hoffe das wolltest du 🙂
                4542_screenshot_2017-12-12_19.00.29.png

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

                  probier es mal so:

                  ! ````
                  /*
                  Json Converter Sonoff POW
                  ! Setup: Pfad + Channel + SName setzen / immer ein . am ende
                  ! */
                  ! var pfad = "javascript.0.jsonconverter.";
                  var channel = "Keller.";
                  var sname = "Waschmaschine.";
                  ! // do not change
                  ! var idwatt = pfad + channel + sname + 'Watt';
                  var idvolt = pfad + channel + sname + 'Volt';
                  var idampere = pfad + channel + sname + 'Ampere';
                  ! // Create States
                  ! createState(idwatt, 0,{type: 'number',name: 'Aktuelle Leistung', read: true,write: true,role: 'value'});
                  createState(idvolt, 0,{type: 'number',name: 'Aktuelle Spannung', read: true,write: true,role: 'value'});
                  createState(idampere, 0,{type: 'number',name: 'Aktueller Strom', read: true,write: true,role: 'value'});
                  ! // script beginning
                  on({id: 'mqtt.0.Keller.Waschmaschiene.ENERGY', change: "ne"}, function (obj) {
                  ! //variabele erstellen fuer meine 3 beispiel objecte
                  var volt;
                  var watt;
                  var ampere;
                  ! try {obj = JSON.parse(getState('mqtt.0.Keller.Waschmaschiene.ENERGY').val);
                  } catch (e) {
                  console.error('Cannot parse: ' + getState('mqtt.0.Keller.Waschmaschiene.ENERGY').val);
                  return;
                  }
                  ! volt = obj.Voltage;
                  watt = obj.Power;
                  ampere = obj.Current;
                  ! setState(idwatt, watt);
                  setState(idvolt, volt);
                  setState(idampere, ampere);
                  ! log(volt);
                  log(watt);
                  log(ampere);
                  });

                  
                  Unter Javascript wird ein unterordner json converter abgelegt und dort die sachen eingetragen.
                  
                  Wenn das alles nicht funktioniert muss ein profi drüber schaun.
                  
                  Warum nimmst du nicht den Sonoff Adapter? Ich nutze seit dem es ihn gibt das Script auch nicht mehr weil es gleich die gewünschten Daten ausgibt.
                  1 Reply Last reply Reply Quote 0
                  • A
                    Asrock last edited by

                    Habe ich auch schon versucht mit dem Adapter, nur leider bleibt der rot bei mir.

                    Liegt wohl daran das ich auch den MQTT Adapter vom Iobroker nutze.

                    Ich probiere das jetzt noch mal mit dem Sonoff Adapter.

                    Ich werde berichten. Das Skript von dir liefert auch keine Werte.

                    1 Reply Last reply Reply Quote 0
                    • Dutchman
                      Dutchman Developer Most Active Administrators last edited by

                      @Asrock:

                      Liegt wohl daran das ich auch den MQTT Adapter vom Iobroker nutze. `

                      Setze den mqtt Adapter auf einen anderen port und er wird laufen und erspare dir das mühselige umsetzen des json per Script [emoji6]

                      –-----------------------

                      Send from mobile device

                      1 Reply Last reply Reply Quote 0
                      • A
                        Asrock last edited by

                        <u>DANKE</u> 😄 😄 😄 😄 😄
                        4542_screenshot_2017-12-12_19.38.57.png

                        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

                        802
                        Online

                        31.9k
                        Users

                        80.2k
                        Topics

                        1.3m
                        Posts

                        3
                        12
                        2014
                        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