Description
Description
Feature Request to add ability to control certain hardware such as pull up/down resistors in sleep mode.
How to solve the problem
Internal pullups and pulldowns don’t work when RTC peripherals are shut down. In this case, external resistors need to be added. Alternatively, RTC peripherals (and pullups/pulldowns) may be kept enabled using esp_sleep_pd_config function.
This can be done as described in the esp idf Power-down of RTC Peripherals and Memories documentation
esp_sleep_pd_config(ESP_PD_DOMAIN_RTC_PERIPH, ESP_PD_OPTION_ON);
gpio_pullup_dis(gpio_num);
gpio_pulldown_en(gpio_num);
On a similar note.
Some ESP32 IOs have internal pullups or pulldowns, which are enabled by default. If an external circuit drives this pin in Deep-sleep mode, current consumption may increase due to current flowing through these pullups and pulldowns.
To isolate a pin to prevent extra current draw, call rtc_gpio_isolate() function.
After waking up from sleep, IO pad(s) used for wakeup will be configured as RTC IO. Before using these pads as digital GPIOs, reconfigure them using rtc_gpio_deinit() function.
Describe alternatives you've considered
There are no alternatives to this
Aditional context
No response