Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Matzes

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    M
    • Profile
    • Following 0
    • Followers 0
    • Topics 1
    • Posts 11
    • Best 0
    • Groups 0

    Matzes

    @Matzes

    0
    Reputation
    45
    Profile views
    11
    Posts
    0
    Followers
    0
    Following
    Joined Last Online

    Matzes Follow

    Latest posts made by Matzes

    • RE: IoBroker.vis Android App

      Hallo,

      Mit meinem Samsung Tab 3 10.1 (Android 4.2.2) habe ich seit kurzem ein bischen Theater mit der APP.

      In der Version 1.0x hatte ich das Problem, dass die Beschreibungen in der APP eingezeigt wurden, obwohl der Haken anzeigen deaktiviert wurde. Im Browser tritt dieses Problem nicht auf. Auch sind nur Widgets betroffen, die ich "in der letzten Zeit" bearbeitet habe. Alle anderen Objekte, die ich nicht "angefasst habe", haben das Problem in der App nicht. Da ich jedoch immer wieder Objekte bearbeite wurden es immer mehr Objekte, die die "häßliche" Beschreibung anzeigen. Mit dem "Workaround" die Beschreibung nur mit einem Leerzeichen zu versehen werden "immerhin" nur die grauen Hintergrundschatten angezeigt, jedoch stören diese mich ebenfalls.

      Die Anzeige am Notebook im Browser ist in Ordnung. Ebenfalls auf dem Android Handy im Browser.

      -> muss also folglich an der APP liegen

      Deshalb habe ich auf die Version 1.1.1 upgedatet.

      In der Version 1.1.1 werden die Beschreibungen nicht mehr angezeigt, somit dieses Problem behoben. Liegt wohl an der APP Version in Verbdinung mit der VIS Version (1.1.4).

      Jedoch werden in dieser Version nun plötzlich meine Video/Kamerastreams (Axis) nicht mehr angezeigt (Eingebunden über ein Basic -iframe). An der Konfig habe dazwischen ich nichts verändert. Im Browser sind die Streams diese weiterhin zu sehen. Nur nicht in der APP.

      App wieder deinstalliert.

      Also habe ich mir die APK 1.0 gezogen und installiert (leider keine andere APK Version vor 1.1.1 gefunden).

      Nun sind die Streams wieder zu sehen, dafür sind aber auch wieder die Schatten der Beschreibungen vorhanden.

      Hatte jemand schon ähnliche Probleme?

      Was könnte ich noch versuchen?

      Hat jemand noch eine Version zwischen 1.0 und 1.1.1 als APK, damit ich diese testen kann?

      P.S. Auf meinem Androidhandy (7.1.2) habe ich die APP mit der Version 1.1.1 am laufen. Hier funktioniert alles….

      Somit liegt es an der Kombination Androidversion und APP ?!?

      Grüße,

      Mathias

      posted in Visualisierung
      M
      Matzes
    • RE: Neato Botvac Connected Adapter

      Hallo Eisbaeer,

      wäre es möglich deine VIS Oberfläche für den VR200 zubekommen?

      Ich habe mit den beschriebenen Modifikationen meinen VR200 ebenfalls verbunden bekommen.

      Gruß,

      Matze

      posted in ioBroker Allgemein
      M
      Matzes
    • RE: Suntrol STL200 auslesen und Werte an HomeMatic übergeben

      Ich lese bereits Werte des STL200 über Node-Red aus.

      http://forum.iobroker.net/viewtopic.php … 867#p51867

      posted in ioBroker Allgemein
      M
      Matzes
    • RE: Daten aus einer .js verwenden (Suntrol Datenlogger STL200)

      Hi,

      der aktuelle Verbrauch entspricht dem von mir ausgelesenen Wert PacArr.

      Ich lese den aktuellen Ertrag über die Webseite meines PIKO WR. Ist hier ebenfalls im Forum beschrieben. Wenn du noch Bedarf hast kann ich mir ansehen wie man den aktuellen Ertrag über Node-Red ausliest.

      Gruß,

      Matze

      posted in Skripten / Logik
      M
      Matzes
    • RE: Neato Botvac Connected Adapter

      Hallo Pman,

      wäre klasse wenn du den Adapter um den Vorwerk VR200 erweitern könntest.

      Für FHEM wurde dies schon vorgenommen. Als Basis hat ebenfalls die Arbeit vn Kangguru gedient.

      https://raw.githubusercontent.com/vuffi … _BOTVAC.pm

      Gruß,

      Matze

      posted in ioBroker Allgemein
      M
      Matzes
    • RE: IoBroker.solarwetter Adapter ersetzt Skript

      Hallo Pix,

      kannst du in den Adapter noch die Rundung auf 2 Kommastellen einbauen?

      Ich hatte dies im Skript bereits umgesetzt. Würde jedoch gerne auf deinen Adapter umsteigen.

      var emin = Math.round(p * rmin * 100) / 100;

      var emax = Math.round(p * rmax * 100) / 100;

      var eclear = Math.round(p * c * 100) / 100;

      setState('SolarWetter.PrognoseSkyMax', emax);

      if (logging) log('PrognoseSkyMax: ' + emax);

      setState('SolarWetter.PrognoseSkyMin', emin);

      if (logging) log('PrognoseSkyMin: ' + emin);

      setState('SolarWetter.PrognoseClearSky', eclear);

      if (logging) log('PrognoseClearSky: ' + eclear);

      Gruß,

      Matze

      posted in ioBroker Allgemein
      M
      Matzes
    • RE: Poll Error und Reconnect DB

      Hallo,

      ich habe die gleichen Probleme auf meinem Raspi 2 seit dem ich auf die neusten versionen upgedatet habe.

      Die Load des Raspi ist nicht besonders hoch und trotzdem "hängt sich iobroker regelmäßig auf".

      Gruß,

      Matze

      posted in Error/Bug
      M
      Matzes
    • RE: Solarwetter

      Hi,

      vielen Dank für die tolle Arbeit von euch beiden.

      Ich hatte folgende Probleme mit dem Skript von Pix:

      • Das Datum wurde immer mit TT.05.2016 ausgegeben, ich habe im Skript das Datumsformat von TT.MM.JJJJ auf DD.TT.JJJJ angepasst. Nun funktioniert de Ausgabe bei mir korrekt.

      • Die Ausgabe des Maximumwertes wurde nicht zurückgeschrieben. Habe die Zeile "setState(idRealSkyMax, realsky_max); // Wert in Objekt schreiben" an der entsprechenden Stelle eingefügt

      Zusätzlich habe ich das Berechnungsskript von Marcolotti in das Skript integriert und für diese 3 Werte noch die Logausgabe eingebaut.

      /* Solar-Wetter.com Werte abfragen
      Auf diese Anfrage hin: http://forum.iobroker.net/viewtopic.php?f=32&t=2584#p22850
      
      Abfrage erstellt: 31.03.2016 von pix
      15.04.2016 Code optimiert, 
                 Zeitverzögerung zwischen dem Einlesen der Werte entfernt,
                 Quell-Webseite wird nur noch einmal aufrufen
      
      Prognose erstellt: 01.04.2016 von Marcolotti
      
      Skripte zusammengeführt: 01.05.2016 von MatzeS
      - Anpassung Datumsformat von TT auf DD
      - Anpassung findeWertRealskyMaximum das dieser Wert auch zurückgeschrieben wird
      - Integration der Berechnungsprognose inkl. Logging
      
      */
      
      var logging = true;
      var link = 'http://www.vorhersage-plz-bereich.solar-wetter.com/html/777.html';
      var p = 5.32; // Gesamtleistung der Anlage in kWP <- Anpassen an die eigene Anlage
      
      // ab hier nix mehr ändern, solange die Webseite die Daten nicht ändert
      
      createState('SolarWetter.PrognoseClearSky', 0, {
          name: 'Prognose PV-Anlage klar',
          desc: 'Tagesertrag bei klarem Himmel',
          type: 'number',
          unit: 'kWh'
      });
      createState('SolarWetter.PrognoseSkyMin', 0, {
          name: 'Prognose PV-Anlage min',
          desc: 'Tagesertrag minimum',
          type: 'number',
          unit: 'kWh'
      });
      createState('SolarWetter.PrognoseSkyMax', 0, {
          name: 'Prognose PV-Anlage max',
          desc: 'Tagesertrag Maximum',
          type: 'number',
          unit: 'kWh'
      });
      createState('SolarWetter.clearSky', 0, {
          name: 'Solar-Wetter.com clear Sky',
          desc: 'Solarleistung bei klarem Himmel',
          type: 'number',
          unit: 'kWh/kWp'
      });
      createState('SolarWetter.realSky_min', 0, {
          name: 'Solar-Wetter.com real Sky Minimum',
          desc: 'minimale Solarleistung bei jetzigem Himmel',
          type: 'number',
          unit: 'kWh/kWp'
      });
      createState('SolarWetter.realSky_max', 0, {
          name: 'Solar-Wetter.com real Sky Maximum',
          desc: 'maximale Solarleistung bei jetzigem Himmel',
          type: 'number',
          unit: 'kWh/kWp'
      });
      createState('SolarWetter.Datum', 0, {
          name: 'Solar-Wetter.com Datum der letzten Aktualisierung',
          desc: 'letzte Aktualisierung der Webseite',
          type: 'string'
      });
      
      var idClearSky =   'SolarWetter.clearSky',
          idRealSkyMin = 'SolarWetter.realSky_min',
          idRealSkyMax = 'SolarWetter.realSky_max',
          idDatum =      'SolarWetter.Datum';
      
      var request = require('request');
      
      function erstes_erstesAuftauchen(body,text1,text2) {
          var start = body.indexOf(text1) + text1.length;
          var ende = body.indexOf(text2);
          if (logging) log('Startposition: ' + start);
          if (logging) log('Endposition: ' + ende);
          var zwischenspeicher;
          if (((start != -1) && (ende != -1)) && (start<ende)) {/fehler/abfangen/zwischenspeicher="body.slice(start,ende);" if/(logging)/log(zwischenspeicher);/var/zwischenspeicher_array="zwischenspeicher.split(',');" teilen/vorm/komma/zwischenspeicher_array_vorn="zwischenspeicher_array[0].slice(zwischenspeicher_array[0].length-1,zwischenspeicher_array[0].length);" eine/stelle/log(zwischenspeicher_array_vorn);/zwischenspeicher_array_hinten="zwischenspeicher_array[1].slice(0,2);" zwei/stellen/nach/dem/log(zwischenspeicher_array_hinten);/return(parsefloat(zwischenspeicher_array_vorn/+/'.'/zwischenspeicher_array_hinten));/}/else/;/log(zwischenspeicher,/'error');/return(0);/function/erstes_letztesauftauchen(body,text1,text2)/start="body.indexOf(text1)" text1.length;/ende="body.lastIndexOf(text2);" letztes/auftauchen/log('startposition:/'/start);/log('endposition:/ende);/zwischenspeicher;/(((start/!="-1)" &&/(ende/(start<ende))/loesedatum/(body,text1)/-/5;/xx.xx.xxxx/((start/datum_array="zwischenspeicher.split('.');" xdatum="new" date();/log(datum_array[0]);log(datum_array[1]);log(datum_array[2]);/xdatum.setdate(datum_array[0]);/xdatum.setmonth(datum_array[1]-1);/xdatum.setfullyear(datum_array[2]);/log(xdatum);/return(formatdate(xdatum,/"dd.mm.jjjj"));/return(null);/findewertclearsky/(body)/text1="<td height=17 class=xl1525883 style='height:12.75pt'>clear sky:</td>" ,/erstes/text2="<td class=xl2425883>kWh/kWp</td>" clearsky="erstes_erstesAuftauchen(body,text1,text2);" log('clearsky:/clearsky);/setstate(idclearsky,/wert/in/objekt/schreiben/findewertrealskyminimum/realsky_min="erstes_erstesAuftauchen(body,text1,text2);" log('realskyminimum:/realsky_min);/setstate(idrealskymin,/findewertrealskymaximum/realsky_max="erstes_letztesAuftauchen(body,text1,text2);" log('realskymaximum:/realsky_max);/setstate(idrealskymax,/findedatum/jetzt="new" jahr="jetzt.getFullYear();" aktuelles/ermitteln/+'</td="">';                                 // erstes Auftauchen vom aktuellen Jahr finden
          var datum = loeseDatum(body,text1);
          if (logging) log('Datum: ' + datum);
          setState(idDatum, datum);                                       // Wert in Objekt schreiben
      }
      
      function Berechnung (body) {
          var rmin = getState("SolarWetter.realSky_min").val;
          var rmax = getState("SolarWetter.realSky_max").val;
          var c = getState("SolarWetter.clearSky").val;
      
          var emin = Math.round(p * rmin * 100) / 100;
          var emax = Math.round(p * rmax * 100) / 100;
          var eclear = Math.round(p * c * 100) / 100;
      
          setState('SolarWetter.PrognoseSkyMax', emax);
          if (logging) log('PrognoseSkyMax: ' + emax);
          setState('SolarWetter.PrognoseSkyMin', emin);
          if (logging) log('PrognoseSkyMin: ' + emin);
          setState('SolarWetter.PrognoseClearSky', eclear);
          if (logging) log('PrognoseClearSky: ' + eclear);
      }
      
      function leseWebseite () {
          try {
              request(link, function (error, response, body) {
                  if (!error && response.statusCode == 200) {              // kein Fehler, Inhalt in body
                      findeWertClearsky(body);
                      findeWertRealskyMinimum(body);
                      findeWertRealskyMaximum(body);
                      findeDatum(body);
                      Berechnung(body);
                  } else log(error,'error');                               // Error beim Einlesen
              });
          } catch (e) {
              log('Fehler (try) leseWebseite: ' + e, 'error');
          }   
      }
      
      // bei Skriptstart
      leseWebseite();
      
      // Schedule
      schedule("59 4 * * *", leseWebseite);</ende))>
      
      posted in Skripten / Logik
      M
      Matzes
    • RE: IoBroker.mobile

      Hallo,

      hab soeben mit der aktuellsten Version rumgespielt. Dabei habe ich es beim Versuch eine Bezeichnung zu ändern geschafft das ich einen Datenpunkt plötzlich doppelt gesehen hab (nachdem ich den EDIT Modus wieder geschlossen hatte). Beim Versuch das Missgeschick zu beheben kam bei jedem EDIT Versuch nochmals eine Datenzeile hinzu… siehe Screenshot. Das Problem ist das ich nun entweder alle Datenpunkte anzeigen muss (für die Jalousie links) oder alles ausgeblendet wird. Gibt es eine Möglichkeit das Problem zu beheben außer die komplette Konfig vom Mobile zu grillen?

      Gruß,

      Matze

      461_mobile.png

      posted in Visualisierung
      M
      Matzes
    • RE: Daten aus einer .js verwenden (Suntrol Datenlogger STL200)

      Es gibt wahrscheinlich deutlich einfachere Lösungen… aber es funktioniert 🙂

      Der Zahlenwert von PacArr (aktueller Verbrauch) aus der Datei min_cur.js wird ausgegeben.

      [{"id":"c38549e2.2b4d3","type":"http request","z":"47ffde65.d8b548","name":"","method":"GET","ret":"txt","url":"http://192.168.100.150/min_cur.js","x":359,"y":144,"wires":[["14fd5301.fb019d"]]},{"id":"14fd5301.fb019d","type":"csv","z":"47ffde65.d8b548","name":"","sep":"#","hdrin":false,"hdrout":"","multi":"one","ret":"\\n","temp":"","x":514,"y":144,"wires":[["56c84588.3f79bc"]]},{"id":"9dbb677b.04cc68","type":"debug","z":"47ffde65.d8b548","name":"","active":true,"console":"false","complete":"payload","x":677,"y":521,"wires":[]},{"id":"20fa4cd4.d126a4","type":"inject","z":"47ffde65.d8b548","name":"","topic":"","payload":"","payloadType":"none","repeat":"","crontab":"","once":false,"x":215,"y":144,"wires":[["c38549e2.2b4d3"]]},{"id":"56c84588.3f79bc","type":"contrib-json","z":"47ffde65.d8b548","engine":"JSONSelect","command":"jq","expr":":root > .col1","complete":"property","prop":"payload","name":"","x":670,"y":144,"wires":[["1434dacc.bbba45"]]},{"id":"1434dacc.bbba45","type":"switch","z":"47ffde65.d8b548","name":"","property":"payload","rules":[{"t":"cont","v":"var PacArr="}],"checkall":"false","outputs":1,"x":204,"y":258,"wires":[["120fc56.0302f3b"]]},{"id":"120fc56.0302f3b","type":"splitter","z":"47ffde65.d8b548","name":"","property":"payload","x":718,"y":253,"wires":[["3c86b62f.80e042"]]},{"id":"d760741b.a7ac18","type":"splitter","z":"47ffde65.d8b548","name":"","property":"payload","x":713,"y":341,"wires":[["b7fb999c.b130c8"]]},{"id":"3c86b62f.80e042","type":"string-split","z":"47ffde65.d8b548","name":"","source_object":"msg","source_property":"","target_object":"msg","target_property":"","split_on":"var PacArr= [[","x":535,"y":340,"wires":[["d760741b.a7ac18"]]},{"id":"eff0fe12.e0aff8","type":"string-split","z":"47ffde65.d8b548","name":"","source_object":"msg","source_property":"","target_object":"msg","target_property":"","split_on":"]","x":536,"y":414,"wires":[["88dbfbe6.4cfda8"]]},{"id":"b7fb999c.b130c8","type":"switch","z":"47ffde65.d8b548","name":"","property":"payload","rules":[{"t":"cont","v":"]];"}],"checkall":"true","outputs":1,"x":194,"y":412,"wires":[["98712918.d2b5e"]]},{"id":"530a8fbc.30c8f","type":"switch","z":"47ffde65.d8b548","name":"","property":"payload","rules":[{"t":"cont","v":"["},{"t":"gte","v":"0"},{"t":"cont","v":","}],"checkall":"true","outputs":3,"x":183,"y":522,"wires":[[],["9dbb677b.04cc68"],[]]},{"id":"88dbfbe6.4cfda8","type":"splitter","z":"47ffde65.d8b548","name":"","property":"payload","x":707,"y":412,"wires":[["530a8fbc.30c8f"]]},{"id":"98712918.d2b5e","type":"change","z":"47ffde65.d8b548","name":"","rules":[{"t":"change","p":"payload","from":"]];","to":"#","re":false}],"action":"","property":"","from":"","to":"","reg":false,"x":362,"y":413,"wires":[["eff0fe12.e0aff8"]]}]
      

      Und hier noch der Flow für das Auslesen des Tagesgesamtverbrauches aus der days.js

      [{"id":"7aec4a2b.f4aaf4","type":"http request","z":"47ffde65.d8b548","name":"","method":"GET","ret":"txt","url":"http://192.168.100.150/days.js","x":382,"y":1130,"wires":[["330d8bc8.57cf9c"]]},{"id":"53022e08.fef72","type":"debug","z":"47ffde65.d8b548","name":"","active":true,"console":"false","complete":"payload","x":1066,"y":1448,"wires":[]},{"id":"49123c17.c1f774","type":"inject","z":"47ffde65.d8b548","name":"","topic":"","payload":"","payloadType":"none","repeat":"","crontab":"","once":false,"x":238,"y":1130,"wires":[["7aec4a2b.f4aaf4"]]},{"id":"44b29e7c.6300d8","type":"splitter","z":"47ffde65.d8b548","name":"","property":"payload","x":777,"y":1131,"wires":[["8acb8b2f.336ad"]]},{"id":"361cafaa.503ba","type":"splitter","z":"47ffde65.d8b548","name":"","property":"payload","x":780,"y":1243,"wires":[["19ebd8d4.67e28f"]]},{"id":"330d8bc8.57cf9c","type":"string-split","z":"47ffde65.d8b548","name":"","source_object":"msg","source_property":"","target_object":"msg","target_property":"","split_on":"da[dx++]","x":597,"y":1127,"wires":[["44b29e7c.6300d8"]]},{"id":"8acb8b2f.336ad","type":"string-split","z":"47ffde65.d8b548","name":"","source_object":"msg","source_property":"","target_object":"msg","target_property":"","split_on":";","x":590,"y":1246,"wires":[["361cafaa.503ba"]]},{"id":"19ebd8d4.67e28f","type":"switch","z":"47ffde65.d8b548","name":"","property":"payload","rules":[{"t":"cont","v":"="}],"checkall":"false","outputs":1,"x":377,"y":1346,"wires":[["70bf053c.4aac54"]]},{"id":"2e7c78ff.16c058","type":"switch","z":"47ffde65.d8b548","name":"","property":"payload","rules":[{"t":"cont","v":"="},{"t":"else"}],"checkall":"true","outputs":2,"x":377,"y":1451,"wires":[[],["53022e08.fef72"]]},{"id":"70bf053c.4aac54","type":"string-split","z":"47ffde65.d8b548","name":"","source_object":"msg","source_property":"","target_object":"msg","target_property":"","split_on":"|","x":584,"y":1346,"wires":[["27f1be91.f77002"]]},{"id":"27f1be91.f77002","type":"splitter","z":"47ffde65.d8b548","name":"","property":"payload","x":777,"y":1348,"wires":[["2e7c78ff.16c058"]]}]
      

      Damit das ganze funktioniert müssen noch folgende Node-Red Pakete installiert werden:

      npm install node-red-contrib-splitter

      npm install node-red-contrib-primitives

      npm install node-red-contrib-json

      posted in Skripten / Logik
      M
      Matzes
    Community
    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
    The ioBroker Community 2014-2023
    logo