ESP32-Paxcounter
ESP32-Paxcounter copied to clipboard
Add/Implement screensaver
Oled displays will burn-in after continous operation. Implementing a screensaver can prevent this from happening:
With respect to the logic on screen saver: I can think of a timed state that, when screen saver is enabled, will switch of the display after a preset time and switch it on, on events like a keypress or when data is sent. So the display state kan be: ON, SCREEN_SAVE, or OFF.
It might be possible to use the same variable for display on and off and add a third value for screensave: 0=off, 1=on, >1 is screensaver timeout in seconds.
Although I hve not fully examined the code, this seems initially an implementable solution.
It might be a good idea to implement screen off functionality, e.g. after 600 seconds. Then you'd have plenty of time to verify that paxcounter has joined and is working properly, but oled display remains usable over time.
Actually I've implemented something like described above: https://github.com/VekotinVerstas/AQLoRaBurk/blob/5dae69588179a1b7dcf940de5a3439296fb6df9d/AQLoRaBurk.ino#L176