

Alternatively, RTC peripherals (and pullups/pulldowns) may be kept enabled using esp_sleep_pd_config function. In this case, external resistors need to be added. Note internal pullups and pulldowns don’t work when RTC peripherals are shut down. The pins are configured in esp_sleep_start, immediately before entering sleep mode. Note This function does not modify pin configuration. Once any of the selected pins goes into the state given by mode argument, the chip will be woken up. This feature can monitor any number of pins which are in RTC IOs. It will work even if RTC peripherals are shut down during sleep. This function uses external wakeup feature of RTC controller. level: input level which will trigger wakeup (0=low, 1=high)Įsp_err_t esp_sleep_enable_ext1_wakeup (uint64_t mask, esp_sleep_ext1_wakeup_mode_t mode ) ¶.

Only GPIOs which are have RTC functionality can be used: 0,2,4,12-15,25-27,32-39. gpio_num: GPIO number used as wakeup source.ESP_ERR_INVALID_ARG if the selected GPIO is not an RTC GPIO, or the mode is invalid.Note ext0 wakeup source cannot be used together with touch or ULP wakeup sources. The pin is configured in esp_sleep_start, immediately before entering sleep mode.

Once the pin transitions into the state given by level argument, the chip will be woken up. This feature can monitor any pin which is an RTC IO. It will work only if RTC peripherals are kept on during sleep. This function uses external wakeup feature of RTC_IO peripheral. Return touch pad which caused wakeup esp_err_t esp_sleep_enable_ext0_wakeup ( gpio_num_t gpio_num, int level ) ¶ If wakeup was caused by another source, this function will return TOUCH_PAD_MAX Touch_pad_t esp_sleep_get_touchpad_wakeup_status ( ) ¶

Wakeup from deep and light sleep modes can be done using several sources. The only parts of the chip which can still be powered on are: RTC controller, RTC peripherals (including ULP coprocessor), and RTC memories (slow and fast). In deep sleep mode, CPUs, most of the RAM, and all the digital peripherals which are clocked from APB_CLK are powered off. Upon exit from light sleep, peripherals and CPUs resume operation, their internal state is preserved. In light sleep mode, digital peripherals, most of the RAM, and CPUs are clock-gated, and supply voltage is reduced. ESP32 is capable of light sleep and deep sleep power saving modes.
