You can use an external interrupt to wake up the ESP32 from deep sleep. There are two types of external wake-ups in the ESP32. Only Real-time clock or RTC input-output pins can be used as a wake up source and you need to make sure that during deep sleep the RTC peripherals are powered ON. […]
See the S# series datasheet for the ESP device you are using > Peripheral Pin Configurations This will confirm exactly which pins can be used ESP S2 Series Datasheet ESP S3 Series Datasheet Technical Reference Manual ESP S2 Technical Reference Manual ESP S3 Technical Reference Manual
UART0 The ESP32 can be programmed via its UART pins. However it doesn’t have to be if you want to use them for something else. It is also possible to program it using the JTAG interface pins. Pin assignment (other than UART0) UART signals can be connected via IOMUX for specific GPIO or otherwise the […]
Pin assignment Both I2C interfaces are connected to pins via GPIO matrix, so you can select arbitrary IO pins for SDA and SCL. You just need to observe the constraints of each pin such as I/O capability (GPIO34 – 39 are input only so not suited!), bootstrapping function. See the series datasheet for your device […]
REMEMBER NOT ALL ESP32 PINS ARE INPUT/OUTPUT – SOME ARE INPUT ONLY!!!! ESP32 Pin List All of the pin fucntions, default state, etc: https://www.espressif.com/sites/default/files/1a-esp32_pin_list_en-v0.1.pdf Peripheral pins assignment See here Pull ups / pull downs Only pins that support both input & output have integrated pull-up and pull-down resistors. Input-only GPIOs 34-39 do not.