Thank you. I see this but i only use timer not pin wakeup…
void gotoSleep(uint32_t seconds) {
esp_sleep_enable_timer_wakeup(seconds * 1000UL * 1000UL); // function uses uS
display.displayOff();
radio.begin();
radio.sleep(false);
pinMode(VBAT_CTRL, INPUT);
pinMode(VBAT_ADC, INPUT);
pinMode(RST_LoRa, INPUT);
pinMode(BUSY_LoRa, INPUT);
pinMode(SS, INPUT);
pinMode(MISO, INPUT);
pinMode(MOSI, INPUT);
pinMode(SCK, INPUT);
pinMode(SDA_OLED, INPUT);
pinMode(SCL_OLED, INPUT);
pinMode(RST_OLED, INPUT);
Serial.println(F("Sleeping\n"));
Serial.flush();
esp_deep_sleep_start();
// if this appears in the serial debug, we didn't go to sleep!
// so take defensive action so we don't continually uplink
Serial.println(F("\n\n### Sleep failed, delay of 5 minutes & then restart ###\n"));
delay(5UL * 60UL * 1000UL);
ESP.restart();
}