ESP32-S3-DevKitM-1 real current consumption in deep sleep mode

Direct link to the video.

According to the datasheet of the ESP32 S3, the power consumption in deep sleep mode (RTC) is around 7µA. This page explains how we measure the real current consumption of the ESP32-S3-DevKitM-1 A comparison of the measurements of different ESP32 cards can be found on this page.

These measurements has been done with the following versions:

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

Picture of the ESP32 S3 DevKitM 1 from Expressif

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.

#include <stdio.h>
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "driver/gpio.h"
#include "esp_log.h"
#include "led_strip.h"
#include "sdkconfig.h"
#include "esp_system.h"
#include "esp_sleep.h"

#define TIME_TO_SLEEP 10  // Wake up / deep sleed duration
#define uS_TO_S_FACTOR 1000000  // Factor from microseconds to seconds

void app_main(void)
{
    // Display wake up message in the console
    printf("Wake up\n");

    // Wait TIME_TO_SLEEP seconds
    vTaskDelay(TIME_TO_SLEEP * 1000 / portTICK_PERIOD_MS);

    // Display a message in the consol before deep sleep
    printf("Go to deep sleep\n");

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

    // Go in deep sleep mode
    esp_deep_sleep_start();
}

Results

The board has been powered in 3.3V. That's important because there is a regulator that consumes power to convert from 5V to 3.3V.

Voltage Wake up Deep sleep
Current @3.3V 31.7mA 8µA
Power @3.3V 105mW 0.026mW

When powered in 3.3V, in normal mode, the current is about 31.7mA. In deep sleep mode the current is 8µA. As you can see, this consumption is closed from the 7µA specified in the documentation of the ESP32:

Datasheet of the ESP32 S3 | current in deep sleep mode

0 Ohms resistor

Note there a zero Ohms resistor on the PCB. To reach this power consumption, you have to remove the resitor:

0 Ohms resistor in the board schematics

Here is the resistor on the PCB:

0 Ohms resistor shunt on PCB

With the resistor

If the resistor is not remove, the consumptions are the followings:

Voltage Wake up Deep sleep
Courant @3.3V 29.8mA 0.93mA
Puissance @3.3V 98mW 3mW
Courant @5V 30.5mA 1.01mA
Puissance @5V 100mW 3.33mW

Here is a video of the current measurement:

Direct link to the video.

The main reason is probably the power led which is always on, because it is connected to the power supply:

Schematic of the power on led on ESP32 S3 DevKitM 1

Second point is the USB interface, based on CP2102N chip. The chip is powered by the output of the regulator. Even if USB is not connected, the interface is powered. The current can reach 1.3mA when held in reset. This also increases the global power consumption of the board.

Schematic of the USB interface on ESP32 S3 DevKitM 1

The voltage regulator is an SGM2212-3.3 DC-DC linear regulator (Low Quiescent Current, HighPSRR, Low Dropout Linear Regulator).

Schematic of the voltage regulator on ESP32 S3 DevKitM 1

Conclusion

In conclusion, if you are working on an application that requires a sleep mode with a strong constraint on power consumption or autonomy, it is a very good choice, one of the best I have tested. If power consumption is a key point of your project, check this page.

Download

See also


Last update : 12/26/2023