← index #17521PR #7298
Related · high · value 8.906
QUERY · ISSUE

docs: ESP32 RTC.memory and poweron_reset

openby davefesopened 2025-06-18updated 2025-09-27
docs

Documentation URL

https://docs.micropython.org/en/latest/library/machine.RTC.html

Description

The docs say it will survive "restarts", but it does not survive a poweron_reset. IE, pressing the EN button on the dev board.

Code of Conduct

Yes, I agree

CANDIDATE · PULL REQUEST

esp32/machine_rtc: Preserve RTC user memory over most reset causes.

mergedby karfasopened 2021-05-22updated 2023-12-06
port-esp32

ESP32: New compile-time #define allowing to preserve the RTC slow memory during most resets.

Usage:

#define MICROPY_HW_RTC_USER_MEM_NOINIT

e.g. in port/esp32/board/XXX/mpconfigboard.h

When above is defined, the user memory area - accessible by machine.RTC.memory() will survive most reboot causes. A power-on reset (also caused by the EN pin on some boards) will clean the memory. When this happens, the magic number not found in the user memory will cause initialization.

After other resets (triggered by watchdogs, machine.reset(), ...), the user is responsible to check and validate the contents of the user area.

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