From 10ef3e4ac2767b68f746f0ebb995672076eee67d Mon Sep 17 00:00:00 2001 From: Damien George Date: Sun, 20 Jul 2025 00:19:08 +1000 Subject: [PATCH] esp32: Update to use ESP-IDF v5.4.2. This is a patch release of the IDF. Comparing with 5.4.1, firmware size is up by about 1.5k on ESP32 and 9k on ESP32-S3. But IRAM usage (of the IDF) is down by about 500 byte on ESP32 and DRAM usage is down by about 20k on ESP32 and 10k on ESP32-S3. Testing on ESP32, ESP32-S2, ESP32-S3 and ESP32-C3 shows no regressions, except in BLE MTU ordering (the MTU exchange event occuring before the connect event). Signed-off-by: Damien George --- ports/esp32/README.md | 8 ++++---- ports/esp32/tools/metrics_esp32.py | 2 +- tools/ci.sh | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/ports/esp32/README.md b/ports/esp32/README.md index d8b55e45f3..4adff66328 100644 --- a/ports/esp32/README.md +++ b/ports/esp32/README.md @@ -31,7 +31,7 @@ manage the ESP32 microcontroller, as well as a way to manage the required build environment and toolchains needed to build the firmware. The ESP-IDF changes quickly and MicroPython only supports certain versions. -Currently MicroPython supports v5.2, v5.2.2, v5.3, v5.4 and v5.4.1. +Currently MicroPython supports v5.2, v5.2.2, v5.3, v5.4, v5.4.1 and v5.4.2. To install the ESP-IDF the full instructions can be found at the [Espressif Getting Started guide](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/get-started/index.html#installation-step-by-step). @@ -49,10 +49,10 @@ The steps to take are summarised below. To check out a copy of the IDF use git clone: ```bash -$ git clone -b v5.4.1 --recursive https://github.com/espressif/esp-idf.git +$ git clone -b v5.4.2 --recursive https://github.com/espressif/esp-idf.git ``` -You can replace `v5.4.1` with any other supported version. +You can replace `v5.4.2` with any other supported version. (You don't need a full recursive clone; see the `ci_esp32_setup` function in `tools/ci.sh` in this repository for more detailed set-up commands.) @@ -61,7 +61,7 @@ MicroPython and update the submodules using: ```bash $ cd esp-idf -$ git checkout v5.4.1 +$ git checkout v5.4.2 $ git submodule update --init --recursive ``` diff --git a/ports/esp32/tools/metrics_esp32.py b/ports/esp32/tools/metrics_esp32.py index 9efaae63a9..70f049c3bd 100755 --- a/ports/esp32/tools/metrics_esp32.py +++ b/ports/esp32/tools/metrics_esp32.py @@ -37,7 +37,7 @@ import sys import subprocess from dataclasses import dataclass -IDF_VERS = ("v5.4.1",) +IDF_VERS = ("v5.4.2",) BUILDS = ( ("ESP32_GENERIC", ""), diff --git a/tools/ci.sh b/tools/ci.sh index 3e695c63a6..594bca8004 100755 --- a/tools/ci.sh +++ b/tools/ci.sh @@ -169,7 +169,7 @@ function ci_cc3200_build { # ports/esp32 # GitHub tag of ESP-IDF to use for CI (note: must be a tag or a branch) -IDF_VER=v5.4.1 +IDF_VER=v5.4.2 PYTHON=$(command -v python3 2> /dev/null) PYTHON_VER=$(${PYTHON:-python} --version | cut -d' ' -f2)