QUERY · ISSUE
STM32 sleep wake time problem
port-stm32
rtc.wakeup(ms)
machine.lightsleep(ms)
Do these two functions use the same wake-up source?
What is the maximum value of ms?
CANDIDATE · PULL REQUEST
ports/stm32h5: add sleep modes and RTC alarm wakeup
port-stm32
This PR adds support for machine.lightsleep() and machine.deepsleep() for STM32H5. Wakeup is possible via RTC.alarm(). machine.reset_cause() reports the proper code when waking up from on of those.
r = RTC()
r.wakeup(5_000)
machine.deepsleep()
# System goes to sleep for 5 secs
# Wakes up via reset, all state is lost
MicroPython v1.20.0-288-g3a153d92f-dirty on 2023-10-21; NUCLEO_H563ZI with STM32H563ZI
Type "help()" for more information.
machine.reset_cause()
4
machine.DEEPSLEEP_RESET
4
i = 1
r = RTC()
r.wakeup(5_000)
machine.lightsleep()
# System goes to sleep for 5 secs
# Wakes up from Stop mode, state is retained
machine.reset_cause()
4
i
1
This PR fixes #12697