Firmware für Espressif ESP32 und ESP8266

Wir glauben, dass embedded Software solide, einfach und sicher sein muss.

In dieser Version war die Entscheidung, alles wegzulassen und nur das Wesentliche zu belassen, das heißt:

  • Eine Möglichkeit, ein Binärbild von einer externen URL in ESP32 / ESP8266 (WiFi.h / WiFiClient.h) zu streamen
  •     
  • Ein Interpreter, der diese Bitmap liest und einen Puffer für die Anzeige vorbereitet (basierend auf Beispielen der gxEPD-Bibliothek)
  •     
  • Ein Autorisierungstoken, um sicherzustellen, dass Sie Ihre Kalenderereignisse nicht für die Welt offen lassen müssen (Inhaber-Token)
Der Teil, der noch nicht vollständig getestet und daher in dieser Version nicht enthalten ist, besteht darin, den WiFi Secure Client hinzuzufügen, damit wir dieses Token mit TLS-Verschlüsselung über die sichere Socket-Schicht senden können.


Die Open Source Firmware ist hier:

https://github.com/martinberlin/eink-calendar - cale branch

So kompilieren und laden Sie auf Ihr Board

Wir gehen davon aus, dass Sie mit der Installation von Platformio vertraut sind, einer großartigen IDE zum Hochladen von Firmware auf Ihre Boards und zum Beibehalten Ihrer Abhängigkeiten in Ihrem Projekt.

Die Konfiguration ist nicht kompliziert. Nach dem Download einfach umbenennen:
lib/Config/Config.h.dist zu
Config.h

und füllen Sie es mit Ihrem WiFi-Namen und Passwort.

     Der wichtigste Teil der Konfiguration besteht darin, die Bild-URL aus dem Abschnitt "Renderbildschirm" von CALE in die Konfiguration zu kopieren.      Klicken Sie einfach auf die Bitmap-URL für den ESP32 , um alle auszuwählen, kopieren Sie sie in die screenUrl und machen Sie dasselbe mit dem Bearer-Token , wenn Sie einen privaten Bildschirm verwenden:
    char screenUrl[] = "http://img.cale.es/bmp/USERNAME/SCREEN_ID";

    // Security setting, leave empty *only* if your screen is public (Not recommended)
    String bearer = "";




Protokollierung der internen ESP32-IP-Adresse
     Standardmäßig protokolliert CALE die interne IP-Adresse, da dies für Statistiken und zum Identifizieren Ihrer Geräteimage-Anforderungen anhand der Administrations-Image-Anforderungen hilfreich sein kann. Wenn Sie dies aus irgendeinem Grund deaktivieren möchten, kommentieren Sie einfach diese Zeile in der Konfigurationsdatei:
#define ENABLE_INTERNAL_IP_LOG



Auswahl des richtigen Treibers für Ihr Display
Wir haben die Konfigurationsdatei so vorbereitet, dass Sie einfach eine einzelne Zeile auskommentieren können, um die richtige gxEPD-Klasse für Ihre Anzeige auszuwählen.      Um beispielsweise ein Waveshare- oder Good-Display 7,5 mit 800 x 480 Pixel zu verwenden, kommentieren Sie Folgendes aus:
#define GDEW075T7    // 7.5" b/w 800x480
Lassen Sie alle anderen Modelle kommentiert. Auf diese Weise fügen Sie bereits das richtige Include für Ihr E-Ink-Display ein.
GPIOs für die E-Ink SPI-Schnittstelle
Die Verkabelung des E-Ink SPI mit der Espressif-Karte ist nicht besonders kompliziert. Das E-Ink SPI verfügt über 6 Kabel plus Fahrgestellnummer, die an die 3,3 V Ihrer Platine plus Masse angeschlossen werden sollten. Die E-Ink verbraucht sehr wenig, sodass Sie dies immer mit dem USB testen können, bis Sie sich für den Anschluss eines Lipo 3.7V-Akkus entscheiden.
    // Configuration example for ESP32 TinyPICO:
    int8_t EINK_CS = 5;
    int8_t EINK_DC = 22;
    int8_t EINK_RST = 21;
    int8_t EINK_BUSY = 4;

    // Behandelt die Drehung der Display
    int8_t eink_rotation = 0;
    


Bei Verwendung der gxEPD-Bibliothek sollte das DataIn vom Display mit MOSI auf Ihrer Karte verbunden sein (in ESP32 ist GPIO 23)      Die Anzeigetakt sollte im ESP32 (CLK) mit GPIO 18 verbunden sein.      Bitte überprüfen Sie die folgenden Schaltpläne, um zu verstehen, wie die E-Ink SPI-Schnittstelle mit der Espressif-Karte verbunden werden soll.

Halten Sie Ihre Ereignisse und API-Inhalte privat

Beachten Sie, dass wir die Verwendung öffentlicher Bildschirme nicht empfehlen, da Ihr Kalender möglicherweise private Informationen wie Ereignisse enthält.      Banküberweisungen Anmerkungen oder Arzttermine, die Sie nicht für die Welt öffnen sollten, um zu sehen. Verwenden Sie also immer ein Sicherheitstoken.

ESP32 Schematic

Sie können jedes ESP32 verwenden. Die einzige Voraussetzung, wenn Ihr CALE eine lange Akkulaufzeit haben soll, ist, dass er im Tiefschlafmodus weniger als 0,8 mA verbraucht.


ESP8266 Schematic