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

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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Praktische Anwendungen (Showcase)
  4. E-INK Display OpenEPaperLink - Displayanzeige mit Batterie

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.8k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.2k

E-INK Display OpenEPaperLink - Displayanzeige mit Batterie

Scheduled Pinned Locked Moved Praktische Anwendungen (Showcase)
1.0k Posts 49 Posters 348.5k Views 52 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • O oxident

    Ich muss aber einwerfen, dass Pupeteer irgendwie derzeit noch nicht rund läuft. Habe nach einem iobroker-Umzug derzeit Probleme, den Adapter wieder lauffähig zu bekommen.

    Wenn das geklärt ist mache ich gerne eine Schritt für Schritt Anleitung.

    Andererseits fände ich diese Funktionalität eigentlich sehr gut im OpenEPaperLink-Adapter aufgehoben. Was denkt ihr?

    haselchenH Offline
    haselchenH Offline
    haselchen
    Most Active
    wrote on last edited by haselchen
    #177

    @oxident

    Puppeteer konnte ich gestern auch nicht installieren. Gab schon bei der Installation einen Hinweis und danach lauter rote Meldungen im Log.
    Hab ich erstmal verschoben.
    Den OpenEPaper Adapter hab ich gar nicht finden können. Taucht in keiner Liste auf.
    Eine manuelle Installation endete mit Code 25.
    Also hab ich mich versucht da ein wenig reinzufuchsen.
    Ganz cool ist die/ jsontemplate-demo.html
    Da kann man ein wenig üben.
    War für den Anfang nicht schlecht.

    Dann wolte ich wenigstens mal was Produktives :)

    Also hab ich mich an den Google Kalender gemacht. Und was soll ich sagen, ein sehr geiles Projekt.
    Erklärung hier: https://github.com/jjwbruijn/OpenEPaperLink/wiki/Google-Apps-Scripts

    Und dann den Link aus der Google Script Anleitung in den Tag kopieren:

    50557b3b-5276-4dc1-9e27-42e153f2eae8-grafik.png

    IMG_2147.jpeg

    Das Skript holt alle Kalender ab, die ihr bei Google gespeichert habt.
    Allerdings zeigt er nur Termine an, die am nächsten Tag sind.

    Edit: im Skript einfach 2 mal die 1 auf eine beliebige Zahl ändern, dann werden mehr Tage angezeigt.

      var start = new Date();
      start.setHours(0, 0, 0, 0);
      var end = new Date();
      if (days == undefined) days = 1;                     <------   HIER
      end.setDate(end.getDate() + parseInt(days, 10));
      var calendars = CalendarApp.getAllCalendars();
      var events = [];
      for (var i = 0; i < calendars.length; i++) {
        var calendar = calendars[i];
        var eventsInCalendar = calendar.getEvents(start, end);
        for (var j = 0; j < eventsInCalendar.length; j++) {
          var event = eventsInCalendar[j];
          events.push({
            calendar: i,
            title: event.getTitle(),
            start: Math.floor(event.getStartTime().getTime() / 1000),
            end: Math.floor(event.getEndTime().getTime() / 1000),
            isallday: event.isAllDayEvent()
          });
        }
      }
      events.sort(function(a, b) {
        return a.start - b.start;
      });
      return JSON.stringify(events);
    }
    
    function doGet(e) {
      if(!e) { 
        e = {parameter: {days: 1}};              <----------------    HIER
      }
      const params = e.parameter;
      var content = getEventsForNextDay(params.days);
      var output = ContentService.createTextOutput(content);
      output.setMimeType(ContentService.MimeType.JSON);
      return output;
    }
    
    

    Synology DS218+ & 2 x Fujitsu Esprimo (VM/Container) + FritzBox7590 + 2 AVM 3000 Repeater & Homematic & HUE & Osram & Xiaomi, NPM 10.9.4, Nodejs 22.21.0 ,JS Controller 7.0.7 ,Admin 7.7.19

    mcm1957M B 2 Replies Last reply
    1
    • haselchenH haselchen

      @oxident

      Puppeteer konnte ich gestern auch nicht installieren. Gab schon bei der Installation einen Hinweis und danach lauter rote Meldungen im Log.
      Hab ich erstmal verschoben.
      Den OpenEPaper Adapter hab ich gar nicht finden können. Taucht in keiner Liste auf.
      Eine manuelle Installation endete mit Code 25.
      Also hab ich mich versucht da ein wenig reinzufuchsen.
      Ganz cool ist die/ jsontemplate-demo.html
      Da kann man ein wenig üben.
      War für den Anfang nicht schlecht.

      Dann wolte ich wenigstens mal was Produktives :)

      Also hab ich mich an den Google Kalender gemacht. Und was soll ich sagen, ein sehr geiles Projekt.
      Erklärung hier: https://github.com/jjwbruijn/OpenEPaperLink/wiki/Google-Apps-Scripts

      Und dann den Link aus der Google Script Anleitung in den Tag kopieren:

      50557b3b-5276-4dc1-9e27-42e153f2eae8-grafik.png

      IMG_2147.jpeg

      Das Skript holt alle Kalender ab, die ihr bei Google gespeichert habt.
      Allerdings zeigt er nur Termine an, die am nächsten Tag sind.

      Edit: im Skript einfach 2 mal die 1 auf eine beliebige Zahl ändern, dann werden mehr Tage angezeigt.

        var start = new Date();
        start.setHours(0, 0, 0, 0);
        var end = new Date();
        if (days == undefined) days = 1;                     <------   HIER
        end.setDate(end.getDate() + parseInt(days, 10));
        var calendars = CalendarApp.getAllCalendars();
        var events = [];
        for (var i = 0; i < calendars.length; i++) {
          var calendar = calendars[i];
          var eventsInCalendar = calendar.getEvents(start, end);
          for (var j = 0; j < eventsInCalendar.length; j++) {
            var event = eventsInCalendar[j];
            events.push({
              calendar: i,
              title: event.getTitle(),
              start: Math.floor(event.getStartTime().getTime() / 1000),
              end: Math.floor(event.getEndTime().getTime() / 1000),
              isallday: event.isAllDayEvent()
            });
          }
        }
        events.sort(function(a, b) {
          return a.start - b.start;
        });
        return JSON.stringify(events);
      }
      
      function doGet(e) {
        if(!e) { 
          e = {parameter: {days: 1}};              <----------------    HIER
        }
        const params = e.parameter;
        var content = getEventsForNextDay(params.days);
        var output = ContentService.createTextOutput(content);
        output.setMimeType(ContentService.MimeType.JSON);
        return output;
      }
      
      
      mcm1957M Online
      mcm1957M Online
      mcm1957
      wrote on last edited by mcm1957
      #178

      @haselchen said in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

      Puppeteer konnte ich gestern auch nicht installieren. Gab schon bei der Installation einen Hinweis und danach lauter rote Meldungen im Log.

      Welche Meldungen?
      Im Adapter Repo seh ich keinen Hinweis dass es prinzipiell Probleme gibt. Da Foxriver als Maintainer durchaus aktiv ist, sollte man dem nachgehen wenn wes nicht "nur" ein Problem deiner konkreten Installation ist. Und auch dann sollten wir den Fehler suchen.

      Den OpenEPaper Adapter hab ich gar nicht finden können. Taucht in keiner Liste auf.

      Den Adapter gibts noch nicht im Repository - wenn du open-epapaper-link meinst. Beim Review wurden ein paar Kleinigkeiten angemerkt - seither hatte niemand mehr Zeit den Adapter weiter zu entwickeln. (https://github.com/ioBroker/ioBroker.repositories/pull/3003)

      Entwicklung u Betreuung: envertech-pv, hoymiles-ms, ns-client, pid, snmp Adapter;
      Support Repositoryverwaltung.

      Wer Danke sagen will, kann nen Kaffee spendieren: https://paypal.me/mcm1957atiobroker

      LESEN - gute Forenbeitrage

      O 1 Reply Last reply
      1
      • R Revobobo

        @BananaJoe & @bimmi
        Ich bin mir ziemlich sicher, dass es an der Firware des AP liegt. Diese schwarzen Schatten sind bei mir nach einem Update aufgetreten. Ich glaube die 1.7-beta hatte das noch nicht. Würde es gerne testen - weiß aber nicht wie ich zurück springen kann.

        B Offline
        B Offline
        bimmi
        wrote on last edited by
        #179

        @revobobo sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

        @BananaJoe & @bimmi
        Ich bin mir ziemlich sicher, dass es an der Firware des AP liegt. Diese schwarzen Schatten sind bei mir nach einem Update aufgetreten. Ich glaube die 1.7-beta hatte das noch nicht. Würde es gerne testen - weiß aber nicht wie ich zurück springen kann.

        Zitat Discord:

        I revisited the part of the rendering code that looks for the nearest color, and made an improvement. Or, to say, I changed it back like it was before 😊. The artifacts on your image will be gone in the next release.
        (I originally changed it because I wanted to apply a gamma correction for the dithering, but it turned out it wasn’t working anyway)

        Mit dem nächsten Release sollten die Artefakte wohl verschwinden!

        Gruß Bimmi

        iobroker in einer Proxmox Umgebung auf einem ausrangierten DELL OptiPlex 3080 24GB i5 in der VM auf SSD. Nutze den slaeh zigbee Router mit Tür- und Temperatursensoren von Aqara, viele Tasmota Devices, Unifi AP, Sprinklecontrol, günstige E-INK Displays, Adguard und noch vieles mehr 😬

        R 1 Reply Last reply
        0
        • B bimmi

          @haselchen ich hab mir eine eigene VIS für die Displays erstellt, eigene Datenpunkte für jeden Display und für jedes Display ein eigenes Blockly.

          0f737952-40ab-49f6-9b65-3a9752e44b2b-image.png

          4c64ba74-1494-41f8-bcea-2e273d40408f-image.png

          40cae8cc-3bbf-4efa-bce6-9f8793f779e6-image.png

          <xml xmlns="https://developers.google.com/blockly/xml">
            <variables>
              <variable id="=|-HU{v0HPlybOQ*ghcR">mypath</variable>
              <variable id="(O?~p(`|c|(KIhiht#i*">myurl</variable>
              <variable id="Kg9b=20h)E,riQJeDEcb">myheight</variable>
              <variable id="d?/+]%mL0t@pakXBBv]V">mywidth</variable>
              <variable id="ELianL7RIoI]6v](.5H{">clipx</variable>
              <variable id="v7~-E}:`3zaZ=MG;7P=[">clipy</variable>
              <variable id="WKu^.B?9T66xQ_qJgB@2">clipwidth</variable>
              <variable id="$JY/m%d:K3q{;2o7?$9r">clipheight</variable>
              <variable id="*^L*3Kju!MAP#u`QL(gE">myselector</variable>
              <variable id="8,q0AR=qke3-k-JCj-2U">quality</variable>
              <variable type="timeout" id="wait-send-to-ap">wait-send-to-ap</variable>
            </variables>
            <block type="procedures_defcustomnoreturn" id="{{Bl:d;+8eDTq,0~J9H2" x="-137" y="-737">
              <mutation statements="false">
                <arg name="mypath" varid="=|-HU{v0HPlybOQ*ghcR"></arg>
                <arg name="myurl" varid="(O?~p(`|c|(KIhiht#i*"></arg>
                <arg name="myheight" varid="Kg9b=20h)E,riQJeDEcb"></arg>
                <arg name="mywidth" varid="d?/+]%mL0t@pakXBBv]V"></arg>
                <arg name="clipx" varid="ELianL7RIoI]6v](.5H{"></arg>
                <arg name="clipy" varid="v7~-E}:`3zaZ=MG;7P=["></arg>
                <arg name="clipwidth" varid="WKu^.B?9T66xQ_qJgB@2"></arg>
                <arg name="clipheight" varid="$JY/m%d:K3q{;2o7?$9r"></arg>
                <arg name="myselector" varid="*^L*3Kju!MAP#u`QL(gE"></arg>
                <arg name="quality" varid="8,q0AR=qke3-k-JCj-2U"></arg>
              </mutation>
              <field name="NAME">macheScreenshot</field>
              <field name="SCRIPT">c2VuZFRvKCdwdXBwZXRlZXIuMCcsICdzY3JlZW5zaG90JywgeyANCg0KICAgIHVybDogbXl1cmwgLA0KDQogICAgcGF0aDogbXlwYXRoICwgDQoNCiAgICB3aWR0aDpteXdpZHRoLA0KDQogICAgcXVhbGl0eTpxdWFsaXR5LA0KDQogICAgaGVpZ2h0Om15aGVpZ2h0LA0KDQogICAgd2FpdE9wdGlvbjogew0KICAgIA0KICAgIC8vIHdhaXRmb3JUaW1lb3V0OiA1MDAwLA0KICAgIHdhaXRGb3JTZWxlY3RvcjpteXNlbGVjdG9yLA0KDQogICAgfSwNCg0KICAgIGZ1bGxQYWdlOiBmYWxzZSwNCg0KICAgIGNsaXA6IHsgICAgICAgICANCiAgICAgICAgeDogY2xpcHgsDQogICAgICAgIHk6IGNsaXB5LA0KICAgICAgICB3aWR0aDogY2xpcHdpZHRoLA0KICAgICAgICBoZWlnaHQ6IGNsaXBoZWlnaHQNCiAgICAgIH0NCn0pOw==</field>
              <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
            </block>
            <block type="timeouts_cleartimeout" id="{+]/`LW5[dwJmax;hY_," x="-137" y="-687">
              <field name="NAME">wait-send-to-ap</field>
              <next>
                <block type="on_ext" id="}eN|k@u_c!D@lI$KoaUS">
                  <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                  <field name="CONDITION">ne</field>
                  <field name="ACK_CONDITION"></field>
                  <value name="OID0">
                    <shadow type="field_oid" id="B)}lX+(I#toCi.FD%0U;">
                      <field name="oid">00-ZUHAUSE.0.Garten.Grundwasserstand</field>
                    </shadow>
                  </value>
                  <statement name="STATEMENT">
                    <block type="controls_if" id="uzl!AL`P1]h*dH#`LIa@">
                      <value name="IF0">
                        <block type="logic_operation" id="OM@7@$Q}Y`;~]l{K9Tqe">
                          <field name="OP">AND</field>
                          <value name="A">
                            <block type="logic_operation" id="v^ujWoBj#N]dy*:SGrCa">
                              <field name="OP">OR</field>
                              <value name="A">
                                <block type="logic_compare" id="-Zm.2uMD6rIHYj=ikSGJ">
                                  <field name="OP">LT</field>
                                  <value name="A">
                                    <block type="on_source" id="T(-8Br+MAk=e:5ExwNA[">
                                      <field name="ATTR">oldState.val</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <block type="on_source" id="WhPM4;/Q.j7!RfFpq/2[">
                                      <field name="ATTR">state.val</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                              <value name="B">
                                <block type="logic_compare" id="m3Sv}9Q`bMOT|rP0_W46">
                                  <field name="OP">GT</field>
                                  <value name="A">
                                    <block type="on_source" id="%.=jlCg)v{YSsFO_Wtfy">
                                      <field name="ATTR">oldState.val</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <block type="on_source" id="V~Oczq^E7^cop8:`PsB,">
                                      <field name="ATTR">state.val</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                            </block>
                          </value>
                          <value name="B">
                            <block type="time_compare_ex" id="PD9.xl]MRQA;AI}ChPC4">
                              <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="true" actual_time="true"></mutation>
                              <field name="USE_ACTUAL_TIME">TRUE</field>
                              <field name="OPTION">between</field>
                              <value name="START_TIME">
                                <shadow type="text" id="vXN^V2YNQhS5sCeRN1tq">
                                  <field name="TEXT">05:25</field>
                                </shadow>
                              </value>
                              <value name="END_TIME">
                                <shadow type="text" id="4[81^s_o#7[3h?r-Lf4D">
                                  <field name="TEXT">22:35</field>
                                </shadow>
                              </value>
                            </block>
                          </value>
                        </block>
                      </value>
                      <statement name="DO0">
                        <block type="procedures_callcustomnoreturn" id="jcZPJZx*gXbE*_eY]~.a">
                          <mutation name="macheScreenshot">
                            <arg name="mypath"></arg>
                            <arg name="myurl"></arg>
                            <arg name="myheight"></arg>
                            <arg name="mywidth"></arg>
                            <arg name="clipx"></arg>
                            <arg name="clipy"></arg>
                            <arg name="clipwidth"></arg>
                            <arg name="clipheight"></arg>
                            <arg name="myselector"></arg>
                            <arg name="quality"></arg>
                          </mutation>
                          <value name="ARG0">
                            <block type="get_value" id="Rn=EHGb7-#O~BJhp7dy*">
                              <field name="ATTR">val</field>
                              <field name="OID">00-ZUHAUSE.0.EPS.Grundwasser.Display-Bildpfad</field>
                            </block>
                          </value>
                          <value name="ARG1">
                            <block type="get_value" id="yEFwNcD-,m(XY_D[SS}C">
                              <field name="ATTR">val</field>
                              <field name="OID">00-ZUHAUSE.0.EPS.Grundwasser.Display-Ziel-URL</field>
                            </block>
                          </value>
                          <value name="ARG2">
                            <block type="math_number" id="=u%Bj@/+pmZO.1+p9.2U">
                              <field name="NUM">0</field>
                            </block>
                          </value>
                          <value name="ARG3">
                            <block type="math_number" id="V:tYENJ`+Ex.G,~a(b,`">
                              <field name="NUM">0</field>
                            </block>
                          </value>
                          <value name="ARG4">
                            <block type="math_number" id="eRMkWL,^q%WXn[^MzM+3">
                              <field name="NUM">0</field>
                            </block>
                          </value>
                          <value name="ARG5">
                            <block type="math_number" id="/~OWUySM]p5k:+.0+$z0">
                              <field name="NUM">0</field>
                            </block>
                          </value>
                          <value name="ARG6">
                            <block type="get_value" id="qG/?0TXWD~b;V!sbtD`0">
                              <field name="ATTR">val</field>
                              <field name="OID">00-ZUHAUSE.0.EPS.Grundwasser.Display-Breite</field>
                            </block>
                          </value>
                          <value name="ARG7">
                            <block type="get_value" id="T|p5V.*UIya8#kb1bzo`">
                              <field name="ATTR">val</field>
                              <field name="OID">00-ZUHAUSE.0.EPS.Grundwasser.Display-Höhe</field>
                            </block>
                          </value>
                          <value name="ARG8">
                            <block type="text" id="1K#!|Dg2xIq%=;;fUFA.">
                              <field name="TEXT">#w00094</field>
                            </block>
                          </value>
                          <value name="ARG9">
                            <block type="math_number" id="ErFk!X7n.qM]-3lR!@dS">
                              <field name="NUM">100</field>
                            </block>
                          </value>
                          <next>
                            <block type="timeouts_cleartimeout" id="GRxU+^B-!F?8$s!`GU3#">
                              <field name="NAME">wait-send-to-ap</field>
                              <next>
                                <block type="timeouts_settimeout" id=")^#[3vKFXTN.!idukC0k">
                                  <field name="NAME">wait-send-to-ap</field>
                                  <field name="DELAY">5</field>
                                  <field name="UNIT">sec</field>
                                  <statement name="STATEMENT">
                                    <block type="exec" id="{[Z)ohn7^dqA-Z6I9L#T">
                                      <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="false"></mutation>
                                      <field name="WITH_STATEMENT">FALSE</field>
                                      <field name="LOG">error</field>
                                      <value name="COMMAND">
                                        <shadow type="text" id="MN~$`E]CJQbt?7d]*sz!">
                                          <field name="TEXT">curl -d "mac=0000021873443B16&amp;cmd=refresh" http://192.168.1.46/tag_cmd</field>
                                        </shadow>
                                        <block type="text_join" id="Lcj3]d}7;4jE]P_muN~!">
                                          <mutation items="6"></mutation>
                                          <value name="ADD0">
                                            <block type="text" id="yc_-7Y19Rp5|hgxeF{gT">
                                              <field name="TEXT">curl -v  -F dither=0 -F mac=</field>
                                            </block>
                                          </value>
                                          <value name="ADD1">
                                            <block type="get_value" id="Y^r4[RZ^Tiq;#{/YSpi3">
                                              <field name="ATTR">val</field>
                                              <field name="OID">00-ZUHAUSE.0.EPS.Grundwasser.Display-MAC</field>
                                            </block>
                                          </value>
                                          <value name="ADD2">
                                            <block type="text" id="9yLAXE^O@_vt2ULaS:$r">
                                              <field name="TEXT"> -F upload=@</field>
                                            </block>
                                          </value>
                                          <value name="ADD3">
                                            <block type="get_value" id="ZuDz1HsxcUbf]MWo`5!|">
                                              <field name="ATTR">val</field>
                                              <field name="OID">00-ZUHAUSE.0.EPS.Grundwasser.Display-Bildpfad</field>
                                            </block>
                                          </value>
                                          <value name="ADD4">
                                            <block type="text" id="{wZ%jDm069nL1t$46xao">
                                              <field name="TEXT"> </field>
                                            </block>
                                          </value>
                                          <value name="ADD5">
                                            <block type="get_value" id="6pQyJoXb9cictEqd~IZ6">
                                              <field name="ATTR">val</field>
                                              <field name="OID">00-ZUHAUSE.0.EPS.EPS-AP-OG-IMGUPLOAD-URL</field>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                    </block>
                                  </statement>
                                </block>
                              </next>
                            </block>
                          </next>
                        </block>
                      </statement>
                    </block>
                  </statement>
                  <next>
                    <block type="on_ext" id="^pqY]-.w?VNnk(baKAh^">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                      <field name="CONDITION">ne</field>
                      <field name="ACK_CONDITION"></field>
                      <value name="OID0">
                        <shadow type="field_oid" id="##*MwdlB:*JIAo}8AFrH">
                          <field name="oid">00-ZUHAUSE.0.Garten.Grundwasserstand</field>
                        </shadow>
                      </value>
                      <statement name="STATEMENT">
                        <block type="controls_if" id="kBOzPjEHMK(EK|^}1MP-">
                          <mutation elseif="1"></mutation>
                          <value name="IF0">
                            <block type="logic_compare" id="8aSJ}Ln~+Q}+qO1I*,$,">
                              <field name="OP">GT</field>
                              <value name="A">
                                <block type="on_source" id="~rj6ej!Dl#90`bTakHWr">
                                  <field name="ATTR">state.val</field>
                                </block>
                              </value>
                              <value name="B">
                                <block type="on_source" id="4,=PdCK1P,XkeA;]arDz">
                                  <field name="ATTR">oldState.val</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <statement name="DO0">
                            <block type="control" id="pF}km:Gn}YnuTZZ`_2Px">
                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                              <field name="OID">00-ZUHAUSE.0.EPS.Grundwasser.Wert-steigend</field>
                              <field name="WITH_DELAY">FALSE</field>
                              <value name="VALUE">
                                <block type="logic_boolean" id="nzW:8etT`3!|$Y42xp]*">
                                  <field name="BOOL">TRUE</field>
                                </block>
                              </value>
                            </block>
                          </statement>
                          <value name="IF1">
                            <block type="logic_compare" id="XE[vVu{%{e*%~fAaW9IR">
                              <field name="OP">LT</field>
                              <value name="A">
                                <block type="on_source" id="LXuUaCO+.1+1:L8hArWx">
                                  <field name="ATTR">state.val</field>
                                </block>
                              </value>
                              <value name="B">
                                <block type="on_source" id="|96-jm}4f|YGGuO)lz6}">
                                  <field name="ATTR">oldState.val</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <statement name="DO1">
                            <block type="control" id="|X_C0RARmtx3oVR6:]Ev">
                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                              <field name="OID">00-ZUHAUSE.0.EPS.Grundwasser.Wert-steigend</field>
                              <field name="WITH_DELAY">FALSE</field>
                              <value name="VALUE">
                                <block type="logic_boolean" id="RQONurm#6#avH:rg$)X~">
                                  <field name="BOOL">FALSE</field>
                                </block>
                              </value>
                            </block>
                          </statement>
                        </block>
                      </statement>
                    </block>
                  </next>
                </block>
              </next>
            </block>
          </xml>
          
          R Offline
          R Offline
          Revobobo
          wrote on last edited by
          #180

          @bimmi sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

          @haselchen ich hab mir eine eigene VIS für die Displays erstellt, eigene Datenpunkte für jeden Display und für jedes Display ein eigenes Blockly.

          0f737952-40ab-49f6-9b65-3a9752e44b2b-image.png

          4c64ba74-1494-41f8-bcea-2e273d40408f-image.png

          40cae8cc-3bbf-4efa-bce6-9f8793f779e6-image.png

          <xml xmlns="https://developers.google.com/blockly/xml">
            <variables>
              <variable id="=|-HU{v0HPlybOQ*ghcR">mypath</variable>
              <variable id="(O?~p(`|c|(KIhiht#i*">myurl</variable>
              <variable id="Kg9b=20h)E,riQJeDEcb">myheight</variable>
              <variable id="d?/+]%mL0t@pakXBBv]V">mywidth</variable>
              <variable id="ELianL7RIoI]6v](.5H{">clipx</variable>
              <variable id="v7~-E}:`3zaZ=MG;7P=[">clipy</variable>
              <variable id="WKu^.B?9T66xQ_qJgB@2">clipwidth</variable>
              <variable id="$JY/m%d:K3q{;2o7?$9r">clipheight</variable>
              <variable id="*^L*3Kju!MAP#u`QL(gE">myselector</variable>
              <variable id="8,q0AR=qke3-k-JCj-2U">quality</variable>
              <variable type="timeout" id="wait-send-to-ap">wait-send-to-ap</variable>
            </variables>
            <block type="procedures_defcustomnoreturn" id="{{Bl:d;+8eDTq,0~J9H2" x="-137" y="-737">
              <mutation statements="false">
                <arg name="mypath" varid="=|-HU{v0HPlybOQ*ghcR"></arg>
                <arg name="myurl" varid="(O?~p(`|c|(KIhiht#i*"></arg>
                <arg name="myheight" varid="Kg9b=20h)E,riQJeDEcb"></arg>
                <arg name="mywidth" varid="d?/+]%mL0t@pakXBBv]V"></arg>
                <arg name="clipx" varid="ELianL7RIoI]6v](.5H{"></arg>
                <arg name="clipy" varid="v7~-E}:`3zaZ=MG;7P=["></arg>
                <arg name="clipwidth" varid="WKu^.B?9T66xQ_qJgB@2"></arg>
                <arg name="clipheight" varid="$JY/m%d:K3q{;2o7?$9r"></arg>
                <arg name="myselector" varid="*^L*3Kju!MAP#u`QL(gE"></arg>
                <arg name="quality" varid="8,q0AR=qke3-k-JCj-2U"></arg>
              </mutation>
              <field name="NAME">macheScreenshot</field>
              <field name="SCRIPT">c2VuZFRvKCdwdXBwZXRlZXIuMCcsICdzY3JlZW5zaG90JywgeyANCg0KICAgIHVybDogbXl1cmwgLA0KDQogICAgcGF0aDogbXlwYXRoICwgDQoNCiAgICB3aWR0aDpteXdpZHRoLA0KDQogICAgcXVhbGl0eTpxdWFsaXR5LA0KDQogICAgaGVpZ2h0Om15aGVpZ2h0LA0KDQogICAgd2FpdE9wdGlvbjogew0KICAgIA0KICAgIC8vIHdhaXRmb3JUaW1lb3V0OiA1MDAwLA0KICAgIHdhaXRGb3JTZWxlY3RvcjpteXNlbGVjdG9yLA0KDQogICAgfSwNCg0KICAgIGZ1bGxQYWdlOiBmYWxzZSwNCg0KICAgIGNsaXA6IHsgICAgICAgICANCiAgICAgICAgeDogY2xpcHgsDQogICAgICAgIHk6IGNsaXB5LA0KICAgICAgICB3aWR0aDogY2xpcHdpZHRoLA0KICAgICAgICBoZWlnaHQ6IGNsaXBoZWlnaHQNCiAgICAgIH0NCn0pOw==</field>
              <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
            </block>
            <block type="timeouts_cleartimeout" id="{+]/`LW5[dwJmax;hY_," x="-137" y="-687">
              <field name="NAME">wait-send-to-ap</field>
              <next>
                <block type="on_ext" id="}eN|k@u_c!D@lI$KoaUS">
                  <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                  <field name="CONDITION">ne</field>
                  <field name="ACK_CONDITION"></field>
                  <value name="OID0">
                    <shadow type="field_oid" id="B)}lX+(I#toCi.FD%0U;">
                      <field name="oid">00-ZUHAUSE.0.Garten.Grundwasserstand</field>
                    </shadow>
                  </value>
                  <statement name="STATEMENT">
                    <block type="controls_if" id="uzl!AL`P1]h*dH#`LIa@">
                      <value name="IF0">
                        <block type="logic_operation" id="OM@7@$Q}Y`;~]l{K9Tqe">
                          <field name="OP">AND</field>
                          <value name="A">
                            <block type="logic_operation" id="v^ujWoBj#N]dy*:SGrCa">
                              <field name="OP">OR</field>
                              <value name="A">
                                <block type="logic_compare" id="-Zm.2uMD6rIHYj=ikSGJ">
                                  <field name="OP">LT</field>
                                  <value name="A">
                                    <block type="on_source" id="T(-8Br+MAk=e:5ExwNA[">
                                      <field name="ATTR">oldState.val</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <block type="on_source" id="WhPM4;/Q.j7!RfFpq/2[">
                                      <field name="ATTR">state.val</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                              <value name="B">
                                <block type="logic_compare" id="m3Sv}9Q`bMOT|rP0_W46">
                                  <field name="OP">GT</field>
                                  <value name="A">
                                    <block type="on_source" id="%.=jlCg)v{YSsFO_Wtfy">
                                      <field name="ATTR">oldState.val</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <block type="on_source" id="V~Oczq^E7^cop8:`PsB,">
                                      <field name="ATTR">state.val</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                            </block>
                          </value>
                          <value name="B">
                            <block type="time_compare_ex" id="PD9.xl]MRQA;AI}ChPC4">
                              <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="true" actual_time="true"></mutation>
                              <field name="USE_ACTUAL_TIME">TRUE</field>
                              <field name="OPTION">between</field>
                              <value name="START_TIME">
                                <shadow type="text" id="vXN^V2YNQhS5sCeRN1tq">
                                  <field name="TEXT">05:25</field>
                                </shadow>
                              </value>
                              <value name="END_TIME">
                                <shadow type="text" id="4[81^s_o#7[3h?r-Lf4D">
                                  <field name="TEXT">22:35</field>
                                </shadow>
                              </value>
                            </block>
                          </value>
                        </block>
                      </value>
                      <statement name="DO0">
                        <block type="procedures_callcustomnoreturn" id="jcZPJZx*gXbE*_eY]~.a">
                          <mutation name="macheScreenshot">
                            <arg name="mypath"></arg>
                            <arg name="myurl"></arg>
                            <arg name="myheight"></arg>
                            <arg name="mywidth"></arg>
                            <arg name="clipx"></arg>
                            <arg name="clipy"></arg>
                            <arg name="clipwidth"></arg>
                            <arg name="clipheight"></arg>
                            <arg name="myselector"></arg>
                            <arg name="quality"></arg>
                          </mutation>
                          <value name="ARG0">
                            <block type="get_value" id="Rn=EHGb7-#O~BJhp7dy*">
                              <field name="ATTR">val</field>
                              <field name="OID">00-ZUHAUSE.0.EPS.Grundwasser.Display-Bildpfad</field>
                            </block>
                          </value>
                          <value name="ARG1">
                            <block type="get_value" id="yEFwNcD-,m(XY_D[SS}C">
                              <field name="ATTR">val</field>
                              <field name="OID">00-ZUHAUSE.0.EPS.Grundwasser.Display-Ziel-URL</field>
                            </block>
                          </value>
                          <value name="ARG2">
                            <block type="math_number" id="=u%Bj@/+pmZO.1+p9.2U">
                              <field name="NUM">0</field>
                            </block>
                          </value>
                          <value name="ARG3">
                            <block type="math_number" id="V:tYENJ`+Ex.G,~a(b,`">
                              <field name="NUM">0</field>
                            </block>
                          </value>
                          <value name="ARG4">
                            <block type="math_number" id="eRMkWL,^q%WXn[^MzM+3">
                              <field name="NUM">0</field>
                            </block>
                          </value>
                          <value name="ARG5">
                            <block type="math_number" id="/~OWUySM]p5k:+.0+$z0">
                              <field name="NUM">0</field>
                            </block>
                          </value>
                          <value name="ARG6">
                            <block type="get_value" id="qG/?0TXWD~b;V!sbtD`0">
                              <field name="ATTR">val</field>
                              <field name="OID">00-ZUHAUSE.0.EPS.Grundwasser.Display-Breite</field>
                            </block>
                          </value>
                          <value name="ARG7">
                            <block type="get_value" id="T|p5V.*UIya8#kb1bzo`">
                              <field name="ATTR">val</field>
                              <field name="OID">00-ZUHAUSE.0.EPS.Grundwasser.Display-Höhe</field>
                            </block>
                          </value>
                          <value name="ARG8">
                            <block type="text" id="1K#!|Dg2xIq%=;;fUFA.">
                              <field name="TEXT">#w00094</field>
                            </block>
                          </value>
                          <value name="ARG9">
                            <block type="math_number" id="ErFk!X7n.qM]-3lR!@dS">
                              <field name="NUM">100</field>
                            </block>
                          </value>
                          <next>
                            <block type="timeouts_cleartimeout" id="GRxU+^B-!F?8$s!`GU3#">
                              <field name="NAME">wait-send-to-ap</field>
                              <next>
                                <block type="timeouts_settimeout" id=")^#[3vKFXTN.!idukC0k">
                                  <field name="NAME">wait-send-to-ap</field>
                                  <field name="DELAY">5</field>
                                  <field name="UNIT">sec</field>
                                  <statement name="STATEMENT">
                                    <block type="exec" id="{[Z)ohn7^dqA-Z6I9L#T">
                                      <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="false"></mutation>
                                      <field name="WITH_STATEMENT">FALSE</field>
                                      <field name="LOG">error</field>
                                      <value name="COMMAND">
                                        <shadow type="text" id="MN~$`E]CJQbt?7d]*sz!">
                                          <field name="TEXT">curl -d "mac=0000021873443B16&amp;cmd=refresh" http://192.168.1.46/tag_cmd</field>
                                        </shadow>
                                        <block type="text_join" id="Lcj3]d}7;4jE]P_muN~!">
                                          <mutation items="6"></mutation>
                                          <value name="ADD0">
                                            <block type="text" id="yc_-7Y19Rp5|hgxeF{gT">
                                              <field name="TEXT">curl -v  -F dither=0 -F mac=</field>
                                            </block>
                                          </value>
                                          <value name="ADD1">
                                            <block type="get_value" id="Y^r4[RZ^Tiq;#{/YSpi3">
                                              <field name="ATTR">val</field>
                                              <field name="OID">00-ZUHAUSE.0.EPS.Grundwasser.Display-MAC</field>
                                            </block>
                                          </value>
                                          <value name="ADD2">
                                            <block type="text" id="9yLAXE^O@_vt2ULaS:$r">
                                              <field name="TEXT"> -F upload=@</field>
                                            </block>
                                          </value>
                                          <value name="ADD3">
                                            <block type="get_value" id="ZuDz1HsxcUbf]MWo`5!|">
                                              <field name="ATTR">val</field>
                                              <field name="OID">00-ZUHAUSE.0.EPS.Grundwasser.Display-Bildpfad</field>
                                            </block>
                                          </value>
                                          <value name="ADD4">
                                            <block type="text" id="{wZ%jDm069nL1t$46xao">
                                              <field name="TEXT"> </field>
                                            </block>
                                          </value>
                                          <value name="ADD5">
                                            <block type="get_value" id="6pQyJoXb9cictEqd~IZ6">
                                              <field name="ATTR">val</field>
                                              <field name="OID">00-ZUHAUSE.0.EPS.EPS-AP-OG-IMGUPLOAD-URL</field>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                    </block>
                                  </statement>
                                </block>
                              </next>
                            </block>
                          </next>
                        </block>
                      </statement>
                    </block>
                  </statement>
                  <next>
                    <block type="on_ext" id="^pqY]-.w?VNnk(baKAh^">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                      <field name="CONDITION">ne</field>
                      <field name="ACK_CONDITION"></field>
                      <value name="OID0">
                        <shadow type="field_oid" id="##*MwdlB:*JIAo}8AFrH">
                          <field name="oid">00-ZUHAUSE.0.Garten.Grundwasserstand</field>
                        </shadow>
                      </value>
                      <statement name="STATEMENT">
                        <block type="controls_if" id="kBOzPjEHMK(EK|^}1MP-">
                          <mutation elseif="1"></mutation>
                          <value name="IF0">
                            <block type="logic_compare" id="8aSJ}Ln~+Q}+qO1I*,$,">
                              <field name="OP">GT</field>
                              <value name="A">
                                <block type="on_source" id="~rj6ej!Dl#90`bTakHWr">
                                  <field name="ATTR">state.val</field>
                                </block>
                              </value>
                              <value name="B">
                                <block type="on_source" id="4,=PdCK1P,XkeA;]arDz">
                                  <field name="ATTR">oldState.val</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <statement name="DO0">
                            <block type="control" id="pF}km:Gn}YnuTZZ`_2Px">
                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                              <field name="OID">00-ZUHAUSE.0.EPS.Grundwasser.Wert-steigend</field>
                              <field name="WITH_DELAY">FALSE</field>
                              <value name="VALUE">
                                <block type="logic_boolean" id="nzW:8etT`3!|$Y42xp]*">
                                  <field name="BOOL">TRUE</field>
                                </block>
                              </value>
                            </block>
                          </statement>
                          <value name="IF1">
                            <block type="logic_compare" id="XE[vVu{%{e*%~fAaW9IR">
                              <field name="OP">LT</field>
                              <value name="A">
                                <block type="on_source" id="LXuUaCO+.1+1:L8hArWx">
                                  <field name="ATTR">state.val</field>
                                </block>
                              </value>
                              <value name="B">
                                <block type="on_source" id="|96-jm}4f|YGGuO)lz6}">
                                  <field name="ATTR">oldState.val</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <statement name="DO1">
                            <block type="control" id="|X_C0RARmtx3oVR6:]Ev">
                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                              <field name="OID">00-ZUHAUSE.0.EPS.Grundwasser.Wert-steigend</field>
                              <field name="WITH_DELAY">FALSE</field>
                              <value name="VALUE">
                                <block type="logic_boolean" id="RQONurm#6#avH:rg$)X~">
                                  <field name="BOOL">FALSE</field>
                                </block>
                              </value>
                            </block>
                          </statement>
                        </block>
                      </statement>
                    </block>
                  </next>
                </block>
              </next>
            </block>
          </xml>
          


          Ich persönlich finde den Ansatz von -->> oxident <<-- sehr interessant (Interessanter):
          https://forum.iobroker.net/post/1064528
          Das Script läuft einfach im Hintergrund und du gibst die Aktualisierungen per Cron im Script an - das Bild wird gespeichert und der AP schaut selbstständig ob sich das Bild verändert hat - ist das der Fall, wird es zum Tag hochgeladen.
          Das Display stellst du auf Image URL mit dem Pfad zum Bild ein.
          db81a667-fe14-4554-ac10-58a95338097a-grafik.png
          Aber auch hier ist puppeteer Voraussetzung.
          Blockly brauchst du nicht unbedingt.
          Finds übersichtlicher und schlanker.

          Viele Grüße

          1 Reply Last reply
          0
          • B bimmi

            @revobobo sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

            @BananaJoe & @bimmi
            Ich bin mir ziemlich sicher, dass es an der Firware des AP liegt. Diese schwarzen Schatten sind bei mir nach einem Update aufgetreten. Ich glaube die 1.7-beta hatte das noch nicht. Würde es gerne testen - weiß aber nicht wie ich zurück springen kann.

            Zitat Discord:

            I revisited the part of the rendering code that looks for the nearest color, and made an improvement. Or, to say, I changed it back like it was before 😊. The artifacts on your image will be gone in the next release.
            (I originally changed it because I wanted to apply a gamma correction for the dithering, but it turned out it wasn’t working anyway)

            Mit dem nächsten Release sollten die Artefakte wohl verschwinden!

            R Offline
            R Offline
            Revobobo
            wrote on last edited by Revobobo
            #181

            @bimmi sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

            @revobobo sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

            @BananaJoe & @bimmi
            Ich bin mir ziemlich sicher, dass es an der Firware des AP liegt. Diese schwarzen Schatten sind bei mir nach einem Update aufgetreten. Ich glaube die 1.7-beta hatte das noch nicht. Würde es gerne testen - weiß aber nicht wie ich zurück springen kann.

            Zitat Discord:

            I revisited the part of the rendering code that looks for the nearest color, and made an improvement. Or, to say, I changed it back like it was before 😊. The artifacts on your image will be gone in the next release.
            (I originally changed it because I wanted to apply a gamma correction for the dithering, but it turned out it wasn’t working anyway)

            Mit dem nächsten Release sollten die Artefakte wohl verschwinden!


            :blush: Dank Dir!
            Das hatte ich auch schon gesehen und bin direkt auf die 2.05 aufgesprungen....
            War wohl ein Fehler - die schwarzen Ränder habe ich noch immer und komme leider nicht mehr zurück auf die 1.08-beta.
            65852339-f859-477a-92f5-5a0a77a4d256-grafik.png
            In der Update-Übersicht taucht auch keine 1.xx Version mehr auf.
            Wenn also einer ne Idee hat (eine 1.xx FW aufzuspielen) - bin ich gaaanz Ohr.

            Viele Grüße

            haselchenH B 2 Replies Last reply
            0
            • R Revobobo

              @bimmi sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

              @revobobo sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

              @BananaJoe & @bimmi
              Ich bin mir ziemlich sicher, dass es an der Firware des AP liegt. Diese schwarzen Schatten sind bei mir nach einem Update aufgetreten. Ich glaube die 1.7-beta hatte das noch nicht. Würde es gerne testen - weiß aber nicht wie ich zurück springen kann.

              Zitat Discord:

              I revisited the part of the rendering code that looks for the nearest color, and made an improvement. Or, to say, I changed it back like it was before 😊. The artifacts on your image will be gone in the next release.
              (I originally changed it because I wanted to apply a gamma correction for the dithering, but it turned out it wasn’t working anyway)

              Mit dem nächsten Release sollten die Artefakte wohl verschwinden!


              :blush: Dank Dir!
              Das hatte ich auch schon gesehen und bin direkt auf die 2.05 aufgesprungen....
              War wohl ein Fehler - die schwarzen Ränder habe ich noch immer und komme leider nicht mehr zurück auf die 1.08-beta.
              65852339-f859-477a-92f5-5a0a77a4d256-grafik.png
              In der Update-Übersicht taucht auch keine 1.xx Version mehr auf.
              Wenn also einer ne Idee hat (eine 1.xx FW aufzuspielen) - bin ich gaaanz Ohr.

              Viele Grüße

              haselchenH Offline
              haselchenH Offline
              haselchen
              Most Active
              wrote on last edited by
              #182

              @revobobo

              Die 2.06 soll demnächst (heute, morgen , übermorgen ….) kommen.
              Das würde ich eher probieren , als wild ne 1.er FW zu flashen.

              Synology DS218+ & 2 x Fujitsu Esprimo (VM/Container) + FritzBox7590 + 2 AVM 3000 Repeater & Homematic & HUE & Osram & Xiaomi, NPM 10.9.4, Nodejs 22.21.0 ,JS Controller 7.0.7 ,Admin 7.7.19

              R 1 Reply Last reply
              1
              • R Revobobo

                @bimmi sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

                @revobobo sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

                @BananaJoe & @bimmi
                Ich bin mir ziemlich sicher, dass es an der Firware des AP liegt. Diese schwarzen Schatten sind bei mir nach einem Update aufgetreten. Ich glaube die 1.7-beta hatte das noch nicht. Würde es gerne testen - weiß aber nicht wie ich zurück springen kann.

                Zitat Discord:

                I revisited the part of the rendering code that looks for the nearest color, and made an improvement. Or, to say, I changed it back like it was before 😊. The artifacts on your image will be gone in the next release.
                (I originally changed it because I wanted to apply a gamma correction for the dithering, but it turned out it wasn’t working anyway)

                Mit dem nächsten Release sollten die Artefakte wohl verschwinden!


                :blush: Dank Dir!
                Das hatte ich auch schon gesehen und bin direkt auf die 2.05 aufgesprungen....
                War wohl ein Fehler - die schwarzen Ränder habe ich noch immer und komme leider nicht mehr zurück auf die 1.08-beta.
                65852339-f859-477a-92f5-5a0a77a4d256-grafik.png
                In der Update-Übersicht taucht auch keine 1.xx Version mehr auf.
                Wenn also einer ne Idee hat (eine 1.xx FW aufzuspielen) - bin ich gaaanz Ohr.

                Viele Grüße

                B Offline
                B Offline
                bimmi
                wrote on last edited by
                #183

                @revobobo sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

                @bimmi sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

                @revobobo sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

                @BananaJoe & @bimmi
                Ich bin mir ziemlich sicher, dass es an der Firware des AP liegt. Diese schwarzen Schatten sind bei mir nach einem Update aufgetreten. Ich glaube die 1.7-beta hatte das noch nicht. Würde es gerne testen - weiß aber nicht wie ich zurück springen kann.

                Zitat Discord:

                I revisited the part of the rendering code that looks for the nearest color, and made an improvement. Or, to say, I changed it back like it was before 😊. The artifacts on your image will be gone in the next release.
                (I originally changed it because I wanted to apply a gamma correction for the dithering, but it turned out it wasn’t working anyway)

                Mit dem nächsten Release sollten die Artefakte wohl verschwinden!


                :blush: Dank Dir!
                Das hatte ich auch schon gesehen und bin direkt auf die 2.05 aufgesprungen....
                War wohl ein Fehler - die schwarzen Ränder habe ich noch immer und komme leider nicht mehr zurück auf die 1.08-beta.
                65852339-f859-477a-92f5-5a0a77a4d256-grafik.png
                In der Update-Übersicht taucht auch keine 1.xx Version mehr auf.
                Wenn also einer ne Idee hat (eine 1.xx FW aufzuspielen) - bin ich gaaanz Ohr.

                Viele Grüße

                https://github.com/jjwbruijn/OpenEPaperLink/releases

                Musst mal etwas lesen. Es geht glaub ich mit den typischen esp programmern... NodeMCU PyFlasher nutze ich meistens.

                Sichere dir die Tag db dann musst auch nichts neu einrichten glaub ich.

                Gruß Bimmi

                iobroker in einer Proxmox Umgebung auf einem ausrangierten DELL OptiPlex 3080 24GB i5 in der VM auf SSD. Nutze den slaeh zigbee Router mit Tür- und Temperatursensoren von Aqara, viele Tasmota Devices, Unifi AP, Sprinklecontrol, günstige E-INK Displays, Adguard und noch vieles mehr 😬

                1 Reply Last reply
                0
                • mcm1957M mcm1957

                  @haselchen said in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

                  Puppeteer konnte ich gestern auch nicht installieren. Gab schon bei der Installation einen Hinweis und danach lauter rote Meldungen im Log.

                  Welche Meldungen?
                  Im Adapter Repo seh ich keinen Hinweis dass es prinzipiell Probleme gibt. Da Foxriver als Maintainer durchaus aktiv ist, sollte man dem nachgehen wenn wes nicht "nur" ein Problem deiner konkreten Installation ist. Und auch dann sollten wir den Fehler suchen.

                  Den OpenEPaper Adapter hab ich gar nicht finden können. Taucht in keiner Liste auf.

                  Den Adapter gibts noch nicht im Repository - wenn du open-epapaper-link meinst. Beim Review wurden ein paar Kleinigkeiten angemerkt - seither hatte niemand mehr Zeit den Adapter weiter zu entwickeln. (https://github.com/ioBroker/ioBroker.repositories/pull/3003)

                  O Offline
                  O Offline
                  oxident
                  wrote on last edited by
                  #184

                  @mcm57 Ich bin mir ziemlich sicher, dass es an meiner Installation liegt. So wie es scheint, mag Pupeteer nicht auf arm64-Platformen laufen da angemeckert wird, es gibt kein chromium dafür.

                  Unter x86 lief es stressfrei, daher denke ich, ich bin jetzt erstmal auf dem Wartegleis ;-)

                  haselchenH mcm1957M 2 Replies Last reply
                  0
                  • O oxident

                    @mcm57 Ich bin mir ziemlich sicher, dass es an meiner Installation liegt. So wie es scheint, mag Pupeteer nicht auf arm64-Platformen laufen da angemeckert wird, es gibt kein chromium dafür.

                    Unter x86 lief es stressfrei, daher denke ich, ich bin jetzt erstmal auf dem Wartegleis ;-)

                    haselchenH Offline
                    haselchenH Offline
                    haselchen
                    Most Active
                    wrote on last edited by
                    #185

                    @oxident

                    Das wird auch vermutlich mein Problem auf der Synology sein.

                    Synology DS218+ & 2 x Fujitsu Esprimo (VM/Container) + FritzBox7590 + 2 AVM 3000 Repeater & Homematic & HUE & Osram & Xiaomi, NPM 10.9.4, Nodejs 22.21.0 ,JS Controller 7.0.7 ,Admin 7.7.19

                    B 1 Reply Last reply
                    0
                    • O oxident

                      @mcm57 Ich bin mir ziemlich sicher, dass es an meiner Installation liegt. So wie es scheint, mag Pupeteer nicht auf arm64-Platformen laufen da angemeckert wird, es gibt kein chromium dafür.

                      Unter x86 lief es stressfrei, daher denke ich, ich bin jetzt erstmal auf dem Wartegleis ;-)

                      mcm1957M Online
                      mcm1957M Online
                      mcm1957
                      wrote on last edited by
                      #186

                      @oxident said in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

                      @mcm57 Ich bin mir ziemlich sicher, dass es an meiner Installation liegt. So wie es scheint, mag Pupeteer nicht auf arm64-Platformen laufen da angemeckert wird, es gibt kein chromium dafür.

                      Unter x86 lief es stressfrei, daher denke ich, ich bin jetzt erstmal auf dem Wartegleis ;-)

                      Da der Adapter von @Foxriver76 ist würd ich anregen im Repo ein Issue zu eröffnen sofern weder ein issue existiert und auch nichts bezüglich Einschränkungen im Readme steht. Er kann sicher rasch beurteilen ob hier etwas verbessert / ergänzt werden kann - oder ob ggF eine Anmerkung ins Readme muss weil es (mit angemessenem Aufwand) nicht anders geht

                      Entwicklung u Betreuung: envertech-pv, hoymiles-ms, ns-client, pid, snmp Adapter;
                      Support Repositoryverwaltung.

                      Wer Danke sagen will, kann nen Kaffee spendieren: https://paypal.me/mcm1957atiobroker

                      LESEN - gute Forenbeitrage

                      1 Reply Last reply
                      1
                      • haselchenH haselchen

                        @oxident

                        Das wird auch vermutlich mein Problem auf der Synology sein.

                        B Offline
                        B Offline
                        bimmi
                        wrote on last edited by bimmi
                        #187

                        @haselchen sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

                        @oxident

                        Das wird auch vermutlich mein Problem auf der Synology sein.

                        ~~Du könntest bei deiner Synology - vorausgesetzt es ist ein + Modell - auch Docker laufen lassen mit Puppeteer: https://hub.docker.com/r/buildkite/puppeteer~~

                        Deine Synology lt Signatur hat aber einen Intel Prozessor und keinen ARM. Da sollte es auf jeden Fall laufen.

                        Gruß Bimmi

                        iobroker in einer Proxmox Umgebung auf einem ausrangierten DELL OptiPlex 3080 24GB i5 in der VM auf SSD. Nutze den slaeh zigbee Router mit Tür- und Temperatursensoren von Aqara, viele Tasmota Devices, Unifi AP, Sprinklecontrol, günstige E-INK Displays, Adguard und noch vieles mehr 😬

                        ? 1 Reply Last reply
                        0
                        • B bimmi

                          @haselchen sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

                          @oxident

                          Das wird auch vermutlich mein Problem auf der Synology sein.

                          ~~Du könntest bei deiner Synology - vorausgesetzt es ist ein + Modell - auch Docker laufen lassen mit Puppeteer: https://hub.docker.com/r/buildkite/puppeteer~~

                          Deine Synology lt Signatur hat aber einen Intel Prozessor und keinen ARM. Da sollte es auf jeden Fall laufen.

                          ? Offline
                          ? Offline
                          A Former User
                          wrote on last edited by A Former User
                          #188

                          @bimmi @mcm57 @haselchen

                          Wenn iobroker als Docker auf der Synology laeuft, geht kein puppeteer, dazu braucht man einen extra Puppeteer-Docker, das Problem wurde auch schonmal mit @foxriver76 und @andre diskutiert.
                          siehe auch hier im Puppeteer-iobroker-Adapter Thread

                          Mal ganz abgesehen davon, dass fuer Puppeteer 292 Issues auf Github offen sind.. :-)

                          und der Adapter installiert ne depricated Version (V19.x), aktuell ist 21.x...

                          Auf meinem Operations-Iobroker im Docker auf der Syno RS1619xs gehts nicht, auf dem aktuellen Raspi-Image Bookworm Raspi-4 auch nicht, das einzige, wo ich den iobroker-Puppeteer installieren konnte, war jetzt ne VM in Proxmox unter Debian Bookworm, Node 20.

                          foxriver76F B 3 Replies Last reply
                          0
                          • ? A Former User

                            @bimmi @mcm57 @haselchen

                            Wenn iobroker als Docker auf der Synology laeuft, geht kein puppeteer, dazu braucht man einen extra Puppeteer-Docker, das Problem wurde auch schonmal mit @foxriver76 und @andre diskutiert.
                            siehe auch hier im Puppeteer-iobroker-Adapter Thread

                            Mal ganz abgesehen davon, dass fuer Puppeteer 292 Issues auf Github offen sind.. :-)

                            und der Adapter installiert ne depricated Version (V19.x), aktuell ist 21.x...

                            Auf meinem Operations-Iobroker im Docker auf der Syno RS1619xs gehts nicht, auf dem aktuellen Raspi-Image Bookworm Raspi-4 auch nicht, das einzige, wo ich den iobroker-Puppeteer installieren konnte, war jetzt ne VM in Proxmox unter Debian Bookworm, Node 20.

                            foxriver76F Offline
                            foxriver76F Offline
                            foxriver76
                            Developer
                            wrote on last edited by
                            #189

                            @ilovegym sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

                            Mal ganz abgesehen davon, dass fuer Puppeteer 292 Issues auf Github offen sind..

                            allerdings auch über 6K geschlossene, das Projekt wird sehr aktiv entwickelt, nicht dass hier der falsche Eindruck entsteht.

                            Videotutorials & mehr

                            Hier könnt ihr mich unterstützen.

                            ? 1 Reply Last reply
                            0
                            • ? A Former User

                              @bimmi @mcm57 @haselchen

                              Wenn iobroker als Docker auf der Synology laeuft, geht kein puppeteer, dazu braucht man einen extra Puppeteer-Docker, das Problem wurde auch schonmal mit @foxriver76 und @andre diskutiert.
                              siehe auch hier im Puppeteer-iobroker-Adapter Thread

                              Mal ganz abgesehen davon, dass fuer Puppeteer 292 Issues auf Github offen sind.. :-)

                              und der Adapter installiert ne depricated Version (V19.x), aktuell ist 21.x...

                              Auf meinem Operations-Iobroker im Docker auf der Syno RS1619xs gehts nicht, auf dem aktuellen Raspi-Image Bookworm Raspi-4 auch nicht, das einzige, wo ich den iobroker-Puppeteer installieren konnte, war jetzt ne VM in Proxmox unter Debian Bookworm, Node 20.

                              foxriver76F Offline
                              foxriver76F Offline
                              foxriver76
                              Developer
                              wrote on last edited by
                              #190

                              @ilovegym sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

                              und der Adapter installiert ne depricated Version (V19.x), aktuell ist 21.x...

                              gerne mal issue beim adapter.

                              Videotutorials & mehr

                              Hier könnt ihr mich unterstützen.

                              1 Reply Last reply
                              0
                              • ? Offline
                                ? Offline
                                A Former User
                                wrote on last edited by
                                #191

                                @foxriver76 sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

                                @ilovegym sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

                                und der Adapter installiert ne depricated Version (V19.x), aktuell ist 21.x...

                                gerne mal issue beim adapter.

                                gerne, hier fuer die Deprecated Version:
                                https://github.com/foxriver76/ioBroker.puppeteer/issues/11
                                :-)

                                B 1 Reply Last reply
                                0
                                • foxriver76F foxriver76

                                  @ilovegym sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

                                  Mal ganz abgesehen davon, dass fuer Puppeteer 292 Issues auf Github offen sind..

                                  allerdings auch über 6K geschlossene, das Projekt wird sehr aktiv entwickelt, nicht dass hier der falsche Eindruck entsteht.

                                  ? Offline
                                  ? Offline
                                  A Former User
                                  wrote on last edited by
                                  #192

                                  @foxriver76 sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

                                  @ilovegym sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

                                  Mal ganz abgesehen davon, dass fuer Puppeteer 292 Issues auf Github offen sind..

                                  allerdings auch über 6K geschlossene, das Projekt wird sehr aktiv entwickelt, nicht dass hier der falsche Eindruck entsteht.

                                  Das stimmt, die 6k muss man erstmal schliessen(koennen !! ) - ist schon ne Entwicklung, aber wie immer, das eine haengt vom andern ab, und deshalb haben alle was zu tun.. :-)

                                  Zweites Issue aufgemacht, wegen dem hier:

                                  2024-01-09 08:51:01.444  - info: puppeteer.0 (131346) starting. Version 0.2.7 in /opt/iobroker/node_modules/iobroker.puppeteer, node: v20.10.0, js-controller: 5.0.17
                                  2024-01-09 08:51:01.533  - error: puppeteer.0 (131346) Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch().
                                  2024-01-09 08:51:01.540  - error: puppeteer.0 (131346) unhandled promise rejection: Failed to launch the browser process! undefined
                                  TROUBLESHOOTING: https://pptr.dev/troubleshooting
                                  2024-01-09 08:51:01.542  - error: puppeteer.0 (131346) Error: Failed to launch the browser process! undefined
                                  TROUBLESHOOTING: https://pptr.dev/troubleshooting
                                      at ChildProcess.onClose (/opt/iobroker/node_modules/@puppeteer/browsers/lib/cjs/launch.js:262:24)
                                      at ChildProcess.emit (node:events:526:35)
                                      at ChildProcess._handle.onexit (node:internal/child_process:294:12)
                                  2024-01-09 08:51:01.544  - error: puppeteer.0 (131346) Failed to launch the browser process! undefined
                                  TROUBLESHOOTING: https://pptr.dev/troubleshooting
                                  2024-01-09 08:51:01.555  - info: puppeteer.0 (131346) terminating
                                  2024-01-09 08:51:01.556  - warn: puppeteer.0 (131346) Terminated (UNCAUGHT_EXCEPTION): Without reason
                                  2024-01-09 08:51:02.060  - info: puppeteer.0 (131346) terminating
                                  2024-01-09 08:51:02.213  - error: host.iobroker-P4 Caught by controller[0]:
                                  2024-01-09 08:51:02.214  - error: host.iobroker-P4 Caught by controller[0]:   Puppeteer old Headless deprecation warning:
                                  2024-01-09 08:51:02.215  - error: host.iobroker-P4 Caught by controller[0]:     In the near feature `headless: true` will default to the new Headless mode
                                  2024-01-09 08:51:02.216  - error: host.iobroker-P4 Caught by controller[0]:     for Chrome instead of the old Headless implementation. For more
                                  2024-01-09 08:51:02.217  - error: host.iobroker-P4 Caught by controller[0]:     information, please see https://developer.chrome.com/articles/new-headless/.
                                  2024-01-09 08:51:02.218  - error: host.iobroker-P4 Caught by controller[0]:     Consider opting in early by passing `headless: "new"` to `puppeteer.launch()`
                                  2024-01-09 08:51:02.219  - error: host.iobroker-P4 Caught by controller[0]:     If you encounter any bugs, please report them to https://github.com/puppeteer/puppeteer/issues/new/choose.
                                  2024-01-09 08:51:02.220  - error: host.iobroker-P4 instance system.adapter.puppeteer.0 terminated with code 6 (UNCAUGHT_EXCEPTION)
                                  2024-01-09 08:51:02.221  - info: host.iobroker-P4 Restart adapter system.adapter.puppeteer.0 because enabled
                                  2024-01-09 08:51:32.265  - info: host.iobroker-P4 instance system.adapter.puppeteer.0 started with pid 131600
                                  2024-01-09 08:51:34.341  - info: puppeteer.0 (131600) starting. Version 0.2.7 in /opt/iobroker/node_modules/iobroker.puppeteer, node: v20.10.0, js-controller: 5.0.17
                                  2024-01-09 08:51:34.427  - error: puppeteer.0 (131600) Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch().
                                  2024-01-09 08:51:34.429  - error: puppeteer.0 (131600) unhandled promise rejection: Failed to launch the browser process! undefined
                                  TROUBLESHOOTING: https://pptr.dev/troubleshooting
                                  2024-01-09 08:51:34.431  - error: puppeteer.0 (131600) Error: Failed to launch the browser process! undefined
                                  TROUBLESHOOTING: https://pptr.dev/troubleshooting
                                      at ChildProcess.onClose (/opt/iobroker/node_modules/@puppeteer/browsers/lib/cjs/launch.js:262:24)
                                      at ChildProcess.emit (node:events:526:35)
                                      at ChildProcess._handle.onexit (node:internal/child_process:294:12)
                                  2024-01-09 08:51:34.432  - error: puppeteer.0 (131600) Failed to launch the browser process! undefined
                                  TROUBLESHOOTING: https://pptr.dev/troubleshooting
                                  
                                  
                                  1 Reply Last reply
                                  1
                                  • ? A Former User

                                    @bimmi @mcm57 @haselchen

                                    Wenn iobroker als Docker auf der Synology laeuft, geht kein puppeteer, dazu braucht man einen extra Puppeteer-Docker, das Problem wurde auch schonmal mit @foxriver76 und @andre diskutiert.
                                    siehe auch hier im Puppeteer-iobroker-Adapter Thread

                                    Mal ganz abgesehen davon, dass fuer Puppeteer 292 Issues auf Github offen sind.. :-)

                                    und der Adapter installiert ne depricated Version (V19.x), aktuell ist 21.x...

                                    Auf meinem Operations-Iobroker im Docker auf der Syno RS1619xs gehts nicht, auf dem aktuellen Raspi-Image Bookworm Raspi-4 auch nicht, das einzige, wo ich den iobroker-Puppeteer installieren konnte, war jetzt ne VM in Proxmox unter Debian Bookworm, Node 20.

                                    B Offline
                                    B Offline
                                    bimmi
                                    wrote on last edited by
                                    #193

                                    @ilovegym sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:
                                    das einzige, wo ich den iobroker-Puppeteer installieren konnte, war jetzt ne VM in Proxmox unter Debian Bookworm, Node 20.

                                    stimmt. Bei mir das gleich. VM Bookworm und Node20. Da läuft es. Ich hatte aber damals auch probleme bei der Installation über den Apapter. Bin dann erst den umständlichen Weg gegangen und habe mir chromium headless über die Konsole installiert. Anschließend irgendwann nochmal den Adapter dann hat es funktioniert. Ich weiß jedoch nicht mehr, ob das zusammenhängt.

                                    Gruß Bimmi

                                    iobroker in einer Proxmox Umgebung auf einem ausrangierten DELL OptiPlex 3080 24GB i5 in der VM auf SSD. Nutze den slaeh zigbee Router mit Tür- und Temperatursensoren von Aqara, viele Tasmota Devices, Unifi AP, Sprinklecontrol, günstige E-INK Displays, Adguard und noch vieles mehr 😬

                                    ? 1 Reply Last reply
                                    0
                                    • B bimmi

                                      @ilovegym sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:
                                      das einzige, wo ich den iobroker-Puppeteer installieren konnte, war jetzt ne VM in Proxmox unter Debian Bookworm, Node 20.

                                      stimmt. Bei mir das gleich. VM Bookworm und Node20. Da läuft es. Ich hatte aber damals auch probleme bei der Installation über den Apapter. Bin dann erst den umständlichen Weg gegangen und habe mir chromium headless über die Konsole installiert. Anschließend irgendwann nochmal den Adapter dann hat es funktioniert. Ich weiß jedoch nicht mehr, ob das zusammenhängt.

                                      ? Offline
                                      ? Offline
                                      A Former User
                                      wrote on last edited by
                                      #194

                                      @bimmi

                                      hab ich auch schon alles durch.. nee.. muss am Environment liegen.. jetzt ist der Puppeteer aufm dem Proxmox-Testknecht ... dank Multihost ja kein Problem..

                                      1 Reply Last reply
                                      0
                                      • B Offline
                                        B Offline
                                        bimmi
                                        wrote on last edited by bimmi
                                        #195

                                        Mit der neuen Access Point Firmware ist es möglich die Displays per Gui auf den neuesten Stand zu bringen. Dazu das kleine Dreieck im Display Menü drücken und auf Autoupdate klicken.

                                        Es wird empfohlen jeden Display nacheinander upzudaten und die Tag db json downloaden. Anschließend kann man mit der Datei die Einstellungen der einzelnen Tags wieder herstellen.

                                        Gruß Bimmi

                                        iobroker in einer Proxmox Umgebung auf einem ausrangierten DELL OptiPlex 3080 24GB i5 in der VM auf SSD. Nutze den slaeh zigbee Router mit Tür- und Temperatursensoren von Aqara, viele Tasmota Devices, Unifi AP, Sprinklecontrol, günstige E-INK Displays, Adguard und noch vieles mehr 😬

                                        1 Reply Last reply
                                        0
                                        • ? A Former User

                                          @foxriver76 sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

                                          @ilovegym sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

                                          und der Adapter installiert ne depricated Version (V19.x), aktuell ist 21.x...

                                          gerne mal issue beim adapter.

                                          gerne, hier fuer die Deprecated Version:
                                          https://github.com/foxriver76/ioBroker.puppeteer/issues/11
                                          :-)

                                          B Offline
                                          B Offline
                                          bimmi
                                          wrote on last edited by bimmi
                                          #196

                                          @ilovegym sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

                                          @foxriver76 sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

                                          @ilovegym sagte in EPS E-INK Display Ansteuerung -> Statusdisplay für 2€:

                                          und der Adapter installiert ne depricated Version (V19.x), aktuell ist 21.x...

                                          gerne mal issue beim adapter.

                                          gerne, hier fuer die Deprecated Version:
                                          https://github.com/foxriver76/ioBroker.puppeteer/issues/11
                                          :-)

                                          Und schon fixed! 👍

                                          Gruß Bimmi

                                          iobroker in einer Proxmox Umgebung auf einem ausrangierten DELL OptiPlex 3080 24GB i5 in der VM auf SSD. Nutze den slaeh zigbee Router mit Tür- und Temperatursensoren von Aqara, viele Tasmota Devices, Unifi AP, Sprinklecontrol, günstige E-INK Displays, Adguard und noch vieles mehr 😬

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          829

                                          Online

                                          32.4k

                                          Users

                                          81.5k

                                          Topics

                                          1.3m

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

                                          • Don't have an account? Register

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