Mit dieser Software kann man sich die Liste seiner Lebensmittelvorräte auf einem ePaper Display anzeigen lassen. Die Verwaltung der Lebensmittel erfolgt über die Android-App Vorrat oder in einer Google Tabelle.
Angezeigt werden alle Vorräte, die ein MHD enthalten, die bereits abgelaufen sind oder bald (mit konfigurierbarer Tagesanzahl) ablaufen werden.
Wenn eine Batterie angeschlossen ist, kann der Controller zu bestimmten Zeiten geweckt werden, um die Anzeige aktualisieren.
LilyGo T5 2.7" | LilyGo T5 2.9" | LilyGo T5 4.7" |
---|---|---|
Die unterstützen ESP32 Boadrs mit ePaper Display werden im folgenden kurz ESP genannt.
Funktion der Tasten
Taste | während des Starts | im Betrieb |
---|---|---|
vor |
Online Update durchführen (nur Vorrat Version) | eine Seite weiter blättern |
zurück |
Konfiguration bei verbundenem WLAN anzeigen | eine Seite zurück blättern |
vor & zurück |
in den AP Modus wechseln und Verbindungsdaten anzeigen | (keine) |
Wecken |
weckt den ESP | (keine) |
Reset |
Neustart | Neustart |
Anmerkung:
Im Betrieb funktioniert das Blättern nur, wenn die Liste bereits vollständig
aufgebaut wurde.
Das dauert bei den 2.x" Displays ein paar Sekunden länger, als man Änderungen im Display
wahrnehmen kann.
Gehäuse für den 3D-Druck
Im Unterordner stl befinden sich Daten für den 3D-Druck der Gehäuse.
Die Displays der 2.7" Variante sind unsauber verklebt.
Bei jedem ESP sitzt die Anzeige mehr oder weniger schief auf der Platine (s.o.).
Daher muss bei der 2.7" Variante das Fenster an den jeweiligen ESP angeapsst werden.
Wird die Software das erste mal gestartet, muss zunächst eine Verbindung zu einem WLAN hergestellt werden. Durch die Nutzung des ESP32_WiFiManagers wird auf dem ESP ein WiFi Access Point gestartet, auf dem man sich z.B. mit einem Smartphone verbinden kann.
Der Name des Access Points beginnt mit "VORRAT" gefolgt durch die MACID des ESPs.
Ist der ESP mit dem WLAN verbunden kann man per Browser die Konfiguration vornehmen.
Bildschirmausrichtung
hochkant
oder quer
.
Anmerkung:
Das LilyGo 4.7" Display funktioniert nur im Querformat.
Vorrat ID
Die Gruppen-Zugriffscode aus der Vorrat-App.
Diesen findet man findet in der App unter
Grundmenü
-> Gruppe
-> Menü
-> Datensicherung
-> Gruppen-Zugriffscode
.
Der Code wird dort angezeigt und gleichzeitig in den Zwischenspeicher geschrieben.
So kann man ihn einfach mit Paste
in die Webschnittstelle übertragen.
Google API Key
Kann man in seinem Google Account konfigurieren.
Google Sheet ID
Die ID der Tabelle.
Die Tabelle muss diesen Aufbau haben:
Die erste Spalte enthält den Produktnamen, die zweite den Lagerort und die dritte
das Mindesthaltbarkeitsdatum.
Der Inhalt der Kopfzeile wird nicht eingelesen.
Anmerkung:
Der ESP zeigt nur die Produkte aus einer Quelle an.
Hat man sowohl die Vorrat ID angegeben als auch gültige Daten für die Google Tabelle hinterlegt, dann
werden die Produkte aus der Vorrat-App angezeigt.
Lagerorte
Hier kann die Anzeige nach angegebenen Lagerorten gefiltert werden.
Ist das Feld leer, dann werden alle Produkte eingelesen.
Mehrere Lagerorte können durch ein Semikolon (ohne anschließendes Leerzeichen!) getrennt werden.
Damit kann man erreichen, dass ein ESP z.B. nur den Inhalt des Kühlschranks
oder des Gefrierfachs anzeigt.
MHD Warnzeit (Tage)
Vorwarnzeit in Tagen, ab wann die Produkte in hervorgehobener Schrift
angezeigt werden.
Sprache
Derzeit Deutsch
oder Englsich
.
Zeitzone
Derzeit Mitteleuropäische Zeit
oder Mitteleuropäische Sommerzeit
.
Weckzeit # [hh:mm]
Bis zu drei Zeiten, zu denen der ESP startet und den Inhalt
der Anzeige aktualisiert.
Die weiteren Optionen dienen der individuellen Anpassung des Layouts. Die jeweiligen Maße sind in diesem Bild dagestellt.
Alle geometrischen Größen werden in Pixeln eingegeben.
Batteriezustand
Der ESP mit dem 4.7" Display hat eine integrierte Messung des Batteriezustands.
Die 2.7" und 2.9" Variante haben diese nicht.
Hier kann man die Anzeige des Batteriezustands verhindern,
wenn man bei der Option Abstand Batteriezustand
eine 0
einträgt.
Nachrüsten der Messung des Batteriezustands
Mit einem einfachen Spannungsteiler bestehend aus zwei 100k Widerständen und einem Kondensator lässt sich die Messung des Batteriezustands einfach nachrüsten.
Dies führt zu einer Erhöhung des Ruhestroms im Deep Sleep Modus um ca. 10%.
Im Fall der ESP 2.7" Variante steigt der Ruhestom mit Spannungsteiler von 364µA auf 404µA.
Update
Für jedes Display gibt es zwei Varianten der Software.
-
Eine die nur mit der Vorrat-App funktioniert. Diese Version ermöglicht Online Updates.
-
Eine Entwicklerversion, die sowohl die Vorrat-App oder eine Google-Tabelle als Datenquelle nutzt.
Bei Inaktivität wechselt der ESP in den stromsparenden Deep Sleep Modus, was einen
Betrieb mit einem Akku ermöglicht.
Alle unterstützten ESPs bieten die Möglichkeit einen Lithium-Polymer-Akku anzuschließen.
Aufwecken per Timer
Wenn der ESP per Timer geweckt wurde, geht er 30 Sekunden nach der Anzeige der Vorräte in
den Deep Sleep Modus.
In diesem Zeitraum kann man beispielsweise umblättern.
Umblättern
Nach dem Umblättern geht der ESP nach 60 Sekunden in den Deep Sleep Modus.
Blättert man noch einmal um, wird der Timeout wieder auf 60 Sekunden gesetzt.
Konfiguration oder Wechsel in den AP Modus
Wählt man beim Start "Anzeige der Konfiguration" oder "Wechsel in den AP Modus" aus,
dann geht der ESP 5 Minuten nach Inaktivität in den Deep Sleep Modus.
Dies gilt auch für einen frisch programmiern und noch nicht konfigurierten ESP.
In der Datei platformio.ini
kann die Konfiguration für den verwendeten ESP gewählt werdeb.
Mit den Optionen lilygo21
, lilygo27
, lilygo29
und lilygo47
wird die Software für
die Verwaltung der Lebensmittel mit der Vorrat-App erstellt.
Diese Versionen können per Online-Update aktualisiert werden.
Mit den Optionen lilygo21dev
, lilygo27dev
, lilygo29dev
und lilygo47dev
wird die Software für
die Verwaltung der Lebensmittel mit der Vorrat-App oder einer Google-Tabelle erstellt.
Bei diesen Versionen ist kein Online-Update möglich.
Ohne zahlreiche Anregungen und Beiträge wäre dieses Projekt nie zustande gekommen.
Besonderer Dank gilt Rainard Buchmann, dem Entwickler der großartigen Vorrat-App. Er hat das Projekt von Anfang an unterstützt und sofort eine Schnittstelle zu den Vorräten entwickelt.
Mit viel Leidenschaft und Sachverstand hat er viele nützliche Funktionen angeregt und zahlreiche Fehler gefunden.
Die 3D-Gehäuse wurden auch von ihm entwickelt.
In der Datei wifiman.cpp wird eine angepasste Version des Programms ESP32_FSWebServer_DRD.ino des ESP_WiFimanagers von Khoi Hoang genutzt.
Die Webschnittstelle zum Konfigurieren der Software basiert auf Gerald Lechners WebConfig. Eine sehr gute Grundlage, die ich mit wenigen Änderungen an meine Bedürfnisse anpassen konnte.
Die verfügbaren Treiber für die unterstützten Displays waren einfach zu integrieren.
Daher Dank an olikraus, ZinggJM und LilyGo.