github espressif/esp-idf v5.5.1
ESP-IDF Release v5.5.1

3 days ago

Documentation for IDF v5.5.1 is available at https://docs.espressif.com/projects/esp-idf/en/v5.5.1/

ESP-IDF v5.5.1 is a bugfix release for ESP-IDF v5.5.

Obtaining v5.5.1

For full installation instructions, see the ESP-IDF Programming Guide.

The source files attached to this release will not work due to our use of git submodules. Use one of the following methods instead:

Using git

To get this release, use the following commands:

git clone -b v5.5.1 --recursive https://github.com/espressif/esp-idf.git esp-idf-v5.5.1
cd esp-idf-v5.5.1/

This is the recommended way of obtaining v5.5.1 of ESP-IDF.

Download an archive with submodules included

Attached to this release is an esp-idf-v5.5.1.zip archive. It includes .git directory and all the submodules, so can be used out of the box. This archive is provided for users who have connectivity issues preventing them from cloning from GitHub. To reduce the size of the archive, the .git directory doesn't include the history of commits older than one year. Users who need to use git checkout to access an older release of IDF will have to use git fetch first to download the remaining part of the history.

This archive can also be downloaded from Espressif's download server: https://dl.espressif.com/github_assets/espressif/esp-idf/releases/download/v5.5.1/esp-idf-v5.5.1.zip

Major changes

Major New Features

  • Support for ESP32-C5 is initially added.
  • Support for ESP32-C61 is initially added.
  • System Hardware: Auto adjust core voltage for different chip and different environment on ESP32-P4 (0291ab0)

Known Issues

  • For ESP32-C5, the fine timing measurement is not functional.
  • For ESP32-C61, in complex coexistence scenarios, Power-on Reset and RTC BOD SYS reset may occur with low probability.

Changelog

15.4

Thread

  • Fixed an issue with source address selection during network switching (e00fa1d)
  • Use the ML-EID address for self-hosted services if OMR address is not preferred (c4ac82f)
  • Introduced a new API to register the console based openthread CLI command (97e07a0)
  • Improved TREL message reception (97e07a0)
  • Handled MeshCoP mDNS service in state change callback (97e07a0)
  • Updated openthread submodule (b945928) (97e07a0)
  • Supported RCP over USB Serial JTAG interface (3e94cf1)

Application Utilities

ESP HTTP Client

  • Fixed issue during enabling digest auth in esp client (#17238) (a8721f7)
  • Updated the postman root certificate for the esp_http_client example. (2795fae)
  • Fixed often triggering of HTTP_EVENT_ERROR when asynchronous client is set (8d0b576)
  • Fixed memory leak in HTTP client when header parsing fails during fetch operation. (32a7b6a)

ESP HTTP Server

  • Fix the regression cause in httpd_cookie_key_value due to commit 4a47cf8 (#16202) (6dcd234)
  • Fixes multiple WebSocket frame parsing errors. The issue arises due to httpd_recv_with_opt returning partial data. (#15767, #15235) (cff19bf)

BLE

  • Added Bluetooth LE CTE connectionless AoA/AoD example. (3fa646e)
  • Removed support for ESP32C61 revision v0.2 (589c8b8)
  • Added support for ESP32C61 revision v1.0 (589c8b8)

Bluedroid

  • Fixed failure to disconnect when device record is cleared (032b6d8)
  • Fixed issue that caused failure in "BTM_GetSecurityFlags" (032b6d8)
  • Fixed incorrect update of resolving_list_avail_size (032b6d8)
  • Fixed issue where resolving list was not updated after the oldest device was removed (032b6d8)
  • Set sec_conn only on successful pairing in ble_hid_device_demo to avoid unexpected behavior (59af142)
  • Fixed build failure when some BLE features are disabled (c168ca3)

Controller

  • Fixed the issue where RSSI of connection is incorrect when latency is no zero on ESP32. (731f117)
  • Supported multiple connection optimization vendor HCI command on ESP32. (731f117)
  • Fixed priority setting for BLE events on ESP32. (731f117)
  • Fixed disconnection issue when coexisting with other BLE events on ESP32. (731f117)
  • Fixed crash due to bandwidth full when updating connection params on ESP32. (731f117)
  • Optimized check Access Address when receive connection request PDU on ESP32 (aa2c410)
  • Fixed an occasional sync lost issue on ESP32-C6, ESP32-H2 and ESP32-C5. (f7d3562)
  • Fixed an occasional assert issue in case of controller disable on ESP32-C2. (f7d3562)
  • Fixed an occasional assertion issue during sync on ESP32-C6, ESP32-H2 and ESP32-C5. (da257a9)
  • Fixed occasional disconnection issue when sending Data Length Update too quickly on ESP32-C6, ESP32-H2 and ESP32-C5. (da257a9)
  • Fixed BLE assert llc_llcp.c 487 on ESP32-C3 and ESP32-S3. (4bb1ad7)
  • Fixed BLE assert sch_prog.c 304 on ESP32-C3 and ESP32-S3. (4bb1ad7)
  • Fixed BLE anonymous extended advertising filtering. (4bb1ad7)
  • Fixed BLE TX issue when the event is aborted on ESP32-C3 and ESP32-S3. (4bb1ad7)

NimBLE

  • Update count parameter correctly by considering offset. (201b917)
  • Fix for attribute count mismatch between cached gatt db and actual db. (201b917)
  • Fixed compilation issue due to BLE_GATTS flag (160883a)
  • Clear GATT service entries counter upon GATT deinit (d74a625)
  • Add packet allocation retry for limited iteration (75e4f8d)
  • Provide a way to make blufi advertising customizable. [ https://github.com//issues/16234 ] (f9ce2bf)
  • Add timestamp information to HCI logging. (9f523ad)
  • Add ble_ancs example to build-test-rules configuration file. (941d987)
  • Automatically initiate security and retry service request if service request fails due to insufficient security. (76a7dd5)
  • Added option to require Encryption, Authentication, or Authorization to subscribe for Notifications or Indications. (76a7dd5)
  • Added parameter in peer_init() to allocate memory for included services (76a7dd5)
  • Add a missing instance of ble_hs_unlock() in a corner case. (76a7dd5)
  • Fix compilation issues when gatt caching is enabled in peripheral only mode (76a7dd5)

Bootloader

  • Supported SECONDARY Bootloader (589c8b8)

Build & Config

Classic Bluetooth

Bluedroid

  • Cleanups and improvement of safety in string handling in Bluetooth examples (148c36d)
  • Fixed HFP AG data callback cleared after profile re-initialization, if Bluedroid dynamic memory allocation is enabled (9c2e03b)
  • Added record_handle parameter in ESP_SDP_REMOVE_RECORD_COMP_EVT (5e1cb0f)
  • Fixed AVRCP build issue when Cover Art feature is disabled (#16155) (1d9e3df)

Controller

  • Fixed the incorrect unit of clk in CPB rx event on ESP32 (1e8b07e)
  • Fixed LMP legacy and secure authentication collision bugs on ESP32 (2045b12)

Core System

  • Fixed esp_ptr_executable and esp_ptr_byte_accessible to consider TCM memory (#15998, #15996) (c5383e2)
  • Added Kconfig options for placing system-related APIs into flash when using CONFIG_SPI_FLASH_AUTO_SUSPEND (b5944c8)

Console

  • Updated parsing of escape sequences in linenoise to read every character of the sequence seprately (#16762) (fddb9be)

Debugging

Apptrace

  • Updated SystemView trace processing to support SEGGER standard multicore format available in v3.60 or later. (aea3d88)

LWIP

DHCP

  • Fixed incorrect DHCP length calculation causes potential memory corruption for some longer options (ESP_NETIF_HOSTNAME_MAX_SIZE) (bcd56c7)

ESP Netif

Low Power Features

  • Fixed the issue where entering mac_pd lightsleep may get stuck when Wi-Fi/BT coexist on ESP32C5. (950ac4c)
  • Fixed a possible wakeup failure on esp32 if lightsleep/deepsleep was requested by Core1. (#16243) (4c38f2c)
  • Fixed esp_sleep_get_ext1_wakeup_status always return 0 on esp32p4. (05db51c)

MQTT

PHY

  • Added protection against double phy-disable operations by one modem source, which can result in hardware clock being switched off in coexistence scenario (0f07209)
  • Updated librtc.a to fix coexist problems on ESP32 (1191f4c)
  • Fixed phy cert_test example crash on ESP32-C3 and ESP32-S3 (#16888) (28eee20)

Peripheral Drivers

ADC

  • Fixed inaccurate ADC readings at high input voltages on ESP32-C5 (589c8b8)

Camera

  • Fixed DVP loss half frames error (4d19e6b)

DMA

  • Disallow burst sizes larger than 32 bytes when using DMA to access PSRAM on ESP32-C5 and ESP32-C61. (7b478f3)

LCD

  • Reserved the GPIO used by RGB LCD in driver initialization and disconnect them from the LCD signals when deinitialize the driver (6fd9c54)

PARL_IO

  • Supported to register buffer switched callback in loop transmission (589c8b8)

PCNT

  • Fixed race condition causing accum_value loss on counter overflow (782ffe1)

RMT

  • Fixed the state of a simple encoder when mem_full and done occur together.(#17244) (290a454)

SD_HOST

SDMMC

  • Fixed sdmmc initialization issue caused by CMD52 CRC error (79d842d)

SPI

  • Change ESP32P4 spi master default clock source to PLL to support up to 80M by default (8840072)
  • Fixed slave mode with dma RX data error on ESP32C5 (c2c0876)

SPI Flash

  • Added GD55D256 flash chip support (f997e42)
  • Fixed issue of escaping boundary check (536a807)
  • Updated 32-bit address (16MB or more) documentation to clarify experimental support for code execution and data access with CONFIG_BOOTLOADER_CACHE_32BIT_ADDR_QUAD_FLASH (cbf01d9)
  • Added XM25QH256D flash support for new 32MB flash module (589c8b8)
  • Make GD flash driver linked by default (589c8b8)

TWAI

  • Fixed build warnings in the cxx environment (#16999) (de8d133)
  • Fixed new driver can't receive frame when CONFIG_PM_DFS_INIT_AUTO enabled (6041ee3)

Touch Sensor

  • Fixed legacy touch sensor v1 can not read from ISR context issue (#17045) (6acf4e3)

USB

  • Changed USB CDC VFS read() to treat end-of-line characters as regular bytes, with no early return (73bdf0a)
  • Changed USB CDC VFS read() to return with available data when in blocking mode (73bdf0a)

USB Host

  • Add USB Host support for Full Speed peripheral on ESP32-P4 (31fd483)

USB Serial JTAG

  • Changed USB Serial JTAG VFS read() to treat end-of-line characters as regular bytes, with no early return (73bdf0a)

Power Management

  • Optimized the power consumption of ESP32-C5 in active state (589c8b8)

Security

  • Added support for RSA decryption using the DS peripheral. Users can now leverage the DS peripheral with secure cert manager to securely store and use private keys for hardware-accelerated RSA decryption. (570ecdc)

MbedTLS

  • Fix build failure when using non-AES ciphers GCM operation fallback with CONFIG_MBEDTLS_GCM_C being disabled. (96836ab)
  • Update mbedTLS version to 3.6.4. (5c02c6f)

Storage

LittleFS

  • Default LittleFS version in examples bumped to 1.20.0 (ec5d4c5)

System Hardware

  • Fix assert when changing 8MD256 RTC slow clock source during OTA on esp32/esp32s2/esp32s3. (92a09ce)
  • Auto adjust core voltage for different chip and different environment on ESP32-P4 (0291ab0)

PSRAM

  • Fixed PSRAM chip's lack of cross-page transaction support issue on ESP32C5 / C61 (0ef3fb4)
  • Supported using fallback driver pattern when PSRAM ID is not matched on ESP32-S3, P4, C5, C61 (031ed78)

TCP Transport

  • Added HTTP redirect (301 - Moved Permanently) to transport websocket. (8c21713)

Toolchain

Tools

  • Added requirements file for the new IDE feature of installing Python packages for IDE support (1f132a7)
  • Normalized detected shell name to lowercase on Windows (#16868) (c8251d3)
  • Fixed serial port mapping in idf.py qemu if additional serial ports are added using --qemu-extra-args (#15974) (a49402e)
  • Updated ccache version to 4.11.2 (espressif/idf-installer#305) (23aab0f)
  • Fixed the idf.py create-project command to work with a read-only ESP-IDF directory (#16021, #15964) (5ec370b)
  • Fixed idf_tools.py install tools@version command to be able to install specific tool versions. (c25d781)
  • Added Base64 encoding for temporary directory names when usernames contain special characters. (#16229) (a6b0f61)
  • Explicitly disabled the pip 'user' option when installing ESP-IDF Python virtual environment. (#16189) (415aae1)

WI-FI

  • fix bandwidth check not correct (6d012bb)
  • improve iperf performance of esp32c61 (6d012bb)
  • Fixed ESP-Touch v2 fail on 5G router, update version to v3.0.3 (250f248)
  • fix inactive time reset when wifi disconnect (8f36e23)
  • fix cache access error after twt setup (8f36e23)
  • fix tx error 0xa1 (8f36e23)
  • Enabled IPv6 support via LWIP_IPV6 when WiFi Aware(NAN) is enabled (9c4aa44)
  • Fixed scan trigger failure after roam event (307c3f0)
  • Removed support for the ESP32C61 revision v0.2. (589c8b8)
  • Added support for the ESP32C61 revision v1.0. (589c8b8)

MAC

  • Fixed scan done event miss issue. (6d012bb)
  • Support 11ax rate for cert test. (ceb11cd)
  • Added GCMP-128 cipher support for SoftAP mode. GCMP-256 SoftAP support was previously added as part of SAE Extended Key handling. (250f248)
  • Fixed open mode receive fragment packet fail issue. (8f36e23)
  • Add FTM Support for ESP32C61. (8f36e23)

Supplicant

  • Resolved WPS crash triggered by repeated EAPOL-Start during handshake. (14ae516)
  • Fixed pmksa expiration caused by sntp time synchronization issue. (8f36e23)
  • Ensured disconnection with previously connected AP when actually starting the WPS instead of initiating WPS. (4eb565d)
  • Added support to limit EAP method supported by device based on user configuration (95e3ea8)

Don't miss a new esp-idf release

NewReleases is sending notifications on new releases.