Close

New 7.5 inches build

A project log for Epaper Deepsleep digital clock

Powered by an ESP32 this inefficient, imprecise and over-engineered digital clock can be a great learning resource for ESP-IDF beginners

martin-fasaniMartin Fasani 07/09/2020 at 06:570 Comments

This 800*480 epaper is sold by Waveshare but the display's brand is Good display. Never understood 100% how it is between those two but my thoughts are that waveshare adds electronics on top. Like the SPI interface. Or in some models even a PCB ready for an esp32. But the epapers for makers since ages are mostly from http://www.good-display.com

This new model I made for my father that is the one who really knows about electronics and usually compiles and tests some of my firmwares. He added some custom modifications in this branch:

https://github.com/martinberlin/cale-idf/tree/carlos/7.5-digital

Battery is 5000mA and esp32 used is a http://tinyPICO.com (0.08 mA/h deepsleep consumption w/dotstar turned off)

We added a microseconds int64 correction to compensate boot time. Doing so I realized the Boot-Time correction so the clock is more precise is about 0.3 seconds. That means when you power on the esp32 it takes aprox. 0.3 seconds to arrive to the startTime first measurement. It does his update, with internet sync or not depending on the hour, and at the end measures endTime. So it discounts that time to the next sleep round plus our correction time that we called microsBootPrediction. In other words the program runtime the is discounted from the minutes sleep round.

That number is discounted from the N minutes Deepsleep you select. As is given in microseconds calculation is done in this function:

void deepsleep(){
    esp_deep_sleep(1000000LL * 60 * sleepMinutes - microsCorrection + microsBootPrediction); // + microsBootPrediction
}

Discussions