Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Status vom Kostal Wechselrichter auslesen?

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    17
    1
    476

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    5.2k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.4k

Status vom Kostal Wechselrichter auslesen?

Scheduled Pinned Locked Moved ioBroker Allgemein
331 Posts 35 Posters 95.9k Views 25 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • bahnuhrB bahnuhr

    @erwin890 sagte in Status vom Kostal Wechselrichter auslesen?:

    @bahnuhr Hallo! Gibt es eventuell ein neues Skript für die Piko mit älterem Bios? Ich bekommen hier die Fehlermeldung "javascript.0 2021-07-04 19:52:00.090 error (863) Error in request callback: TypeError: d.eq is not a function"

    Über eine Hilfe würde ich mich wirklich sehr freuen.

    Das ist das Script was momentan bei mir läuft.

    
    // Photovoltaik: Piko 5.5 Anlage (alte Firmware)
    // Danke an homoran für den regex
    // @bahnuhr; 03/2019 Dieter Müller
    
    //Variaben
        var idaktuell = 'javascript.0.Geräte.Photovoltaik.Leistung_aktuell';
        var idTag = 'javascript.0.Geräte.Photovoltaik.Tagesleistung';
        var idall = 'javascript.0.Geräte.Photovoltaik.Leistung_gesamt';
        var idP1 = 'javascript.0.Geräte.Photovoltaik.Leistung_Strang1';
        var idP2 = 'javascript.0.Geräte.Photovoltaik.Leistung_Strang2';
    
        var NameAnlage = 'xxx';        // Nutzername der Photovoltaik-Anlage
        var PassAnlage = 'xxx';         // Password der Photovoltaik-Anlage
        var IPAnlage = '192.168.xxx.xxx';    // IP der Photovoltaik-Anlage
    
        var logging = false;
        var request = require('request');
    
    
     function Piko() {
        log("Piko 5.5 auslesen");
        var results = [];
        request('http://' + NameAnlage + ':' + PassAnlage +'@' + IPAnlage, function (error, response, body) {
            var d = body.toString();
            if (logging) log (d);
            var reg = /#FFFFFF">[^\d]+([^<]+)/g
            var z = reg.exec(d);
    
            while(z != null) {
                if (isNaN(z[1])) {
                    if (logging) log("keine Zahl= "+ z[1]);
                    z[1] = 0;
                } else {
                    if (logging) log("Zahl= "+ z[1]);
                    parseFloat(z[1]);
                }
                results[results.length] = z[1];
                z = reg.exec(d);
            }
            if (logging) log("results= "+ results);
    
        // Werte zuordnen
            var pwr = results[0];           // Energie aktuell in W
            var day = results[2];           // Tagesenergie in kWh
            var all = results[1];           // Gesamtenergie in kWh
            var v1 = results[3];            // PV Generator Nr. 1 - Spannung in V
            var i1 = results[5];            // PV Generator Nr. 1 - Strom in A
            var p1 = parseInt(v1 * i1);
            var v2 = results[7];            // PV Generator Nr. 2 - Spannung in V
            var i2 = results[9];            // PV Generator Nr. 2 - Strom in A
            var p2 = parseInt(v2 * i2);
    
            if (logging) log("Leistung aktuell= " + pwr + " W");
            if (logging) log("Tagesleistung= " + day + " kWh");
            if (logging) log("Leistung gesamt= " + all + " kWh");
    	    if (logging) log("Leistung Strang 1= " + p1 + " W");
        	if (logging) log("Leistung Strang 2= " + p2 + " W");
    
            setState(idaktuell, parseFloat(pwr));
            setState(idTag, parseFloat(day));
            setState(idall, parseFloat(all));
            setState(idP1, parseFloat(p1));
            setState(idP2, parseFloat(p2));
        });
    }
    
    
    schedule("2,7,12,17,22,27,32,37,42,47,52,57 * * * *", function () {
        log ("Auslöser: Schedule");
    	Piko();
    });
    
    schedule("3 0 * * *", function () {     // Variablen löschen um 00:03 Uhr   
        setState('javascript.0.Geräte.Photovoltaik.Tagesleistung', 0);
    });
    
    

    Variablen manuell anlegen.

    mfg
    Dieter

    E Offline
    E Offline
    erwin890
    wrote on last edited by
    #225

    @bahnuhr @Homoran
    Erstmal ein Riesendankeschön - es läuft sauber mit Ausnahme der Tagesleistung. Die müsste auch "Result[2]" sein, wird aber nicht in die Variable geschrieben. Fall ihr eine Idee habt immer gern! Ich bin aber schon sehr glücklich, dass der Rest läuft.

    1 Reply Last reply
    0
    • HomoranH Do not disturb
      HomoranH Do not disturb
      Homoran
      Global Moderator Administrators
      wrote on last edited by
      #226

      @erwin890 sagte in Status vom Kostal Wechselrichter auslesen?:

      Die müsste auch "Result[2]" sein,

      @bahnuhr sagte in Status vom Kostal Wechselrichter auslesen?:

      var day = results[2]; // Tagesenergie in kWh

      hast du den dp auch genau so angelegt?

      @bahnuhr sagte in Status vom Kostal Wechselrichter auslesen?:

      var idTag = 'javascript.0.Geräte.Photovoltaik.Tagesleistung';

      wenn ja, was steht im log?

      kein Support per PN! - Fragen im Forum stellen -
      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
      Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton im Header. Danke!
      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

      E 1 Reply Last reply
      0
      • HomoranH Homoran

        @erwin890 sagte in Status vom Kostal Wechselrichter auslesen?:

        Die müsste auch "Result[2]" sein,

        @bahnuhr sagte in Status vom Kostal Wechselrichter auslesen?:

        var day = results[2]; // Tagesenergie in kWh

        hast du den dp auch genau so angelegt?

        @bahnuhr sagte in Status vom Kostal Wechselrichter auslesen?:

        var idTag = 'javascript.0.Geräte.Photovoltaik.Tagesleistung';

        wenn ja, was steht im log?

        E Offline
        E Offline
        erwin890
        wrote on last edited by
        #227

        @homoran COOOL! Die Datenpunkte waren es! DANKE

        1 Reply Last reply
        0
        • HomoranH Homoran

          Hab's gefunden, da war noch eine geschweifte Klammer und ein Semikolon zu viel.
          Dann gab es noch den ein oder anderen kleinen Fehler.
          Habe jetzt alles korrigiert. Bei mir läuft es jetzt so:

          Piko_Status_Klartext_objects.png

          // Ausleseskript Wechselrichter Kostal Piko ab Firmware v05.31 (12.10.2015)
          
          //Variable
          
          var url = '192.168.xxx.yyy'; // IP der Photovoltaik-Anlage eintragen
          var IPAnlage = url + '/api/dxs.json'; 
          
          //Leistungswerte
             ID_DCEingangGesamt = 33556736;         // in W
             ID_Ausgangsleistung = 67109120;        // in W
             ID_Eigenverbrauch = 83888128;          // in W
             
             //Status
             ID_Status = 16780032;                  // 0:Off
             
             //Statistik - Tag
             ID_Ertrag_d = 251658754;               // in Wh
             ID_Hausverbrauch_d = 251659010;        // in Wh
             ID_Eigenverbrauch_d = 251659266;       // in Wh
             ID_Eigenverbrauchsquote_d = 251659278; // in %
             ID_Autarkiegrad_d = 251659279;         // in %
             
             //Statistik - Gesamt
             ID_Ertrag_G = 251658753;               // in kWh
             ID_Hausverbrauch_G = 251659009;        // in kWh
             ID_Eigenverbrauch_G = 251659265;       // in kWh
             ID_Eigenverbrauchsquote_G = 251659280; // in %
             ID_Autarkiegrad_G = 251659281;         // in %
             ID_Betriebszeit = 251658496;           // in h
             
             //Momentanwerte - PV Generator
             ID_DC1Spannung = 33555202;             // in V
             ID_DC1Strom = 33555201;                // in A
             ID_DC1Leistung = 33555203;             // in W
             ID_DC2Spannung = 33555458;             // in V
             ID_DC2Strom = 33555457;                // in A
             ID_DC2Leistung = 33555459;             // in W
             
             //Momentanwerte Haus
             ID_HausverbrauchSolar = 83886336;      // in W
             ID_HausverbrauchBatterie = 83886592;   // in W
             ID_HausverbrauchNetz = 83886848;       // in W
             ID_HausverbrauchPhase1 = 83887106;     // in W
             ID_HausverbrauchPhase2 = 83887362;     // in W
             ID_HausverbrauchPhase3 = 83887618;     // in W
             
             //Netz Netzparameter
             ID_NetzAusgangLeistung = 67109120;     // in W
             ID_NetzFrequenz = 67110400;            // in Hz
             ID_NetzCosPhi = 67110656;
             
             //Netz Phase 1
             ID_P1Spannung = 67109378;              // in V
             ID_P1Strom = 67109377;                 // in A
             ID_P1Leistung = 67109379;              // in W
             
             //Netz Phase 2
             ID_P2Spannung = 67109634;              // in V
             ID_P2Strom = 67109633;                 // in A
             ID_P2Leistung = 67109635;              // in W
             
             //Netz Phase 3
             ID_P3Spannung = 67109890;              // in V
             ID_P3Strom = 67109889;                 // in A
             ID_P3Leistung = 67109891;              // in W
          
          
          
          
          
          
          
          createState('Solaranlage.Momentanwerte.Leistung_AC_aktuell', 0);
          //createState('Solaranlage.Summenwerte.Autarkiegrad_d',0);
          //createState('Solaranlage.Summenwerte.Autarkiegrad_G',0);
          createState('Solaranlage.Summenwerte.Betriebszeit',0);
          createState('Solaranlage.Momentanwerte.Status','aus');
          createState('Solaranlage.Momentanwerte.Leistung_DC_aktuell',0);
          //createState('Solaranlage.Momentanwerte.Eigenverbrauch',0);
          //createState('Solaranlage.Summenwerte.Eigenverbrauch_d');
          //createState('Solaranlage.Summenwerte.Eigenverbrauch_G', 0);
          //createState('Solaranlage.Summenwerte.Eigenverbrauchsquote_d', 0);
          //createState('Solaranlage.Summenwerte.Eigenverbrauchsquote_G', 0);
          createState('Solaranlage.Summenwerte.Tagesertrag', 0);
          createState('Solaranlage.Summenwerte.Gesamtertrag', 0);
          //createState('Solaranlage.Summenwerte.Hausverbrauch_d', 0);
          //createState('Solaranlage.Summenwerte.Hausverbrauch_G', 0);
          //createState('Solaranlage.Momentanwerte.P1Spannung');
          //createState('Solaranlage.Momentanwerte.P2Spannung');
          //createState('Solaranlage.Momentanwerte.P1Strom');
          //createState('Solaranlage.Momentanwerte.P2Strom');
          //createState('Solaranlage.Momentanwerte.P1Leistung');
          //createState('Solaranlage.Momentanwerte.P2Leistung');
          //createState('Solaranlage.Momentanwerte.Leistung_String1');
          //createState('Solaranlage.Momentanwerte.Leistung_String2');
          
          
          var logging = false;
          var request = require('request');
          
          function Piko() {
             if (logging) log("Piko 5.5 auslesen");
             request('http://' + IPAnlage + 
             '?dxsEntries=' + ID_DCEingangGesamt +
             '&dxsEntries=' + ID_Ausgangsleistung +
             '&dxsEntries=' + ID_Eigenverbrauch +
             '&dxsEntries=' + ID_Eigenverbrauch_d +
             '&dxsEntries=' + ID_Eigenverbrauch_G +
             '&dxsEntries=' + ID_Eigenverbrauchsquote_d +
             '&dxsEntries=' + ID_Eigenverbrauchsquote_G +
             '&dxsEntries=' + ID_Ertrag_d +
             '&dxsEntries=' + ID_Ertrag_G +
             '&dxsEntries=' + ID_Hausverbrauch_d +
             '&dxsEntries=' + ID_Hausverbrauch_G +
             '&dxsEntries=' + ID_Autarkiegrad_G +
             '&dxsEntries=' + ID_Autarkiegrad_d +
             '&dxsEntries=' + ID_Betriebszeit +
             '&dxsEntries=' + ID_P1Spannung +
             '&dxsEntries=' + ID_P2Spannung +
             '&dxsEntries=' + ID_P1Strom +
             '&dxsEntries=' + ID_P2Strom +
             '&dxsEntries=' + ID_P1Leistung +
             '&dxsEntries=' + ID_P2Leistung +
             '&dxsEntries=' + ID_Status +
             '&dxsEntries=' + ID_DC1Leistung +
             '&dxsEntries=' + ID_DC2Leistung,
             
             function (error, response, body) {
                 if(!error && response.statusCode ==200) {
                     if(logging) log(body);
                     var result = JSON.parse(body).dxsEntries;
             		
             		var Zustand = 'aus';
          
             		if (result[20].val == 0) {
                     Zustand = 'aus';
                     } else if (result[20].value== 1) {
                     Zustand = 'Leerlauf';
                     } else if (result[20].value == 2) {
                     Zustand = 'Anfahren';
                     } else if (result[20].value == 3) {
                     Zustand = 'Einspeisen MPP';
                     } else if (result[20].value == 4) {
                     Zustand = 'Einspeisen abgeregelt';
                     } else if (result[20].value == 7) {
                     Zustand = 'Isolationsmessung';
                     } else {
                     Zustand = (String('Code ') + String('' + result[20].value));
                     }
                 
             		
             		
                     setState('Solaranlage.Momentanwerte.Leistung_DC_aktuell', result[0].value || 0, true);
                     setState('Solaranlage.Momentanwerte.Leistung_AC_aktuell', result[1].value || 0, true);
                     //setState('Solaranlage.Momentanwerte.Eigenverbrauch', result[2].value || 0, true);
                     //setState('Solaranlage.Summenwerte.Eigenverbrauch_d', result[3].value || 0, true);
                     //setState('Solaranlage.Summenwerte.Eigenverbrauch_G', result[4].value || 0, true);
                     //setState('Solaranlage.Summenwerte.Eigenverbrauchsquote_d', result[5].value || 0, true);
                     //setState('Solaranlage.Summenwerte.Eigenverbrauchsquote_G', result[6].value || 0, true);
                     setState('Solaranlage.Summenwerte.Tagesertrag', result[7].value || 0, true);
                     setState('Solaranlage.Summenwerte.Gesamtertrag', result[8].value || 0, true);
                     //setState('Solaranlage.Summenwerte.Hausverbrauch_d', result[9].value || 0, true);
                     //setState('Solaranlage.Summenwerte.Hausverbrauch_G', result[10].value || 0, true);
                     //setState('Solaranlage.Summenwerte.Autarkiegrad_G', result[11].value || 0, true);
                     //setState('Solaranlage.Summenwerte.Autarkiegrad_d', result[12].value || 0, true);
                     setState('Solaranlage.Summenwerte.Betriebszeit', result[13].value || 0, true);
                     //setState('Solaranlage.Momentanwerte.P1Spannung', result[14].value || 0, true);
                     //setState('Solaranlage.Momentanwerte.P2Spannung', result[15].value || 0, true);
                     //setState('Solaranlage.Momentanwerte.P1Strom', result[16].value || 0, true);
                     //setState('Solaranlage.Momentanwerte.P2Strom', result[17].value || 0, true);
                     //setState('Solaranlage.Momentanwerte.P1Leistung', result[18].value || 0, true);
                     //setState('Solaranlage.Momentanwerte.P2Leistung', result[19].value || 0, true);
                     setState('Solaranlage.Momentanwerte.Status', Zustand || 0, true);
                     //setState('Solaranlage.Momentanwerte.Leistung_String1', result[21].value || 0, true);
                     //setState('Solaranlage.Momentanwerte.Leistung_String2', result[22].value || 0, true);
                 } else {
                     log("Fehler: " + error + " bei Abfrage von: " + url, "warn");
                 }
             });
          }
          
          schedule("*/11 * 5-23 * * *", Piko);
          //on('smartmeter.0.1-0:16_7_0__255.value', Piko); // triggert bei Wertänderung;
          

          PS auch bei mir lief ein Skript noch, das gar nicht mehr existierte.
          restart der js-Instanz hat geholfen

          M Offline
          M Offline
          MartyBr
          wrote on last edited by
          #228

          @homoran
          Hallo, ich habe einen Piko 20 mit dem KSEM in Einsatz. Die Firmware vom Piko ist die 6.11. Dein Script läuft einwandfrei. Leider fehlt dort der String 3. Kannst du diese Datenpunkte noch Nachpflegen? Ich verzweifele so langsam an dem Kostal. Die Kombination KSEM und Piko verhindert das saubere Auslesen vom Piko. Alleine dein Script liest die Daten aus.

          Gruß
          Martin


          Intel NUCs mit Proxmox / Iobroker als VM unter Debian
          Raspeberry mit USB Leseköpfen für Smartmeter
          Homematic und Homematic IP

          HomoranH 1 Reply Last reply
          0
          • M MartyBr

            @homoran
            Hallo, ich habe einen Piko 20 mit dem KSEM in Einsatz. Die Firmware vom Piko ist die 6.11. Dein Script läuft einwandfrei. Leider fehlt dort der String 3. Kannst du diese Datenpunkte noch Nachpflegen? Ich verzweifele so langsam an dem Kostal. Die Kombination KSEM und Piko verhindert das saubere Auslesen vom Piko. Alleine dein Script liest die Daten aus.

            HomoranH Do not disturb
            HomoranH Do not disturb
            Homoran
            Global Moderator Administrators
            wrote on last edited by
            #229

            @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

            ich habe einen Piko 20 mit dem KSEM in Einsatz

            ich leider nicht ;-)

            @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

            Leider fehlt dort der String 3. Kannst du diese Datenpunkte noch Nachpflegen?

            dann bräuchte ich aber die Daten, die dein Piko liefert

            kein Support per PN! - Fragen im Forum stellen -
            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
            Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton im Header. Danke!
            der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

            M 1 Reply Last reply
            0
            • HomoranH Homoran

              @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

              ich habe einen Piko 20 mit dem KSEM in Einsatz

              ich leider nicht ;-)

              @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

              Leider fehlt dort der String 3. Kannst du diese Datenpunkte noch Nachpflegen?

              dann bräuchte ich aber die Daten, die dein Piko liefert

              M Offline
              M Offline
              MartyBr
              wrote on last edited by
              #230

              @homoran
              Wie kann ich dir die Daten liefern?

              Gruß
              Martin


              Intel NUCs mit Proxmox / Iobroker als VM unter Debian
              Raspeberry mit USB Leseköpfen für Smartmeter
              Homematic und Homematic IP

              HomoranH 1 Reply Last reply
              0
              • M MartyBr

                @homoran
                Wie kann ich dir die Daten liefern?

                HomoranH Do not disturb
                HomoranH Do not disturb
                Homoran
                Global Moderator Administrators
                wrote on last edited by
                #231

                @martybr hier in code tags posten

                kein Support per PN! - Fragen im Forum stellen -
                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton im Header. Danke!
                der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                M 1 Reply Last reply
                0
                • HomoranH Homoran

                  @martybr hier in code tags posten

                  M Offline
                  M Offline
                  MartyBr
                  wrote on last edited by Homoran
                  #232

                  @homoran
                  Sorry, die Webseite? Ich habe mal die Webseite gespeichert, vermute aber dass das nicht gemeint war. Kannst du mir noch einen Tipp geben?

                  [PIKO 20 __ Piko_20.html](/assets/uploads/files/1633352539531-piko-20-__-piko_20.html) 
                  
                  [kbApp-1.1.6.js](/assets/uploads/files/1633352574322-kbapp-1.1.6.js) 
                  
                  [kbApp-1.1.6.css](/assets/uploads/files/1633352587592-kbapp-1.1.6.css)
                  
                  <!DOCTYPE html>
                  <html ng-app="kbApp" ng-controller="kbAppCtrl">
                  <head>
                     <link rel="icon" href="/assets/favicon.ico">
                     <title ng-bind="inverterTypeName + ' <> ' + inverterName"></title>
                     <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
                     <meta http-equiv="X-UA-Compatible" content="IE=Edge"/>
                     <!--Deaktivate Chaching to avoid problems-->
                     <meta http-equiv="cache-control: private, max-age=0, no-cache" content="no-store" />
                     <meta http-equiv="expires" content="0" />
                     <meta http-equiv="pragma" content="no-cache" />
                  
                     <!-- compiled CSS -->
                     <link rel="stylesheet" type="text/css" href="assets/kbApp-1.1.6.css"/>
                     
                  </head>
                  <body>
                  <!-- Loading -->
                  <div kb-Hide-After-Init class = "loader" style="z-index: 3000">
                     <div class="loader-inner-big">
                        <i class="icon-spinner animate-spin"></i>
                        <div id="errorMsg"></div>
                     </div>
                  </div>
                  <!-- Page -->
                  <div class="kbContainer">
                     <div class="kbBanner">
                        <div class="kbLogoPrim"></div>
                        <div class="kbLogoSec"></div>
                        <div class="kbLanguageSelectBar" ng-controller="languageSelCtrl">
                           <div ng-repeat="language in languages">
                              <div kb-language-select-item></div>
                           </div>
                        </div>
                     </div>
                     <div class="kbPage">
                        <div class="kbDivider"></div>
                        <div class="kbNav" ng-controller="navigationCtrl">
                           <kb-navigation nodes="menu"></kb-navigation>
                           <div class="kbLogoSlogan"></div>
                        </div>
                        <div class="kbContent">
                           <div class="kbContentHeading">
                              <div class="kbInfo">
                                 <div class="kbInverter">
                                    <span class="inverterType"> {{inverterTypeName}}</span>
                                    <span class="inverterName"> ({{inverterName}})</span>
                                 </div>
                                 <div class="kbUserAndDate">
                                    <div><i class="icon-calendar"><span>{{appDate | date:'short'}}</span></i></div>
                                    <div><i class="icon-user"><span>{{appUserTranslationId | translate}}</span></i></div>
                                 </div>
                              </div>
                              <div class="kbNavTitle" ng-controller="navigationCtrl">
                                 <kb-navigation-breadcrumb breadcrumbs="breadcrumbs"></kb-navigation-breadcrumb>
                              </div>
                           </div>
                           <div class="kbContentView">
                              <div ng-show="appPageInfo.loadingInProgress" ng-cloak class = "loader" style="z-index: 2000">
                                 <div class="loader-inner">
                                    <i class="icon-spinner animate-spin"></i>
                                 </div>
                              </div>
                              <div ng-show="appPageInfo.loadingFailed" ng-cloak class = "loader" style="z-index: 2000">
                                 <div class="loader-inner">
                                    <i class="icon-error"></i>
                                 </div>
                              </div>
                              <div ng-show="appPageInfo.submitInProgress" ng-cloak class = "loader-transparent" style="z-index: 2000">
                                 <div class="loader-inner">
                                    <i class="icon-spinner animate-spin"></i>
                                 </div>
                              </div>
                              <div class="kbView" ng-view></div>
                              <div class="kbViewInfo" ng-show="appPageInfo.submitSuccessful || appPageInfo.submitFailed">
                                 <div ng-show="appPageInfo.submitSuccessful">
                                    <i class="icon-ok info-ok">{{appPageInfo.displayMsgId | translate}}</i>
                                 </div>
                                 <div ng-show="appPageInfo.submitFailed">
                                    <i class="icon-error info-error">{{appPageInfo.displayMsgId | translate}}</i>
                                 </div>
                              </div>
                           </div>
                        </div>
                     </div>
                     <div class="kbFooter">
                        <div class="kbWebversion">v1.1.6</div>
                     </div>
                  </div>
                  
                  <!-- compiled JavaScript -->
                  <script type="text/javascript" src="assets/kbApp-1.1.6.js"></script>
                  
                  </body>
                  </html>
                  

                  Gruß
                  Martin


                  Intel NUCs mit Proxmox / Iobroker als VM unter Debian
                  Raspeberry mit USB Leseköpfen für Smartmeter
                  Homematic und Homematic IP

                  M 1 Reply Last reply
                  0
                  • M MartyBr

                    @homoran
                    Sorry, die Webseite? Ich habe mal die Webseite gespeichert, vermute aber dass das nicht gemeint war. Kannst du mir noch einen Tipp geben?

                    [PIKO 20 __ Piko_20.html](/assets/uploads/files/1633352539531-piko-20-__-piko_20.html) 
                    
                    [kbApp-1.1.6.js](/assets/uploads/files/1633352574322-kbapp-1.1.6.js) 
                    
                    [kbApp-1.1.6.css](/assets/uploads/files/1633352587592-kbapp-1.1.6.css)
                    
                    <!DOCTYPE html>
                    <html ng-app="kbApp" ng-controller="kbAppCtrl">
                    <head>
                       <link rel="icon" href="/assets/favicon.ico">
                       <title ng-bind="inverterTypeName + ' <> ' + inverterName"></title>
                       <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
                       <meta http-equiv="X-UA-Compatible" content="IE=Edge"/>
                       <!--Deaktivate Chaching to avoid problems-->
                       <meta http-equiv="cache-control: private, max-age=0, no-cache" content="no-store" />
                       <meta http-equiv="expires" content="0" />
                       <meta http-equiv="pragma" content="no-cache" />
                    
                       <!-- compiled CSS -->
                       <link rel="stylesheet" type="text/css" href="assets/kbApp-1.1.6.css"/>
                       
                    </head>
                    <body>
                    <!-- Loading -->
                    <div kb-Hide-After-Init class = "loader" style="z-index: 3000">
                       <div class="loader-inner-big">
                          <i class="icon-spinner animate-spin"></i>
                          <div id="errorMsg"></div>
                       </div>
                    </div>
                    <!-- Page -->
                    <div class="kbContainer">
                       <div class="kbBanner">
                          <div class="kbLogoPrim"></div>
                          <div class="kbLogoSec"></div>
                          <div class="kbLanguageSelectBar" ng-controller="languageSelCtrl">
                             <div ng-repeat="language in languages">
                                <div kb-language-select-item></div>
                             </div>
                          </div>
                       </div>
                       <div class="kbPage">
                          <div class="kbDivider"></div>
                          <div class="kbNav" ng-controller="navigationCtrl">
                             <kb-navigation nodes="menu"></kb-navigation>
                             <div class="kbLogoSlogan"></div>
                          </div>
                          <div class="kbContent">
                             <div class="kbContentHeading">
                                <div class="kbInfo">
                                   <div class="kbInverter">
                                      <span class="inverterType"> {{inverterTypeName}}</span>
                                      <span class="inverterName"> ({{inverterName}})</span>
                                   </div>
                                   <div class="kbUserAndDate">
                                      <div><i class="icon-calendar"><span>{{appDate | date:'short'}}</span></i></div>
                                      <div><i class="icon-user"><span>{{appUserTranslationId | translate}}</span></i></div>
                                   </div>
                                </div>
                                <div class="kbNavTitle" ng-controller="navigationCtrl">
                                   <kb-navigation-breadcrumb breadcrumbs="breadcrumbs"></kb-navigation-breadcrumb>
                                </div>
                             </div>
                             <div class="kbContentView">
                                <div ng-show="appPageInfo.loadingInProgress" ng-cloak class = "loader" style="z-index: 2000">
                                   <div class="loader-inner">
                                      <i class="icon-spinner animate-spin"></i>
                                   </div>
                                </div>
                                <div ng-show="appPageInfo.loadingFailed" ng-cloak class = "loader" style="z-index: 2000">
                                   <div class="loader-inner">
                                      <i class="icon-error"></i>
                                   </div>
                                </div>
                                <div ng-show="appPageInfo.submitInProgress" ng-cloak class = "loader-transparent" style="z-index: 2000">
                                   <div class="loader-inner">
                                      <i class="icon-spinner animate-spin"></i>
                                   </div>
                                </div>
                                <div class="kbView" ng-view></div>
                                <div class="kbViewInfo" ng-show="appPageInfo.submitSuccessful || appPageInfo.submitFailed">
                                   <div ng-show="appPageInfo.submitSuccessful">
                                      <i class="icon-ok info-ok">{{appPageInfo.displayMsgId | translate}}</i>
                                   </div>
                                   <div ng-show="appPageInfo.submitFailed">
                                      <i class="icon-error info-error">{{appPageInfo.displayMsgId | translate}}</i>
                                   </div>
                                </div>
                             </div>
                          </div>
                       </div>
                       <div class="kbFooter">
                          <div class="kbWebversion">v1.1.6</div>
                       </div>
                    </div>
                    
                    <!-- compiled JavaScript -->
                    <script type="text/javascript" src="assets/kbApp-1.1.6.js"></script>
                    
                    </body>
                    </html>
                    
                    M Offline
                    M Offline
                    MartyBr
                    wrote on last edited by
                    #233

                    @Homoran
                    Hier mal die Seite mit den Strings:

                    
                    <!DOCTYPE html>
                    <html ng-app="kbApp" ng-controller="kbAppCtrl">
                    <head>
                       <link rel="icon" href="/assets/favicon.ico">
                       <title ng-bind="inverterTypeName + ' <> ' + inverterName"></title>
                       <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
                       <meta http-equiv="X-UA-Compatible" content="IE=Edge"/>
                       <!--Deaktivate Chaching to avoid problems-->
                       <meta http-equiv="cache-control: private, max-age=0, no-cache" content="no-store" />
                       <meta http-equiv="expires" content="0" />
                       <meta http-equiv="pragma" content="no-cache" />
                    
                       <!-- compiled CSS -->
                       <link rel="stylesheet" type="text/css" href="assets/kbApp-1.1.6.css"/>
                       
                    </head>
                    <body>
                    <!-- Loading -->
                    <div kb-Hide-After-Init class = "loader" style="z-index: 3000">
                       <div class="loader-inner-big">
                          <i class="icon-spinner animate-spin"></i>
                          <div id="errorMsg"></div>
                       </div>
                    </div>
                    <!-- Page -->
                    <div class="kbContainer">
                       <div class="kbBanner">
                          <div class="kbLogoPrim"></div>
                          <div class="kbLogoSec"></div>
                          <div class="kbLanguageSelectBar" ng-controller="languageSelCtrl">
                             <div ng-repeat="language in languages">
                                <div kb-language-select-item></div>
                             </div>
                          </div>
                       </div>
                       <div class="kbPage">
                          <div class="kbDivider"></div>
                          <div class="kbNav" ng-controller="navigationCtrl">
                             <kb-navigation nodes="menu"></kb-navigation>
                             <div class="kbLogoSlogan"></div>
                          </div>
                          <div class="kbContent">
                             <div class="kbContentHeading">
                                <div class="kbInfo">
                                   <div class="kbInverter">
                                      <span class="inverterType"> {{inverterTypeName}}</span>
                                      <span class="inverterName"> ({{inverterName}})</span>
                                   </div>
                                   <div class="kbUserAndDate">
                                      <div><i class="icon-calendar"><span>{{appDate | date:'short'}}</span></i></div>
                                      <div><i class="icon-user"><span>{{appUserTranslationId | translate}}</span></i></div>
                                   </div>
                                </div>
                                <div class="kbNavTitle" ng-controller="navigationCtrl">
                                   <kb-navigation-breadcrumb breadcrumbs="breadcrumbs"></kb-navigation-breadcrumb>
                                </div>
                             </div>
                             <div class="kbContentView">
                                <div ng-show="appPageInfo.loadingInProgress" ng-cloak class = "loader" style="z-index: 2000">
                                   <div class="loader-inner">
                                      <i class="icon-spinner animate-spin"></i>
                                   </div>
                                </div>
                                <div ng-show="appPageInfo.loadingFailed" ng-cloak class = "loader" style="z-index: 2000">
                                   <div class="loader-inner">
                                      <i class="icon-error"></i>
                                   </div>
                                </div>
                                <div ng-show="appPageInfo.submitInProgress" ng-cloak class = "loader-transparent" style="z-index: 2000">
                                   <div class="loader-inner">
                                      <i class="icon-spinner animate-spin"></i>
                                   </div>
                                </div>
                                <div class="kbView" ng-view></div>
                                <div class="kbViewInfo" ng-show="appPageInfo.submitSuccessful || appPageInfo.submitFailed">
                                   <div ng-show="appPageInfo.submitSuccessful">
                                      <i class="icon-ok info-ok">{{appPageInfo.displayMsgId | translate}}</i>
                                   </div>
                                   <div ng-show="appPageInfo.submitFailed">
                                      <i class="icon-error info-error">{{appPageInfo.displayMsgId | translate}}</i>
                                   </div>
                                </div>
                             </div>
                          </div>
                       </div>
                       <div class="kbFooter">
                          <div class="kbWebversion">v1.1.6</div>
                       </div>
                    </div>
                    
                    <!-- compiled JavaScript -->
                    <script type="text/javascript" src="assets/kbApp-1.1.6.js"></script>
                    
                    </body>
                    </html>
                    
                    
                    
                    

                    Gruß
                    Martin


                    Intel NUCs mit Proxmox / Iobroker als VM unter Debian
                    Raspeberry mit USB Leseköpfen für Smartmeter
                    Homematic und Homematic IP

                    HomoranH 1 Reply Last reply
                    0
                    • M MartyBr

                      @Homoran
                      Hier mal die Seite mit den Strings:

                      
                      <!DOCTYPE html>
                      <html ng-app="kbApp" ng-controller="kbAppCtrl">
                      <head>
                         <link rel="icon" href="/assets/favicon.ico">
                         <title ng-bind="inverterTypeName + ' <> ' + inverterName"></title>
                         <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
                         <meta http-equiv="X-UA-Compatible" content="IE=Edge"/>
                         <!--Deaktivate Chaching to avoid problems-->
                         <meta http-equiv="cache-control: private, max-age=0, no-cache" content="no-store" />
                         <meta http-equiv="expires" content="0" />
                         <meta http-equiv="pragma" content="no-cache" />
                      
                         <!-- compiled CSS -->
                         <link rel="stylesheet" type="text/css" href="assets/kbApp-1.1.6.css"/>
                         
                      </head>
                      <body>
                      <!-- Loading -->
                      <div kb-Hide-After-Init class = "loader" style="z-index: 3000">
                         <div class="loader-inner-big">
                            <i class="icon-spinner animate-spin"></i>
                            <div id="errorMsg"></div>
                         </div>
                      </div>
                      <!-- Page -->
                      <div class="kbContainer">
                         <div class="kbBanner">
                            <div class="kbLogoPrim"></div>
                            <div class="kbLogoSec"></div>
                            <div class="kbLanguageSelectBar" ng-controller="languageSelCtrl">
                               <div ng-repeat="language in languages">
                                  <div kb-language-select-item></div>
                               </div>
                            </div>
                         </div>
                         <div class="kbPage">
                            <div class="kbDivider"></div>
                            <div class="kbNav" ng-controller="navigationCtrl">
                               <kb-navigation nodes="menu"></kb-navigation>
                               <div class="kbLogoSlogan"></div>
                            </div>
                            <div class="kbContent">
                               <div class="kbContentHeading">
                                  <div class="kbInfo">
                                     <div class="kbInverter">
                                        <span class="inverterType"> {{inverterTypeName}}</span>
                                        <span class="inverterName"> ({{inverterName}})</span>
                                     </div>
                                     <div class="kbUserAndDate">
                                        <div><i class="icon-calendar"><span>{{appDate | date:'short'}}</span></i></div>
                                        <div><i class="icon-user"><span>{{appUserTranslationId | translate}}</span></i></div>
                                     </div>
                                  </div>
                                  <div class="kbNavTitle" ng-controller="navigationCtrl">
                                     <kb-navigation-breadcrumb breadcrumbs="breadcrumbs"></kb-navigation-breadcrumb>
                                  </div>
                               </div>
                               <div class="kbContentView">
                                  <div ng-show="appPageInfo.loadingInProgress" ng-cloak class = "loader" style="z-index: 2000">
                                     <div class="loader-inner">
                                        <i class="icon-spinner animate-spin"></i>
                                     </div>
                                  </div>
                                  <div ng-show="appPageInfo.loadingFailed" ng-cloak class = "loader" style="z-index: 2000">
                                     <div class="loader-inner">
                                        <i class="icon-error"></i>
                                     </div>
                                  </div>
                                  <div ng-show="appPageInfo.submitInProgress" ng-cloak class = "loader-transparent" style="z-index: 2000">
                                     <div class="loader-inner">
                                        <i class="icon-spinner animate-spin"></i>
                                     </div>
                                  </div>
                                  <div class="kbView" ng-view></div>
                                  <div class="kbViewInfo" ng-show="appPageInfo.submitSuccessful || appPageInfo.submitFailed">
                                     <div ng-show="appPageInfo.submitSuccessful">
                                        <i class="icon-ok info-ok">{{appPageInfo.displayMsgId | translate}}</i>
                                     </div>
                                     <div ng-show="appPageInfo.submitFailed">
                                        <i class="icon-error info-error">{{appPageInfo.displayMsgId | translate}}</i>
                                     </div>
                                  </div>
                               </div>
                            </div>
                         </div>
                         <div class="kbFooter">
                            <div class="kbWebversion">v1.1.6</div>
                         </div>
                      </div>
                      
                      <!-- compiled JavaScript -->
                      <script type="text/javascript" src="assets/kbApp-1.1.6.js"></script>
                      
                      </body>
                      </html>
                      
                      
                      
                      
                      HomoranH Do not disturb
                      HomoranH Do not disturb
                      Homoran
                      Global Moderator Administrators
                      wrote on last edited by
                      #234

                      @martybr nee, taugt alles nichts.

                      ich galube das ist hier auch der falsche Thread.
                      bin aber auch nicht mehr sicher, weil es immer drüber und drunter geht.

                      Zumindest anfangs ging es um die FW <5.3

                      @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

                      Die Firmware vom Piko ist die 6.11.

                      sollte damit nicht funktionieren.

                      welches Script nutzst du denn genau?

                      kein Support per PN! - Fragen im Forum stellen -
                      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                      Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton im Header. Danke!
                      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                      M 2 Replies Last reply
                      0
                      • HomoranH Homoran

                        @martybr nee, taugt alles nichts.

                        ich galube das ist hier auch der falsche Thread.
                        bin aber auch nicht mehr sicher, weil es immer drüber und drunter geht.

                        Zumindest anfangs ging es um die FW <5.3

                        @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

                        Die Firmware vom Piko ist die 6.11.

                        sollte damit nicht funktionieren.

                        welches Script nutzst du denn genau?

                        M Offline
                        M Offline
                        MartyBr
                        wrote on last edited by
                        #235

                        @homoran
                        das hier:

                        Alle Werte kommen bis auf die Werte vom String 3:

                        
                        // Ausleseskript Wechselrichter Kostal Piko ab Firmware v05.31 (12.10.2015)
                        
                        //Variable
                        
                        var url = '192.168.178.77'; // IP der Photovoltaik-Anlage eintragen
                        var IPAnlage = url + '/api/dxs.json'; 
                        
                        //Leistungswerte
                           ID_DCEingangGesamt = 33556736;         // in W
                           ID_Ausgangsleistung = 67109120;        // in W
                           ID_Eigenverbrauch = 83888128;          // in W
                           
                           //Status
                           ID_Status = 16780032;                  // 0:Off
                           
                           //Statistik - Tag
                           ID_Ertrag_d = 251658754;               // in Wh
                           ID_Hausverbrauch_d = 251659010;        // in Wh
                           ID_Eigenverbrauch_d = 251659266;       // in Wh
                           ID_Eigenverbrauchsquote_d = 251659278; // in %
                           ID_Autarkiegrad_d = 251659279;         // in %
                           
                           //Statistik - Gesamt
                           ID_Ertrag_G = 251658753;               // in kWh
                           ID_Hausverbrauch_G = 251659009;        // in kWh
                           ID_Eigenverbrauch_G = 251659265;       // in kWh
                           ID_Eigenverbrauchsquote_G = 251659280; // in %
                           ID_Autarkiegrad_G = 251659281;         // in %
                           ID_Betriebszeit = 251658496;           // in h
                           
                           //Momentanwerte - PV Generator
                           ID_DC1Spannung = 33555202;             // in V
                           ID_DC1Strom = 33555201;                // in A
                           ID_DC1Leistung = 33555203;             // in W
                           ID_DC2Spannung = 33555458;             // in V
                           ID_DC2Strom = 33555457;                // in A
                           ID_DC2Leistung = 33555459;             // in W
                           
                           //Momentanwerte Haus
                           ID_HausverbrauchSolar = 83886336;      // in W
                           ID_HausverbrauchBatterie = 83886592;   // in W
                           ID_HausverbrauchNetz = 83886848;       // in W
                           ID_HausverbrauchPhase1 = 83887106;     // in W
                           ID_HausverbrauchPhase2 = 83887362;     // in W
                           ID_HausverbrauchPhase3 = 83887618;     // in W
                           
                           //Netz Netzparameter
                           ID_NetzAusgangLeistung = 67109120;     // in W
                           ID_NetzFrequenz = 67110400;            // in Hz
                           ID_NetzCosPhi = 67110656;
                           
                           //Netz Phase 1
                           ID_P1Spannung = 67109378;              // in V
                           ID_P1Strom = 67109377;                 // in A
                           ID_P1Leistung = 67109379;              // in W
                           
                           //Netz Phase 2
                           ID_P2Spannung = 67109634;              // in V
                           ID_P2Strom = 67109633;                 // in A
                           ID_P2Leistung = 67109635;              // in W
                           
                           //Netz Phase 3
                           ID_P3Spannung = 67109890;              // in V
                           ID_P3Strom = 67109889;                 // in A
                           ID_P3Leistung = 67109891;              // in W
                        
                        
                        
                        
                        
                        
                        
                        createState('Solaranlage.Momentanwerte.Leistung_AC_aktuell', 0);
                        createState('Solaranlage.Summenwerte.Autarkiegrad_d',0);
                        createState('Solaranlage.Summenwerte.Autarkiegrad_G',0);
                        createState('Solaranlage.Summenwerte.Betriebszeit',0);
                        createState('Solaranlage.Momentanwerte.Status','aus');
                        createState('Solaranlage.Momentanwerte.Leistung_DC_aktuell',0);
                        createState('Solaranlage.Momentanwerte.Eigenverbrauch',0);
                        createState('Solaranlage.Summenwerte.Eigenverbrauch_d');
                        createState('Solaranlage.Summenwerte.Eigenverbrauch_G', 0);
                        createState('Solaranlage.Summenwerte.Eigenverbrauchsquote_d', 0);
                        createState('Solaranlage.Summenwerte.Eigenverbrauchsquote_G', 0);
                        createState('Solaranlage.Summenwerte.Tagesertrag', 0);
                        createState('Solaranlage.Summenwerte.Gesamtertrag', 0);
                        createState('Solaranlage.Summenwerte.Hausverbrauch_d', 0);
                        createState('Solaranlage.Summenwerte.Hausverbrauch_G', 0);
                        createState('Solaranlage.Momentanwerte.P1Spannung');
                        createState('Solaranlage.Momentanwerte.P2Spannung');
                        createState('Solaranlage.Momentanwerte.P1Strom');
                        createState('Solaranlage.Momentanwerte.P2Strom');
                        createState('Solaranlage.Momentanwerte.P1Leistung');
                        createState('Solaranlage.Momentanwerte.P2Leistung');
                        createState('Solaranlage.Momentanwerte.Leistung_String1');
                        createState('Solaranlage.Momentanwerte.Leistung_String2');
                        
                        
                        var logging = false;
                        var request = require('request');
                        
                        function Piko() {
                           if (logging) log("Piko 5.5 auslesen");
                           request('http://' + IPAnlage + 
                           '?dxsEntries=' + ID_DCEingangGesamt +
                           '&dxsEntries=' + ID_Ausgangsleistung +
                           '&dxsEntries=' + ID_Eigenverbrauch +
                           '&dxsEntries=' + ID_Eigenverbrauch_d +
                           '&dxsEntries=' + ID_Eigenverbrauch_G +
                           '&dxsEntries=' + ID_Eigenverbrauchsquote_d +
                           '&dxsEntries=' + ID_Eigenverbrauchsquote_G +
                           '&dxsEntries=' + ID_Ertrag_d +
                           '&dxsEntries=' + ID_Ertrag_G +
                           '&dxsEntries=' + ID_Hausverbrauch_d +
                           '&dxsEntries=' + ID_Hausverbrauch_G +
                           '&dxsEntries=' + ID_Autarkiegrad_G +
                           '&dxsEntries=' + ID_Autarkiegrad_d +
                           '&dxsEntries=' + ID_Betriebszeit +
                           '&dxsEntries=' + ID_P1Spannung +
                           '&dxsEntries=' + ID_P2Spannung +
                           '&dxsEntries=' + ID_P1Strom +
                           '&dxsEntries=' + ID_P2Strom +
                           '&dxsEntries=' + ID_P1Leistung +
                           '&dxsEntries=' + ID_P2Leistung +
                           '&dxsEntries=' + ID_Status +
                           '&dxsEntries=' + ID_DC1Leistung +
                           '&dxsEntries=' + ID_DC2Leistung,
                           
                           function (error, response, body) {
                               if(!error && response.statusCode ==200) {
                                   if(logging) log(body);
                                   var result = JSON.parse(body).dxsEntries;
                           		
                           		var Zustand = 'aus';
                        
                           		if (result[20].val == 0) {
                                   Zustand = 'aus';
                                   } else if (result[20].value== 1) {
                                   Zustand = 'Leerlauf';
                                   } else if (result[20].value == 2) {
                                   Zustand = 'Anfahren';
                                   } else if (result[20].value == 3) {
                                   Zustand = 'Einspeisen MPP';
                                   } else if (result[20].value == 4) {
                                   Zustand = 'Einspeisen abgeregelt';
                                   } else if (result[20].value == 7) {
                                   Zustand = 'Isolationsmessung';
                                   } else {
                                   Zustand = (String('Code ') + String('' + result[20].value));
                                   }
                               
                           		
                           		
                                   setState('Solaranlage.Momentanwerte.Leistung_DC_aktuell', result[0].value || 0, true);
                                   setState('Solaranlage.Momentanwerte.Leistung_AC_aktuell', result[1].value || 0, true);
                                   setState('Solaranlage.Momentanwerte.Eigenverbrauch', result[2].value || 0, true);
                                   setState('Solaranlage.Summenwerte.Eigenverbrauch_d', result[3].value || 0, true);
                                   setState('Solaranlage.Summenwerte.Eigenverbrauch_G', result[4].value || 0, true);
                                   setState('Solaranlage.Summenwerte.Eigenverbrauchsquote_d', result[5].value || 0, true);
                                   setState('Solaranlage.Summenwerte.Eigenverbrauchsquote_G', result[6].value || 0, true);
                                   setState('Solaranlage.Summenwerte.Tagesertrag', result[7].value || 0, true);
                                   setState('Solaranlage.Summenwerte.Gesamtertrag', result[8].value || 0, true);
                                   setState('Solaranlage.Summenwerte.Hausverbrauch_d', result[9].value || 0, true);
                                   setState('Solaranlage.Summenwerte.Hausverbrauch_G', result[10].value || 0, true);
                                   setState('Solaranlage.Summenwerte.Autarkiegrad_G', result[11].value || 0, true);
                                   setState('Solaranlage.Summenwerte.Autarkiegrad_d', result[12].value || 0, true);
                                   setState('Solaranlage.Summenwerte.Betriebszeit', result[13].value || 0, true);
                                   setState('Solaranlage.Momentanwerte.P1Spannung', result[14].value || 0, true);
                                   setState('Solaranlage.Momentanwerte.P2Spannung', result[15].value || 0, true);
                                   setState('Solaranlage.Momentanwerte.P1Strom', result[16].value || 0, true);
                                   setState('Solaranlage.Momentanwerte.P2Strom', result[17].value || 0, true);
                                   setState('Solaranlage.Momentanwerte.P1Leistung', result[18].value || 0, true);
                                   setState('Solaranlage.Momentanwerte.P2Leistung', result[19].value || 0, true);
                                   setState('Solaranlage.Momentanwerte.Status', Zustand || 0, true);
                                   setState('Solaranlage.Momentanwerte.Leistung_String1', result[21].value || 0, true);
                                   setState('Solaranlage.Momentanwerte.Leistung_String2', result[22].value || 0, true);
                               } else {
                                   log("Fehler: " + error + " bei Abfrage von: " + url, "warn");
                               }
                           });
                        }
                        
                        schedule("*/11 * 5-23 * * *", Piko);
                        //on('smartmeter.0.1-0:16_7_0__255.value', Piko); // triggert bei Wertänderung;
                        
                        

                        Gruß
                        Martin


                        Intel NUCs mit Proxmox / Iobroker als VM unter Debian
                        Raspeberry mit USB Leseköpfen für Smartmeter
                        Homematic und Homematic IP

                        HomoranH 1 Reply Last reply
                        0
                        • M MartyBr

                          @homoran
                          das hier:

                          Alle Werte kommen bis auf die Werte vom String 3:

                          
                          // Ausleseskript Wechselrichter Kostal Piko ab Firmware v05.31 (12.10.2015)
                          
                          //Variable
                          
                          var url = '192.168.178.77'; // IP der Photovoltaik-Anlage eintragen
                          var IPAnlage = url + '/api/dxs.json'; 
                          
                          //Leistungswerte
                             ID_DCEingangGesamt = 33556736;         // in W
                             ID_Ausgangsleistung = 67109120;        // in W
                             ID_Eigenverbrauch = 83888128;          // in W
                             
                             //Status
                             ID_Status = 16780032;                  // 0:Off
                             
                             //Statistik - Tag
                             ID_Ertrag_d = 251658754;               // in Wh
                             ID_Hausverbrauch_d = 251659010;        // in Wh
                             ID_Eigenverbrauch_d = 251659266;       // in Wh
                             ID_Eigenverbrauchsquote_d = 251659278; // in %
                             ID_Autarkiegrad_d = 251659279;         // in %
                             
                             //Statistik - Gesamt
                             ID_Ertrag_G = 251658753;               // in kWh
                             ID_Hausverbrauch_G = 251659009;        // in kWh
                             ID_Eigenverbrauch_G = 251659265;       // in kWh
                             ID_Eigenverbrauchsquote_G = 251659280; // in %
                             ID_Autarkiegrad_G = 251659281;         // in %
                             ID_Betriebszeit = 251658496;           // in h
                             
                             //Momentanwerte - PV Generator
                             ID_DC1Spannung = 33555202;             // in V
                             ID_DC1Strom = 33555201;                // in A
                             ID_DC1Leistung = 33555203;             // in W
                             ID_DC2Spannung = 33555458;             // in V
                             ID_DC2Strom = 33555457;                // in A
                             ID_DC2Leistung = 33555459;             // in W
                             
                             //Momentanwerte Haus
                             ID_HausverbrauchSolar = 83886336;      // in W
                             ID_HausverbrauchBatterie = 83886592;   // in W
                             ID_HausverbrauchNetz = 83886848;       // in W
                             ID_HausverbrauchPhase1 = 83887106;     // in W
                             ID_HausverbrauchPhase2 = 83887362;     // in W
                             ID_HausverbrauchPhase3 = 83887618;     // in W
                             
                             //Netz Netzparameter
                             ID_NetzAusgangLeistung = 67109120;     // in W
                             ID_NetzFrequenz = 67110400;            // in Hz
                             ID_NetzCosPhi = 67110656;
                             
                             //Netz Phase 1
                             ID_P1Spannung = 67109378;              // in V
                             ID_P1Strom = 67109377;                 // in A
                             ID_P1Leistung = 67109379;              // in W
                             
                             //Netz Phase 2
                             ID_P2Spannung = 67109634;              // in V
                             ID_P2Strom = 67109633;                 // in A
                             ID_P2Leistung = 67109635;              // in W
                             
                             //Netz Phase 3
                             ID_P3Spannung = 67109890;              // in V
                             ID_P3Strom = 67109889;                 // in A
                             ID_P3Leistung = 67109891;              // in W
                          
                          
                          
                          
                          
                          
                          
                          createState('Solaranlage.Momentanwerte.Leistung_AC_aktuell', 0);
                          createState('Solaranlage.Summenwerte.Autarkiegrad_d',0);
                          createState('Solaranlage.Summenwerte.Autarkiegrad_G',0);
                          createState('Solaranlage.Summenwerte.Betriebszeit',0);
                          createState('Solaranlage.Momentanwerte.Status','aus');
                          createState('Solaranlage.Momentanwerte.Leistung_DC_aktuell',0);
                          createState('Solaranlage.Momentanwerte.Eigenverbrauch',0);
                          createState('Solaranlage.Summenwerte.Eigenverbrauch_d');
                          createState('Solaranlage.Summenwerte.Eigenverbrauch_G', 0);
                          createState('Solaranlage.Summenwerte.Eigenverbrauchsquote_d', 0);
                          createState('Solaranlage.Summenwerte.Eigenverbrauchsquote_G', 0);
                          createState('Solaranlage.Summenwerte.Tagesertrag', 0);
                          createState('Solaranlage.Summenwerte.Gesamtertrag', 0);
                          createState('Solaranlage.Summenwerte.Hausverbrauch_d', 0);
                          createState('Solaranlage.Summenwerte.Hausverbrauch_G', 0);
                          createState('Solaranlage.Momentanwerte.P1Spannung');
                          createState('Solaranlage.Momentanwerte.P2Spannung');
                          createState('Solaranlage.Momentanwerte.P1Strom');
                          createState('Solaranlage.Momentanwerte.P2Strom');
                          createState('Solaranlage.Momentanwerte.P1Leistung');
                          createState('Solaranlage.Momentanwerte.P2Leistung');
                          createState('Solaranlage.Momentanwerte.Leistung_String1');
                          createState('Solaranlage.Momentanwerte.Leistung_String2');
                          
                          
                          var logging = false;
                          var request = require('request');
                          
                          function Piko() {
                             if (logging) log("Piko 5.5 auslesen");
                             request('http://' + IPAnlage + 
                             '?dxsEntries=' + ID_DCEingangGesamt +
                             '&dxsEntries=' + ID_Ausgangsleistung +
                             '&dxsEntries=' + ID_Eigenverbrauch +
                             '&dxsEntries=' + ID_Eigenverbrauch_d +
                             '&dxsEntries=' + ID_Eigenverbrauch_G +
                             '&dxsEntries=' + ID_Eigenverbrauchsquote_d +
                             '&dxsEntries=' + ID_Eigenverbrauchsquote_G +
                             '&dxsEntries=' + ID_Ertrag_d +
                             '&dxsEntries=' + ID_Ertrag_G +
                             '&dxsEntries=' + ID_Hausverbrauch_d +
                             '&dxsEntries=' + ID_Hausverbrauch_G +
                             '&dxsEntries=' + ID_Autarkiegrad_G +
                             '&dxsEntries=' + ID_Autarkiegrad_d +
                             '&dxsEntries=' + ID_Betriebszeit +
                             '&dxsEntries=' + ID_P1Spannung +
                             '&dxsEntries=' + ID_P2Spannung +
                             '&dxsEntries=' + ID_P1Strom +
                             '&dxsEntries=' + ID_P2Strom +
                             '&dxsEntries=' + ID_P1Leistung +
                             '&dxsEntries=' + ID_P2Leistung +
                             '&dxsEntries=' + ID_Status +
                             '&dxsEntries=' + ID_DC1Leistung +
                             '&dxsEntries=' + ID_DC2Leistung,
                             
                             function (error, response, body) {
                                 if(!error && response.statusCode ==200) {
                                     if(logging) log(body);
                                     var result = JSON.parse(body).dxsEntries;
                             		
                             		var Zustand = 'aus';
                          
                             		if (result[20].val == 0) {
                                     Zustand = 'aus';
                                     } else if (result[20].value== 1) {
                                     Zustand = 'Leerlauf';
                                     } else if (result[20].value == 2) {
                                     Zustand = 'Anfahren';
                                     } else if (result[20].value == 3) {
                                     Zustand = 'Einspeisen MPP';
                                     } else if (result[20].value == 4) {
                                     Zustand = 'Einspeisen abgeregelt';
                                     } else if (result[20].value == 7) {
                                     Zustand = 'Isolationsmessung';
                                     } else {
                                     Zustand = (String('Code ') + String('' + result[20].value));
                                     }
                                 
                             		
                             		
                                     setState('Solaranlage.Momentanwerte.Leistung_DC_aktuell', result[0].value || 0, true);
                                     setState('Solaranlage.Momentanwerte.Leistung_AC_aktuell', result[1].value || 0, true);
                                     setState('Solaranlage.Momentanwerte.Eigenverbrauch', result[2].value || 0, true);
                                     setState('Solaranlage.Summenwerte.Eigenverbrauch_d', result[3].value || 0, true);
                                     setState('Solaranlage.Summenwerte.Eigenverbrauch_G', result[4].value || 0, true);
                                     setState('Solaranlage.Summenwerte.Eigenverbrauchsquote_d', result[5].value || 0, true);
                                     setState('Solaranlage.Summenwerte.Eigenverbrauchsquote_G', result[6].value || 0, true);
                                     setState('Solaranlage.Summenwerte.Tagesertrag', result[7].value || 0, true);
                                     setState('Solaranlage.Summenwerte.Gesamtertrag', result[8].value || 0, true);
                                     setState('Solaranlage.Summenwerte.Hausverbrauch_d', result[9].value || 0, true);
                                     setState('Solaranlage.Summenwerte.Hausverbrauch_G', result[10].value || 0, true);
                                     setState('Solaranlage.Summenwerte.Autarkiegrad_G', result[11].value || 0, true);
                                     setState('Solaranlage.Summenwerte.Autarkiegrad_d', result[12].value || 0, true);
                                     setState('Solaranlage.Summenwerte.Betriebszeit', result[13].value || 0, true);
                                     setState('Solaranlage.Momentanwerte.P1Spannung', result[14].value || 0, true);
                                     setState('Solaranlage.Momentanwerte.P2Spannung', result[15].value || 0, true);
                                     setState('Solaranlage.Momentanwerte.P1Strom', result[16].value || 0, true);
                                     setState('Solaranlage.Momentanwerte.P2Strom', result[17].value || 0, true);
                                     setState('Solaranlage.Momentanwerte.P1Leistung', result[18].value || 0, true);
                                     setState('Solaranlage.Momentanwerte.P2Leistung', result[19].value || 0, true);
                                     setState('Solaranlage.Momentanwerte.Status', Zustand || 0, true);
                                     setState('Solaranlage.Momentanwerte.Leistung_String1', result[21].value || 0, true);
                                     setState('Solaranlage.Momentanwerte.Leistung_String2', result[22].value || 0, true);
                                 } else {
                                     log("Fehler: " + error + " bei Abfrage von: " + url, "warn");
                                 }
                             });
                          }
                          
                          schedule("*/11 * 5-23 * * *", Piko);
                          //on('smartmeter.0.1-0:16_7_0__255.value', Piko); // triggert bei Wertänderung;
                          
                          
                          HomoranH Do not disturb
                          HomoranH Do not disturb
                          Homoran
                          Global Moderator Administrators
                          wrote on last edited by
                          #236

                          @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

                          das hier:

                          das gehört aber hier "eigentlich" nicht rein

                          @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

                          Alle Werte kommen bis auf die Werte vom String 3:

                          den hat mein WR ja auch nicht geliefert.

                          dazu brauche ich, was das Skript aus deinem WR abruft

                          kein Support per PN! - Fragen im Forum stellen -
                          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                          Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton im Header. Danke!
                          der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                          M 1 Reply Last reply
                          0
                          • HomoranH Homoran

                            @martybr nee, taugt alles nichts.

                            ich galube das ist hier auch der falsche Thread.
                            bin aber auch nicht mehr sicher, weil es immer drüber und drunter geht.

                            Zumindest anfangs ging es um die FW <5.3

                            @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

                            Die Firmware vom Piko ist die 6.11.

                            sollte damit nicht funktionieren.

                            welches Script nutzst du denn genau?

                            M Offline
                            M Offline
                            MartyBr
                            wrote on last edited by
                            #237

                            @homoran

                            Ich habe in diesem "Test-Script" die Werte für den String 3 ergänzt. Es kommen da leider Errors, meine angepasste Version läuft nicht:

                            
                            // Ausleseskript Wechselrichter Kostal Piko ab Firmware v05.31 (12.10.2015)
                            
                            //Variable
                            
                            var url = '192.168.178.77'; // IP der Photovoltaik-Anlage eintragen
                            var IPAnlage = url + '/api/dxs.json'; 
                            
                            //Leistungswerte
                               ID_DCEingangGesamt = 33556736;         // in W
                               ID_Ausgangsleistung = 67109120;        // in W
                               ID_Eigenverbrauch = 83888128;          // in W
                               
                               //Status
                               ID_Status = 16780032;                  // 0:Off
                               
                               //Statistik - Tag
                               ID_Ertrag_d = 251658754;               // in Wh
                               ID_Hausverbrauch_d = 251659010;        // in Wh
                               ID_Eigenverbrauch_d = 251659266;       // in Wh
                               ID_Eigenverbrauchsquote_d = 251659278; // in %
                               ID_Autarkiegrad_d = 251659279;         // in %
                               
                               //Statistik - Gesamt
                               ID_Ertrag_G = 251658753;               // in kWh
                               ID_Hausverbrauch_G = 251659009;        // in kWh
                               ID_Eigenverbrauch_G = 251659265;       // in kWh
                               ID_Eigenverbrauchsquote_G = 251659280; // in %
                               ID_Autarkiegrad_G = 251659281;         // in %
                               ID_Betriebszeit = 251658496;           // in h
                               
                               //Momentanwerte - PV Generator
                               ID_DC1Spannung = 33555202;             // in V
                               ID_DC1Strom = 33555201;                // in A
                               ID_DC1Leistung = 33555203;             // in W
                               ID_DC2Spannung = 33555458;             // in V
                               ID_DC2Strom = 33555457;                // in A
                               ID_DC2Leistung = 33555459;             // in W
                               
                               //Momentanwerte Haus
                               ID_HausverbrauchSolar = 83886336;      // in W
                               ID_HausverbrauchBatterie = 83886592;   // in W
                               ID_HausverbrauchNetz = 83886848;       // in W
                               ID_HausverbrauchPhase1 = 83887106;     // in W
                               ID_HausverbrauchPhase2 = 83887362;     // in W
                               ID_HausverbrauchPhase3 = 83887618;     // in W
                               
                               //Netz Netzparameter
                               ID_NetzAusgangLeistung = 67109120;     // in W
                               ID_NetzFrequenz = 67110400;            // in Hz
                               ID_NetzCosPhi = 67110656;
                               
                               //Netz Phase 1
                               ID_P1Spannung = 67109378;              // in V
                               ID_P1Strom = 67109377;                 // in A
                               ID_P1Leistung = 67109379;              // in W
                               
                               //Netz Phase 2
                               ID_P2Spannung = 67109634;              // in V
                               ID_P2Strom = 67109633;                 // in A
                               ID_P2Leistung = 67109635;              // in W
                               
                               //Netz Phase 3
                               ID_P3Spannung = 67109890;              // in V
                               ID_P3Strom = 67109889;                 // in A
                               ID_P3Leistung = 67109891;              // in W
                            
                            
                            
                            
                            
                            
                            
                            createState('Solaranlage.Momentanwerte.Leistung_AC_aktuell', 0);
                            createState('Solaranlage.Summenwerte.Autarkiegrad_d',0);
                            createState('Solaranlage.Summenwerte.Autarkiegrad_G',0);
                            createState('Solaranlage.Summenwerte.Betriebszeit',0);
                            createState('Solaranlage.Momentanwerte.Status','aus');
                            createState('Solaranlage.Momentanwerte.Leistung_DC_aktuell',0);
                            createState('Solaranlage.Momentanwerte.Eigenverbrauch',0);
                            createState('Solaranlage.Summenwerte.Eigenverbrauch_d');
                            createState('Solaranlage.Summenwerte.Eigenverbrauch_G', 0);
                            createState('Solaranlage.Summenwerte.Eigenverbrauchsquote_d', 0);
                            createState('Solaranlage.Summenwerte.Eigenverbrauchsquote_G', 0);
                            createState('Solaranlage.Summenwerte.Tagesertrag', 0);
                            createState('Solaranlage.Summenwerte.Gesamtertrag', 0);
                            createState('Solaranlage.Summenwerte.Hausverbrauch_d', 0);
                            createState('Solaranlage.Summenwerte.Hausverbrauch_G', 0);
                            createState('Solaranlage.Momentanwerte.P1Spannung');
                            createState('Solaranlage.Momentanwerte.P2Spannung');
                            createState('Solaranlage.Momentanwerte.P3Spannung');
                            createState('Solaranlage.Momentanwerte.P1Strom');
                            createState('Solaranlage.Momentanwerte.P2Strom');
                            createState('Solaranlage.Momentanwerte.P3Strom');
                            createState('Solaranlage.Momentanwerte.P1Leistung');
                            createState('Solaranlage.Momentanwerte.P2Leistung');
                            createState('Solaranlage.Momentanwerte.P3Leistung');
                            createState('Solaranlage.Momentanwerte.Leistung_String1');
                            createState('Solaranlage.Momentanwerte.Leistung_String2');
                            createState('Solaranlage.Momentanwerte.Leistung_String3');
                            
                            
                            var logging = false;
                            var request = require('request');
                            
                            function Piko() {
                               if (logging) log("Piko 5.5 auslesen");
                               request('http://' + IPAnlage + 
                               '?dxsEntries=' + ID_DCEingangGesamt +
                               '&dxsEntries=' + ID_Ausgangsleistung +
                               '&dxsEntries=' + ID_Eigenverbrauch +
                               '&dxsEntries=' + ID_Eigenverbrauch_d +
                               '&dxsEntries=' + ID_Eigenverbrauch_G +
                               '&dxsEntries=' + ID_Eigenverbrauchsquote_d +
                               '&dxsEntries=' + ID_Eigenverbrauchsquote_G +
                               '&dxsEntries=' + ID_Ertrag_d +
                               '&dxsEntries=' + ID_Ertrag_G +
                               '&dxsEntries=' + ID_Hausverbrauch_d +
                               '&dxsEntries=' + ID_Hausverbrauch_G +
                               '&dxsEntries=' + ID_Autarkiegrad_G +
                               '&dxsEntries=' + ID_Autarkiegrad_d +
                               '&dxsEntries=' + ID_Betriebszeit +
                               '&dxsEntries=' + ID_P1Spannung +
                               '&dxsEntries=' + ID_P2Spannung +
                               '&dxsEntries=' + ID_P1Strom +
                               '&dxsEntries=' + ID_P2Strom +
                               '&dxsEntries=' + ID_P1Leistung +
                               '&dxsEntries=' + ID_P2Leistung +
                               '&dxsEntries=' + ID_Status +
                               '&dxsEntries=' + ID_DC1Leistung +
                               '&dxsEntries=' + ID_DC2Leistung +
                               '&dxsEntries=' + ID_P3Spannung +    // 23
                               '&dxsEntries=' + ID_P3Strom +       // 24
                               '&dxsEntries=' + ID_DC3Leistung,    //25
                               
                               function (error, response, body) {
                                   if(!error && response.statusCode ==200) {
                                       if(logging) log(body);
                                       var result = JSON.parse(body).dxsEntries;
                               		
                               		var Zustand = 'aus';
                            
                               		if (result[20].val == 0) {
                                       Zustand = 'aus';
                                       } else if (result[20].value== 1) {
                                       Zustand = 'Leerlauf';
                                       } else if (result[20].value == 2) {
                                       Zustand = 'Anfahren';
                                       } else if (result[20].value == 3) {
                                       Zustand = 'Einspeisen MPP';
                                       } else if (result[20].value == 4) {
                                       Zustand = 'Einspeisen abgeregelt';
                                       } else if (result[20].value == 7) {
                                       Zustand = 'Isolationsmessung';
                                       } else {
                                       Zustand = (String('Code ') + String('' + result[20].value));
                                       }
                                   
                               		
                               		
                                       setState('Solaranlage.Momentanwerte.Leistung_DC_aktuell', result[0].value || 0, true);
                                       setState('Solaranlage.Momentanwerte.Leistung_AC_aktuell', result[1].value || 0, true);
                                       setState('Solaranlage.Momentanwerte.Eigenverbrauch', result[2].value || 0, true);
                                       setState('Solaranlage.Summenwerte.Eigenverbrauch_d', result[3].value || 0, true);
                                       setState('Solaranlage.Summenwerte.Eigenverbrauch_G', result[4].value || 0, true);
                                       setState('Solaranlage.Summenwerte.Eigenverbrauchsquote_d', result[5].value || 0, true);
                                       setState('Solaranlage.Summenwerte.Eigenverbrauchsquote_G', result[6].value || 0, true);
                                       setState('Solaranlage.Summenwerte.Tagesertrag', result[7].value || 0, true);
                                       setState('Solaranlage.Summenwerte.Gesamtertrag', result[8].value || 0, true);
                                       setState('Solaranlage.Summenwerte.Hausverbrauch_d', result[9].value || 0, true);
                                       setState('Solaranlage.Summenwerte.Hausverbrauch_G', result[10].value || 0, true);
                                       setState('Solaranlage.Summenwerte.Autarkiegrad_G', result[11].value || 0, true);
                                       setState('Solaranlage.Summenwerte.Autarkiegrad_d', result[12].value || 0, true);
                                       setState('Solaranlage.Summenwerte.Betriebszeit', result[13].value || 0, true);
                                       setState('Solaranlage.Momentanwerte.P1Spannung', result[14].value || 0, true);
                                       setState('Solaranlage.Momentanwerte.P2Spannung', result[15].value || 0, true);
                                       setState('Solaranlage.Momentanwerte.P1Strom', result[16].value || 0, true);
                                       setState('Solaranlage.Momentanwerte.P2Strom', result[17].value || 0, true);
                                       setState('Solaranlage.Momentanwerte.P1Leistung', result[18].value || 0, true);
                                       setState('Solaranlage.Momentanwerte.P2Leistung', result[19].value || 0, true);
                                       setState('Solaranlage.Momentanwerte.Status', Zustand || 0, true);
                                       setState('Solaranlage.Momentanwerte.Leistung_String1', result[21].value || 0, true);
                                       setState('Solaranlage.Momentanwerte.Leistung_String2', result[22].value || 0, true);
                                       setState('Solaranlage.Momentanwerte.P3Spannung', result[23].value || 0, true);
                                       setState('Solaranlage.Momentanwerte.P3Strom', result[24].value || 0, true);
                                       setState('Solaranlage.Momentanwerte.Leistung_String3', result[25].value || 0, true);
                                   } else {
                                       log("Fehler: " + error + " bei Abfrage von: " + url, "warn");
                                   }
                               });
                            }
                            
                            schedule("*/11 * 5-23 * * *", Piko);
                            //on('smartmeter.0.1-0:16_7_0__255.value', Piko); // triggert bei Wertänderung;
                            
                            

                            Liefert Fehler:

                            15:59:11.002 error javascript.0 (1899) at Object.Piko (script.js.Photovoltaik.Kostal-Piko-Test:133:21)
                            15:59:22.001 error javascript.0 (1899) at Object.Piko (script.js.Photovoltaik.Kostal-Piko-Test:133:21)
                            15:59:33.002 error javascript.0 (1899) at Object.Piko (script.js.Photovoltaik.Kostal-Piko-Test:133:21)

                            Gruß
                            Martin


                            Intel NUCs mit Proxmox / Iobroker als VM unter Debian
                            Raspeberry mit USB Leseköpfen für Smartmeter
                            Homematic und Homematic IP

                            HomoranH 1 Reply Last reply
                            0
                            • HomoranH Homoran

                              @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

                              das hier:

                              das gehört aber hier "eigentlich" nicht rein

                              @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

                              Alle Werte kommen bis auf die Werte vom String 3:

                              den hat mein WR ja auch nicht geliefert.

                              dazu brauche ich, was das Skript aus deinem WR abruft

                              M Offline
                              M Offline
                              MartyBr
                              wrote on last edited by
                              #238

                              @homoran

                              Meinst du die Datenpunkte?

                              Bildschirmfoto 2021-10-04 um 16.02.32.png

                              Gruß
                              Martin


                              Intel NUCs mit Proxmox / Iobroker als VM unter Debian
                              Raspeberry mit USB Leseköpfen für Smartmeter
                              Homematic und Homematic IP

                              M 1 Reply Last reply
                              0
                              • M MartyBr

                                @homoran

                                Ich habe in diesem "Test-Script" die Werte für den String 3 ergänzt. Es kommen da leider Errors, meine angepasste Version läuft nicht:

                                
                                // Ausleseskript Wechselrichter Kostal Piko ab Firmware v05.31 (12.10.2015)
                                
                                //Variable
                                
                                var url = '192.168.178.77'; // IP der Photovoltaik-Anlage eintragen
                                var IPAnlage = url + '/api/dxs.json'; 
                                
                                //Leistungswerte
                                   ID_DCEingangGesamt = 33556736;         // in W
                                   ID_Ausgangsleistung = 67109120;        // in W
                                   ID_Eigenverbrauch = 83888128;          // in W
                                   
                                   //Status
                                   ID_Status = 16780032;                  // 0:Off
                                   
                                   //Statistik - Tag
                                   ID_Ertrag_d = 251658754;               // in Wh
                                   ID_Hausverbrauch_d = 251659010;        // in Wh
                                   ID_Eigenverbrauch_d = 251659266;       // in Wh
                                   ID_Eigenverbrauchsquote_d = 251659278; // in %
                                   ID_Autarkiegrad_d = 251659279;         // in %
                                   
                                   //Statistik - Gesamt
                                   ID_Ertrag_G = 251658753;               // in kWh
                                   ID_Hausverbrauch_G = 251659009;        // in kWh
                                   ID_Eigenverbrauch_G = 251659265;       // in kWh
                                   ID_Eigenverbrauchsquote_G = 251659280; // in %
                                   ID_Autarkiegrad_G = 251659281;         // in %
                                   ID_Betriebszeit = 251658496;           // in h
                                   
                                   //Momentanwerte - PV Generator
                                   ID_DC1Spannung = 33555202;             // in V
                                   ID_DC1Strom = 33555201;                // in A
                                   ID_DC1Leistung = 33555203;             // in W
                                   ID_DC2Spannung = 33555458;             // in V
                                   ID_DC2Strom = 33555457;                // in A
                                   ID_DC2Leistung = 33555459;             // in W
                                   
                                   //Momentanwerte Haus
                                   ID_HausverbrauchSolar = 83886336;      // in W
                                   ID_HausverbrauchBatterie = 83886592;   // in W
                                   ID_HausverbrauchNetz = 83886848;       // in W
                                   ID_HausverbrauchPhase1 = 83887106;     // in W
                                   ID_HausverbrauchPhase2 = 83887362;     // in W
                                   ID_HausverbrauchPhase3 = 83887618;     // in W
                                   
                                   //Netz Netzparameter
                                   ID_NetzAusgangLeistung = 67109120;     // in W
                                   ID_NetzFrequenz = 67110400;            // in Hz
                                   ID_NetzCosPhi = 67110656;
                                   
                                   //Netz Phase 1
                                   ID_P1Spannung = 67109378;              // in V
                                   ID_P1Strom = 67109377;                 // in A
                                   ID_P1Leistung = 67109379;              // in W
                                   
                                   //Netz Phase 2
                                   ID_P2Spannung = 67109634;              // in V
                                   ID_P2Strom = 67109633;                 // in A
                                   ID_P2Leistung = 67109635;              // in W
                                   
                                   //Netz Phase 3
                                   ID_P3Spannung = 67109890;              // in V
                                   ID_P3Strom = 67109889;                 // in A
                                   ID_P3Leistung = 67109891;              // in W
                                
                                
                                
                                
                                
                                
                                
                                createState('Solaranlage.Momentanwerte.Leistung_AC_aktuell', 0);
                                createState('Solaranlage.Summenwerte.Autarkiegrad_d',0);
                                createState('Solaranlage.Summenwerte.Autarkiegrad_G',0);
                                createState('Solaranlage.Summenwerte.Betriebszeit',0);
                                createState('Solaranlage.Momentanwerte.Status','aus');
                                createState('Solaranlage.Momentanwerte.Leistung_DC_aktuell',0);
                                createState('Solaranlage.Momentanwerte.Eigenverbrauch',0);
                                createState('Solaranlage.Summenwerte.Eigenverbrauch_d');
                                createState('Solaranlage.Summenwerte.Eigenverbrauch_G', 0);
                                createState('Solaranlage.Summenwerte.Eigenverbrauchsquote_d', 0);
                                createState('Solaranlage.Summenwerte.Eigenverbrauchsquote_G', 0);
                                createState('Solaranlage.Summenwerte.Tagesertrag', 0);
                                createState('Solaranlage.Summenwerte.Gesamtertrag', 0);
                                createState('Solaranlage.Summenwerte.Hausverbrauch_d', 0);
                                createState('Solaranlage.Summenwerte.Hausverbrauch_G', 0);
                                createState('Solaranlage.Momentanwerte.P1Spannung');
                                createState('Solaranlage.Momentanwerte.P2Spannung');
                                createState('Solaranlage.Momentanwerte.P3Spannung');
                                createState('Solaranlage.Momentanwerte.P1Strom');
                                createState('Solaranlage.Momentanwerte.P2Strom');
                                createState('Solaranlage.Momentanwerte.P3Strom');
                                createState('Solaranlage.Momentanwerte.P1Leistung');
                                createState('Solaranlage.Momentanwerte.P2Leistung');
                                createState('Solaranlage.Momentanwerte.P3Leistung');
                                createState('Solaranlage.Momentanwerte.Leistung_String1');
                                createState('Solaranlage.Momentanwerte.Leistung_String2');
                                createState('Solaranlage.Momentanwerte.Leistung_String3');
                                
                                
                                var logging = false;
                                var request = require('request');
                                
                                function Piko() {
                                   if (logging) log("Piko 5.5 auslesen");
                                   request('http://' + IPAnlage + 
                                   '?dxsEntries=' + ID_DCEingangGesamt +
                                   '&dxsEntries=' + ID_Ausgangsleistung +
                                   '&dxsEntries=' + ID_Eigenverbrauch +
                                   '&dxsEntries=' + ID_Eigenverbrauch_d +
                                   '&dxsEntries=' + ID_Eigenverbrauch_G +
                                   '&dxsEntries=' + ID_Eigenverbrauchsquote_d +
                                   '&dxsEntries=' + ID_Eigenverbrauchsquote_G +
                                   '&dxsEntries=' + ID_Ertrag_d +
                                   '&dxsEntries=' + ID_Ertrag_G +
                                   '&dxsEntries=' + ID_Hausverbrauch_d +
                                   '&dxsEntries=' + ID_Hausverbrauch_G +
                                   '&dxsEntries=' + ID_Autarkiegrad_G +
                                   '&dxsEntries=' + ID_Autarkiegrad_d +
                                   '&dxsEntries=' + ID_Betriebszeit +
                                   '&dxsEntries=' + ID_P1Spannung +
                                   '&dxsEntries=' + ID_P2Spannung +
                                   '&dxsEntries=' + ID_P1Strom +
                                   '&dxsEntries=' + ID_P2Strom +
                                   '&dxsEntries=' + ID_P1Leistung +
                                   '&dxsEntries=' + ID_P2Leistung +
                                   '&dxsEntries=' + ID_Status +
                                   '&dxsEntries=' + ID_DC1Leistung +
                                   '&dxsEntries=' + ID_DC2Leistung +
                                   '&dxsEntries=' + ID_P3Spannung +    // 23
                                   '&dxsEntries=' + ID_P3Strom +       // 24
                                   '&dxsEntries=' + ID_DC3Leistung,    //25
                                   
                                   function (error, response, body) {
                                       if(!error && response.statusCode ==200) {
                                           if(logging) log(body);
                                           var result = JSON.parse(body).dxsEntries;
                                   		
                                   		var Zustand = 'aus';
                                
                                   		if (result[20].val == 0) {
                                           Zustand = 'aus';
                                           } else if (result[20].value== 1) {
                                           Zustand = 'Leerlauf';
                                           } else if (result[20].value == 2) {
                                           Zustand = 'Anfahren';
                                           } else if (result[20].value == 3) {
                                           Zustand = 'Einspeisen MPP';
                                           } else if (result[20].value == 4) {
                                           Zustand = 'Einspeisen abgeregelt';
                                           } else if (result[20].value == 7) {
                                           Zustand = 'Isolationsmessung';
                                           } else {
                                           Zustand = (String('Code ') + String('' + result[20].value));
                                           }
                                       
                                   		
                                   		
                                           setState('Solaranlage.Momentanwerte.Leistung_DC_aktuell', result[0].value || 0, true);
                                           setState('Solaranlage.Momentanwerte.Leistung_AC_aktuell', result[1].value || 0, true);
                                           setState('Solaranlage.Momentanwerte.Eigenverbrauch', result[2].value || 0, true);
                                           setState('Solaranlage.Summenwerte.Eigenverbrauch_d', result[3].value || 0, true);
                                           setState('Solaranlage.Summenwerte.Eigenverbrauch_G', result[4].value || 0, true);
                                           setState('Solaranlage.Summenwerte.Eigenverbrauchsquote_d', result[5].value || 0, true);
                                           setState('Solaranlage.Summenwerte.Eigenverbrauchsquote_G', result[6].value || 0, true);
                                           setState('Solaranlage.Summenwerte.Tagesertrag', result[7].value || 0, true);
                                           setState('Solaranlage.Summenwerte.Gesamtertrag', result[8].value || 0, true);
                                           setState('Solaranlage.Summenwerte.Hausverbrauch_d', result[9].value || 0, true);
                                           setState('Solaranlage.Summenwerte.Hausverbrauch_G', result[10].value || 0, true);
                                           setState('Solaranlage.Summenwerte.Autarkiegrad_G', result[11].value || 0, true);
                                           setState('Solaranlage.Summenwerte.Autarkiegrad_d', result[12].value || 0, true);
                                           setState('Solaranlage.Summenwerte.Betriebszeit', result[13].value || 0, true);
                                           setState('Solaranlage.Momentanwerte.P1Spannung', result[14].value || 0, true);
                                           setState('Solaranlage.Momentanwerte.P2Spannung', result[15].value || 0, true);
                                           setState('Solaranlage.Momentanwerte.P1Strom', result[16].value || 0, true);
                                           setState('Solaranlage.Momentanwerte.P2Strom', result[17].value || 0, true);
                                           setState('Solaranlage.Momentanwerte.P1Leistung', result[18].value || 0, true);
                                           setState('Solaranlage.Momentanwerte.P2Leistung', result[19].value || 0, true);
                                           setState('Solaranlage.Momentanwerte.Status', Zustand || 0, true);
                                           setState('Solaranlage.Momentanwerte.Leistung_String1', result[21].value || 0, true);
                                           setState('Solaranlage.Momentanwerte.Leistung_String2', result[22].value || 0, true);
                                           setState('Solaranlage.Momentanwerte.P3Spannung', result[23].value || 0, true);
                                           setState('Solaranlage.Momentanwerte.P3Strom', result[24].value || 0, true);
                                           setState('Solaranlage.Momentanwerte.Leistung_String3', result[25].value || 0, true);
                                       } else {
                                           log("Fehler: " + error + " bei Abfrage von: " + url, "warn");
                                       }
                                   });
                                }
                                
                                schedule("*/11 * 5-23 * * *", Piko);
                                //on('smartmeter.0.1-0:16_7_0__255.value', Piko); // triggert bei Wertänderung;
                                
                                

                                Liefert Fehler:

                                15:59:11.002 error javascript.0 (1899) at Object.Piko (script.js.Photovoltaik.Kostal-Piko-Test:133:21)
                                15:59:22.001 error javascript.0 (1899) at Object.Piko (script.js.Photovoltaik.Kostal-Piko-Test:133:21)
                                15:59:33.002 error javascript.0 (1899) at Object.Piko (script.js.Photovoltaik.Kostal-Piko-Test:133:21)

                                HomoranH Do not disturb
                                HomoranH Do not disturb
                                Homoran
                                Global Moderator Administrators
                                wrote on last edited by Homoran
                                #239

                                @martybr sagte in Status vom Kostal Wechselrichter auslesen?:

                                die Werte für den String 3 ergänzt

                                wo?
                                ich sehe die ID für den String 3 nicht.
                                Woher hast du denn diese Zaahl

                                kein Support per PN! - Fragen im Forum stellen -
                                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                                Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton im Header. Danke!
                                der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                1 Reply Last reply
                                0
                                • M MartyBr

                                  @homoran

                                  Meinst du die Datenpunkte?

                                  Bildschirmfoto 2021-10-04 um 16.02.32.png

                                  M Offline
                                  M Offline
                                  MartyBr
                                  wrote on last edited by
                                  #240

                                  @Homoran

                                  Hier noch Log-Meldungen:

                                  
                                  javascript.0
                                  2021-10-04 16:08:22.003	error	at processTimers (internal/timers.js:500:7)
                                  
                                  javascript.0
                                  2021-10-04 16:08:22.002	error	at listOnTimeout (internal/timers.js:557:17)
                                  
                                  javascript.0
                                  2021-10-04 16:08:22.002	error	at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:228:7)
                                  
                                  javascript.0
                                  2021-10-04 16:08:22.002	error	at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:268:28
                                  
                                  javascript.0
                                  2021-10-04 16:08:22.002	error	at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Job.js:168:15)
                                  
                                  javascript.0
                                  2021-10-04 16:08:22.002	error	at Job.job (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1313:34)
                                  
                                  javascript.0
                                  2021-10-04 16:08:22.002	error	at Object.Piko (script.js.Photovoltaik.Kostal-Piko-Test:133:21)
                                  
                                  javascript.0
                                  2021-10-04 16:08:22.002	error	Error in callback: ReferenceError: ID_DC3Leistung is not defined
                                  
                                  javascript.0
                                  2021-10-04 16:08:11.003	error	at processTimers (internal/timers.js:500:7)
                                  
                                  javascript.0
                                  2021-10-04 16:08:11.003	error	at listOnTimeout (internal/timers.js:557:17)
                                  
                                  javascript.0
                                  2021-10-04 16:08:11.003	error	at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:228:7)
                                  
                                  javascript.0
                                  2021-10-04 16:08:11.003	error	at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:268:28
                                  
                                  javascript.0
                                  2021-10-04 16:08:11.003	error	at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Job.js:168:15)
                                  
                                  javascript.0
                                  2021-10-04 16:08:11.003	error	at Job.job (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1313:34)
                                  
                                  javascript.0
                                  2021-10-04 16:08:11.003	error	at Object.Piko (script.js.Photovoltaik.Kostal-Piko-Test:133:21)
                                  
                                  javascript.0
                                  2021-10-04 16:08:11.002	error	Error in callback: ReferenceError: ID_DC3Leistung is not defined
                                  
                                  javascript.0
                                  2021-10-04 16:08:11.003	error	at processTimers (internal/timers.js:500:7)
                                  
                                  javascript.0
                                  2021-10-04 16:08:11.003	error	at listOnTimeout (internal/timers.js:557:17)
                                  
                                  javascript.0
                                  2021-10-04 16:08:11.003	error	at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:228:7)
                                  
                                  javascript.0
                                  2021-10-04 16:08:11.003	error	at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:268:28
                                  
                                  javascript.0
                                  2021-10-04 16:08:11.003	error	at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Job.js:168:15)
                                  
                                  javascript.0
                                  2021-10-04 16:08:11.003	error	at Job.job (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1313:34)
                                  
                                  javascript.0
                                  2021-10-04 16:08:11.003	error	at Object.Piko (script.js.Photovoltaik.Kostal-Piko-Test:133:21)
                                  
                                  javascript.0
                                  2021-10-04 16:08:11.002	error	Error in callback: ReferenceError: ID_DC3Leistung is not defined
                                  
                                  

                                  Gruß
                                  Martin


                                  Intel NUCs mit Proxmox / Iobroker als VM unter Debian
                                  Raspeberry mit USB Leseköpfen für Smartmeter
                                  Homematic und Homematic IP

                                  HomoranH 2 Replies Last reply
                                  0
                                  • M MartyBr

                                    @Homoran

                                    Hier noch Log-Meldungen:

                                    
                                    javascript.0
                                    2021-10-04 16:08:22.003	error	at processTimers (internal/timers.js:500:7)
                                    
                                    javascript.0
                                    2021-10-04 16:08:22.002	error	at listOnTimeout (internal/timers.js:557:17)
                                    
                                    javascript.0
                                    2021-10-04 16:08:22.002	error	at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:228:7)
                                    
                                    javascript.0
                                    2021-10-04 16:08:22.002	error	at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:268:28
                                    
                                    javascript.0
                                    2021-10-04 16:08:22.002	error	at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Job.js:168:15)
                                    
                                    javascript.0
                                    2021-10-04 16:08:22.002	error	at Job.job (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1313:34)
                                    
                                    javascript.0
                                    2021-10-04 16:08:22.002	error	at Object.Piko (script.js.Photovoltaik.Kostal-Piko-Test:133:21)
                                    
                                    javascript.0
                                    2021-10-04 16:08:22.002	error	Error in callback: ReferenceError: ID_DC3Leistung is not defined
                                    
                                    javascript.0
                                    2021-10-04 16:08:11.003	error	at processTimers (internal/timers.js:500:7)
                                    
                                    javascript.0
                                    2021-10-04 16:08:11.003	error	at listOnTimeout (internal/timers.js:557:17)
                                    
                                    javascript.0
                                    2021-10-04 16:08:11.003	error	at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:228:7)
                                    
                                    javascript.0
                                    2021-10-04 16:08:11.003	error	at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:268:28
                                    
                                    javascript.0
                                    2021-10-04 16:08:11.003	error	at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Job.js:168:15)
                                    
                                    javascript.0
                                    2021-10-04 16:08:11.003	error	at Job.job (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1313:34)
                                    
                                    javascript.0
                                    2021-10-04 16:08:11.003	error	at Object.Piko (script.js.Photovoltaik.Kostal-Piko-Test:133:21)
                                    
                                    javascript.0
                                    2021-10-04 16:08:11.002	error	Error in callback: ReferenceError: ID_DC3Leistung is not defined
                                    
                                    javascript.0
                                    2021-10-04 16:08:11.003	error	at processTimers (internal/timers.js:500:7)
                                    
                                    javascript.0
                                    2021-10-04 16:08:11.003	error	at listOnTimeout (internal/timers.js:557:17)
                                    
                                    javascript.0
                                    2021-10-04 16:08:11.003	error	at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:228:7)
                                    
                                    javascript.0
                                    2021-10-04 16:08:11.003	error	at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:268:28
                                    
                                    javascript.0
                                    2021-10-04 16:08:11.003	error	at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Job.js:168:15)
                                    
                                    javascript.0
                                    2021-10-04 16:08:11.003	error	at Job.job (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1313:34)
                                    
                                    javascript.0
                                    2021-10-04 16:08:11.003	error	at Object.Piko (script.js.Photovoltaik.Kostal-Piko-Test:133:21)
                                    
                                    javascript.0
                                    2021-10-04 16:08:11.002	error	Error in callback: ReferenceError: ID_DC3Leistung is not defined
                                    
                                    
                                    HomoranH Do not disturb
                                    HomoranH Do not disturb
                                    Homoran
                                    Global Moderator Administrators
                                    wrote on last edited by
                                    #241

                                    @martybr was ergibt bei dir:

                                    <IP>/api/dxs.json?dxsEntries=33555459

                                    kein Support per PN! - Fragen im Forum stellen -
                                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                                    Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton im Header. Danke!
                                    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                    M 1 Reply Last reply
                                    0
                                    • HomoranH Homoran

                                      @martybr was ergibt bei dir:

                                      <IP>/api/dxs.json?dxsEntries=33555459

                                      M Offline
                                      M Offline
                                      MartyBr
                                      wrote on last edited by
                                      #242

                                      @homoran sagte in Status vom Kostal Wechselrichter auslesen?:

                                      <IP>/api/dxs.json?dxsEntries=33555459

                                      {"dxsEntries":[{"dxsId":33555459,"value":163.961151}],"session":{"sessionId":0,"roleId":0},"status":{"code":0}}
                                      

                                      Gruß
                                      Martin


                                      Intel NUCs mit Proxmox / Iobroker als VM unter Debian
                                      Raspeberry mit USB Leseköpfen für Smartmeter
                                      Homematic und Homematic IP

                                      GlasfaserG HomoranH 2 Replies Last reply
                                      0
                                      • M MartyBr

                                        @Homoran

                                        Hier noch Log-Meldungen:

                                        
                                        javascript.0
                                        2021-10-04 16:08:22.003	error	at processTimers (internal/timers.js:500:7)
                                        
                                        javascript.0
                                        2021-10-04 16:08:22.002	error	at listOnTimeout (internal/timers.js:557:17)
                                        
                                        javascript.0
                                        2021-10-04 16:08:22.002	error	at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:228:7)
                                        
                                        javascript.0
                                        2021-10-04 16:08:22.002	error	at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:268:28
                                        
                                        javascript.0
                                        2021-10-04 16:08:22.002	error	at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Job.js:168:15)
                                        
                                        javascript.0
                                        2021-10-04 16:08:22.002	error	at Job.job (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1313:34)
                                        
                                        javascript.0
                                        2021-10-04 16:08:22.002	error	at Object.Piko (script.js.Photovoltaik.Kostal-Piko-Test:133:21)
                                        
                                        javascript.0
                                        2021-10-04 16:08:22.002	error	Error in callback: ReferenceError: ID_DC3Leistung is not defined
                                        
                                        javascript.0
                                        2021-10-04 16:08:11.003	error	at processTimers (internal/timers.js:500:7)
                                        
                                        javascript.0
                                        2021-10-04 16:08:11.003	error	at listOnTimeout (internal/timers.js:557:17)
                                        
                                        javascript.0
                                        2021-10-04 16:08:11.003	error	at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:228:7)
                                        
                                        javascript.0
                                        2021-10-04 16:08:11.003	error	at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:268:28
                                        
                                        javascript.0
                                        2021-10-04 16:08:11.003	error	at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Job.js:168:15)
                                        
                                        javascript.0
                                        2021-10-04 16:08:11.003	error	at Job.job (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1313:34)
                                        
                                        javascript.0
                                        2021-10-04 16:08:11.003	error	at Object.Piko (script.js.Photovoltaik.Kostal-Piko-Test:133:21)
                                        
                                        javascript.0
                                        2021-10-04 16:08:11.002	error	Error in callback: ReferenceError: ID_DC3Leistung is not defined
                                        
                                        javascript.0
                                        2021-10-04 16:08:11.003	error	at processTimers (internal/timers.js:500:7)
                                        
                                        javascript.0
                                        2021-10-04 16:08:11.003	error	at listOnTimeout (internal/timers.js:557:17)
                                        
                                        javascript.0
                                        2021-10-04 16:08:11.003	error	at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:228:7)
                                        
                                        javascript.0
                                        2021-10-04 16:08:11.003	error	at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Invocation.js:268:28
                                        
                                        javascript.0
                                        2021-10-04 16:08:11.003	error	at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/Job.js:168:15)
                                        
                                        javascript.0
                                        2021-10-04 16:08:11.003	error	at Job.job (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1313:34)
                                        
                                        javascript.0
                                        2021-10-04 16:08:11.003	error	at Object.Piko (script.js.Photovoltaik.Kostal-Piko-Test:133:21)
                                        
                                        javascript.0
                                        2021-10-04 16:08:11.002	error	Error in callback: ReferenceError: ID_DC3Leistung is not defined
                                        
                                        
                                        HomoranH Do not disturb
                                        HomoranH Do not disturb
                                        Homoran
                                        Global Moderator Administrators
                                        wrote on last edited by Homoran
                                        #243

                                        @martybr

                                        // Ausleseskript Wechselrichter Kostal Piko ab Firmware v05.31 (12.10.2015)
                                        
                                        //Variable
                                        
                                        var url = '192.168.178.77'; // IP der Photovoltaik-Anlage eintragen
                                        var IPAnlage = url + '/api/dxs.json'; 
                                        
                                        //Leistungswerte
                                           ID_DCEingangGesamt = 33556736;         // in W
                                           ID_Ausgangsleistung = 67109120;        // in W
                                           ID_Eigenverbrauch = 83888128;          // in W
                                           
                                           //Status
                                           ID_Status = 16780032;                  // 0:Off
                                           
                                           //Statistik - Tag
                                           ID_Ertrag_d = 251658754;               // in Wh
                                           ID_Hausverbrauch_d = 251659010;        // in Wh
                                           ID_Eigenverbrauch_d = 251659266;       // in Wh
                                           ID_Eigenverbrauchsquote_d = 251659278; // in %
                                           ID_Autarkiegrad_d = 251659279;         // in %
                                           
                                           //Statistik - Gesamt
                                           ID_Ertrag_G = 251658753;               // in kWh
                                           ID_Hausverbrauch_G = 251659009;        // in kWh
                                           ID_Eigenverbrauch_G = 251659265;       // in kWh
                                           ID_Eigenverbrauchsquote_G = 251659280; // in %
                                           ID_Autarkiegrad_G = 251659281;         // in %
                                           ID_Betriebszeit = 251658496;           // in h
                                           
                                           //Momentanwerte - PV Generator
                                           ID_DC1Spannung = 33555202;             // in V
                                           ID_DC1Strom = 33555201;                // in A
                                           ID_DC1Leistung = 33555203;             // in W
                                           ID_DC2Spannung = 33555458;             // in V
                                           ID_DC2Strom = 33555457;                // in A
                                           ID_DC2Leistung = 33555459;             // in W
                                           ID_DC3Spannung = 33555714;             // in V
                                           ID_DC3Strom = 33555713;                // in A
                                           ID_DC3Leistung = 33555715;             // in W
                                           
                                           //Momentanwerte Haus
                                           ID_HausverbrauchSolar = 83886336;      // in W
                                           ID_HausverbrauchBatterie = 83886592;   // in W
                                           ID_HausverbrauchNetz = 83886848;       // in W
                                           ID_HausverbrauchPhase1 = 83887106;     // in W
                                           ID_HausverbrauchPhase2 = 83887362;     // in W
                                           ID_HausverbrauchPhase3 = 83887618;     // in W
                                           
                                           //Netz Netzparameter
                                           ID_NetzAusgangLeistung = 67109120;     // in W
                                           ID_NetzFrequenz = 67110400;            // in Hz
                                           ID_NetzCosPhi = 67110656;
                                           
                                           //Netz Phase 1
                                           ID_P1Spannung = 67109378;              // in V
                                           ID_P1Strom = 67109377;                 // in A
                                           ID_P1Leistung = 67109379;              // in W
                                           
                                           //Netz Phase 2
                                           ID_P2Spannung = 67109634;              // in V
                                           ID_P2Strom = 67109633;                 // in A
                                           ID_P2Leistung = 67109635;              // in W
                                           
                                           //Netz Phase 3
                                           ID_P3Spannung = 67109890;              // in V
                                           ID_P3Strom = 67109889;                 // in A
                                           ID_P3Leistung = 67109891;              // in W
                                        
                                        
                                        
                                        
                                        
                                        
                                        
                                        createState('Solaranlage.Momentanwerte.Leistung_AC_aktuell', 0);
                                        createState('Solaranlage.Summenwerte.Autarkiegrad_d',0);
                                        createState('Solaranlage.Summenwerte.Autarkiegrad_G',0);
                                        createState('Solaranlage.Summenwerte.Betriebszeit',0);
                                        createState('Solaranlage.Momentanwerte.Status','aus');
                                        createState('Solaranlage.Momentanwerte.Leistung_DC_aktuell',0);
                                        createState('Solaranlage.Momentanwerte.Eigenverbrauch',0);
                                        createState('Solaranlage.Summenwerte.Eigenverbrauch_d');
                                        createState('Solaranlage.Summenwerte.Eigenverbrauch_G', 0);
                                        createState('Solaranlage.Summenwerte.Eigenverbrauchsquote_d', 0);
                                        createState('Solaranlage.Summenwerte.Eigenverbrauchsquote_G', 0);
                                        createState('Solaranlage.Summenwerte.Tagesertrag', 0);
                                        createState('Solaranlage.Summenwerte.Gesamtertrag', 0);
                                        createState('Solaranlage.Summenwerte.Hausverbrauch_d', 0);
                                        createState('Solaranlage.Summenwerte.Hausverbrauch_G', 0);
                                        createState('Solaranlage.Momentanwerte.P1Spannung');
                                        createState('Solaranlage.Momentanwerte.P2Spannung');
                                        createState('Solaranlage.Momentanwerte.P3Spannung');
                                        createState('Solaranlage.Momentanwerte.P1Strom');
                                        createState('Solaranlage.Momentanwerte.P2Strom');
                                        createState('Solaranlage.Momentanwerte.P3Strom');
                                        createState('Solaranlage.Momentanwerte.P1Leistung');
                                        createState('Solaranlage.Momentanwerte.P2Leistung');
                                        createState('Solaranlage.Momentanwerte.P3Leistung');
                                        createState('Solaranlage.Momentanwerte.Leistung_String1');
                                        createState('Solaranlage.Momentanwerte.Leistung_String2');
                                        createState('Solaranlage.Momentanwerte.Leistung_String3');
                                        
                                        
                                        var logging = false;
                                        var request = require('request');
                                        
                                        function Piko() {
                                           if (logging) log("Piko 5.5 auslesen");
                                           request('http://' + IPAnlage + 
                                           '?dxsEntries=' + ID_DCEingangGesamt +
                                           '&dxsEntries=' + ID_Ausgangsleistung +
                                           '&dxsEntries=' + ID_Eigenverbrauch +
                                           '&dxsEntries=' + ID_Eigenverbrauch_d +
                                           '&dxsEntries=' + ID_Eigenverbrauch_G +
                                           '&dxsEntries=' + ID_Eigenverbrauchsquote_d +
                                           '&dxsEntries=' + ID_Eigenverbrauchsquote_G +
                                           '&dxsEntries=' + ID_Ertrag_d +
                                           '&dxsEntries=' + ID_Ertrag_G +
                                           '&dxsEntries=' + ID_Hausverbrauch_d +
                                           '&dxsEntries=' + ID_Hausverbrauch_G +
                                           '&dxsEntries=' + ID_Autarkiegrad_G +
                                           '&dxsEntries=' + ID_Autarkiegrad_d +
                                           '&dxsEntries=' + ID_Betriebszeit +
                                           '&dxsEntries=' + ID_P1Spannung +
                                           '&dxsEntries=' + ID_P2Spannung +
                                           '&dxsEntries=' + ID_P1Strom +
                                           '&dxsEntries=' + ID_P2Strom +
                                           '&dxsEntries=' + ID_P1Leistung +
                                           '&dxsEntries=' + ID_P2Leistung +
                                           '&dxsEntries=' + ID_Status +
                                           '&dxsEntries=' + ID_DC1Leistung +
                                           '&dxsEntries=' + ID_DC2Leistung +
                                           '&dxsEntries=' + ID_P3Spannung +    // 23
                                           '&dxsEntries=' + ID_P3Strom +       // 24
                                           '&dxsEntries=' + ID_DC3Leistung,    //25
                                           
                                           function (error, response, body) {
                                               if(!error && response.statusCode ==200) {
                                                   if(logging) log(body);
                                                   var result = JSON.parse(body).dxsEntries;
                                           		
                                           		var Zustand = 'aus';
                                        
                                           		if (result[20].val == 0) {
                                                   Zustand = 'aus';
                                                   } else if (result[20].value== 1) {
                                                   Zustand = 'Leerlauf';
                                                   } else if (result[20].value == 2) {
                                                   Zustand = 'Anfahren';
                                                   } else if (result[20].value == 3) {
                                                   Zustand = 'Einspeisen MPP';
                                                   } else if (result[20].value == 4) {
                                                   Zustand = 'Einspeisen abgeregelt';
                                                   } else if (result[20].value == 7) {
                                                   Zustand = 'Isolationsmessung';
                                                   } else {
                                                   Zustand = (String('Code ') + String('' + result[20].value));
                                                   }
                                               
                                           		
                                           		
                                                   setState('Solaranlage.Momentanwerte.Leistung_DC_aktuell', result[0].value || 0, true);
                                                   setState('Solaranlage.Momentanwerte.Leistung_AC_aktuell', result[1].value || 0, true);
                                                   setState('Solaranlage.Momentanwerte.Eigenverbrauch', result[2].value || 0, true);
                                                   setState('Solaranlage.Summenwerte.Eigenverbrauch_d', result[3].value || 0, true);
                                                   setState('Solaranlage.Summenwerte.Eigenverbrauch_G', result[4].value || 0, true);
                                                   setState('Solaranlage.Summenwerte.Eigenverbrauchsquote_d', result[5].value || 0, true);
                                                   setState('Solaranlage.Summenwerte.Eigenverbrauchsquote_G', result[6].value || 0, true);
                                                   setState('Solaranlage.Summenwerte.Tagesertrag', result[7].value || 0, true);
                                                   setState('Solaranlage.Summenwerte.Gesamtertrag', result[8].value || 0, true);
                                                   setState('Solaranlage.Summenwerte.Hausverbrauch_d', result[9].value || 0, true);
                                                   setState('Solaranlage.Summenwerte.Hausverbrauch_G', result[10].value || 0, true);
                                                   setState('Solaranlage.Summenwerte.Autarkiegrad_G', result[11].value || 0, true);
                                                   setState('Solaranlage.Summenwerte.Autarkiegrad_d', result[12].value || 0, true);
                                                   setState('Solaranlage.Summenwerte.Betriebszeit', result[13].value || 0, true);
                                                   setState('Solaranlage.Momentanwerte.P1Spannung', result[14].value || 0, true);
                                                   setState('Solaranlage.Momentanwerte.P2Spannung', result[15].value || 0, true);
                                                   setState('Solaranlage.Momentanwerte.P1Strom', result[16].value || 0, true);
                                                   setState('Solaranlage.Momentanwerte.P2Strom', result[17].value || 0, true);
                                                   setState('Solaranlage.Momentanwerte.P1Leistung', result[18].value || 0, true);
                                                   setState('Solaranlage.Momentanwerte.P2Leistung', result[19].value || 0, true);
                                                   setState('Solaranlage.Momentanwerte.Status', Zustand || 0, true);
                                                   setState('Solaranlage.Momentanwerte.Leistung_String1', result[21].value || 0, true);
                                                   setState('Solaranlage.Momentanwerte.Leistung_String2', result[22].value || 0, true);
                                                   setState('Solaranlage.Momentanwerte.P3Spannung', result[23].value || 0, true);
                                                   setState('Solaranlage.Momentanwerte.P3Strom', result[24].value || 0, true);
                                                   setState('Solaranlage.Momentanwerte.Leistung_String3', result[25].value || 0, true);
                                               } else {
                                                   log("Fehler: " + error + " bei Abfrage von: " + url, "warn");
                                               }
                                           });
                                        }
                                        
                                        schedule("*/11 * 5-23 * * *", Piko);
                                        //on('smartmeter.0.1-0:16_7_0__255.value', Piko); // triggert bei Wertänderung;
                                        

                                        kein Support per PN! - Fragen im Forum stellen -
                                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                                        Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton im Header. Danke!
                                        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                        1 Reply Last reply
                                        0
                                        • M MartyBr

                                          @homoran sagte in Status vom Kostal Wechselrichter auslesen?:

                                          <IP>/api/dxs.json?dxsEntries=33555459

                                          {"dxsEntries":[{"dxsId":33555459,"value":163.961151}],"session":{"sessionId":0,"roleId":0},"status":{"code":0}}
                                          
                                          GlasfaserG Offline
                                          GlasfaserG Offline
                                          Glasfaser
                                          wrote on last edited by
                                          #244

                                          @martybr
                                          ID_DC3Leistung fehlt

                                           //Momentanwerte - PV Generator
                                             ID_DC1Spannung = 33555202;             // in V
                                             ID_DC1Strom = 33555201;                // in A
                                             ID_DC1Leistung = 33555203;             // in W
                                             ID_DC2Spannung = 33555458;             // in V
                                             ID_DC2Strom = 33555457;                // in A
                                             ID_DC2Leistung = 33555459;             // in W
                                             ID_DC3Leistung =                              // in W
                                          

                                          Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                                          HomoranH 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

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

                                          321

                                          Online

                                          32.7k

                                          Users

                                          82.5k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe