Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Praktische Anwendungen (Showcase)
    4. E-INK Display OpenEPaperLink - Displayanzeige mit Batterie

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    E-INK Display OpenEPaperLink - Displayanzeige mit Batterie

    This topic has been deleted. Only users with topic management privileges can see it.
    • haselchen
      haselchen Most Active @bimmi last edited by

      @bimmi

      Es kann und soll ja alles so bleiben .
      Nur mit dem Update, warum auch immer, läuft das Skript nicht mehr so wie jetzt , sondern nur 1 Tag im Voraus.
      Änderungen im Skript haben nichts gebracht.

      B 1 Reply Last reply Reply Quote 0
      • B
        bimmi @haselchen last edited by

        @haselchen Was sind das denn für Termine? Evtl wiederholende? Da könnte es vielleicht daran liegen?

        B haselchen 2 Replies Last reply Reply Quote 0
        • B
          Beowolf last edited by

          Jepp, kann ich bestätigen.

          Bei den kleinen Displays ist nur ein Tag zu sehen.

          1 Reply Last reply Reply Quote 0
          • B
            Beowolf @bimmi last edited by Beowolf

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

            @haselchen Was sind das denn für Termine? Evtl wiederholende? Da könnte es vielleicht daran liegen?

            Sowohl als auch. Abfalltermine und einmalige Termine. Immer nur ein Tag.

            haselchen 1 Reply Last reply Reply Quote 1
            • haselchen
              haselchen Most Active @bimmi last edited by

              @bimmi

              Hatte ich im Discord schon mit Nic diskutiert.
              Die haben da was geändert .
              Warum frage ich mich immer noch .
              Ich soll es selber fixen.
              Aber wie? 🤷‍♂️

              1 Reply Last reply Reply Quote 0
              • haselchen
                haselchen Most Active @Beowolf last edited by

                @beowolf

                Genauso ist es.
                Sonst hätte ich schön längst geupdatet.

                B 1 Reply Last reply Reply Quote 0
                • B
                  bimmi @haselchen last edited by bimmi

                  IMG_20240125_190537.jpg

                  So sieht es bei mir mit dem großen Tag aus. Alles mit der aktuellsten Firmware vom Display und 2. 07b

                  @haselchen Pack doch mal dein Script hier rein, dann teste ich es mal bei mir

                  haselchen B 2 Replies Last reply Reply Quote 0
                  • haselchen
                    haselchen Most Active @bimmi last edited by

                    @bimmi

                    Es ist das gleiche von Github.
                    Ich hab nur oben die 1 gegen eine 9 getauscht.
                    Das ist die ganze Zauberei.

                    B 1 Reply Last reply Reply Quote 0
                    • B
                      bimmi @haselchen last edited by

                      @haselchen Nein. Das ist von mir so abgeändert, dass nicht jeder Kalender angezeigt wird sondern nur ein spezieller. Teste das doch mal.

                      Fragen:

                      • auf welchem Tag möchtest du den Kalender? Unter 4 Zoll oder ab 4 Zoll
                      • welche Firmware hast du auf dem Tag wo der Kalender angezeigt wird?

                      Pack bitte dein Script trotzdem mal hier in Code Tags rein. Ich würde es gerne sehen und vergleichen.

                      B 1 Reply Last reply Reply Quote 0
                      • B
                        Beowolf @bimmi last edited by Beowolf

                        @bimmi

                        Ich habe bei mir das Skript so:

                        
                        
                        function getEventsForNextDay(days) {
                          var start = new Date();
                          start.setHours(0, 0, 0, 0);
                          var end = new Date();
                          if (days == undefined) days = 14;
                          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}};
                          }
                          const params = e.parameter;
                          var content = getEventsForNextDay(params.days);
                          var output = ContentService.createTextOutput(content);
                          output.setMimeType(ContentService.MimeType.JSON);
                          return output;
                        }
                        

                        Angezeigt werden die Einträge auf den kleinen 2.9" TAGs. Einmal die weissen TAGs (FW: 37) und einmal die schwarzen TAGs(FW:35).

                        Es werden nur die Termine von heute und dem nächsten Tag angezeigt. Bei der 2.05 werden alle Termine angezeigt (bis der kleine Bildschirm voll ist).

                        B 1 Reply Last reply Reply Quote 0
                        • B
                          bimmi @Beowolf last edited by

                          @beowolf Ach am kleinen. Da nutze ich ein anderes Script. Ich kann nur leider am Handy nicht markieren im Google App Script. Ich schicke es heute abend rein!

                          Screenshot_20240126-081528.png

                          B 1 Reply Last reply Reply Quote 2
                          • B
                            Beowolf @bimmi last edited by Beowolf

                            @bimmi
                            Vielen, vielen Dank.

                            Ich habe es mal "abgetippt".

                            function getEventsForNextDay(days) {
                              var start = new Date();
                              var end = new Date();
                              var time_offset = 0;
                              end.setDate(end.getDate() + 8);
                              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({
                                    title: event.getTitle(),
                                    start: Math.floor((event.getStartTime().getTime() / 1000)+(time_offset*3600)),
                                    end: Math.floor((event.getEndTime().getTime() / 1000)+(time_offset*3600)),
                                    location: event.getLocation(),
                                    description: event.getDescription()
                                  });
                                }
                              }
                              // Sort events by start date/time
                              events.sort(function(a, b) {
                                return a.start - b.start;
                              });
                              return JSON.stringify(events);
                            }
                             
                            function doGet() {
                              var content = getEventsForNextDay();
                              var output = ContentService.createTextOutput(content);
                              output.setMimeType(ContentService.MimeType.JSON);
                              return output;
                            }
                            

                            Sollte so richtig sein.

                            Und was noch wichtiger ist - es funktioniert. Auf beiden TAGTs.

                            Danke

                            B R 2 Replies Last reply Reply Quote 1
                            • B
                              Beowolf last edited by

                              Was mir noch aufgefallen ist, bei den weissen TAGs gibt es "Buienradar", also "Regenradar".

                              Das gibt es bei den schwarzen TAGs nicht mehr. Schade.

                              1 Reply Last reply Reply Quote 0
                              • B
                                bimmi @Beowolf last edited by

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

                                @bimmi
                                Vielen, vielen Dank.

                                Ich habe es mal "abgetippt".

                                function getEventsForNextDay(days) {
                                  var start = new Date();
                                  var end = new Date();
                                  var time_offset = 0;
                                  end.setDate(end.getDate() + 8);
                                  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({
                                        title: event.getTitle(),
                                        start: Math.floor((event.getStartTime().getTime() / 1000)+(time_offset*3600)),
                                        end: Math.floor((event.getEndTime().getTime() / 1000)+(time_offset*3600)),
                                        location: event.getLocation(),
                                        description: event.getDescription()
                                      });
                                    }
                                  }
                                  // Sort events by start date/time
                                  events.sort(function(a, b) {
                                    return a.start - b.start;
                                  });
                                  return JSON.stringify(events);
                                }
                                 
                                function doGet() {
                                  var content = getEventsForNextDay();
                                  var output = ContentService.createTextOutput(content);
                                  output.setMimeType(ContentService.MimeType.JSON);
                                  return output;
                                }
                                

                                Sollte so richtig sein.

                                Und was noch wichtiger ist - es funktioniert. Auf beiden TAGTs.

                                Danke

                                Super 😅😅😅

                                haselchen 1 Reply Last reply Reply Quote 0
                                • haselchen
                                  haselchen Most Active @bimmi last edited by

                                  @bimmi

                                  Kann ich @Beowolf nur zustimmen.
                                  Funktioniert. Dankeschön!

                                  Kleiner Schönheitsmakel.
                                  Oben rechts das Datum, wie bekomme ich da die Striche weg und "normal" geschrieben hin?
                                  27-01-2024 steht da jetzt, vorher war es 27.01.2024

                                  1 Reply Last reply Reply Quote 0
                                  • R
                                    Revobobo @Beowolf last edited by

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

                                    Mal ne Frage: wie kriege ich das Script zum laufen? Wo muss es gespeichert werden?

                                    Viele Grüße

                                    @bimmi
                                    Vielen, vielen Dank.

                                    Ich habe es mal "abgetippt".

                                    function getEventsForNextDay(days) {
                                      var start = new Date();
                                      var end = new Date();
                                      var time_offset = 0;
                                      end.setDate(end.getDate() + 8);
                                      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({
                                            title: event.getTitle(),
                                            start: Math.floor((event.getStartTime().getTime() / 1000)+(time_offset*3600)),
                                            end: Math.floor((event.getEndTime().getTime() / 1000)+(time_offset*3600)),
                                            location: event.getLocation(),
                                            description: event.getDescription()
                                          });
                                        }
                                      }
                                      // Sort events by start date/time
                                      events.sort(function(a, b) {
                                        return a.start - b.start;
                                      });
                                      return JSON.stringify(events);
                                    }
                                     
                                    function doGet() {
                                      var content = getEventsForNextDay();
                                      var output = ContentService.createTextOutput(content);
                                      output.setMimeType(ContentService.MimeType.JSON);
                                      return output;
                                    }
                                    

                                    Sollte so richtig sein.

                                    Und was noch wichtiger ist - es funktioniert. Auf beiden TAGTs.

                                    Danke

                                    B 1 Reply Last reply Reply Quote 0
                                    • B
                                      bimmi @Revobobo last edited by

                                      @revobobo Schau mal hier: https://github.com/jjwbruijn/OpenEPaperLink/wiki/Google-Apps-Scripts

                                      R 1 Reply Last reply Reply Quote 0
                                      • R
                                        Revobobo @bimmi last edited by

                                        Top - hat geklappt - Dank Dir!!

                                        Viele Grüße


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

                                        Schau mal hier: https://github.com/jjwbruijn/OpenEPaperLink/wiki/Google-Apps-Scripts

                                        1 Reply Last reply Reply Quote 1
                                        • B
                                          bimmi last edited by bimmi

                                          Es kommt demnächst was neues:

                                          IMG_5451.jpg

                                          Ebenso wird aktuell an folgenden Sachen gearbeitet:

                                          • Aktualisierte Webserver-/TCP-Sockets-Bibliothek mit einer stabileren Version.
                                          • Warteschlangenbildung von ausstehenden Bildern, sodass ein ausstehendes Bild nicht mehr mit einem neuen während der Übertragung verwechselt wird.
                                          • Es wird kein Datei-Handler mehr während des JPEG-Uploads offen gehalten, keine gleichzeitigen Schreibvorgänge mehr.
                                          • Zlib-Komprimierung zum Übertragen von Bildern zwischen AP und Tags hinzugefügt. Die bevorstehende Tag-Firmware wird das nutzen.
                                          R B 2 Replies Last reply Reply Quote 3
                                          • R
                                            Revobobo @bimmi last edited by

                                            @bimmi
                                            Huiuiui - das hört sich nach einem neuen AP an - der MINI schafft dass bestimmt nicht mehr....

                                            Viele Grüße

                                            R 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            574
                                            Online

                                            31.7k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            42
                                            991
                                            234899
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo