ESP32 real current consumption in deep sleep mode

ESP32 current consumption setup

According to the datasheet of the ESP32, the power consumption in deep sleep mode (RTC) is around 10µA:

Datasheet of the ESP32 | current in deep sleep mode

We measure the current of several commercial ESP32 boards and gathered the results on this page. The reader will find more details on the page of each board:

These measurements has been done with the following versions:

We used a Matrehit Energy multimeter that can measure direct curent from 10nA.

Results

The following table presents the results in inversing order of power consumption:

Board Current Power
ESP32-S3-DevKitM-1 @3.3V 31,7 mA 0.026mW
ESP32 FireBeetle DFR0478 @5V 10 µA 0.052 mW
ESP32 FireBeetle DFR0654 (Low Power Mode) @5V 11.6 µA 0.058 mW
ESP32 AZ-Delivery LOLIN32 @5V 12 µA 0.06 mW
ESP32 FireBeetle DFR0654 @5V 520 µA 2.7 mW
ESP32-DevKitC V4 @5V 3.8 mA 19 mW
ESP32 Thing Plus @5V 4.1 mA 20.5 mW

Source code

The source code used for switching from deep sleep mode to normal mode is presented below. The ESP32 remains in normal operation for 10 seconds, then switches to deep sleep mode for 10 seconds before starting again. The code may be adapted for each board.

// Convert from microseconds to seconds
#define uS_TO_S_FACTOR 1000000ULL
// Duration of each cycle (deep sleep and wakeup)
#define TIME_TO_SLEEP  10      

// Setup() is call on startup and wakeup from deep sleep mode
void setup() {

  // Display a message in the console
  Serial.begin(9600);
  Serial.println("Wake up");

  // Turn the built-in LED on during wake up
  pinMode(LED_BUILTIN, OUTPUT); 
  digitalWrite(LED_BUILTIN, HIGH); 

  // TIME_TO_SLEEP seconds delais
  delay(TIME_TO_SLEEP*1000); 

  // Display a message before deep sleep
  Serial.println("Go to deep sleep");

  // Turn off and keep off the built-in led during deep sleep
  digitalWrite(LED_BUILTIN, LOW);   
  gpio_hold_en(GPIO_NUM_2); 

  // Set deep sleep duration
  esp_sleep_enable_timer_wakeup(TIME_TO_SLEEP * uS_TO_S_FACTOR); 

  // Switch to deep sleep mode
  esp_deep_sleep_start();  
}

void loop() {}

Conclusion

If you're looking for the board with the lowest power consumption in deep sleep, of all the boards I've measured, the ESP32-S3-DevKitM-1 with the lowest power consumption of 26µW.

Download

See also


Last update : 12/26/2023