adafruit / circuitpython

CircuitPython - a Python implementation for teaching coding with microcontrollers
https://circuitpython.org
Other
4.11k stars 1.22k forks source link

Builtin display invalid after fake deep sleep #6484

Closed Neradoc closed 2 years ago

Neradoc commented 2 years ago

There are a few boards that support deep sleep and have a display, but the display becomes unusable after fake deep sleep, because the display is not released prior to being re-inited on wake. The FunHouse does release displays in board_deinit() and doesn't have the issue.

Should that be added to all relevant board.c ? Or should a call to release displays be added to the fake sleep code in main.c ? After board_deinit() for example. Some boards with an e-ink display have their own thing where they wait for the display to finish refreshing before releasing.

Example boards that need the fix that I could test:

jepler commented 2 years ago

In https://github.com/adafruit/circuitpython/pull/6543 we release displays for all boards. Please re-test.

Neradoc commented 2 years ago

Yup, the issue is fixed with the boards I tested.