Lucian Copeland
295103bb31
Merge remote-tracking branch 'upstream/main' into sleep-revamp
2021-05-13 16:22:12 -04:00
Lucian Copeland
525b34b042
Fix formatting and broken links
...
Implmements missed pre-commit changes for all files, and fixes links broken by
cleanup in #4698
2021-05-10 18:04:43 -04:00
Lucian Copeland
9feef41c82
Merge remote-tracking branch 'upstream/main' into stm-alarm
2021-04-28 15:10:55 -04:00
Scott Shawcroft
76033d5115
Merge MicroPython v1.11 into CircuitPython
2021-04-26 15:47:41 -07:00
Lucian Copeland
7eeea869ac
Fix light sleep global alarms, API revisions
2021-04-15 15:02:42 -04:00
Lucian Copeland
17585e1e07
Clean up API
2021-04-02 14:08:48 -04:00
Lucian Copeland
91e530d36c
Resolve wake alarm crash
2021-04-02 13:42:22 -04:00
Lucian Copeland
d35a307ffa
Merge branch 'sleep-api-update' into stm-alarm
2021-03-29 12:27:25 -04:00
Lucian Copeland
00178ca5e0
Sleep API changes, redundancy fix
2021-03-27 14:14:57 -04:00
Lucian Copeland
529fb52309
Style changes and wakeup detection
2021-03-27 13:16:12 -04:00
microDev
a52eb88031
run code formatting script
2021-03-15 19:27:36 +05:30
Lucian Copeland
6b2c9985ff
Extract RTC, implement fake RTC deepsleep
2021-03-11 17:50:05 -05:00
Lucian Copeland
f1792c8474
Extract EXTI, create base sleep framework
2021-03-02 11:41:53 -05:00
Dan Halbert
c3a1bd8f13
turn off brownout before deep sleep
2021-02-08 12:40:20 -05:00
microDev
5f448139e0
fixes and enhancement for touch alarm
...
- prevent touch alarm initialization if not set
- fix wake_alarm is set to touch alarm on autoreload
- add ability to have multiple touch alarms in light sleep
2021-01-11 15:30:45 +05:30
microDev
0bad6110d4
update wake-alarm implementation
2020-12-31 02:44:20 +05:30
microDev
b83bdc540d
enable light-sleep functionality
2020-12-31 02:22:20 +05:30
microDev
28ce5e8988
Merge branch 'main' into touch-s2
2020-12-30 22:44:22 +05:30
microDev
c7f68022ef
add pretend-to-sleep functionality
2020-12-30 22:11:22 +05:30
Scott Shawcroft
1fca297a2d
A couple sleep fixes
...
* Better messaging when code is stopped by an auto-reload.
* Auto-reload works during sleeps on ESP32-S2. Ticks wake up the
main task each time.
* Made internal naming consistent. CamelCase Python names are NOT
separated by an underscore.
2020-12-22 16:13:02 -08:00
Dan Halbert
d4e9eea397
mark alarm.wake_alarm during gc sweep
2020-12-22 08:11:01 -08:00
microDev
ecd7c0878e
expose wake pin parameter and more tweaks
2020-12-19 20:54:36 +05:30
microDev
a60fabdffa
add touch alarm support for esp32s2
2020-12-19 12:56:34 +05:30
microDev
8eaf2b0c19
implement touch alarm
2020-12-18 12:54:36 +05:30
Scott Shawcroft
0dcc659d53
Swap to IDF release/4.2 branch for stability
2020-12-15 18:12:59 -08:00
Scott Shawcroft
1ad49d9a18
Add alarm.pin that wakes on pin level
...
Fixes #3787
2020-12-15 18:12:59 -08:00
Dan Halbert
e0afa32cfa
use RTC_DATA_ATTR; address review comments
2020-12-14 11:36:54 -05:00
Dan Halbert
cf938983e9
SleepMemory + set alarm.wake_alarm
2020-12-11 08:10:26 -05:00
Dan Halbert
55f4110983
fix typo
2020-12-10 14:16:25 -05:00
Dan Halbert
5964163649
Initial SleepMemory code
2020-12-10 13:03:40 -05:00
Scott Shawcroft
0b4bcd9599
Fix build and more comments
2020-12-08 13:05:21 -08:00
Scott Shawcroft
40118bcf57
Add board_deinit
for use with sleep
...
This changes lots of files to unify `board.h` across ports. It adds
`board_deinit` when CIRCUITPY_ALARM is set. `main.c` uses it to
deinit the board before deep sleeping (even when pretending.)
Deep sleep is now a two step process for the port. First, the
port should prepare to deep sleep based on the given alarms. It
should set alarms for both deep and pretend sleep. In particular,
the pretend versions should be set immediately so that we don't
miss an alarm as we shutdown. These alarms should also wake from
`port_idle_until_interrupt` which is used when pretending to deep
sleep.
Second, when real deep sleeping, `alarm_enter_deep_sleep` is called.
The port should set any alarms it didn't during prepare based on
data it saved internally during prepare.
ESP32-S2 sleep is a bit reorganized to locate more logic with
TimeAlarm. This will help it scale to more alarm types.
Fixes #3786
2020-12-08 10:52:25 -08:00
Dan Halbert
8b7c23c1ee
address review comments
2020-12-01 20:01:14 -05:00
Dan Halbert
e308a9ec11
working! PinAlarm not implemented yet.
2020-11-27 16:03:37 -05:00
Dan Halbert
104a089677
deep sleep working; deep sleep delay when connected
2020-11-26 22:06:37 -05:00
Dan Halbert
ef0830bfe2
merge from upstream + wip
2020-11-25 17:52:06 -05:00
Dan Halbert
9dbea36eac
changed alarm.time API
2020-11-25 15:09:27 -05:00
Dan Halbert
7a45afc549
working, but need to avoid deep sleeping too fast before USB ready
2020-11-23 22:44:53 -05:00
Dan Halbert
3abee9b256
compiles; maybe ready to test, or almost
2020-11-22 21:52:37 -05:00
Dan Halbert
a0f1ec3c4a
wip
2020-11-22 19:10:09 -05:00
Dan Halbert
75559f35cc
wip: ResetReason to microcontroller.cpu
2020-11-21 23:29:52 -05:00
Dan Halbert
e4c66990e2
compiles
2020-11-20 23:33:39 -05:00
Dan Halbert
39e1f52e28
wip; not compiling yet
2020-11-19 17:47:12 -05:00
Dan Halbert
649c930536
wip
2020-11-19 15:43:39 -05:00
microDev
930cf14dce
Add check for invalid io, function to disable all alarms
2020-10-27 16:17:26 -07:00
microDev
59df1a11ad
Add alarm_touch module
2020-10-27 16:16:52 -07:00
microDev
da449723df
Fix build error
2020-10-27 16:16:15 -07:00
microDev
4d8ffdca8d
restructure alarm modules
2020-10-27 16:15:09 -07:00