Verjaardagskalender eInk scherm
Ik had al een tijdje een eInk scherm liggen met de bedoeling daar een verjaardagskalendar van te maken. Nu zijn er wel projecten die een lijst met verjaardagen uit Google Calendar kunnen halen en die op een eInk scherm kunnen laten zien, maar ik besloot het iets anders aan te pakken.
Het voordeel van een eInk scherm is namelijk dat het alleen stroom verbruikt als het beeld veranderd. Omdat een verjaardagskalender maar een keer per dag hoeft te worden aangepast hoeft het scherm niet de hele dag van stroom te worden voorzien. Maar natuurlijk moet het scherm ook worden aangestuurd. Daarvoor gebruik ik een Raspberry Pi Zero W. Technisch gezien is de WiFi of Bluetooth verbinding daarvan niet nodig voor mijn oplossing, maar deze had ik nog liggen.
De Pi is verbonden met het WaveShare 7.5” eInk scherm via een Pi Hat die ik op de Raspberry Pi Zero kan zetten. Om middernacht start er een cronjob die een Python script start. Dat script lees uit een CSV bestand de lijst met geboortedatums en namen. Op basis van de huidige datum bepaalt het de veertien komende verjaardagen. Mocht het zo zijn dat er een verjaardag op de huidige datum valt dan wordt die dikgedrukt, zodat die extra op valt. Door het gebruik van geboortedata hoef ik niet voor de komende tijd data te genereren en is het alleen nodig om de lijst aan te passen om een geboortedatum toe te voegen of te verwijderen. Op basis van diezelfde geboortedatum wordt ook de leeftijd van de jarige getoond.
Nadat het scherm voor die dag is aangepast gaat de Pi in slaapstand en wordt pas weer gewekt als het middernacht is. Daardoor wordt er minder stroom gebruikt. Om er voor te zorgen dat de Pi op tijd gewekt wordt is er een Real Time Clock (RTC) aan verbonden. Die zorgt er voor dat de tijd goed blijft lopen.
Natuurlijk had ik dit ook met een ESP8266 of ESP32 kunnen maken, maar de eInk controller die ik gebruikte wilde geen verbinding maken met mijn WiFi netwerk en dat is toch wel handig als ik de firmware wil aanpassen. Toch wil ik dit in de toekomst nog wel een keer proberen, zodat ik de verjaardagskalender met een batterij kan voeden.
Om het scherm netjes in het interieur te plaatsen heb ik alles ingebouwd in een Ikea Ribba fotolijstje. De afmetingen van de lijst komen overeen met het eInk scherm en de lijst is dik genoeg om ook de Pi achter te verstoppen. De leiding voor de voeding had ik al voorbereid, dus het was een kwestie van een USB kabel trekken om alles van stroom te voorzien.