When many people live under the same roof and everyone has their own things, it’s sometimes very hard to keep up with everything. In our family we have tried many things; blackboard, shared calendar on phones, post-its, paper calendar, you name it. But nothing of these have worked since a) they are hard to keep up-to-date or b) they are not visible enough in everyday life. So I decided that now it’s time to do something useful for our family with the skills I have and that’s when this project was born.
Checking the options
First it was time for some research by searching for components or readymade solutions for the problem. Sure there are devices that can show you important things (like Google Nest Hub) but problem with these is the price, they have too many features and cannot be customized. Other option would have been to assemble the device myself from custom components but lack of knowledge and time was the main reason I didn’t go this path. After some time I came across with Inkplate 6 which offered exactly what I was looking for; low energy consumption, display that works in sunlight, highly customization options and decent looks. Only thing that was missing was the buttons to work through the casing which would have allowed more options to develop. Ordered the device and started coding right away; true blackbox some would say.
The plan & the problems
What was needed was the possibility to show upcoming events from shared Google calendar as well as current weather, time and date. So nothing too hard you could say.
I started off by creating a simple windowing engine so I could more easily customize the locations and colors of the content. While the engine is only used to show few things now, it can come handy if I later on need something else on the display such as weekly calendar, sports scores, news headlines, lottery numbers or whatever.
Connecting to WiFi and getting time with NTP was easy just by following the examples shown in the InkPlate repository.