The goal was to create a nicely looking E-Paper Clock that will show the current time all the time, so a refresh every minute is needed.
This goal was reached by implementing a custom LUT(Look Up Table) driving the E-Paper display as well as implementing an algorithm that will only update the changing pixels of the E-paper display. Every hour the screen will be fully refreshed to prevent ghosting or burn in.
The optimized E-Paper driving plus the good deep sleep of the nRF52832(including active Bluetooth/BLE and 500ms advertising interval) ends up at an average of 65uA deep sleep current!
From the calculations this should reach over a year of runtime on a single 18650 Cell, and by now this project is fully tested, more than a year of runtime can be reported :)
Since the main goal was reached no further software improvements where done after that :( by now the Triink is on my desk and is actually used to show the time, every 3 month or so it is needed to connected to it via the D6Notification app to set the time as it is drifting by a few minutes.
The Screen itself is out of an Old E-Paper Price Tag and is named: WF00290BF33 the code and LUT is very much custom for that particular screen but can be adapted to any other screen if wanted.
The Android app D6Notifications can be used to set the time and also to implement further modes like notifications by utilizing the Display or Beeper
The app DaFlasher can be used to flash a new Firmware OTA to the Triink
Some project logs from Twitter:
Building your own Triink:
See the "Build Instructions" if you want to build your own Triink