Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    13
    1
    113

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    561

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.7k

Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
1.0k Beiträge 16 Kommentatoren 249.7k Aufrufe 15 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • G GOETSCHHOFER

    @crunchip

    Vielen Dank für den Tipp !

    Meister MopperM Online
    Meister MopperM Online
    Meister Mopper
    schrieb am zuletzt editiert von
    #837

    @goetschhofer Du benötigst aber dann ein script, damit dies auch nach jedem upgrade wieder gesetzt wird.

    Proxmox und HA

    crunchipC 1 Antwort Letzte Antwort
    1
    • Meister MopperM Meister Mopper

      @goetschhofer Du benötigst aber dann ein script, damit dies auch nach jedem upgrade wieder gesetzt wird.

      crunchipC Abwesend
      crunchipC Abwesend
      crunchip
      Forum Testing Most Active
      schrieb am zuletzt editiert von
      #838

      @meister-mopper sagte in Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK:

      nach jedem upgrade

      Doch nur wenn sich auch die PVE Version ändert

      umgestiegen von Proxmox auf Unraid

      Meister MopperM 1 Antwort Letzte Antwort
      1
      • crunchipC crunchip

        @meister-mopper sagte in Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK:

        nach jedem upgrade

        Doch nur wenn sich auch die PVE Version ändert

        Meister MopperM Online
        Meister MopperM Online
        Meister Mopper
        schrieb am zuletzt editiert von
        #839

        @crunchip Ja klar, aber mit 'nem Script ist man immer auf der sicheren Seite :blush:

        Proxmox und HA

        G crunchipC 2 Antworten Letzte Antwort
        1
        • Meister MopperM Meister Mopper

          @crunchip Ja klar, aber mit 'nem Script ist man immer auf der sicheren Seite :blush:

          G Offline
          G Offline
          GOETSCHHOFER
          schrieb am zuletzt editiert von
          #840

          @meister-mopper said in Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK:

          @crunchip Ja klar, aber mit 'nem Script ist man immer auf der sicheren Seite :blush:

          Ich hätte dies jetzt jedesmal händisch durchgeführt, aber wenn dies mit einem Skript und damit komfortabler möglich ist, dann wäre dies eine effiziente Sache.

          Hättest du solch ein Skript für mich ?

          Danke im Voraus.

          Meister MopperM crunchipC 2 Antworten Letzte Antwort
          0
          • Meister MopperM Meister Mopper

            @crunchip Ja klar, aber mit 'nem Script ist man immer auf der sicheren Seite :blush:

            crunchipC Abwesend
            crunchipC Abwesend
            crunchip
            Forum Testing Most Active
            schrieb am zuletzt editiert von
            #841

            @meister-mopper sofern die Variante auch mit der zukünftigen Version funktioniert.

            So oft rufe ich die Seite nicht auf, von daher ist es mir egal, ob da ne Meldung kommt.

            Andernfalls zahlt man dafür, dann bekommt man auch im Zweifelsfall entsprechend Hilfe, direkt bei Proxmox

            umgestiegen von Proxmox auf Unraid

            1 Antwort Letzte Antwort
            0
            • G GOETSCHHOFER

              @meister-mopper said in Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK:

              @crunchip Ja klar, aber mit 'nem Script ist man immer auf der sicheren Seite :blush:

              Ich hätte dies jetzt jedesmal händisch durchgeführt, aber wenn dies mit einem Skript und damit komfortabler möglich ist, dann wäre dies eine effiziente Sache.

              Hättest du solch ein Skript für mich ?

              Danke im Voraus.

              Meister MopperM Online
              Meister MopperM Online
              Meister Mopper
              schrieb am zuletzt editiert von
              #842

              @goetschhofer

              Ein Verzeichnis erstellen, in dem Anpassungen gespeichert werden. Der Name ist egal.

              sudo mkdir /usr/share/custom

              Jetzt ein Script erstellen, dass die Anpassungen anwendet und anschließend ausführbar machen:

              sudo echo '#!/usr/bin/env bash' > /usr/share/custom/apply.sh

              sudo chmod a+x /usr/share/custom/apply.sh

              In das Script folgendes eintragen (hier können auch weitere Anpassungen, wie z. B. themes, reingeschrieben werden:

              sed -i.backup -z "s/res === null || res === undefined || \!res || res\n\t\t\t.data.status.toLowerCase() \!== 'active'/false/g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js && systemctl restart pveproxy.service

              Abschließend eine Datei erstellen, die apt sagt, dass es nach einem upgrade das Script startet:

              sudo echo 'DPkg::Post-Invoke { "/usr/share/custom/apply.sh"; };' > /etc/apt/apt.conf.d/90custom

              Jetzt wird /usr/share/custom/apply.sh ausgeführt, nachdem apt installiert oder upgradet.

              Sehr vorsichtig sein, was man in das script reinpackt, das kann fatale Folgen haben!!!

              Proxmox und HA

              G 1 Antwort Letzte Antwort
              1
              • G GOETSCHHOFER

                @meister-mopper said in Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK:

                @crunchip Ja klar, aber mit 'nem Script ist man immer auf der sicheren Seite :blush:

                Ich hätte dies jetzt jedesmal händisch durchgeführt, aber wenn dies mit einem Skript und damit komfortabler möglich ist, dann wäre dies eine effiziente Sache.

                Hättest du solch ein Skript für mich ?

                Danke im Voraus.

                crunchipC Abwesend
                crunchipC Abwesend
                crunchip
                Forum Testing Most Active
                schrieb am zuletzt editiert von
                #843

                @goetschhofer wurde zwar beschrieben wie es mit einem script funktioniert, jedoch HIER noch ne andere Beschreibung und paar andere nützlichen Sachen auf der Seite zu finden.

                umgestiegen von Proxmox auf Unraid

                1 Antwort Letzte Antwort
                1
                • Meister MopperM Meister Mopper

                  @goetschhofer

                  Ein Verzeichnis erstellen, in dem Anpassungen gespeichert werden. Der Name ist egal.

                  sudo mkdir /usr/share/custom

                  Jetzt ein Script erstellen, dass die Anpassungen anwendet und anschließend ausführbar machen:

                  sudo echo '#!/usr/bin/env bash' > /usr/share/custom/apply.sh

                  sudo chmod a+x /usr/share/custom/apply.sh

                  In das Script folgendes eintragen (hier können auch weitere Anpassungen, wie z. B. themes, reingeschrieben werden:

                  sed -i.backup -z "s/res === null || res === undefined || \!res || res\n\t\t\t.data.status.toLowerCase() \!== 'active'/false/g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js && systemctl restart pveproxy.service

                  Abschließend eine Datei erstellen, die apt sagt, dass es nach einem upgrade das Script startet:

                  sudo echo 'DPkg::Post-Invoke { "/usr/share/custom/apply.sh"; };' > /etc/apt/apt.conf.d/90custom

                  Jetzt wird /usr/share/custom/apply.sh ausgeführt, nachdem apt installiert oder upgradet.

                  Sehr vorsichtig sein, was man in das script reinpackt, das kann fatale Folgen haben!!!

                  G Offline
                  G Offline
                  GOETSCHHOFER
                  schrieb am zuletzt editiert von
                  #844

                  @meister-mopper said in Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK:

                  @goetschhofer

                  Ein Verzeichnis erstellen, in dem Anpassungen gespeichert werden. Der Name ist egal.

                  sudo mkdir /usr/share/custom

                  Jetzt ein Script erstellen, dass die Anpassungen anwendet und anschließend ausführbar machen:

                  sudo echo '#!/usr/bin/env bash' > /usr/share/custom/apply.sh

                  sudo chmod a+x /usr/share/custom/apply.sh

                  In das Script folgendes eintragen (hier können auch weitere Anpassungen, wie z. B. themes, reingeschrieben werden:

                  sed -i.backup -z "s/res === null || res === undefined || \!res || res\n\t\t\t.data.status.toLowerCase() \!== 'active'/false/g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js && systemctl restart pveproxy.service

                  Abschließend eine Datei erstellen, die apt sagt, dass es nach einem upgrade das Script startet:

                  sudo echo 'DPkg::Post-Invoke { "/usr/share/custom/apply.sh"; };' > /etc/apt/apt.conf.d/90custom

                  Jetzt wird /usr/share/custom/apply.sh ausgeführt, nachdem apt installiert oder upgradet.

                  Sehr vorsichtig sein, was man in das script reinpackt, das kann fatale Folgen haben!!!

                  Hallo meister-popper,
                  vielen Dank für die sehr ausführliche Erläuterung
                  Ich befürchte nur, dass ich hier fachlich etwas überfordert bin, dies traue ich mir nicht umzusetzen.
                  Aber gut zu wissen, dass es hier auch eine automatisierte Lösung gibt.

                  Bei meinen minimalen Linux-Kenntnissen ist die händische Rücksetzung der Fehlermeldung durch den Befehl fast risikolos.

                  ed -i.backup -z "s/res === null || res === undefined || \!res || res\n\t\t\t.data.status.toLowerCase() \!== 'active'/false/g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js && systemctl restart pveproxy.service
                  
                  da_WoodyD 1 Antwort Letzte Antwort
                  0
                  • G GOETSCHHOFER

                    @meister-mopper said in Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK:

                    @goetschhofer

                    Ein Verzeichnis erstellen, in dem Anpassungen gespeichert werden. Der Name ist egal.

                    sudo mkdir /usr/share/custom

                    Jetzt ein Script erstellen, dass die Anpassungen anwendet und anschließend ausführbar machen:

                    sudo echo '#!/usr/bin/env bash' > /usr/share/custom/apply.sh

                    sudo chmod a+x /usr/share/custom/apply.sh

                    In das Script folgendes eintragen (hier können auch weitere Anpassungen, wie z. B. themes, reingeschrieben werden:

                    sed -i.backup -z "s/res === null || res === undefined || \!res || res\n\t\t\t.data.status.toLowerCase() \!== 'active'/false/g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js && systemctl restart pveproxy.service

                    Abschließend eine Datei erstellen, die apt sagt, dass es nach einem upgrade das Script startet:

                    sudo echo 'DPkg::Post-Invoke { "/usr/share/custom/apply.sh"; };' > /etc/apt/apt.conf.d/90custom

                    Jetzt wird /usr/share/custom/apply.sh ausgeführt, nachdem apt installiert oder upgradet.

                    Sehr vorsichtig sein, was man in das script reinpackt, das kann fatale Folgen haben!!!

                    Hallo meister-popper,
                    vielen Dank für die sehr ausführliche Erläuterung
                    Ich befürchte nur, dass ich hier fachlich etwas überfordert bin, dies traue ich mir nicht umzusetzen.
                    Aber gut zu wissen, dass es hier auch eine automatisierte Lösung gibt.

                    Bei meinen minimalen Linux-Kenntnissen ist die händische Rücksetzung der Fehlermeldung durch den Befehl fast risikolos.

                    ed -i.backup -z "s/res === null || res === undefined || \!res || res\n\t\t\t.data.status.toLowerCase() \!== 'active'/false/g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js && systemctl restart pveproxy.service
                    
                    da_WoodyD Online
                    da_WoodyD Online
                    da_Woody
                    schrieb am zuletzt editiert von
                    #845

                    @goetschhofer sagte in Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK:

                    fachlich etwas überfordert bin

                    das ist aber genau der grund, warum @Meister-Mopper das genau so detailiert beschrieben hat!
                    wenn du das genau so durchführst, kann nichts passieren! backup vorher sicherheitshalber anlegen!
                    du glaubst nur überfordert zu sein. versuche zu verstehen, was da abgeht. man lernt daraus... ;)
                    das warning zum schluss ist ja nur für den fall, daß du da noch andere sachen mit reinpackst. da kanns dann zu einem schuss ins knie kommen. ja und? backup haste ja... :D

                    gruß vom Woody
                    HAPPINESS is not a DESTINATION, it's a WAY of LIFE!

                    G 1 Antwort Letzte Antwort
                    1
                    • da_WoodyD da_Woody

                      @goetschhofer sagte in Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK:

                      fachlich etwas überfordert bin

                      das ist aber genau der grund, warum @Meister-Mopper das genau so detailiert beschrieben hat!
                      wenn du das genau so durchführst, kann nichts passieren! backup vorher sicherheitshalber anlegen!
                      du glaubst nur überfordert zu sein. versuche zu verstehen, was da abgeht. man lernt daraus... ;)
                      das warning zum schluss ist ja nur für den fall, daß du da noch andere sachen mit reinpackst. da kanns dann zu einem schuss ins knie kommen. ja und? backup haste ja... :D

                      G Offline
                      G Offline
                      GOETSCHHOFER
                      schrieb am zuletzt editiert von GOETSCHHOFER
                      #846

                      @da_woody @crunchip

                      Ich lese seit ca. 1 Monat meinen EVU-Smartmeter Siemens TD-3511 über einen Infrarotlesekopf alle 2 Sekunden aus.
                      Über MQTT werden die Daten an den iobroker gesandt und in Grafana visualisiert.

                      Jetzt würde ich noch gerne die Tageswerte Bezug und Einspeisung der letzten 7 Tage in iobroker übernehmen, da ich diese in dieser App ja schon habe.
                      Da ich die Tagesdaten Bezug/Einspeisung in kWh über MQTT nicht direkt bekomme, wollte ich euch fragen, ob man diese Werte auch parsen könnte ?

                      Das Problem ist, dass ich in diesem Bereich überhaupt keine Ahnung habe.
                      Ich weiß nur, dass es einen eigenen Adapter parser gibt.

                      Unten habe ich den gesamten Quelltext in Codetex eingefügt.

                      Vielen Dank im Voraus für Eure Hilfe.

                      Karl


                      1120c5ec-63ab-496c-bca1-153d3d4bc28b-image.png


                      10fac531-aa81-47cf-88f4-dd5b8b6a8292-image.png

                      Die Werte heute bis 6 Tage retour sind meines Erachtens für Bezug wd_in0 bis wd_in6 und für Einspeisung wd_out0 bis wd_out6.

                      <div class="pure-u-1">
                                    <table class="pure-table pure-table-striped" width="100%">
                                      <thead><tr><th>Tag</th><th align="right">Bezug</th><th align="right">Lfrg.</th><th align="right">Diff.</th></tr></thead>
                                      <Tbody>
                                        <tr><td>Heute</td>    <td align="right" id="tdy_in"></td><td align="right" id="tdy_out"></td><td align="right" id="tdy_diff"></td></tr>
                                        <tr><td id="wd0"></td><td align="right" id="wd_in0"></td><td align="right" id="wd_out0"></td><td align="right" id="wd_diff0"></td></tr>
                                        <tr><td id="wd1"></td><td align="right" id="wd_in1"></td><td align="right" id="wd_out1"></td><td align="right" id="wd_diff1"></td></tr>
                                        <tr><td id="wd2"></td><td align="right" id="wd_in2"></td><td align="right" id="wd_out2"></td><td align="right" id="wd_diff2"></td></tr>
                                        <tr><td id="wd3"></td><td align="right" id="wd_in3"></td><td align="right" id="wd_out3"></td><td align="right" id="wd_diff3"></td></tr>
                                        <tr><td id="wd4"></td><td align="right" id="wd_in4"></td><td align="right" id="wd_out4"></td><td align="right" id="wd_diff4"></td></tr>
                                        <tr><td id="wd5"></td><td align="right" id="wd_in5"></td><td align="right" id="wd_out5"></td><td align="right" id="wd_diff5"></td></tr>
                                        <tr><td id="wd6"></td><td align="right" id="wd_in6"></td><td align="right" id="wd_out6"></td><td align="right" id="wd_diff6"></td></tr>
                      

                      GESAMTER QUELLTEXT:

                      <!doctype html>
                      <html lang="de">
                      <head>
                          <!--<meta http-equiv="Content-Security-Policy" content="default-src * 'unsafe-inline' 'unsafe-eval';">-->
                          <meta charset="utf-8">
                          <meta name="viewport" content="width=device-width, initial-scale=1.0">
                          <title>ESP-Device</title>
                          <link rel="stylesheet" href="custom.css">
                          <link rel="icon" type="image/png" href="data:image/png;base64,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">
                          <script src="jquery351.js"></script>
                      </head>
                      <body>
                      <div id="layout">  <!--This is the parent `<div>` that contains the menu and the content area :: side-menu.css-->
                          <!-- Menu toggle -->
                          <!--<a href="#menu" id="menuLink" class="menu-link">-->
                          <a id="menuLink" class="menu-link">
                              <!-- Hamburger icon -->
                              <span></span>
                          </a>
                          <div id="menu">
                              <div class="pure-menu">
                                  <!--<a class="pure-menu-heading" href="#">Device</a>-->
                                  <span class="pure-menu-heading" name="devicetype">DeviceType</span>
                                  <ul class="pure-menu-list">
                                      <li class="pure-menu-item"><a class="pure-menu-link" data="panel-home">Zähler</a></li>
                                      <li class="pure-menu-item menu-graf"><a class="pure-menu-link" data="panel-graf">Grafik</a></li>
                                      <li class="pure-menu-item"><a class="pure-menu-link" data="panel-log">Log</a></li>
                                      <li class="pure-menu-item"><a class="pure-menu-link" data="panel-status">Status</a></li>
                                      <li class="pure-menu-item"><a class="pure-menu-link" data="panel-general">Allgemein</a></li>
                                      <li class="pure-menu-item"><a class="pure-menu-link" data="panel-wifi">WiFi</a></li>
                                      <li class="pure-menu-item"><a class="pure-menu-link" data="panel-mqtt">MQTT</a></li>
                                      <li class="pure-menu-item"><a class="pure-menu-link" data="panel-update">Update</a></li>
                                      <li class="pure-menu-item"><a class="pure-menu-link" data="panel-hist">Versionsinfo</a></li>
                                  </ul>
                              </div>
                          </div>
                      
                          <div class="content">  <!--The content `<div>` is where all your content goes.  :: side-menu.css-->
                            <div class="panel" id="panel-graf">
                              <div id="chart-container" class="chart">
                                  <br>Daten von Thingspeak werden geladen...<br>
                              </div>
                              <div class="chart-below">
                              <div class="pure-g">
                                <div class="pure-u-1 pure-u-sm-1-5">
                                  <button class="pure-button button-load" onclick="loadOneChannel();" style="margin-left: 10px;width:160px;">Daten nachladen:</button>
                                </div>
                                <select class="pure-u-1 pure-u-sm-1-5" style="margin-left: 10px;" id="Loads">
                                  <option selected="selected" value="1">1 Tag</option>
                                  <option value="2">2 Tage</option>
                                  <option value="3">3 Tage</option>
                                  <option value="4">4 Tage</option>
                                  <option value="5">5 Tage</option>
                                  <option value="6">6 Tage</option>
                                  <option value="7">7 Tage</option>
                                  <option value="8">8 Tage</option>
                                  <option value="9">9 Tage</option>
                                  <option value="10">10 Tage</option>
                                </select>
                                <select id="ChannelSelect" class="pure-u-1 pure-u-sm-1-5" style="margin-left: 10px;"></select>
                                <div class="pure-u-1 pure-u-sm-1-5">
                                  <button class="pure-button button-graf" style="margin-left:10px;width:160px;">Chart neu laden</button>
                                </div>
                              </div>
                              <div class="pure-g">
                                <label class="pure-u-1 pure-u-sm-1-5">Grafikdaten autom. aktualisieren</label>
                                <div class="pure-u-1 pure-u-sm-1-5 on_off">
                                  <input id="Update" name="Update" type="checkbox" class="">
                                </div>
                                <div class="pure-u-1 pure-u-sm-2-5"></div>
                              </div>
                              </div>
                            </div>
                      
                            <div class="panel" id="panel-home">
                              <div class="header">
                                  <h1>AMIS-Zähler</h1>
                                  <br>
                              </div><br>
                              <div class="amis">
                                  <div class="pure-u-11-24">Uhrzeit (Zähler)</div>
                                  <div class="pure-u-11-24" name="now"></div>
                                  <div class="pure-u-11-24">1.8.0 (Energie A+)</div>
                                  <strong><div class="pure-u-11-24" name="1_8_0" post=" kWh" div="1000"></div></strong>
                                  <div class="pure-u-11-24">2.8.0 (Energie A-)</div>
                                  <strong><div class="pure-u-11-24" name="2_8_0" post=" kWh" div="1000"></div></strong>
                                  <div class="pure-u-11-24">3.8.1 (Energie R+)</div>
                                  <div class="pure-u-11-24" name="3_8_1" post=" kVarh" div="1000"></div>
                                  <div class="pure-u-11-24">4.8.1 (Energie R-)</div>
                                  <div class="pure-u-11-24" name="4_8_1" post=" kVarh" div="1000"></div>
                                  <div class="pure-u-11-24">1.7.0 (Wirk. P+)</div>
                                  <strong><div class="pure-u-11-24" name="1_7_0" post=" kW" div="1000"></div></strong>
                                  <div class="pure-u-11-24">2.7.0 (Wirk. P-)</div>
                                  <strong><div class="pure-u-11-24" name="2_7_0" post=" kW" div="1000"></div></strong>
                                  <div class="pure-u-11-24">Saldo 1.7.0-2.7.0</div>
                                  <strong><div class="pure-u-11-24" id="saldo"></div></strong>
                                  <div class="pure-u-11-24">3.7.0 (Blind. Q+)</div>
                                  <div class="pure-u-11-24" name="3_7_0" post=" kVar" div="1000"></div>
                                  <div class="pure-u-11-24">4.7.0 (Blind. Q-)</div>
                                  <div class="pure-u-11-24" name="4_7_0" post=" kVar" div="1000"></div>
                                  <div class="pure-u-11-24">1.128.0 (Inkasso)</div>
                                  <div class="pure-u-11-24" name="1_128_0"></div>
                                  <br><hr>
                                  <div class="pure-u-11-24">Uptime</div>
                                  <div class="pure-u-11-24" name="uptime"></div>
                                  <div class="pure-u-11-24">Upload Thingspeak</div>
                                  <div class="pure-u-11-24" name="things_up"></div>
                                  <br><hr>
                                  <h3>Energie [kWh]</h3>
                                  <div class="pure-u-1">
                                    <table class="pure-table pure-table-striped" width="100%">
                                      <thead><tr><th>Tag</th><th align="right">Bezug</th><th align="right">Lfrg.</th><th align="right">Diff.</th></tr></thead>
                                      <Tbody>
                                        <tr><td>Heute</td>    <td align="right" id="tdy_in"></td><td align="right" id="tdy_out"></td><td align="right" id="tdy_diff"></td></tr>
                                        <tr><td id="wd0"></td><td align="right" id="wd_in0"></td><td align="right" id="wd_out0"></td><td align="right" id="wd_diff0"></td></tr>
                                        <tr><td id="wd1"></td><td align="right" id="wd_in1"></td><td align="right" id="wd_out1"></td><td align="right" id="wd_diff1"></td></tr>
                                        <tr><td id="wd2"></td><td align="right" id="wd_in2"></td><td align="right" id="wd_out2"></td><td align="right" id="wd_diff2"></td></tr>
                                        <tr><td id="wd3"></td><td align="right" id="wd_in3"></td><td align="right" id="wd_out3"></td><td align="right" id="wd_diff3"></td></tr>
                                        <tr><td id="wd4"></td><td align="right" id="wd_in4"></td><td align="right" id="wd_out4"></td><td align="right" id="wd_diff4"></td></tr>
                                        <tr><td id="wd5"></td><td align="right" id="wd_in5"></td><td align="right" id="wd_out5"></td><td align="right" id="wd_diff5"></td></tr>
                                        <tr><td id="wd6"></td><td align="right" id="wd_in6"></td><td align="right" id="wd_out6"></td><td align="right" id="wd_diff6"></td></tr>
                                      </Tbody>
                                    </table>
                                  </div>
                              </div>
                            </div>
                      
                            <div class="panel pure-form" id="panel-status">
                              <div class="header">
                                  <h1>STATUS 🛈</h1>
                                  <br>
                              </div>
                              <div class="pure-u-1 pure-u-lg-1-2 state">
                                  <div class="pure-u-1-2">Chip ID</div>
                                  <div class="pure-u-11-24"><span class="right" name="chipid"></span></div>
                                  <div class="pure-u-1-2">Wifi MAC</div>
                                  <div class="pure-u-11-24"><span class="right" name="mac"></span></div>
                                  <div class="pure-u-1-2">SDK version</div>
                                  <div class="pure-u-11-24"><span class="right" name="sdk"></span></div>
                                  <div class="pure-u-1-2">Core version</div>
                                  <div class="pure-u-11-24"><span class="right" name="core"></span></div>
                                  <div class="pure-u-1-2">App version</div>
                                  <div class="pure-u-11-24"><span class="right" name="version"></span></div>
                                  <div class="pure-u-1-2">App name</div>
                                  <div class="pure-u-11-24"><span class="right" name="app_name"></span></div>
                                  <div class="pure-u-1-2">Firmware size</div>
                                  <div class="pure-u-11-24"><span class="right" name="sketchsize" post=" bytes"></span></div>
                                  <div class="pure-u-1-2">Free space</div>
                                  <div class="pure-u-11-24"><span class="right" name="freesize" post=" bytes"></span></div>
                                  <div class="pure-u-1-2">LITTLE-FS size</div>
                                  <div class="pure-u-11-24"><span class="right" name="littlefs_size" post=" bytes"></span></div>
                                  <div class="pure-u-1-2">LITTLE-FS used</div>
                                  <div class="pure-u-11-24"><span class="right" name="littlefs_used" post=" bytes"></span></div>
                                  <div class="pure-u-1-2">Max. free block size</div>
                                  <div class="pure-u-11-24"><span class="right" name="max_free_blocksz" post=" bytes"></span></div>
                                  <div class="pure-u-1-2">Free heap</div>
                                  <div class="pure-u-11-24"><span class="right" name="heap_free" post=" bytes"></span></div>
                                  <div class="pure-u-1-2">Heap fragmentation</div>
                                  <div class="pure-u-11-24"><span class="right" name="heap_fragment" post=" %"></span></div>
                                  <div class="pure-u-1-2">Flash speed</div>
                                  <div class="pure-u-11-24"><span class="right" name="flashspeed" post=" Hz"></span></div>
                                  <div class="pure-u-1-2">Flash size</div>
                                  <div class="pure-u-11-24"><span class="right" name="flashsize" post=" bytes"></span></div>
                                  <div class="pure-u-1-2">Flash mode</div>
                                  <div class="pure-u-11-24"><span class="right" name="flashmode"></span></div>
                                  <div class="pure-u-1-2">CPU Frequ.</div>
                                  <div class="pure-u-11-24"><span class="right" name="cpu" post=" MHz"></span></div>
                              </div>
                              <div class="pure-u-1 pure-u-lg-11-24 state">
                                  <div class="pure-u-1-2">Network</div>
                                  <div class="pure-u-11-24" name="ssid"></div>
                                  <div class="pure-u-1-2">Channel</div>
                                  <div class="pure-u-11-24" name="channel"></div>
                                  <div class="pure-u-1-2">RSSI</div>
                                  <div class="pure-u-11-24" name="rssi" post=" dB"></div>
                                  <div class="pure-u-1-2">IP</div>
                                  <div class="pure-u-11-24" name="deviceip"></div>
                                  <div class="pure-u-1-2">DNS</div>
                                  <div class="pure-u-11-24" name="dns"></div>
                                  <div class="pure-u-1-2">Gateway</div>
                                  <div class="pure-u-11-24" name="gateway"></div>
                                  <div class="pure-u-1-2">Netmask</div>
                                  <div class="pure-u-11-24" name="netmask"></div>
                                  <div class="pure-u-1-2">VCC</div>
                                  <div class="pure-u-11-24"><span class="right" name="vcc">? </span><span>mV</span></div>
                                  <div class="pure-u-1-2 module-mqtt">MQTT Status</div>
                                  <div class="pure-u-11-24 module-mqtt" name="mqttStatus"></div>
                                  <div class="pure-u-1-2 module-ntp">NTP Status</div>
                                  <div class="pure-u-11-24 module-ntp" name="ntpSynced"></div>
                                  <div class="pure-u-1-2 module-ntp">Current time</div>
                                  <div class="pure-u-11-24 module-ntp" name="now"></div>
                                  <div class="pure-u-1-2">Uptime</div>
                                  <div class="pure-u-11-24" name="uptime"></div>
                              </div>
                            </div>
                      
                            <div class="panel  pure-form" id="panel-general">
                              <div class="header">
                                  <h1>Allgemein</h1>
                                  <!--<h3>Current configuration</h3>-->
                                  <br>
                              </div>
                              <br>
                              <div class="pure-g">
                                  <label class="pure-u-1 pure-u-sm-1-5">Name Gerät:</label>
                                  <input class="pure-u-1 pure-u-sm-2-5 general" type="text" name="devicename" placeholder="ESP-Device" />
                              </div>
                                  <br>
                              <div class="pure-g">
                                  <label class="pure-u-1 pure-u-sm-1-5">Authentifizierung:</label>
                                  <div class="pure-u-1 pure-u-sm-2-5"><input type="checkbox" name="use_auth" id="use_auth" class="general"/></div>
                              </div>
                              <div class="auth_details">
                                <div class="pure-g">
                                  <label class="pure-u-1 pure-u-sm-1-5">Benutzer:</label>
                                  <input class="pure-u-1 pure-u-sm-2-5 general" name="auth_user" value="Admin"/>
                                </div>
                                <div class="pure-g">
                                  <label class="pure-u-1 pure-u-sm-1-5">Passwort:</label>
                                  <input class="pure-u-1 pure-u-sm-2-5 general" name="auth_passwd" type="password" spellcheck="false" />
                                  <span class="no-select password-reveal"></span>
                                </div>
                              </div>
                              <div class="pure-g">
                                  <label class="pure-u-1 pure-u-sm-1-5">System-Log:</label>
                                  <div class="pure-u-1 pure-u-sm-2-5"><input type="checkbox" name="log_sys" id="log_sys" class="general"/></div>
                              </div>
                                <br>
                              <div style="display:block;">
                                  <div class="pure-g">
                                      <label class="pure-u-1 pure-u-sm-1-5">Amis-Key:</label>
                                      <input class="pure-u-1 pure-u-sm-2-5 general" type="text" name="amis_key"/>
                                  </div>
                                      <br>
                                  <div class="pure-g">
                                      <label class="pure-u-1 pure-u-sm-1-5">ThingSpeak/Highcharts aktiv:</label>
                                      <div class="pure-u-1 pure-u-sm-1-5"><input type="checkbox" name="thingspeak_aktiv" id="thingspeak_aktiv" class="general"/></div>
                                  </div>
                                  <div class="things_details">
                                    <div class="pure-g">
                                        <label class="pure-u-1 pure-u-sm-1-5">Channel ID:</label>
                                        <input class="pure-u-1 pure-u-sm-2-5 general" type="text" name="channel_id"/>
                                    </div>
                                    <div class="pure-g">
                                        <label class="pure-u-1 pure-u-sm-1-5">Write API Key:</label>
                                        <input class="pure-u-1 pure-u-sm-2-5 general" type="text" name="write_api_key"/>
                                    </div>
                                    <div class="pure-g">
                                        <label class="pure-u-1 pure-u-sm-1-5">Read API Key:</label>
                                        <input class="pure-u-1 pure-u-sm-2-5 general" type="text" name="read_api_key"/>
                                    </div>
                                    <div class="pure-g">
                                        <label class="pure-u-1 pure-u-sm-1-5">Intervall (sec):</label>
                                        <input class="pure-u-1 pure-u-sm-2-5 general" type="number" min="30" name="thingspeak_iv"/>
                                    </div>
                                        <hr>
                                        <br>
                                        Daten für einen zweiten Zähler abrufen:
                                        <br><br>
                                    <div class="pure-g">
                                        <label class="pure-u-1 pure-u-sm-1-5">Channel ID:</label>
                                        <input class="pure-u-1 pure-u-sm-2-5 general" type="text" name="channel_id2"/>
                                    </div>
                                    <div class="pure-g">
                                        <label class="pure-u-1 pure-u-sm-1-5">Read API Key:</label>
                                        <input class="pure-u-1 pure-u-sm-2-5 general" type="text" name="read_api_key2"/>
                                    </div>
                                  </div>
                              </div>
                              <hr>
                              <div class="pure-g">
                                <div class="pure-u-1 pure-u-sm-1-5"><progress id="prgbar_general"></progress></div>
                                <div style="min-height: 40px"></div>
                              </div>
                              <div class="pure-g">
                                <div class="pure-u-1 pure-u-sm-3-5">
                                  <button class="pure-button button-update-general">Übernehmen</button>
                                  <button class="pure-button button-reboot">Neustart</button>
                                </div>
                              </div>
                            </div>
                      
                            <div class="panel pure-form" id="panel-wifi">
                              <div class="header">
                                  <h1>WiFi 📶</h1>
                                  <h2>Gerätebezeichnung (Hostname) bei "Allgemein" festlegen</h2>
                              </div>
                              <br>
                              <div class="pure-g">
                                <label class="pure-u-1 pure-u-sm-1-5">SSID:</label>
                                <input class="pure-u-1 pure-u-sm-2-5 wifi" name="ssid" type="text"/>
                              </div>
                              <div class="pure-g">
                                <label class="pure-u-1 pure-u-sm-1-5">Passwort:</label>
                                <input class="pure-u-1 pure-u-sm-2-5 wifi" name="wifipassword" type="password"/>
                                <span class="no-select password-reveal"></span>
                              </div>
                              <div class="pure-g">
                                <label class="pure-u-1 pure-u-sm-1-5">DHCP</label>
                                <div class="pure-u-1 pure-u-sm-2-5  on_off"><input type="checkbox" name="dhcp" id="dhcp" class="wifi" /></div>
                              </div>
                              <div class="wifi_details">
                                <div class="pure-g">
                                  <label class="pure-u-1 pure-u-sm-1-5">Static IP:</label>
                                  <input class="pure-u-1 pure-u-sm-2-5 wifi" name="ip_static" type="text"/>
                                </div>
                                <div class="pure-g">
                                  <label class="pure-u-1 pure-u-sm-1-5">Netmask:</label>
                                  <input class="pure-u-1 pure-u-sm-2-5 wifi" name="ip_netmask" type="text"/>
                                </div>
                                <div class="pure-g">
                                  <label class="pure-u-1 pure-u-sm-1-5">Gateway:</label>
                                  <input class="pure-u-1 pure-u-sm-2-5 wifi" name="ip_gateway" type="text"/>
                                </div>
                                <div class="pure-g">
                                  <label class="pure-u-1 pure-u-sm-1-5">Nameserver:</label>
                                  <input class="pure-u-1 pure-u-sm-2-5 wifi" name="ip_nameserver" type="text"/>
                                </div>
                              </div>
                              <div class="pure-g">
                                <label class="pure-u-1 pure-u-sm-1-5">RF-Power:</label>
                                <input class="pure-u-1 pure-u-sm-1-5 wifi" name="rfpower" type="number" min="0" max="25" placeholder="0..25dBm"/>
                                <span class="pure-u-1 pure-u-sm-1-5">&nbsp;&nbsp;dBm</span>
                              </div>
                              <div class="pure-g">
                                <label class="pure-u-1 pure-u-sm-1-5">MDNS</label>
                                <div class="pure-u-1 pure-u-sm-2-5 on_off"><input type="checkbox" name="mdns" class="wifi" /></div>
                                <div class="pure-u-1 pure-u-sm-3-5"></div>
                                <div class="pure-u-1 pure-u-sm-1-5"></div>
                                <div class="pure-u-1 pure-u-sm-4-5 hint">
                                    Wenn der Browser / das BS MDNS unterstützen, kann dieses Gerät unter "<span name="devicename" class="wifi"></span>.local" erreicht werden.
                                    Das Verfahren ist auch als Bonjour bekannt.
                                </div>
                              </div>
                              <div class="pure-g">
                                <div class="pure-u-1 pure-u-sm-1-5"><progress id="prgbar_wifi"></progress></div>
                                <div style="min-height:40px"></div>
                              </div>
                              <div class="pure-g">
                                <div class="pure-u-1 pure-u-sm-3-5">
                                  <button class="pure-button button-update-wifi">Übernehmen</button>
                                  <button class="pure-button button-reboot">Neustart</button>
                                </div>
                              </div>
                              <hr>
                              <div class="pure-g">
                                <label class="pure-u-1 pure-u-sm-1-5">WiFi-Scan</label>
                                <div class="pure-u-1 pure-u-sm-4-5"><span name="stations"></span></div>
                              </div>
                            </div>
                      
                            <div class="panel pure-form" id="panel-mqtt">
                                <div class="header">
                                    <h1>MQTT</h1>
                                    <h2>Einen MQTT broker im lokalen Netzwerk definieren.</h2>
                                </div>
                                <br>
                                <div class="pure-g">
                                    <label class="pure-u-1 pure-u-sm-1-5">MQTT aktiv:</label>
                                    <div class="pure-u-1 pure-u-sm-2-5"><input type="checkbox" name="mqtt_enabled" id="mqtt_enabled" class="mqtt"/></div>
                                </div>
                                <div class="mqtt_details">
                                  <div class="pure-g">
                                      <label class="pure-u-1 pure-u-sm-1-5">MQTT Broker</label>
                                      <input class="pure-u-1 pure-u-sm-2-5 mqtt" name="mqtt_broker" type="text" placeholder="IP or address of your broker" />
                                  </div>
                                  <div class="pure-g">
                                      <label class="pure-u-1 pure-u-sm-1-5">MQTT Port</label>
                                      <input class="pure-u-1 pure-u-sm-2-5 mqtt" name="mqtt_port" type="number" value="1883" />
                                  </div>
                                  <div class="pure-g">
                                      <label class="pure-u-1 pure-u-sm-1-5">MQTT User</label>
                                      <input class="pure-u-1 pure-u-sm-2-5 mqtt" name="mqtt_user" type="text" placeholder="Frei lassen wenn kein Benutzer definiert ist" autocomplete="off" />
                                  </div>
                                  <div class="pure-g">
                                      <label class="pure-u-1 pure-u-sm-1-5">MQTT Passwort</label>
                                      <input class="pure-u-1 pure-u-sm-2-5 mqtt" name="mqtt_password" type="password" placeholder="Frei lassen wenn kein Passwort definiert ist" autocomplete="new-password" spellcheck="false" />
                                      <span class="no-select password-reveal"></span>
                                  </div>
                                  <div class="pure-g">
                                      <label class="pure-u-1 pure-u-sm-1-5">MQTT Client ID</label>
                                      <input class="pure-u-1 pure-u-sm-2-5 mqtt" name="mqtt_clientid" type="text"/>
                                      <div class="pure-u-0 pure-u-sm-2-5"></div>
                                      <div class="pure-u-0 pure-u-sm-1-5"></div>
                                      <div class="pure-u-1 pure-u-sm-2-5 hint">
                                          Wenn nicht definiert, wird automatisch eine ID generiert
                                      </div>
                                  </div>
                                  <div class="pure-g">
                                      <label class="pure-u-1 pure-u-sm-1-5">MQTT QoS</label>
                                      <select class="pure-u-1 pure-u-sm-2-5 mqtt" name="mqtt_qos">
                                          <option value="0">0: At most once</option>
                                          <option value="1">1: At least once</option>
                                          <option value="2">2: Exactly once</option>
                                      </select>
                                  </div>
                                  <div class="pure-g">
                                      <label class="pure-u-1 pure-u-sm-1-5">MQTT Retain</label>
                                      <div class="pure-u-1 pure-u-sm-2-5"><input type="checkbox" name="mqtt_retain" class="mqtt"/></div>
                                  </div>
                                  <div class="pure-g">
                                      <label class="pure-u-1 pure-u-sm-1-5">MQTT Keep Alive</label>
                                      <input class="pure-u-1 pure-u-sm-1-5 mqtt" type="number" name="mqtt_keep" min="0" max="3600" value="30"/>
                                      <span class="pure-u-1 pure-u-sm-1-5">&nbsp;&nbsp;sec</span>
                                  </div>
                                  <div class="pure-g">
                                      <div class="pure-u-1 pure-u-sm-1-5"></div>
                                      <div class="pure-u-1 pure-u-sm-2-5 hint">
                                          Die publish-message wird im definierten Intervall gesendet.
                                      </div>
                                  </div>
                                  <div class="pure-g">
                                    <label class="pure-u-1 pure-u-sm-1-5">MQTT publish:</label>
                                    <input class="pure-u-1 pure-u-sm-2-5 mqtt" name="mqtt_pub" type="text"/>
                                  </div>
                                  <!--<div class="pure-g">-->
                                    <!--<label class="pure-u-1 pure-u-sm-1-5">MQTT subscribe:</label>-->
                                    <!--<input class="pure-u-1 pure-u-sm-2-5 mqtt" name="mqtt_sub" type="text"/>-->
                                  <!--</div>-->
                                  <div class="pure-g">
                                    <label class="pure-u-1 pure-u-sm-1-5">MQTT Last Will:</label>
                                    <input class="pure-u-1 pure-u-sm-2-5 mqtt" name="mqtt_will" type="text"/>
                                  </div>
                                </div>
                                <hr>
                                <div class="pure-g">
                                  <div class="pure-u-1 pure-u-sm-1-5"><progress id="prgbar_mqtt"></progress></div>
                                  <div style="min-height:40px"></div>
                                </div>
                                <div class="pure-g">
                                  <div class="pure-u-1 pure-u-sm-3-5">
                                    <button class="pure-button button-update-mqtt">Übernehmen</button>
                                    <button class="pure-button button-reboot">Neustart</button>
                                  </div>
                                </div>
                            </div>
                      
                            <div class="panel pure-form" id="panel-update">
                                <div class="header">
                                    <h1>Software-Update ♺</h1>
                                    <!--<h4>Configure your NTP (Network Time Protocol) servers and local configuration to keep your device time up to the second for your location.</h4>-->
                                  <br>
                                </div>
                                <br><br><br>
                                <div class="pure-g">
                                    <label class="pure-u-1 pure-u-sm-1-5">Datei:</label>
                                    <input class="pure-u-1 pure-u-sm-2-5" name="filename" type="text" readonly />
                                </div>
                                <div class="pure-g">
                                  <div class="pure-u-1 pure-u-sm-1-5"><progress id="prgbar_update"></progress></div>
                                  <div style="min-height:40px"></div>
                                </div>
                                <div class="main-buttons pure-g">
                                    <button class="pure-button button-upgrade-browse pure-u-1 pure-u-sm-2-24">Auswahl</button>
                                    <div class="pure-u-1 pure-u-sm-1-24"></div>
                                    <button class="pure-button button-upgrade pure-u-1 pure-u-sm-2-24">Update</button>
                                    <div class="pure-u-1 pure-u-sm-1-24"></div>
                                    <button class="pure-button button-reboot pure-u-1 pure-u-sm-2-24">Neustart</button>
                                </div>
                                <input name="upgrade" type="file" style="display:none;"/>
                            </div>
                      
                            <div class="panel" id="panel-log">
                                <div class="header">
                                    <h1>LOG 🗊</h1>
                                    <!--<h2> style="color:#555;">-->
                                    <h2>
                                        Ereignisse anzeigen
                                    </h2>
                                </div>
                                <br>
                                <div class="pure-g">
                                  <div class="pure-u-2-5 "><span name="page"></span></div>
                                </div>
                                <div class="pure-g">
                                    <div class="pure-u-1 log"><span class="terminal" name="list"></span></div>
                                    <!--<div class=""><span class="terminal" name="list"></span></div>-->
                                </div>
                                <br>
                                <div class="pure-g">
                                    <div class="pure-u-1 pure-u-sm-1-5"><button class="pure-button button-log-prev">Seite -</button></div>
                                    <div class="pure-u-1 pure-u-sm-1-5"><button class="pure-button button-log-next">Seite +</button></div>
                                    <div class="pure-u-1 pure-u-sm-1-5"><button class="pure-button button-log-clear">Log löschen</button></div>
                                </div>
                                <br>
                                <div class="pure-g">
                                    <div class="pure-u-1 pure-u-sm-1-5">Tagesverbrauch</div>
                                    <div class="pure-u-1 pure-u-sm-1-5"><button class="pure-button button-hist_clear">Löschen</button></div>
                                </div>
                            </div>
                            <div class="panel" id="panel-hist">
                                <div class="header">
                                    <h1>Versionsinfo</h1>
                                </div>
                                <br>
                                <div class="pure-g hist">
                                  <div class="pure-u-1">
                                    <h3>Version 1.2.0</h3>
                                    Neues Filesystem LittleFs eingeführt. Leider gehen dadurch alle Konfigurations- und Logdateien verloren.
                                    Kleine Bugs behoben.
                                    <br>
                                    <h3>Version 1.1.5</h3>
                                    Antwort auf rest-Anfrage ist gesperrt, so lange Zähler nicht synchron ist.
                                    <br>
                                    <h3>Version 1.1.4</h3>
                                    Alle Web-Dateien werden vom lokalen Server bereitgestellt, d.h. kein Nachladen aus externen Quellen ist notwendig. Ausnahme: Chart-Grafik, aber dazu ist grundsätzlich eine Internetverbindung notwendig.
                                    <br>
                                    Logdatei und Log-Anzeige: übersteigt die Größe der Logdatei ca. 1000 Zeilen, dann wird sie gelöscht und neu erzeugt. Der Seitenabruf wurde verbessert wegen Timeout-Problemen.
                                    <br>
                                    <h3>Version 1.1.3</h3>
                                    Leerzeichen in SSID erlaubt.
                                    Einige HTML-Bugs bereinigt.
                                    <br>
                                    <h3>Version 1.1.2</h3>
                                    Saldo 1.7.0 - 2.7.0 wird angezeigt.<br>
                                    Die Energie-History wurde ergänzt und zeigt jetzt auch die Lieferung und den Saldo per Tag an.
                                    <br>
                                    <h3>Version 1.1.1</h3>
                                    Einführung Versionsinfo.<br>
                                    Bugfix MQTT.<br>
                                    Die blaue LED leuchtet jetzt dauernd, sobald eine Verbindung zu einem Router (Access-Point) aufgebaut ist.<br>
                                    Wenn das Modul selbst als Access-Point auftritt (Jumper gesetzt), blinkt die LED. Die Netzwerkkennung (SSID) ist dann "ESP8266_AP",
                                    die Verbindung kann unter 192.168.4.1 aufgebaut werden.<br>
                                    <h3>Version 1.1.0</h3>
                                    Der Datenabruf von Thingspeak musste geändert werden, weil die bisherige Methhode mit jsonp nicht mehr unterstützt wird.
                                    Durch die Änderung des API können sehr restriktive Webbrowser u.U. keine Daten mehr abrufen.<br>
                                    Die gesamte Oberfläche wurde neu gestaltet, im Hintergrund laufen jetzt alle Vorgänge asynchron ab. Die Betriebssicherheit
                                    sollte dadurch noch besser werden.
                                  </div>
                                </div>
                            </div>
                          </div>
                      </div>
                      
                      <!--<script src="chart.js"></script>-->
                      <script src="cust.js"></script>
                      
                      </body>
                      </html>
                      
                      
                      crunchipC 1 Antwort Letzte Antwort
                      0
                      • G GOETSCHHOFER

                        @da_woody @crunchip

                        Ich lese seit ca. 1 Monat meinen EVU-Smartmeter Siemens TD-3511 über einen Infrarotlesekopf alle 2 Sekunden aus.
                        Über MQTT werden die Daten an den iobroker gesandt und in Grafana visualisiert.

                        Jetzt würde ich noch gerne die Tageswerte Bezug und Einspeisung der letzten 7 Tage in iobroker übernehmen, da ich diese in dieser App ja schon habe.
                        Da ich die Tagesdaten Bezug/Einspeisung in kWh über MQTT nicht direkt bekomme, wollte ich euch fragen, ob man diese Werte auch parsen könnte ?

                        Das Problem ist, dass ich in diesem Bereich überhaupt keine Ahnung habe.
                        Ich weiß nur, dass es einen eigenen Adapter parser gibt.

                        Unten habe ich den gesamten Quelltext in Codetex eingefügt.

                        Vielen Dank im Voraus für Eure Hilfe.

                        Karl


                        1120c5ec-63ab-496c-bca1-153d3d4bc28b-image.png


                        10fac531-aa81-47cf-88f4-dd5b8b6a8292-image.png

                        Die Werte heute bis 6 Tage retour sind meines Erachtens für Bezug wd_in0 bis wd_in6 und für Einspeisung wd_out0 bis wd_out6.

                        <div class="pure-u-1">
                                      <table class="pure-table pure-table-striped" width="100%">
                                        <thead><tr><th>Tag</th><th align="right">Bezug</th><th align="right">Lfrg.</th><th align="right">Diff.</th></tr></thead>
                                        <Tbody>
                                          <tr><td>Heute</td>    <td align="right" id="tdy_in"></td><td align="right" id="tdy_out"></td><td align="right" id="tdy_diff"></td></tr>
                                          <tr><td id="wd0"></td><td align="right" id="wd_in0"></td><td align="right" id="wd_out0"></td><td align="right" id="wd_diff0"></td></tr>
                                          <tr><td id="wd1"></td><td align="right" id="wd_in1"></td><td align="right" id="wd_out1"></td><td align="right" id="wd_diff1"></td></tr>
                                          <tr><td id="wd2"></td><td align="right" id="wd_in2"></td><td align="right" id="wd_out2"></td><td align="right" id="wd_diff2"></td></tr>
                                          <tr><td id="wd3"></td><td align="right" id="wd_in3"></td><td align="right" id="wd_out3"></td><td align="right" id="wd_diff3"></td></tr>
                                          <tr><td id="wd4"></td><td align="right" id="wd_in4"></td><td align="right" id="wd_out4"></td><td align="right" id="wd_diff4"></td></tr>
                                          <tr><td id="wd5"></td><td align="right" id="wd_in5"></td><td align="right" id="wd_out5"></td><td align="right" id="wd_diff5"></td></tr>
                                          <tr><td id="wd6"></td><td align="right" id="wd_in6"></td><td align="right" id="wd_out6"></td><td align="right" id="wd_diff6"></td></tr>
                        

                        GESAMTER QUELLTEXT:

                        <!doctype html>
                        <html lang="de">
                        <head>
                            <!--<meta http-equiv="Content-Security-Policy" content="default-src * 'unsafe-inline' 'unsafe-eval';">-->
                            <meta charset="utf-8">
                            <meta name="viewport" content="width=device-width, initial-scale=1.0">
                            <title>ESP-Device</title>
                            <link rel="stylesheet" href="custom.css">
                            <link rel="icon" type="image/png" href="data:image/png;base64,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">
                            <script src="jquery351.js"></script>
                        </head>
                        <body>
                        <div id="layout">  <!--This is the parent `<div>` that contains the menu and the content area :: side-menu.css-->
                            <!-- Menu toggle -->
                            <!--<a href="#menu" id="menuLink" class="menu-link">-->
                            <a id="menuLink" class="menu-link">
                                <!-- Hamburger icon -->
                                <span></span>
                            </a>
                            <div id="menu">
                                <div class="pure-menu">
                                    <!--<a class="pure-menu-heading" href="#">Device</a>-->
                                    <span class="pure-menu-heading" name="devicetype">DeviceType</span>
                                    <ul class="pure-menu-list">
                                        <li class="pure-menu-item"><a class="pure-menu-link" data="panel-home">Zähler</a></li>
                                        <li class="pure-menu-item menu-graf"><a class="pure-menu-link" data="panel-graf">Grafik</a></li>
                                        <li class="pure-menu-item"><a class="pure-menu-link" data="panel-log">Log</a></li>
                                        <li class="pure-menu-item"><a class="pure-menu-link" data="panel-status">Status</a></li>
                                        <li class="pure-menu-item"><a class="pure-menu-link" data="panel-general">Allgemein</a></li>
                                        <li class="pure-menu-item"><a class="pure-menu-link" data="panel-wifi">WiFi</a></li>
                                        <li class="pure-menu-item"><a class="pure-menu-link" data="panel-mqtt">MQTT</a></li>
                                        <li class="pure-menu-item"><a class="pure-menu-link" data="panel-update">Update</a></li>
                                        <li class="pure-menu-item"><a class="pure-menu-link" data="panel-hist">Versionsinfo</a></li>
                                    </ul>
                                </div>
                            </div>
                        
                            <div class="content">  <!--The content `<div>` is where all your content goes.  :: side-menu.css-->
                              <div class="panel" id="panel-graf">
                                <div id="chart-container" class="chart">
                                    <br>Daten von Thingspeak werden geladen...<br>
                                </div>
                                <div class="chart-below">
                                <div class="pure-g">
                                  <div class="pure-u-1 pure-u-sm-1-5">
                                    <button class="pure-button button-load" onclick="loadOneChannel();" style="margin-left: 10px;width:160px;">Daten nachladen:</button>
                                  </div>
                                  <select class="pure-u-1 pure-u-sm-1-5" style="margin-left: 10px;" id="Loads">
                                    <option selected="selected" value="1">1 Tag</option>
                                    <option value="2">2 Tage</option>
                                    <option value="3">3 Tage</option>
                                    <option value="4">4 Tage</option>
                                    <option value="5">5 Tage</option>
                                    <option value="6">6 Tage</option>
                                    <option value="7">7 Tage</option>
                                    <option value="8">8 Tage</option>
                                    <option value="9">9 Tage</option>
                                    <option value="10">10 Tage</option>
                                  </select>
                                  <select id="ChannelSelect" class="pure-u-1 pure-u-sm-1-5" style="margin-left: 10px;"></select>
                                  <div class="pure-u-1 pure-u-sm-1-5">
                                    <button class="pure-button button-graf" style="margin-left:10px;width:160px;">Chart neu laden</button>
                                  </div>
                                </div>
                                <div class="pure-g">
                                  <label class="pure-u-1 pure-u-sm-1-5">Grafikdaten autom. aktualisieren</label>
                                  <div class="pure-u-1 pure-u-sm-1-5 on_off">
                                    <input id="Update" name="Update" type="checkbox" class="">
                                  </div>
                                  <div class="pure-u-1 pure-u-sm-2-5"></div>
                                </div>
                                </div>
                              </div>
                        
                              <div class="panel" id="panel-home">
                                <div class="header">
                                    <h1>AMIS-Zähler</h1>
                                    <br>
                                </div><br>
                                <div class="amis">
                                    <div class="pure-u-11-24">Uhrzeit (Zähler)</div>
                                    <div class="pure-u-11-24" name="now"></div>
                                    <div class="pure-u-11-24">1.8.0 (Energie A+)</div>
                                    <strong><div class="pure-u-11-24" name="1_8_0" post=" kWh" div="1000"></div></strong>
                                    <div class="pure-u-11-24">2.8.0 (Energie A-)</div>
                                    <strong><div class="pure-u-11-24" name="2_8_0" post=" kWh" div="1000"></div></strong>
                                    <div class="pure-u-11-24">3.8.1 (Energie R+)</div>
                                    <div class="pure-u-11-24" name="3_8_1" post=" kVarh" div="1000"></div>
                                    <div class="pure-u-11-24">4.8.1 (Energie R-)</div>
                                    <div class="pure-u-11-24" name="4_8_1" post=" kVarh" div="1000"></div>
                                    <div class="pure-u-11-24">1.7.0 (Wirk. P+)</div>
                                    <strong><div class="pure-u-11-24" name="1_7_0" post=" kW" div="1000"></div></strong>
                                    <div class="pure-u-11-24">2.7.0 (Wirk. P-)</div>
                                    <strong><div class="pure-u-11-24" name="2_7_0" post=" kW" div="1000"></div></strong>
                                    <div class="pure-u-11-24">Saldo 1.7.0-2.7.0</div>
                                    <strong><div class="pure-u-11-24" id="saldo"></div></strong>
                                    <div class="pure-u-11-24">3.7.0 (Blind. Q+)</div>
                                    <div class="pure-u-11-24" name="3_7_0" post=" kVar" div="1000"></div>
                                    <div class="pure-u-11-24">4.7.0 (Blind. Q-)</div>
                                    <div class="pure-u-11-24" name="4_7_0" post=" kVar" div="1000"></div>
                                    <div class="pure-u-11-24">1.128.0 (Inkasso)</div>
                                    <div class="pure-u-11-24" name="1_128_0"></div>
                                    <br><hr>
                                    <div class="pure-u-11-24">Uptime</div>
                                    <div class="pure-u-11-24" name="uptime"></div>
                                    <div class="pure-u-11-24">Upload Thingspeak</div>
                                    <div class="pure-u-11-24" name="things_up"></div>
                                    <br><hr>
                                    <h3>Energie [kWh]</h3>
                                    <div class="pure-u-1">
                                      <table class="pure-table pure-table-striped" width="100%">
                                        <thead><tr><th>Tag</th><th align="right">Bezug</th><th align="right">Lfrg.</th><th align="right">Diff.</th></tr></thead>
                                        <Tbody>
                                          <tr><td>Heute</td>    <td align="right" id="tdy_in"></td><td align="right" id="tdy_out"></td><td align="right" id="tdy_diff"></td></tr>
                                          <tr><td id="wd0"></td><td align="right" id="wd_in0"></td><td align="right" id="wd_out0"></td><td align="right" id="wd_diff0"></td></tr>
                                          <tr><td id="wd1"></td><td align="right" id="wd_in1"></td><td align="right" id="wd_out1"></td><td align="right" id="wd_diff1"></td></tr>
                                          <tr><td id="wd2"></td><td align="right" id="wd_in2"></td><td align="right" id="wd_out2"></td><td align="right" id="wd_diff2"></td></tr>
                                          <tr><td id="wd3"></td><td align="right" id="wd_in3"></td><td align="right" id="wd_out3"></td><td align="right" id="wd_diff3"></td></tr>
                                          <tr><td id="wd4"></td><td align="right" id="wd_in4"></td><td align="right" id="wd_out4"></td><td align="right" id="wd_diff4"></td></tr>
                                          <tr><td id="wd5"></td><td align="right" id="wd_in5"></td><td align="right" id="wd_out5"></td><td align="right" id="wd_diff5"></td></tr>
                                          <tr><td id="wd6"></td><td align="right" id="wd_in6"></td><td align="right" id="wd_out6"></td><td align="right" id="wd_diff6"></td></tr>
                                        </Tbody>
                                      </table>
                                    </div>
                                </div>
                              </div>
                        
                              <div class="panel pure-form" id="panel-status">
                                <div class="header">
                                    <h1>STATUS 🛈</h1>
                                    <br>
                                </div>
                                <div class="pure-u-1 pure-u-lg-1-2 state">
                                    <div class="pure-u-1-2">Chip ID</div>
                                    <div class="pure-u-11-24"><span class="right" name="chipid"></span></div>
                                    <div class="pure-u-1-2">Wifi MAC</div>
                                    <div class="pure-u-11-24"><span class="right" name="mac"></span></div>
                                    <div class="pure-u-1-2">SDK version</div>
                                    <div class="pure-u-11-24"><span class="right" name="sdk"></span></div>
                                    <div class="pure-u-1-2">Core version</div>
                                    <div class="pure-u-11-24"><span class="right" name="core"></span></div>
                                    <div class="pure-u-1-2">App version</div>
                                    <div class="pure-u-11-24"><span class="right" name="version"></span></div>
                                    <div class="pure-u-1-2">App name</div>
                                    <div class="pure-u-11-24"><span class="right" name="app_name"></span></div>
                                    <div class="pure-u-1-2">Firmware size</div>
                                    <div class="pure-u-11-24"><span class="right" name="sketchsize" post=" bytes"></span></div>
                                    <div class="pure-u-1-2">Free space</div>
                                    <div class="pure-u-11-24"><span class="right" name="freesize" post=" bytes"></span></div>
                                    <div class="pure-u-1-2">LITTLE-FS size</div>
                                    <div class="pure-u-11-24"><span class="right" name="littlefs_size" post=" bytes"></span></div>
                                    <div class="pure-u-1-2">LITTLE-FS used</div>
                                    <div class="pure-u-11-24"><span class="right" name="littlefs_used" post=" bytes"></span></div>
                                    <div class="pure-u-1-2">Max. free block size</div>
                                    <div class="pure-u-11-24"><span class="right" name="max_free_blocksz" post=" bytes"></span></div>
                                    <div class="pure-u-1-2">Free heap</div>
                                    <div class="pure-u-11-24"><span class="right" name="heap_free" post=" bytes"></span></div>
                                    <div class="pure-u-1-2">Heap fragmentation</div>
                                    <div class="pure-u-11-24"><span class="right" name="heap_fragment" post=" %"></span></div>
                                    <div class="pure-u-1-2">Flash speed</div>
                                    <div class="pure-u-11-24"><span class="right" name="flashspeed" post=" Hz"></span></div>
                                    <div class="pure-u-1-2">Flash size</div>
                                    <div class="pure-u-11-24"><span class="right" name="flashsize" post=" bytes"></span></div>
                                    <div class="pure-u-1-2">Flash mode</div>
                                    <div class="pure-u-11-24"><span class="right" name="flashmode"></span></div>
                                    <div class="pure-u-1-2">CPU Frequ.</div>
                                    <div class="pure-u-11-24"><span class="right" name="cpu" post=" MHz"></span></div>
                                </div>
                                <div class="pure-u-1 pure-u-lg-11-24 state">
                                    <div class="pure-u-1-2">Network</div>
                                    <div class="pure-u-11-24" name="ssid"></div>
                                    <div class="pure-u-1-2">Channel</div>
                                    <div class="pure-u-11-24" name="channel"></div>
                                    <div class="pure-u-1-2">RSSI</div>
                                    <div class="pure-u-11-24" name="rssi" post=" dB"></div>
                                    <div class="pure-u-1-2">IP</div>
                                    <div class="pure-u-11-24" name="deviceip"></div>
                                    <div class="pure-u-1-2">DNS</div>
                                    <div class="pure-u-11-24" name="dns"></div>
                                    <div class="pure-u-1-2">Gateway</div>
                                    <div class="pure-u-11-24" name="gateway"></div>
                                    <div class="pure-u-1-2">Netmask</div>
                                    <div class="pure-u-11-24" name="netmask"></div>
                                    <div class="pure-u-1-2">VCC</div>
                                    <div class="pure-u-11-24"><span class="right" name="vcc">? </span><span>mV</span></div>
                                    <div class="pure-u-1-2 module-mqtt">MQTT Status</div>
                                    <div class="pure-u-11-24 module-mqtt" name="mqttStatus"></div>
                                    <div class="pure-u-1-2 module-ntp">NTP Status</div>
                                    <div class="pure-u-11-24 module-ntp" name="ntpSynced"></div>
                                    <div class="pure-u-1-2 module-ntp">Current time</div>
                                    <div class="pure-u-11-24 module-ntp" name="now"></div>
                                    <div class="pure-u-1-2">Uptime</div>
                                    <div class="pure-u-11-24" name="uptime"></div>
                                </div>
                              </div>
                        
                              <div class="panel  pure-form" id="panel-general">
                                <div class="header">
                                    <h1>Allgemein</h1>
                                    <!--<h3>Current configuration</h3>-->
                                    <br>
                                </div>
                                <br>
                                <div class="pure-g">
                                    <label class="pure-u-1 pure-u-sm-1-5">Name Gerät:</label>
                                    <input class="pure-u-1 pure-u-sm-2-5 general" type="text" name="devicename" placeholder="ESP-Device" />
                                </div>
                                    <br>
                                <div class="pure-g">
                                    <label class="pure-u-1 pure-u-sm-1-5">Authentifizierung:</label>
                                    <div class="pure-u-1 pure-u-sm-2-5"><input type="checkbox" name="use_auth" id="use_auth" class="general"/></div>
                                </div>
                                <div class="auth_details">
                                  <div class="pure-g">
                                    <label class="pure-u-1 pure-u-sm-1-5">Benutzer:</label>
                                    <input class="pure-u-1 pure-u-sm-2-5 general" name="auth_user" value="Admin"/>
                                  </div>
                                  <div class="pure-g">
                                    <label class="pure-u-1 pure-u-sm-1-5">Passwort:</label>
                                    <input class="pure-u-1 pure-u-sm-2-5 general" name="auth_passwd" type="password" spellcheck="false" />
                                    <span class="no-select password-reveal"></span>
                                  </div>
                                </div>
                                <div class="pure-g">
                                    <label class="pure-u-1 pure-u-sm-1-5">System-Log:</label>
                                    <div class="pure-u-1 pure-u-sm-2-5"><input type="checkbox" name="log_sys" id="log_sys" class="general"/></div>
                                </div>
                                  <br>
                                <div style="display:block;">
                                    <div class="pure-g">
                                        <label class="pure-u-1 pure-u-sm-1-5">Amis-Key:</label>
                                        <input class="pure-u-1 pure-u-sm-2-5 general" type="text" name="amis_key"/>
                                    </div>
                                        <br>
                                    <div class="pure-g">
                                        <label class="pure-u-1 pure-u-sm-1-5">ThingSpeak/Highcharts aktiv:</label>
                                        <div class="pure-u-1 pure-u-sm-1-5"><input type="checkbox" name="thingspeak_aktiv" id="thingspeak_aktiv" class="general"/></div>
                                    </div>
                                    <div class="things_details">
                                      <div class="pure-g">
                                          <label class="pure-u-1 pure-u-sm-1-5">Channel ID:</label>
                                          <input class="pure-u-1 pure-u-sm-2-5 general" type="text" name="channel_id"/>
                                      </div>
                                      <div class="pure-g">
                                          <label class="pure-u-1 pure-u-sm-1-5">Write API Key:</label>
                                          <input class="pure-u-1 pure-u-sm-2-5 general" type="text" name="write_api_key"/>
                                      </div>
                                      <div class="pure-g">
                                          <label class="pure-u-1 pure-u-sm-1-5">Read API Key:</label>
                                          <input class="pure-u-1 pure-u-sm-2-5 general" type="text" name="read_api_key"/>
                                      </div>
                                      <div class="pure-g">
                                          <label class="pure-u-1 pure-u-sm-1-5">Intervall (sec):</label>
                                          <input class="pure-u-1 pure-u-sm-2-5 general" type="number" min="30" name="thingspeak_iv"/>
                                      </div>
                                          <hr>
                                          <br>
                                          Daten für einen zweiten Zähler abrufen:
                                          <br><br>
                                      <div class="pure-g">
                                          <label class="pure-u-1 pure-u-sm-1-5">Channel ID:</label>
                                          <input class="pure-u-1 pure-u-sm-2-5 general" type="text" name="channel_id2"/>
                                      </div>
                                      <div class="pure-g">
                                          <label class="pure-u-1 pure-u-sm-1-5">Read API Key:</label>
                                          <input class="pure-u-1 pure-u-sm-2-5 general" type="text" name="read_api_key2"/>
                                      </div>
                                    </div>
                                </div>
                                <hr>
                                <div class="pure-g">
                                  <div class="pure-u-1 pure-u-sm-1-5"><progress id="prgbar_general"></progress></div>
                                  <div style="min-height: 40px"></div>
                                </div>
                                <div class="pure-g">
                                  <div class="pure-u-1 pure-u-sm-3-5">
                                    <button class="pure-button button-update-general">Übernehmen</button>
                                    <button class="pure-button button-reboot">Neustart</button>
                                  </div>
                                </div>
                              </div>
                        
                              <div class="panel pure-form" id="panel-wifi">
                                <div class="header">
                                    <h1>WiFi 📶</h1>
                                    <h2>Gerätebezeichnung (Hostname) bei "Allgemein" festlegen</h2>
                                </div>
                                <br>
                                <div class="pure-g">
                                  <label class="pure-u-1 pure-u-sm-1-5">SSID:</label>
                                  <input class="pure-u-1 pure-u-sm-2-5 wifi" name="ssid" type="text"/>
                                </div>
                                <div class="pure-g">
                                  <label class="pure-u-1 pure-u-sm-1-5">Passwort:</label>
                                  <input class="pure-u-1 pure-u-sm-2-5 wifi" name="wifipassword" type="password"/>
                                  <span class="no-select password-reveal"></span>
                                </div>
                                <div class="pure-g">
                                  <label class="pure-u-1 pure-u-sm-1-5">DHCP</label>
                                  <div class="pure-u-1 pure-u-sm-2-5  on_off"><input type="checkbox" name="dhcp" id="dhcp" class="wifi" /></div>
                                </div>
                                <div class="wifi_details">
                                  <div class="pure-g">
                                    <label class="pure-u-1 pure-u-sm-1-5">Static IP:</label>
                                    <input class="pure-u-1 pure-u-sm-2-5 wifi" name="ip_static" type="text"/>
                                  </div>
                                  <div class="pure-g">
                                    <label class="pure-u-1 pure-u-sm-1-5">Netmask:</label>
                                    <input class="pure-u-1 pure-u-sm-2-5 wifi" name="ip_netmask" type="text"/>
                                  </div>
                                  <div class="pure-g">
                                    <label class="pure-u-1 pure-u-sm-1-5">Gateway:</label>
                                    <input class="pure-u-1 pure-u-sm-2-5 wifi" name="ip_gateway" type="text"/>
                                  </div>
                                  <div class="pure-g">
                                    <label class="pure-u-1 pure-u-sm-1-5">Nameserver:</label>
                                    <input class="pure-u-1 pure-u-sm-2-5 wifi" name="ip_nameserver" type="text"/>
                                  </div>
                                </div>
                                <div class="pure-g">
                                  <label class="pure-u-1 pure-u-sm-1-5">RF-Power:</label>
                                  <input class="pure-u-1 pure-u-sm-1-5 wifi" name="rfpower" type="number" min="0" max="25" placeholder="0..25dBm"/>
                                  <span class="pure-u-1 pure-u-sm-1-5">&nbsp;&nbsp;dBm</span>
                                </div>
                                <div class="pure-g">
                                  <label class="pure-u-1 pure-u-sm-1-5">MDNS</label>
                                  <div class="pure-u-1 pure-u-sm-2-5 on_off"><input type="checkbox" name="mdns" class="wifi" /></div>
                                  <div class="pure-u-1 pure-u-sm-3-5"></div>
                                  <div class="pure-u-1 pure-u-sm-1-5"></div>
                                  <div class="pure-u-1 pure-u-sm-4-5 hint">
                                      Wenn der Browser / das BS MDNS unterstützen, kann dieses Gerät unter "<span name="devicename" class="wifi"></span>.local" erreicht werden.
                                      Das Verfahren ist auch als Bonjour bekannt.
                                  </div>
                                </div>
                                <div class="pure-g">
                                  <div class="pure-u-1 pure-u-sm-1-5"><progress id="prgbar_wifi"></progress></div>
                                  <div style="min-height:40px"></div>
                                </div>
                                <div class="pure-g">
                                  <div class="pure-u-1 pure-u-sm-3-5">
                                    <button class="pure-button button-update-wifi">Übernehmen</button>
                                    <button class="pure-button button-reboot">Neustart</button>
                                  </div>
                                </div>
                                <hr>
                                <div class="pure-g">
                                  <label class="pure-u-1 pure-u-sm-1-5">WiFi-Scan</label>
                                  <div class="pure-u-1 pure-u-sm-4-5"><span name="stations"></span></div>
                                </div>
                              </div>
                        
                              <div class="panel pure-form" id="panel-mqtt">
                                  <div class="header">
                                      <h1>MQTT</h1>
                                      <h2>Einen MQTT broker im lokalen Netzwerk definieren.</h2>
                                  </div>
                                  <br>
                                  <div class="pure-g">
                                      <label class="pure-u-1 pure-u-sm-1-5">MQTT aktiv:</label>
                                      <div class="pure-u-1 pure-u-sm-2-5"><input type="checkbox" name="mqtt_enabled" id="mqtt_enabled" class="mqtt"/></div>
                                  </div>
                                  <div class="mqtt_details">
                                    <div class="pure-g">
                                        <label class="pure-u-1 pure-u-sm-1-5">MQTT Broker</label>
                                        <input class="pure-u-1 pure-u-sm-2-5 mqtt" name="mqtt_broker" type="text" placeholder="IP or address of your broker" />
                                    </div>
                                    <div class="pure-g">
                                        <label class="pure-u-1 pure-u-sm-1-5">MQTT Port</label>
                                        <input class="pure-u-1 pure-u-sm-2-5 mqtt" name="mqtt_port" type="number" value="1883" />
                                    </div>
                                    <div class="pure-g">
                                        <label class="pure-u-1 pure-u-sm-1-5">MQTT User</label>
                                        <input class="pure-u-1 pure-u-sm-2-5 mqtt" name="mqtt_user" type="text" placeholder="Frei lassen wenn kein Benutzer definiert ist" autocomplete="off" />
                                    </div>
                                    <div class="pure-g">
                                        <label class="pure-u-1 pure-u-sm-1-5">MQTT Passwort</label>
                                        <input class="pure-u-1 pure-u-sm-2-5 mqtt" name="mqtt_password" type="password" placeholder="Frei lassen wenn kein Passwort definiert ist" autocomplete="new-password" spellcheck="false" />
                                        <span class="no-select password-reveal"></span>
                                    </div>
                                    <div class="pure-g">
                                        <label class="pure-u-1 pure-u-sm-1-5">MQTT Client ID</label>
                                        <input class="pure-u-1 pure-u-sm-2-5 mqtt" name="mqtt_clientid" type="text"/>
                                        <div class="pure-u-0 pure-u-sm-2-5"></div>
                                        <div class="pure-u-0 pure-u-sm-1-5"></div>
                                        <div class="pure-u-1 pure-u-sm-2-5 hint">
                                            Wenn nicht definiert, wird automatisch eine ID generiert
                                        </div>
                                    </div>
                                    <div class="pure-g">
                                        <label class="pure-u-1 pure-u-sm-1-5">MQTT QoS</label>
                                        <select class="pure-u-1 pure-u-sm-2-5 mqtt" name="mqtt_qos">
                                            <option value="0">0: At most once</option>
                                            <option value="1">1: At least once</option>
                                            <option value="2">2: Exactly once</option>
                                        </select>
                                    </div>
                                    <div class="pure-g">
                                        <label class="pure-u-1 pure-u-sm-1-5">MQTT Retain</label>
                                        <div class="pure-u-1 pure-u-sm-2-5"><input type="checkbox" name="mqtt_retain" class="mqtt"/></div>
                                    </div>
                                    <div class="pure-g">
                                        <label class="pure-u-1 pure-u-sm-1-5">MQTT Keep Alive</label>
                                        <input class="pure-u-1 pure-u-sm-1-5 mqtt" type="number" name="mqtt_keep" min="0" max="3600" value="30"/>
                                        <span class="pure-u-1 pure-u-sm-1-5">&nbsp;&nbsp;sec</span>
                                    </div>
                                    <div class="pure-g">
                                        <div class="pure-u-1 pure-u-sm-1-5"></div>
                                        <div class="pure-u-1 pure-u-sm-2-5 hint">
                                            Die publish-message wird im definierten Intervall gesendet.
                                        </div>
                                    </div>
                                    <div class="pure-g">
                                      <label class="pure-u-1 pure-u-sm-1-5">MQTT publish:</label>
                                      <input class="pure-u-1 pure-u-sm-2-5 mqtt" name="mqtt_pub" type="text"/>
                                    </div>
                                    <!--<div class="pure-g">-->
                                      <!--<label class="pure-u-1 pure-u-sm-1-5">MQTT subscribe:</label>-->
                                      <!--<input class="pure-u-1 pure-u-sm-2-5 mqtt" name="mqtt_sub" type="text"/>-->
                                    <!--</div>-->
                                    <div class="pure-g">
                                      <label class="pure-u-1 pure-u-sm-1-5">MQTT Last Will:</label>
                                      <input class="pure-u-1 pure-u-sm-2-5 mqtt" name="mqtt_will" type="text"/>
                                    </div>
                                  </div>
                                  <hr>
                                  <div class="pure-g">
                                    <div class="pure-u-1 pure-u-sm-1-5"><progress id="prgbar_mqtt"></progress></div>
                                    <div style="min-height:40px"></div>
                                  </div>
                                  <div class="pure-g">
                                    <div class="pure-u-1 pure-u-sm-3-5">
                                      <button class="pure-button button-update-mqtt">Übernehmen</button>
                                      <button class="pure-button button-reboot">Neustart</button>
                                    </div>
                                  </div>
                              </div>
                        
                              <div class="panel pure-form" id="panel-update">
                                  <div class="header">
                                      <h1>Software-Update ♺</h1>
                                      <!--<h4>Configure your NTP (Network Time Protocol) servers and local configuration to keep your device time up to the second for your location.</h4>-->
                                    <br>
                                  </div>
                                  <br><br><br>
                                  <div class="pure-g">
                                      <label class="pure-u-1 pure-u-sm-1-5">Datei:</label>
                                      <input class="pure-u-1 pure-u-sm-2-5" name="filename" type="text" readonly />
                                  </div>
                                  <div class="pure-g">
                                    <div class="pure-u-1 pure-u-sm-1-5"><progress id="prgbar_update"></progress></div>
                                    <div style="min-height:40px"></div>
                                  </div>
                                  <div class="main-buttons pure-g">
                                      <button class="pure-button button-upgrade-browse pure-u-1 pure-u-sm-2-24">Auswahl</button>
                                      <div class="pure-u-1 pure-u-sm-1-24"></div>
                                      <button class="pure-button button-upgrade pure-u-1 pure-u-sm-2-24">Update</button>
                                      <div class="pure-u-1 pure-u-sm-1-24"></div>
                                      <button class="pure-button button-reboot pure-u-1 pure-u-sm-2-24">Neustart</button>
                                  </div>
                                  <input name="upgrade" type="file" style="display:none;"/>
                              </div>
                        
                              <div class="panel" id="panel-log">
                                  <div class="header">
                                      <h1>LOG 🗊</h1>
                                      <!--<h2> style="color:#555;">-->
                                      <h2>
                                          Ereignisse anzeigen
                                      </h2>
                                  </div>
                                  <br>
                                  <div class="pure-g">
                                    <div class="pure-u-2-5 "><span name="page"></span></div>
                                  </div>
                                  <div class="pure-g">
                                      <div class="pure-u-1 log"><span class="terminal" name="list"></span></div>
                                      <!--<div class=""><span class="terminal" name="list"></span></div>-->
                                  </div>
                                  <br>
                                  <div class="pure-g">
                                      <div class="pure-u-1 pure-u-sm-1-5"><button class="pure-button button-log-prev">Seite -</button></div>
                                      <div class="pure-u-1 pure-u-sm-1-5"><button class="pure-button button-log-next">Seite +</button></div>
                                      <div class="pure-u-1 pure-u-sm-1-5"><button class="pure-button button-log-clear">Log löschen</button></div>
                                  </div>
                                  <br>
                                  <div class="pure-g">
                                      <div class="pure-u-1 pure-u-sm-1-5">Tagesverbrauch</div>
                                      <div class="pure-u-1 pure-u-sm-1-5"><button class="pure-button button-hist_clear">Löschen</button></div>
                                  </div>
                              </div>
                              <div class="panel" id="panel-hist">
                                  <div class="header">
                                      <h1>Versionsinfo</h1>
                                  </div>
                                  <br>
                                  <div class="pure-g hist">
                                    <div class="pure-u-1">
                                      <h3>Version 1.2.0</h3>
                                      Neues Filesystem LittleFs eingeführt. Leider gehen dadurch alle Konfigurations- und Logdateien verloren.
                                      Kleine Bugs behoben.
                                      <br>
                                      <h3>Version 1.1.5</h3>
                                      Antwort auf rest-Anfrage ist gesperrt, so lange Zähler nicht synchron ist.
                                      <br>
                                      <h3>Version 1.1.4</h3>
                                      Alle Web-Dateien werden vom lokalen Server bereitgestellt, d.h. kein Nachladen aus externen Quellen ist notwendig. Ausnahme: Chart-Grafik, aber dazu ist grundsätzlich eine Internetverbindung notwendig.
                                      <br>
                                      Logdatei und Log-Anzeige: übersteigt die Größe der Logdatei ca. 1000 Zeilen, dann wird sie gelöscht und neu erzeugt. Der Seitenabruf wurde verbessert wegen Timeout-Problemen.
                                      <br>
                                      <h3>Version 1.1.3</h3>
                                      Leerzeichen in SSID erlaubt.
                                      Einige HTML-Bugs bereinigt.
                                      <br>
                                      <h3>Version 1.1.2</h3>
                                      Saldo 1.7.0 - 2.7.0 wird angezeigt.<br>
                                      Die Energie-History wurde ergänzt und zeigt jetzt auch die Lieferung und den Saldo per Tag an.
                                      <br>
                                      <h3>Version 1.1.1</h3>
                                      Einführung Versionsinfo.<br>
                                      Bugfix MQTT.<br>
                                      Die blaue LED leuchtet jetzt dauernd, sobald eine Verbindung zu einem Router (Access-Point) aufgebaut ist.<br>
                                      Wenn das Modul selbst als Access-Point auftritt (Jumper gesetzt), blinkt die LED. Die Netzwerkkennung (SSID) ist dann "ESP8266_AP",
                                      die Verbindung kann unter 192.168.4.1 aufgebaut werden.<br>
                                      <h3>Version 1.1.0</h3>
                                      Der Datenabruf von Thingspeak musste geändert werden, weil die bisherige Methhode mit jsonp nicht mehr unterstützt wird.
                                      Durch die Änderung des API können sehr restriktive Webbrowser u.U. keine Daten mehr abrufen.<br>
                                      Die gesamte Oberfläche wurde neu gestaltet, im Hintergrund laufen jetzt alle Vorgänge asynchron ab. Die Betriebssicherheit
                                      sollte dadurch noch besser werden.
                                    </div>
                                  </div>
                              </div>
                            </div>
                        </div>
                        
                        <!--<script src="chart.js"></script>-->
                        <script src="cust.js"></script>
                        
                        </body>
                        </html>
                        
                        
                        crunchipC Abwesend
                        crunchipC Abwesend
                        crunchip
                        Forum Testing Most Active
                        schrieb am zuletzt editiert von
                        #847

                        @goetschhofer sagte in Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK:

                        Jetzt würde ich noch gerne die Tageswerte Bezug und Einspeisung der letzten 7 Tage in iobroker übernehmen, da ich diese in dieser App ja schon habe.

                        Mit Parser kenn ich mich überhaupt nicht aus, da kann ich dir nicht weiterhelfen.
                        Aber
                        Möchtest du die Daten in iobroker oder geht es dir eher ums Grafana Dashboard?
                        Grafana kann doch rechnen, somit kannst du dir das direkt anzeigen lassen.

                        umgestiegen von Proxmox auf Unraid

                        G 1 Antwort Letzte Antwort
                        1
                        • crunchipC crunchip

                          @goetschhofer sagte in Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK:

                          Jetzt würde ich noch gerne die Tageswerte Bezug und Einspeisung der letzten 7 Tage in iobroker übernehmen, da ich diese in dieser App ja schon habe.

                          Mit Parser kenn ich mich überhaupt nicht aus, da kann ich dir nicht weiterhelfen.
                          Aber
                          Möchtest du die Daten in iobroker oder geht es dir eher ums Grafana Dashboard?
                          Grafana kann doch rechnen, somit kannst du dir das direkt anzeigen lassen.

                          G Offline
                          G Offline
                          GOETSCHHOFER
                          schrieb am zuletzt editiert von GOETSCHHOFER
                          #848

                          @crunchip said in Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK:

                          @goetschhofer sagte in Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK:

                          Jetzt würde ich noch gerne die Tageswerte Bezug und Einspeisung der letzten 7 Tage in iobroker übernehmen, da ich diese in dieser App ja schon habe.

                          Mit Parser kenn ich mich überhaupt nicht aus, da kann ich dir nicht weiterhelfen.
                          Aber
                          Möchtest du die Daten in iobroker oder geht es dir eher ums Grafana Dashboard?
                          Grafana kann doch rechnen, somit kannst du dir das direkt anzeigen lassen.

                          Ja, ich möchte auf jeden Fall die Daten Tag Bezug u. Einspeisung in kWh in iobroker haben und anschließend in mein Grafana Dashboard-AMIS-Reader übernehmen.

                          Das Problem, welches ich habe ist, dass er den Saldo jede Sekunde aus 1.7.0.-Bezug und 2.7.0 Einspeisung, wenn >0 als Bezug in den Tagessaldo-Bezug rechnen muss und wenn der Saldo <0 in den Tagessaldo-Einspeisung rechnen muss oder könnte man die Differenzen aus den kumulierten Zählerständen täglich ermitteln ?

                          Danke


                          f1b6a8b8-773f-40de-aef4-a0adc17ff8b2-image.png


                          5c9c29af-2baa-40da-8dfd-23582784012e-image.png

                          G crunchipC 2 Antworten Letzte Antwort
                          0
                          • G GOETSCHHOFER

                            @crunchip said in Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK:

                            @goetschhofer sagte in Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK:

                            Jetzt würde ich noch gerne die Tageswerte Bezug und Einspeisung der letzten 7 Tage in iobroker übernehmen, da ich diese in dieser App ja schon habe.

                            Mit Parser kenn ich mich überhaupt nicht aus, da kann ich dir nicht weiterhelfen.
                            Aber
                            Möchtest du die Daten in iobroker oder geht es dir eher ums Grafana Dashboard?
                            Grafana kann doch rechnen, somit kannst du dir das direkt anzeigen lassen.

                            Ja, ich möchte auf jeden Fall die Daten Tag Bezug u. Einspeisung in kWh in iobroker haben und anschließend in mein Grafana Dashboard-AMIS-Reader übernehmen.

                            Das Problem, welches ich habe ist, dass er den Saldo jede Sekunde aus 1.7.0.-Bezug und 2.7.0 Einspeisung, wenn >0 als Bezug in den Tagessaldo-Bezug rechnen muss und wenn der Saldo <0 in den Tagessaldo-Einspeisung rechnen muss oder könnte man die Differenzen aus den kumulierten Zählerständen täglich ermitteln ?

                            Danke


                            f1b6a8b8-773f-40de-aef4-a0adc17ff8b2-image.png


                            5c9c29af-2baa-40da-8dfd-23582784012e-image.png

                            G Offline
                            G Offline
                            GOETSCHHOFER
                            schrieb am zuletzt editiert von
                            #849

                            @hormoran

                            Hallo hormoran,

                            ich würde gerne die Werte Tageswerte Bezug und Einspeisung aus meinem AMIS-Reader-IP192.168.1.35 parsen und in den iobroker schreiben.

                            Die Doku befindet sich 2 posts weiter oben.
                            Habe aber das Problem, dass ich mich bei der Syntax bei den Eingaben im Adaper parser nicht wirklich auskenne.

                            Könntest du mir hier weiterhelfen ?

                            Vielen Dank im Voraus.

                            Karl


                            3753e0d1-e22f-4104-b89f-2cf4e01b8a59-image.png

                            1 Antwort Letzte Antwort
                            0
                            • G GOETSCHHOFER

                              @crunchip said in Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK:

                              @goetschhofer sagte in Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK:

                              Jetzt würde ich noch gerne die Tageswerte Bezug und Einspeisung der letzten 7 Tage in iobroker übernehmen, da ich diese in dieser App ja schon habe.

                              Mit Parser kenn ich mich überhaupt nicht aus, da kann ich dir nicht weiterhelfen.
                              Aber
                              Möchtest du die Daten in iobroker oder geht es dir eher ums Grafana Dashboard?
                              Grafana kann doch rechnen, somit kannst du dir das direkt anzeigen lassen.

                              Ja, ich möchte auf jeden Fall die Daten Tag Bezug u. Einspeisung in kWh in iobroker haben und anschließend in mein Grafana Dashboard-AMIS-Reader übernehmen.

                              Das Problem, welches ich habe ist, dass er den Saldo jede Sekunde aus 1.7.0.-Bezug und 2.7.0 Einspeisung, wenn >0 als Bezug in den Tagessaldo-Bezug rechnen muss und wenn der Saldo <0 in den Tagessaldo-Einspeisung rechnen muss oder könnte man die Differenzen aus den kumulierten Zählerständen täglich ermitteln ?

                              Danke


                              f1b6a8b8-773f-40de-aef4-a0adc17ff8b2-image.png


                              5c9c29af-2baa-40da-8dfd-23582784012e-image.png

                              crunchipC Abwesend
                              crunchipC Abwesend
                              crunchip
                              Forum Testing Most Active
                              schrieb am zuletzt editiert von
                              #850

                              @goetschhofer ich blicke da nicht durch, welche Datenpunkte für was stehen, wie z.b.
                              180
                              280
                              381
                              481
                              das sind doch schon Gesamtwerte in kwh

                              @goetschhofer sagte in Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK:

                              Das Problem, welches ich habe ist, dass er den Saldo jede Sekunde aus 1.7.0.-Bezug und 2.7.0 Einspeisung, wenn >0 als Bezug in den Tagessaldo-Bezug rechnen muss

                              dazu doch dann die Differenz mit nem blockly aus dem entsprechenden Datenpunkt(180,280....)

                              umgestiegen von Proxmox auf Unraid

                              G 1 Antwort Letzte Antwort
                              1
                              • crunchipC crunchip

                                @goetschhofer ich blicke da nicht durch, welche Datenpunkte für was stehen, wie z.b.
                                180
                                280
                                381
                                481
                                das sind doch schon Gesamtwerte in kwh

                                @goetschhofer sagte in Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK:

                                Das Problem, welches ich habe ist, dass er den Saldo jede Sekunde aus 1.7.0.-Bezug und 2.7.0 Einspeisung, wenn >0 als Bezug in den Tagessaldo-Bezug rechnen muss

                                dazu doch dann die Differenz mit nem blockly aus dem entsprechenden Datenpunkt(180,280....)

                                G Offline
                                G Offline
                                GOETSCHHOFER
                                schrieb am zuletzt editiert von GOETSCHHOFER
                                #851

                                @crunchip said in Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK:

                                @goetschhofer ich blicke da nicht durch, welche Datenpunkte für was stehen, wie z.b.
                                180
                                280
                                381
                                481
                                das sind doch schon Gesamtwerte in kwh

                                @goetschhofer sagte in Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK:

                                Das Problem, welches ich habe ist, dass er den Saldo jede Sekunde aus 1.7.0.-Bezug und 2.7.0 Einspeisung, wenn >0 als Bezug in den Tagessaldo-Bezug rechnen muss

                                dazu doch dann die Differenz mit nem blockly aus dem entsprechenden Datenpunkt(180,280....)

                                Hallo crunchip,

                                vielen Dank für die Rückantwort.
                                Ja, ich weiß dies ist verwirrend, so ging es mir Anfangs auch um die Werte aus dem EVU-Smartmeter zu verstehen.

                                1.8.0=BEZUG u. 2.8.0=EINSPEISUNG sind Kumulierte Zählerstände seit Beginn in kWh.

                                3.8.1 u. 4.8.1 sind die Zählerstände für die Blindleistung Bezug/Einspeisung, diese Werte sind nur informativ, aber haben nicht wirklich eine Bedeutung.

                                Für die Ermittlung des Tages-Bezuges- und Einspeisung in kWh ist nur der momentante Saldo aus 1.7.0 abzügl. 2.7.0 von Relevanz und dieser kann natürlich sekündlich wechseln in +Bezug und -Einspeisung.

                                In dem gezeigten Screenshot wird gerade auf L1=bezogen und in L2+L3=eingespeist, aufgrund der 3-Phasensaldierung ergibt sich ein momentaner +Bezug.

                                Der Grund für das Blockly ist, dass er über MQTT den Saldo aus 1.7.0 und 2.7.0 nicht liefert, dieser wird nur auf der Seite vom AMIS Reader angezeigt und daher ermittle ich den Saldo mit dem blockly.


                                13ccf9e1-a5c1-4b99-8b09-8a3330f58912-image.png


                                bea37b09-1fe9-487c-89fb-d32fdee6d082-image.png

                                Danke im Voraus für deine Mühe.

                                Karl

                                c301d447-4527-4a99-8337-3d006d0c4352-image.png

                                G 1 Antwort Letzte Antwort
                                0
                                • G GOETSCHHOFER

                                  @crunchip said in Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK:

                                  @goetschhofer ich blicke da nicht durch, welche Datenpunkte für was stehen, wie z.b.
                                  180
                                  280
                                  381
                                  481
                                  das sind doch schon Gesamtwerte in kwh

                                  @goetschhofer sagte in Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK:

                                  Das Problem, welches ich habe ist, dass er den Saldo jede Sekunde aus 1.7.0.-Bezug und 2.7.0 Einspeisung, wenn >0 als Bezug in den Tagessaldo-Bezug rechnen muss

                                  dazu doch dann die Differenz mit nem blockly aus dem entsprechenden Datenpunkt(180,280....)

                                  Hallo crunchip,

                                  vielen Dank für die Rückantwort.
                                  Ja, ich weiß dies ist verwirrend, so ging es mir Anfangs auch um die Werte aus dem EVU-Smartmeter zu verstehen.

                                  1.8.0=BEZUG u. 2.8.0=EINSPEISUNG sind Kumulierte Zählerstände seit Beginn in kWh.

                                  3.8.1 u. 4.8.1 sind die Zählerstände für die Blindleistung Bezug/Einspeisung, diese Werte sind nur informativ, aber haben nicht wirklich eine Bedeutung.

                                  Für die Ermittlung des Tages-Bezuges- und Einspeisung in kWh ist nur der momentante Saldo aus 1.7.0 abzügl. 2.7.0 von Relevanz und dieser kann natürlich sekündlich wechseln in +Bezug und -Einspeisung.

                                  In dem gezeigten Screenshot wird gerade auf L1=bezogen und in L2+L3=eingespeist, aufgrund der 3-Phasensaldierung ergibt sich ein momentaner +Bezug.

                                  Der Grund für das Blockly ist, dass er über MQTT den Saldo aus 1.7.0 und 2.7.0 nicht liefert, dieser wird nur auf der Seite vom AMIS Reader angezeigt und daher ermittle ich den Saldo mit dem blockly.


                                  13ccf9e1-a5c1-4b99-8b09-8a3330f58912-image.png


                                  bea37b09-1fe9-487c-89fb-d32fdee6d082-image.png

                                  Danke im Voraus für deine Mühe.

                                  Karl

                                  c301d447-4527-4a99-8337-3d006d0c4352-image.png

                                  G Offline
                                  G Offline
                                  GOETSCHHOFER
                                  schrieb am zuletzt editiert von GOETSCHHOFER
                                  #852

                                  @hormoran @Thomas-Braun

                                  Bei meinem Problem den aktuellen Tagesverbrauch aus meinem AMIS-Zähler zu parsen, bin ich einen wesentlichen Schritt weitergekommen.
                                  Im Regex101 funktioniert es bereits, d. h. hier bekomme ich den korrekten Wert. Siehe Screenshots.

                                  Mein Problem ist jetzt nur noch, dass ich im iobroker unter parser.1 Datenpunkte keinen Wert bekomme.

                                  Wo könnte hier noch das Problem liegen ?
                                  Kann es mit Rolle und Typ zusammenhängen ?

                                  Wäre euch sehr dankbar, wenn ihr mir hier bei der Lösung meines Problems helfen könntet.

                                  Vielen Dank im Voraus.

                                  Karl


                                  459e07ba-de17-4e0c-910c-aaf97b05e111-image.png


                                  6f4436c5-9b1c-49a8-9b51-fd7e0abb1ccd-image.png


                                  297d09a3-718b-4cbd-8620-b68916bd69f7-image.png


                                  14710934-9862-47d5-a75a-deb54f8ee4a3-image.png

                                  Nachtrag:
                                  Ich habe jetzt im iobroker die Statusansicht gewechselt und da sehe ich, dass ich unter Qualitätscode eine Fehlermeldung habe, "device error [ox44]". ? "0x44 - Zahl oder Zeichenfolge im Text nicht gefunden"
                                  https://www.iobroker.net/#de/adapters/adapterref/iobroker.parser/README.md

                                  Die Seite vom AMIS-Reader 192.168.1.35 ist aber erreichbar und parser.1 leuchtet 2 x grün.
                                  Ebenso zeigt er in den Ereignissen im iobroker unter alive: true.


                                  908ec759-6acf-4d57-8857-c06ba88bd165-image.png


                                  b52bbbe4-b68b-48bf-8475-264ef1563dd9-image.png


                                  1326e6ff-0dea-4be9-8f8a-ed47a6c14200-image.png

                                  G 1 Antwort Letzte Antwort
                                  0
                                  • G GOETSCHHOFER

                                    @hormoran @Thomas-Braun

                                    Bei meinem Problem den aktuellen Tagesverbrauch aus meinem AMIS-Zähler zu parsen, bin ich einen wesentlichen Schritt weitergekommen.
                                    Im Regex101 funktioniert es bereits, d. h. hier bekomme ich den korrekten Wert. Siehe Screenshots.

                                    Mein Problem ist jetzt nur noch, dass ich im iobroker unter parser.1 Datenpunkte keinen Wert bekomme.

                                    Wo könnte hier noch das Problem liegen ?
                                    Kann es mit Rolle und Typ zusammenhängen ?

                                    Wäre euch sehr dankbar, wenn ihr mir hier bei der Lösung meines Problems helfen könntet.

                                    Vielen Dank im Voraus.

                                    Karl


                                    459e07ba-de17-4e0c-910c-aaf97b05e111-image.png


                                    6f4436c5-9b1c-49a8-9b51-fd7e0abb1ccd-image.png


                                    297d09a3-718b-4cbd-8620-b68916bd69f7-image.png


                                    14710934-9862-47d5-a75a-deb54f8ee4a3-image.png

                                    Nachtrag:
                                    Ich habe jetzt im iobroker die Statusansicht gewechselt und da sehe ich, dass ich unter Qualitätscode eine Fehlermeldung habe, "device error [ox44]". ? "0x44 - Zahl oder Zeichenfolge im Text nicht gefunden"
                                    https://www.iobroker.net/#de/adapters/adapterref/iobroker.parser/README.md

                                    Die Seite vom AMIS-Reader 192.168.1.35 ist aber erreichbar und parser.1 leuchtet 2 x grün.
                                    Ebenso zeigt er in den Ereignissen im iobroker unter alive: true.


                                    908ec759-6acf-4d57-8857-c06ba88bd165-image.png


                                    b52bbbe4-b68b-48bf-8475-264ef1563dd9-image.png


                                    1326e6ff-0dea-4be9-8f8a-ed47a6c14200-image.png

                                    G Offline
                                    G Offline
                                    GOETSCHHOFER
                                    schrieb am zuletzt editiert von GOETSCHHOFER
                                    #853

                                    @crunchip

                                    Ich würde gerne überprüfen, ob der Port 502 (Heizungsteuerung) auf Listen ist, da die Modbus Instanz nicht grün wird.

                                    Über die Shell habe ich folgendes eingegeben:

                                    sudo netstat -tulpn
                                    

                                    Hier scheint der port 502 nicht auf.

                                    karl@IOBROKER:~$ sudo netstat -tulpn
                                    [sudo] Passwort für karl:
                                    Aktive Internetverbindungen (Nur Server)
                                    Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
                                    tcp        0      0 127.0.0.1:9000          0.0.0.0:*               LISTEN      369/iobroker.js-con
                                    tcp        0      0 127.0.0.1:9001          0.0.0.0:*               LISTEN      369/iobroker.js-con
                                    tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      1/init
                                    tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      407/sshd
                                    tcp        0      0 0.0.0.0:1883            0.0.0.0:*               LISTEN      1096/io.mqtt.0
                                    tcp6       0      0 :::111                  :::*                    LISTEN      1/init
                                    tcp6       0      0 :::8081                 :::*                    LISTEN      513/io.admin.0
                                    tcp6       0      0 :::8082                 :::*                    LISTEN      1204/io.web.0
                                    tcp6       0      0 :::8084                 :::*                    LISTEN      1174/io.socketio.0
                                    tcp6       0      0 :::22                   :::*                    LISTEN      407/sshd
                                    tcp6       0      0 :::8087                 :::*                    LISTEN      1148/io.simple-api.
                                    udp        0      0 0.0.0.0:68              0.0.0.0:*                           362/dhclient
                                    udp        0      0 0.0.0.0:111             0.0.0.0:*                           1/init
                                    udp        0      0 0.0.0.0:5683            0.0.0.0:*                           1122/io.shelly.0
                                    udp6       0      0 :::111                  :::*                                1/init
                                    
                                    
                                    Proto Recv-Q Send-Q Local Address           Foreign Address         State       Benutzer   Inode
                                    tcp        0      0 localhost:9000          0.0.0.0:*               LISTEN      iobroker   13297
                                    tcp        0      0 localhost:9001          0.0.0.0:*               LISTEN      iobroker   13290
                                    tcp        0      0 0.0.0.0:sunrpc          0.0.0.0:*               LISTEN      root       9685
                                    tcp        0      0 0.0.0.0:ssh             0.0.0.0:*               LISTEN      root       14619
                                    tcp        0      0 0.0.0.0:1883            0.0.0.0:*               LISTEN      iobroker   17349
                                    tcp6       0      0 [::]:sunrpc             [::]:*                  LISTEN      root       9690
                                    tcp6       0      0 [::]:tproxy             [::]:*                  LISTEN      iobroker   15475
                                    tcp6       0      0 [::]:8082               [::]:*                  LISTEN      iobroker   17439
                                    tcp6       0      0 [::]:8084               [::]:*                  LISTEN      iobroker   16073
                                    tcp6       0      0 [::]:ssh                [::]:*                  LISTEN      root       14630
                                    tcp6       0      0 [::]:8087               [::]:*                  LISTEN      iobroker   15173
                                    karl@IOBROKER:~$
                                    
                                    

                                    Habe im Forum gelesen, dass es eventuell ein Rechteproblem ist, wegen Port und man dies mit dem Installationsfixer über die shell reparieren kann: https://forum.iobroker.net/topic/26032/gelöst-modbus-adapter-uvr-16x2-cmi/2?_=1627221794391

                                    Vorher
                                    sudo iobroker stop
                                    curl -fsL https://iobroker.net/fix.sh | bash -
                                    sudo iobroker start

                                    Kann ich da was falsch machen ?

                                    Danke für die Hilfe.

                                    Thomas BraunT 1 Antwort Letzte Antwort
                                    0
                                    • G GOETSCHHOFER

                                      @crunchip

                                      Ich würde gerne überprüfen, ob der Port 502 (Heizungsteuerung) auf Listen ist, da die Modbus Instanz nicht grün wird.

                                      Über die Shell habe ich folgendes eingegeben:

                                      sudo netstat -tulpn
                                      

                                      Hier scheint der port 502 nicht auf.

                                      karl@IOBROKER:~$ sudo netstat -tulpn
                                      [sudo] Passwort für karl:
                                      Aktive Internetverbindungen (Nur Server)
                                      Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
                                      tcp        0      0 127.0.0.1:9000          0.0.0.0:*               LISTEN      369/iobroker.js-con
                                      tcp        0      0 127.0.0.1:9001          0.0.0.0:*               LISTEN      369/iobroker.js-con
                                      tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      1/init
                                      tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      407/sshd
                                      tcp        0      0 0.0.0.0:1883            0.0.0.0:*               LISTEN      1096/io.mqtt.0
                                      tcp6       0      0 :::111                  :::*                    LISTEN      1/init
                                      tcp6       0      0 :::8081                 :::*                    LISTEN      513/io.admin.0
                                      tcp6       0      0 :::8082                 :::*                    LISTEN      1204/io.web.0
                                      tcp6       0      0 :::8084                 :::*                    LISTEN      1174/io.socketio.0
                                      tcp6       0      0 :::22                   :::*                    LISTEN      407/sshd
                                      tcp6       0      0 :::8087                 :::*                    LISTEN      1148/io.simple-api.
                                      udp        0      0 0.0.0.0:68              0.0.0.0:*                           362/dhclient
                                      udp        0      0 0.0.0.0:111             0.0.0.0:*                           1/init
                                      udp        0      0 0.0.0.0:5683            0.0.0.0:*                           1122/io.shelly.0
                                      udp6       0      0 :::111                  :::*                                1/init
                                      
                                      
                                      Proto Recv-Q Send-Q Local Address           Foreign Address         State       Benutzer   Inode
                                      tcp        0      0 localhost:9000          0.0.0.0:*               LISTEN      iobroker   13297
                                      tcp        0      0 localhost:9001          0.0.0.0:*               LISTEN      iobroker   13290
                                      tcp        0      0 0.0.0.0:sunrpc          0.0.0.0:*               LISTEN      root       9685
                                      tcp        0      0 0.0.0.0:ssh             0.0.0.0:*               LISTEN      root       14619
                                      tcp        0      0 0.0.0.0:1883            0.0.0.0:*               LISTEN      iobroker   17349
                                      tcp6       0      0 [::]:sunrpc             [::]:*                  LISTEN      root       9690
                                      tcp6       0      0 [::]:tproxy             [::]:*                  LISTEN      iobroker   15475
                                      tcp6       0      0 [::]:8082               [::]:*                  LISTEN      iobroker   17439
                                      tcp6       0      0 [::]:8084               [::]:*                  LISTEN      iobroker   16073
                                      tcp6       0      0 [::]:ssh                [::]:*                  LISTEN      root       14630
                                      tcp6       0      0 [::]:8087               [::]:*                  LISTEN      iobroker   15173
                                      karl@IOBROKER:~$
                                      
                                      

                                      Habe im Forum gelesen, dass es eventuell ein Rechteproblem ist, wegen Port und man dies mit dem Installationsfixer über die shell reparieren kann: https://forum.iobroker.net/topic/26032/gelöst-modbus-adapter-uvr-16x2-cmi/2?_=1627221794391

                                      Vorher
                                      sudo iobroker stop
                                      curl -fsL https://iobroker.net/fix.sh | bash -
                                      sudo iobroker start

                                      Kann ich da was falsch machen ?

                                      Danke für die Hilfe.

                                      Thomas BraunT Online
                                      Thomas BraunT Online
                                      Thomas Braun
                                      Most Active
                                      schrieb am zuletzt editiert von
                                      #854

                                      @goetschhofer sagte in Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK:

                                      sudo iobroker stop
                                      curl -fsL https://iobroker.net/fix.sh | bash -
                                      sudo iobroker start

                                      Man fummelt nicht mit sudo in Verbindung mit iobroker herum. Das ist schon falsch (und sorgt eben für verbogene Rechte!)

                                      Linux-Werkzeugkasten:
                                      https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                                      NodeJS Fixer Skript:
                                      https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                                      iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                                      G 2 Antworten Letzte Antwort
                                      1
                                      • Thomas BraunT Thomas Braun

                                        @goetschhofer sagte in Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK:

                                        sudo iobroker stop
                                        curl -fsL https://iobroker.net/fix.sh | bash -
                                        sudo iobroker start

                                        Man fummelt nicht mit sudo in Verbindung mit iobroker herum. Das ist schon falsch (und sorgt eben für verbogene Rechte!)

                                        G Offline
                                        G Offline
                                        GOETSCHHOFER
                                        schrieb am zuletzt editiert von
                                        #855

                                        @thomas-braun

                                        Danke für die rasche Rückinfo.

                                        Darum frage ich ja vorher, bevor ich mich auf das Glatteis begebe. :confused:

                                        Wie kann ich überprüfen, ob der Port 502 Daten sendet ?

                                        1 Antwort Letzte Antwort
                                        0
                                        • Thomas BraunT Thomas Braun

                                          @goetschhofer sagte in Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK:

                                          sudo iobroker stop
                                          curl -fsL https://iobroker.net/fix.sh | bash -
                                          sudo iobroker start

                                          Man fummelt nicht mit sudo in Verbindung mit iobroker herum. Das ist schon falsch (und sorgt eben für verbogene Rechte!)

                                          G Offline
                                          G Offline
                                          GOETSCHHOFER
                                          schrieb am zuletzt editiert von
                                          #856

                                          @thomas-braun said in Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK:

                                          @goetschhofer sagte in Anfänger sucht Hilfe bei Install. proxmox auf INTELNUC8i3BEK:

                                          sudo iobroker stop
                                          curl -fsL https://iobroker.net/fix.sh | bash -
                                          sudo iobroker start

                                          Man fummelt nicht mit sudo in Verbindung mit iobroker herum. Das ist schon falsch (und sorgt eben für verbogene Rechte!)

                                          Hallo Thomas,

                                          bezüglich meines Problems mit dem iobroker adapter habe ich ein issue in github aufgemacht und Apollon77 hat mir folgendes empfohlen.


                                          Please run "Iobroker fix" ... it seems that your permissions are not the correct ones

                                          Könntest du mir bitte hier unter die Arme greifen um nicht anschließend mit den Berechtigungen Probleme zu haben ?
                                          Wie mache ich dies jetzt korrekt ?

                                          Vielen Dank für deine Hilfe.

                                          LG

                                          Karl

                                          da_WoodyD 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

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

                                          791

                                          Online

                                          32.5k

                                          Benutzer

                                          81.8k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe