Skip to content

Commit b0fef9a

Browse files
committed
Improved deep sleep
1 parent 4eb0d8f commit b0fef9a

File tree

1 file changed

+7
-6
lines changed

1 file changed

+7
-6
lines changed

components/cmd_system/cmd_system.c

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -228,7 +228,7 @@ static int deep_sleep(int argc, char **argv)
228228
if (deep_sleep_args.wakeup_gpio_num->count)
229229
{
230230
int io_num = deep_sleep_args.wakeup_gpio_num->ival[0];
231-
if (!rtc_gpio_is_valid_gpio(io_num))
231+
if (!GPIO_IS_VALID_DIGITAL_IO_PAD(io_num))
232232
{
233233
ESP_LOGE(TAG, "GPIO %d is not an RTC IO", io_num);
234234
return 1;
@@ -245,15 +245,16 @@ static int deep_sleep(int argc, char **argv)
245245
}
246246
ESP_LOGI(TAG, "Enabling wakeup on GPIO%d, wakeup on %s level",
247247
io_num, level ? "HIGH" : "LOW");
248-
ESP_ERROR_CHECK(esp_sleep_enable_wifi_wakeup());
248+
249+
#if defined(CONFIG_IDF_TARGET_ESP32) || defined(CONFIG_IDF_TARGET_ESP32S2)
250+
ESP_ERROR_CHECK(esp_sleep_enable_ext1_wakeup(1ULL << io_num, level));
251+
#endif
249252
}
250-
#if SOC_RTCIO_HOLD_SUPPORTED
253+
#if defined(CONFIG_IDF_TARGET_ESP32) || defined(CONFIG_IDF_TARGET_ESP32S2)
251254
rtc_gpio_isolate(GPIO_NUM_12);
252-
#endif // WITH_TASKS_INFO
255+
#endif
253256
esp_deep_sleep_start();
254-
return 0;
255257
}
256-
257258
static void register_deep_sleep(void)
258259
{
259260
deep_sleep_args.wakeup_time =

0 commit comments

Comments
 (0)