From d1db51830b90241e0f5f0b6259ae0d027c5e5fd1 Mon Sep 17 00:00:00 2001 From: Todd Herbert Date: Thu, 4 Apr 2024 17:05:12 +1300 Subject: [PATCH] set GPIOs for sleep --- src/sleep.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/sleep.cpp b/src/sleep.cpp index ddea9942c..67b7f5c7c 100644 --- a/src/sleep.cpp +++ b/src/sleep.cpp @@ -277,6 +277,17 @@ void doDeepSleep(uint32_t msecToWake, bool skipPreflight = false) if (shouldLoraWake(msecToWake)) { enableLoraInterrupt(); } + +#if defined(HELTEC_WIRELESS_PAPER) || defined(HELTEC_WIRELESS_PAPER_V1_0) // Applicable to most ESP32 boards? + // Avoid leakage through button pin + pinMode(0, INPUT); + rtc_gpio_hold_en((gpio_num_t)0); + + // LoRa CS (RADIO_NSS) needs to stay HIGH, even during deep sleep + pinMode(LORA_CS, OUTPUT); + digitalWrite(LORA_CS, HIGH); + rtc_gpio_hold_en((gpio_num_t)LORA_CS); +#endif #endif cpuDeepSleep(msecToWake); }