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)
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.
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 800x480Lassen 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.