← index #7849PR #8832
Off-topic · high · value 4.043
QUERY · ISSUE

STM32 sleep wake time problem

openby china-zhangdjopened 2021-09-24updated 2024-10-02
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

rp2/modmachine: Implement lightsleep() with optional sleep period.

mergedby dpgeorgeopened 2022-06-28updated 2023-03-13
port-rp2

This gets basic machine.lightsleep([n]) working on the rp2 port.

It supports:

  • Calling lightsleep without a specified period, in which case it uses xosc dormant mode. There's currently no way to wake it up from this state, unless you write to raw registers to enable a GPIO wake up source.
  • Calling lightsleep with a period n in milliseconds. This period must be less than about 72 minutes and uses timer alarm3 to wake it up.

The RTC continues to run during lightsleep, but other peripherals have their clock turned off during the sleep.

It doesn't yet support:

  • Longer periods than 72 minutes (could use the RTC for this).
  • Wake up from GPIO IRQ.

Fixes issue #8770.

Keyboard

j / / n
next pair
k / / p
previous pair
1 / / h
show query pane
2 / / l
show candidate pane
c
copy suggested comment
r
toggle reasoning
g i
go to index
?
show this help
esc
close overlays

press ? or esc to close

copied