tbnobody / OpenDTU

Software for ESP32 to talk to Hoymiles/TSUN/Solenso Inverters
GNU General Public License v2.0
1.81k stars 507 forks source link

improve display wake up und power save mode #575

Open MedicusOne opened 1 year ago

MedicusOne commented 1 year ago

Is your feature request related to a problem? Please describe.

Hi, I find the OLED display very interesting. What I would still wish for would be a way to wake up the display using a button. At the moment I have the power save mode active. But then I have no way of displaying the daily yield when the power save mode is active.

Describe the solution you'd like

Alternatively, it would also be nice if you had an alternative Power Save mode that switches off the display after an adjustable interval. Then the display would only be active for a certain interval after the button was pressed. I already use this function in my projects with ESPEasy+Display.

Describe alternatives you've considered

No response

Additional context

No response

dAjaY85 commented 1 year ago

Hello MedicusOne, this discussion we had, too. But we decided against an additional Button only for the Power Save of the Display.

You can look at the Waveshare 1.54 inch ePaper, there you have no Power Problems :-) https://www.waveshare.com/1.54inch-e-paper-module.htm

indeed1 commented 1 year ago

You can look at the Waveshare 1.54 inch ePaper, there you have no Power Problems :-) https://www.waveshare.com/1.54inch-e-paper-module.htm

This would be nice, but as far as I've seen in the doc, only three types of displays are currently supported, but no ePaper.

Anyway, I have a SSD1306 OLED display, and it works fine. But I also find it really important to be able to disable/enable it as needed - not only due to it's additional energy consumption, but also considering the limited lifetime of OLED displays (according to specs less than 2 yrs!).

I tried a small hardware switch in the display's Vcc line as a potential solution. But without knowledge of what OpenDTU exactly does, I feared it perhaps won't work, as the unpowered display will forget its initialization and internal state. But it did work, at least with my SSD1306 display. It may show garbage or nothing for a few moments after switching on, but with the next update cycle it presents the data properly.

For me, this is an acceptable solution.