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

latest releases: v5.2.3, v5.3.1, v5.0.7...
7 months ago

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

ESP-IDF v5.0.6 is a bugfix update for ESP-IDF v5.0.

Obtaining v5.0.6

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.0.6 --recursive https://github.com/espressif/esp-idf.git esp-idf-v5.0.6
cd esp-idf-v5.0.6/

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

Download an archive with submodules included

Attached to this release is an esp-idf-v5.0.6.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.

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

Major changes

This is the list of changes since release v5.0.5:

Changelog

Bluetooth Low Energy (BLE)

Bluetooth Low Energy Controller

Added

  • Added support for selecting whether to use CSA#2 through the configured option on ESP32-C2. (d7149ac)
  • Supported enabling aux packet when extend advertising data length is zero on ESP32-C3 and ESP32-S3 (acf8c3e)

Fixed

  • Fixed BLE scan request IFS time error in coexistence scenarios on ESP32 (9be6e00)
  • Fixed interrupt timeout issue after enabling CONFIG_MAC_BB_PD on ESP32-C3 and ESP32-S3 (463514a)
  • Fixed BLE recorrect enable bug on ESP32-C3 and ESP32-S3 (3ce7f47)
  • Fixed BLE bb isr is enabled by default on ESP32-C3 and ESP32-S3 (3ce7f47)
  • Fixed assert when BLE disconnect due to instant passed on ESP32 (31194d3)
  • Fixed scan event timeout on ESP32 (31194d3)
  • Fixed random address setting when scanning on ESP32 (31194d3)
  • Fixed the crash issue of deinitializing controller when controller is busy on ESP32-C2 (d7149ac)
  • Fixed occasional enter sleep failure during scan and connection on ESP32-C2 (d7149ac)
  • Fixed the issue that fail to establish synchronization when coexists with connection on ESP32-C2 (f2221c0)
  • Fixed memory leak in ESP32-C3 and ESP32-S3 controller ( 86f06e0)
  • Fixed Bluetooth not waking up due to internal 136k oscillator clock drift on ESP32-C3 and ESP32-S3 (899bc1d)

ESP Bluedroid Host

Added

  • Added getter for BLE GATTC, GATTS and GAP calllback (acf8c3e)
  • Supported BLE sync create with reporting initially enabled(disabled) and Duplicate filtering initially enabled(disabled) (7c5cb10)

Changed

  • Optimized BLE heap allocation to fix malloc fail in malloc_internal_wrapper (#12574) (acf8c3e)
  • Optimized the BT_GATTS_ROBUST_CACHING_ENABLED configuration option by disabling the GATT robust caching feature to avoid compatibility issues with the Windows operating system (97bfd92)
  • Optimized BLE remove all bonded devices function (97bfd92)

Fixed

  • Fixed BLE dangling pointer issue in deletion of bonded devices (acf8c3e)
  • Fixed BLE advertising data check to avoid memory overflow (#12886) (7324e55)
  • Fixed BLE memory leak when gattc config off (bcc7d4e)
  • Fixed BLE Prepare Write Request timeout on Client Characteristic Configuration and Client Supported Features characteristic (35556a6)
  • Fixed Prepare Write out-of-bound memory write BLE for example (35556a6)
  • Fixed BLE GATTC app unregister no event (1a9fe8e)
  • Fixed the BLE advertising and scan status after stop/start cycles of the host (85a2945)
  • Fixed the connection cannot be established after several stop/start cycles of the host (85a2945)

ESP NimBLE Host

Added

  • Added support for VSC to clear legacy adv memory (9b28d12)

Fixed

  • Added NULL peer address check during connection initiation (dce8a53)
  • Added connection reattempt in case of Ext connect (37ccf9b)
  • Handled race condition for conn elements being set to NULL (91e1bf2)
  • Fixed address resolution during inquiry for host based privacy. (1da4afc)
  • Fixed authcomplete failure due to mismatch in the c1 value. (df12bdb)
  • Fixed the parameters in duplicate exception list vsc command (6161d77)
  • Added change to return success for API execution in "ble_sm_inject_io" (68a90a1)

ESP_BLE-MESH

Fixed

  • Reject node reset when provisioning link is active (15fa0a8)

Classic Bluetooth

Classic Bluetooth Bluedroid Host

Added

  • Added an API to set packet types for ACL-U traffic (871247d)

Changed

  • Increased default stack size of BTU task by 256 bytes. (7158b6f)

Fixed

  • Added dynamic memory allocation for HFP control blocks when HF_DYNAMIC_MEMORY is enabled (bdfbb2f)
  • Fixed the initial value of air mode for HFP AG (bdfbb2f)
  • Avoided crash of LoadProhibited during HFP AG deinitialization by releasing the control block in the event of BTA_AG_DISABLE_EVT (bdfbb2f)
  • Fixed event code definition for HF Client callback events (bdfbb2f)
  • Removed redundant operation during SCO link clean up in HF AG (bdfbb2f)
  • Disabled Sniff Subrating temporarily as it did not work well (bdfbb2f)
  • Fixed compilation error in the L2CAP and HF_AG module when compiler optimization level is optimize for performance (f41f731)
  • Fixed the panic when the mutex created is enclosed by macro SMP_INCLUDE, but locked by functions beyond that macro (bb2f5ae)

Classic Bluetooth Controller

Fixed

  • Fixed the issue in failing to establish two SCO connections on ESP32. (d6a7ff5)
  • Fixed parameter check for HCI_Setup_Synchronous_Connection command. (31194d3)
  • Fixed parameter check for HCI_Set_Connectionless_Peripheral_Broadcast command. (31194d3)

PHY

Fixed

  • Fixed BLE TX IFS time for ESP32 (8094c0f)
  • Fixed BLE 2M phy TX problem causing by phy_wifi_enable_set() on ESP32-C3 and ESP32-S3 (090dd40)
  • Fixed BLE CCA bug on ESP32-C2 (090dd40)
  • Fixed BLE and WIFI could not receive packets after entering light sleep for a long time on ESP32-C3, ESP32-S3 and ESP32-C2 (090dd40)

Wi-Fi

Added

  • Added new API to get one scan AP record (a1339e9)

Fixed

  • Solved the bug that Wi-Fi may not work for BBPLL not locked or not stable when open_rf & SW_RESET on ESP32-C2/ESP32-S3 (5a3a5b4)
  • Fixed the crash issue when clearing the scan AP list (a1339e9)
  • Added the missing header file to the wifi header files (dfdbf4a)

Wi-Fi MAC

Added

  • Provided interface to acquire/release extra Wi-Fi radio use. (50de63e)
  • Supported dump 802.11 ACK frame for CSI (6e4eb1a)

Fixed

  • Fixed the bug that station possible RX loss until the next station TX when Power save is enabled (50de63e)
  • Fixed PMK invalid lead same SSID WPA and WPA2 connect fail issue (f16621c)
  • Fixed the bug that when AP recv auth in SA query process will clear Power save queue by mistake which will cause memory leakage (d6933bd)
  • Fixed the issue that PSRAM enabled but failed to initialize (#11971) (6e4eb1a)

ESP-WIFI-MESH

Fixed

  • Fixed the crash issue when mesh deinit (d6933bd)
  • Fixed the bug that station can't found AP when the auth mode is WPA (a1339e9)
  • Fixed Wi-Fi mode error when mesh start after station has connected to router (a1339e9)

Wi-Fi Supplicant

Fixed

  • Fixed WDT when esp_supp_dpp_start_listen is called multiple times. (e313438)
  • Fixed a crash when esp_wifi_wps_disable is attempted when WPS process is ongoing (e313438)
  • Fixed memory leak in DPP deinit path (e313438)
  • Added a 1s timeout for DPP authentication process and runs DPP callback with reason code ESP_ERR_DPP_AUTH_TIMEOUT upon timeout (e313438)

Coexistence

Fixed

  • Fixed BLE scan not restarting after being interrupted by WIFI on ESP32. (50de63e)

Ethernet

Added

  • Added reception of multicast frames for KSZ8851SNL. (d45d83d)
  • Added option to read/write PHY registers via ioctl API (d45d83d)

Changed

  • Made IEEE 802.3 Ethernet PHY API public (d45d83d)

Fixed

  • Added multiple attempts when autodetecting PHY address. (d45d83d)
  • Added extra delay after setting PHY speed for LAN87xx (d45d83d)
  • Fixed loopback configuration for supported Ethernet chips (d45d83d)
  • Fixed issue when APLL CLK was not released when deleting internal EMAC's driver. (d45d83d)
  • Fixed issue when speed could not be configured for DM9051 and KSZ80xx. (d45d83d)

Peripheral Drivers

Changed

  • esp_hw_support: Updated API esp_hmac_disable_jtag() to disable JTAG access correctly. (4b13be6)
  • UART: Improved the UART RX ringbuffer space usage (#12386) (471db88)

Fixed

  • ADC: Fixed wrong results after ADC continuous mode stops and starts again on C6/H2/S3/S2/C2 (acf76e3)
  • ADC: Fixed adc continuous pytest error that only get first digit (2e482b8)
  • SPI: Corrected macro REG_SPI_BASE(i) for all targets (#12559) (#12562) (6dc4229)
  • spi_flash: Fixed bootloader build issue on esp32s3 (#12850) (0b38d37)
  • spi_lcd: Added flags to control the DC level in cmd/param/data phase separately (#12908) (69f1349)
  • Usb Host: Loosened requirements on bInterval for INTR and ISOC endpoints. Large bInterval values will now be internally rounded down to 32. (b823435)
  • Usb Host: Fixed string descriptor fetching for non-compliant USB devices (b823435)

System Hardware

Changed

  • MSPI: Improved timing tuning stability on ESP32-S3 (5a3a5b4)

Fixed

  • Cache: Fixed wrong configuration for DCache 0 size condition which leads to startup crash on ESP32S2 (01dabff)
  • Memory: Fixed DROM_HIGH_ADDR for esp32s3 used in memory utils APIs. (330fbdd)

Core System

Fixed

  • CPU: Fixed a bug in esp_cpu_set_watchpoint() where a watchpoint on a range of addresses was improperly set on RISC-V targets. (5e319c6)

Power Management

Fixed

  • Fixed a frequency switching issue on the ESP32 where the next systick timeout can be set too late, leading to a interrupt watchdog timeout. (decb0c2)

LWIP

Added

  • Added config options for TCP out-of-order sequence buffers (8991849)
  • Added support to enforce NA router forwarding (8991849)
  • IPv6: Added option to disabling NDP (Neighbor Discovery Protocol) to improve power efficiency if ND6 not needed (8991849)

Changed

  • Changed IP TTL value from 255 to 64. (2b16bd7)

Fixed

  • esp_netif: Fixed network interface list locking issue (#12261) (b9ee549)

OTA

Fixed

  • Avoid erasing an extra sector than the actual required size (#12460) (0797e1c)
  • Fixed preencrypted ota failure with pytest server and partial http enabled (bd3cd0c)
  • Fixed wrong debug print for ota upgrade size (60c6295)

HTTP Client

Fixed

  • Fixed reset errno value to 0 before call esp_transport_read. (d4693f8)
  • Fixed issue while reading in async mode. (0e19d1f)

mbedTLS

Changed

  • Updated config to use MBEDTLS_SSL_CID_TLS1_3_PAD_GRANULARITY for CID padding (#12177) (471ca6a)

Fixed

  • Fixed issue where enabling dynamic mbedtls shall cause heap corruption when server supports TLS renegotiation. (3af1b71)
  • Allocate AES interrupt during AES operation initialization regardless of input buffer size. (d198439)

ESP-TLS

Fixed

  • Fixed missing header files in esp_tls_errors.h header file (1045808)

Storage

Fixed

  • fatfsparse.py: Fixed compatibility with construct==2.10.70 by handling StringError when Unicode decoding error happens (ead2652)

Tools

Changed

Fixed

  • Fixed support of gdbgui on Unix systems with Python 3.11 (#12764) (907638e)
  • Opted for the recommended tool listed in tools.json rather than the supported one (4c5ba48)
  • Fixed path delimiter in gdbinit for Windows (#12683) (ed375f2)
  • Docker: Allowed to set git's safe.directory with IDF_GIT_SAFE_DIR environment variable (#12636) (585c252)

Build & Config

Removed

  • Removed non-existent directories from chip-specific CMakeLists.txt in esp_hw_support (#12700) (2988dbe)

External Libraries

Changed

  • Updated cJSON version to v1.7.17 (44593bf)

Examples

Fixed

  • Fixed encoding issue in esp_local_ctrl's proto script (209a036)
  • Protocols: Fixed potential memory leak/crash in when handling error condition (4272b44)

Don't miss a new esp-idf release

NewReleases is sending notifications on new releases.