Skip to content

Releases: espressif/esp-idf

ESP-IDF Pre-release v5.3-rc1

10 Jul 10:37
v5.3-rc1
Compare
Choose a tag to compare
Pre-release

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

ESP-IDF v5.3-rc1 is a preview release for ESP-IDF v5.3.

Obtaining v5.3-rc1

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

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

Download an archive with submodules included

Attached to this release is an esp-idf-v5.3-rc1.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.3-rc1/esp-idf-v5.3-rc1.zip

Major changes

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

Major New Features

Support for New SoCs

ESP32-P4
  • Low Power System
    • Low Power Core (RISC-V)
    • Low-power GPIO
    • Low-power I2C Master
    • Low-power SPI
    • Low-power Timer
    • Low-power UART
    • Low-power Watchdog Timer
  • Peripherals
    • ADC
      • ADC continuous mode driver
      • ADC oneshot mode driver
    • DMA (Direct Memory Access)
      • 2DDMA
      • DMA channel allocator
      • GDMA
        • CRC Calculator
      • GDMA2
    • Ethernet driver
      • SPI Ethernet driver
      • internal MAC driver
    • Event Task Matrix
    • GPIO driver
      • Analog Comparator
      • GPIO ETM
      • Glitch Filter
      • RTC IO (LP IO) driver
    • GPIO sigma delta driver
    • GPSPI
      • SPI Master driver
      • SPI Slave HD driver
      • SPI Slave driver
    • GPTimer driver
    • H264 Encoder
    • I2C
      • I2C master driver
      • I2C slave driver
    • I2S
      • I2S driver
        • I2S PDM rx mode
        • I2S PDM tx mode
        • I2S STD mode
        • I2S TDM mode
      • I2S legacy driver
    • JPEG
      • JPEG Decoder Driver
      • JPEG Encoder Driver
    • LCD driver
      • MIPI DSI
    • LEDC driver
      • Gamma Curve Generation
    • MCPWM driver
    • MIPI CSI
    • PCNT driver
    • PSRAM
      • PSRAM Device Driver
      • XIP PSRAM
    • Parallel IO
      • Parallel IO RX Driver
      • Parallel IO TX Driver
    • Pixel Processing Accelorator Driver
    • RMT driver
    • SD/SDIO/MMC driver
      • SDMMC Host driver
      • SDSPI Host driver
    • SPI Flash driver
    • Systimer driver
      • Esptimer implementation over systimer
      • OS tick port over systimer
    • Temperature Sensor driver
    • Touch Sensor driver
    • UART
      • Support Low Power UART instance
      • UART FIFO mode driver
    • USB OTG
      • USB Device (TinyUSB) driver
        • USB 2.0 Device Support
      • USB Host driver
        • USB 2.0 Host Support
    • memory copy by DMA
  • Power management
    • Auto Light Sleep
    • Deep Sleep
    • Dynamic Frequency Switch
    • Light Sleep
  • Security Features
    • AES accelerator
    • Digital Signature driver
    • ECC accelerator
    • Flash encryption
    • HMAC driver
    • RNG
    • RSA hardware accelerator driver
    • SHA accelerator
    • Secure boot
  • System Features
    • Bootloader Support
    • Cache
      • Cache Driver
    • Console
    • Cxx Component
    • ESP Event
    • ESP ROM
    • ESP Ringbuffer
    • ESP Timer
    • Efuse controller driver
    • Floating Point Unit
    • FreeRTOS
    • MMU
    • MSPI
      • MSPI tuning (Flash & PSRAM DDR and/or over 80 MHz)
      • SPI Flash auto suspend
    • POSIX Threads
    • Panic Handling Features
      • Core Dump
      • Debug Watchpoint
      • GDB Stub
      • Panic Handler
      • Stack Guard
    • Ram App
    • TCM
    • Watch Dog Timers
    • newlib
  • Wireless Expansion
    • Bluedroid Host
    • NimBLE Host
    • ESP8689 SDIO/SPI driver
    • Coexistence

Other Features

  • Supported external Wi-Fi connections for ESP32-P4 and other espressif chips. (3f486c4)
  • Added support for merging hosted Wi-Fi solution in esp_wifi component. (2a6b3df)

Breaking Changes

  • Removed CONFIG_IEEE802154_RECEIVE_DONE_HANDLER option, now the code using the 802.15.4 driver directly must call ieee802154_receive_handle_done after receiving the frame (b056ac7)

Known Issues

  • For ESP32-P4, under the dual-core PD_TOP sleep scenario, if the sleep request is rejected, it may lead to a system deadlock triggering the watchdog.
  • For ESP32-P4, RTC peripheral power domain cannot be powered down, resulting in ~20uA more power consumption.
  • For ESP32-P4, there is a probability that the watchdog will be triggered due to the mpll being disabled and the L2 Cache not being able to write back when the PSRAM is enabled to sleep.
  • For ESP32-P4, GPIO wake-up function and EXT1 wake-up function of GPIO8~15 are not available during deepsleep.

Changelog

802.15.4

802.15.4 MAC

Added

  • Added the pending tx while rx feature (d499ba4)
  • Added the feature of received done handler (f3039dd)
  • Added ieee802154 examples (bae3c28)
  • Added packets statistic of IEEE802.15.4 (b516012)
  • Added 802.15.4 coex break notification (fdf5783)
  • Supported IEEE802.15.4 MAC deinit (45f95e3)

Fixed

  • Fixed pending tx will be delayed issue (ac76d44)
  • Fixed the issue of not receiving packets when RSSI is positive in ESP32-H2 (0a1f378)
  • Fixed ieee802154 include header file issue and unused value issue (d022682)
  • Ignored bit8 for the frame length (6e2950d)
  • Updated to log the "buffer full" message in debug mode only (6e2950d)

Removed

  • Removed CONFIG_IEEE802154_RECEIVE_DONE_HANDLER option, now the code using the 802.15.4 driver directly must call ieee802154_receive_handle_done after receiving the frame (b056ac7)

Thread

Added

  • Added deep sleep support for SED (a66055f)
  • Added netif check when calling udp api (ff89cf5)
  • Added max csmabackoffs numbers for transmission via spinel (8edaa94)
  • Added cli support in openthread sleep example (c97077c)
  • Added state indicator in Thread examples (1e01517)
  • Added configure option for openthread address query (f9f32d4)
  • Added ESP Radio spinel for external protocol stack (3b44a59)
  • Added ESP OpenThread vendor commands support ( b44a596)
  • Supported rcp re-initialization (58992e2)
  • Supported the common console command in OT CLI (65c838b)
  • Supported openthread radio caps rx on when idle (e358506)
  • Supported setting netif_idx of udp pcb to no_index when binding UDP PCB to netif (d7b9a3b)
  • Enabled uart ISR in IRAM for UART RCP process (ac76d44)
  • Actively set raw pcb ttl value to 255 for icmpv6 message of border router (93d68c2)
  • Supported openthread ephemeral key feature (6e2950d)
  • Added a method to set instance name of meshcop(e) mdns service (6e2950d)

Changed

  • Updated OpenThread upstream to 41ef807 (58992e2)
  • Updated SRP server update response error code (58992e2)
  • Enabled RCP uart configuration for BR by default (d183000)
  • Disabled the rx on when idle in coex scenario (ac76d44)
  • Released openthread task switching lock before calling lwip API in openthread udp (6e2950d)
  • Optimized the PIO logic in multiple BRs scenario (6e2950d)

Fixed

  • Fixed checking the lifetime value before calling sys_timeout (58992e2)
  • Fixed filter the zero-length prefix when adding router table (58992e2)
  • Moved router entry pointer in timeout handler (58992e2)
  • Added parsing when txt entry key pointer is NULL (58992e2)
  • Fixed eventfd missing issue when SPI interface is enabled (feb62db)
  • Fixed the race condition in rx buffer count operation (54e7b73)
  • Fixed openthread alarm timer calculation remaining_us overflow issue (cda92ca)
  • Fixed RCP handle timeout crashing issue (ac76d44)
  • Fixed frequent tx timeout && RCP recover issue when using SPI radio (f0d10c8)
  • Fixed ot netif destroy netif order issue (eaf4fb9)
  • Fixed a deadlock risk by releasing ot task lock before tcpip_callback (6e2950d)

Removed

  • Removed the range for some configurations (6e2950d)
  • Removed the empty task for openthread tasklets (6e2950d)

Zigbee

Changed

  • Updated Zigbee examples to align with esp-zigbee-lib v1.0.9 (e81932d)

Bluetooth Low Energy (BLE)

Bluetooth Low Energy Controller

Added

  • Added BLE scan backoff config option in menuconfig on ESP32 (e3839a3)
  • Added API to get low power clock source on ESP32-C3 and ESP32-S3 (6b453b8)
  • Added config for channel assessment and ping procedure on ESP32-C3 and ESP32-S3 (f36a16b)
  • Added CCA related config option on ESP32-C6, ESP32-H2 and ESP32-C2 (28f68a0)
  • Added support for selecting whether to use CSA#2 through the configured option on ESP32-C2, ESP32-C6 and ESP32-H2 (083fe84)
  • Supported enabling AUX packet when extended advertising data length is zero on ESP32-C3 and ESP32-S3 (ed025da)
  • Supported ESP32-C2 light sleep using the external 32.768 kHz oscillator at pin0 as a slow clock source. (28f68a0)
  • Supported initiating a disconnection again if the disconnection procedure is already ongoing on ESP32 (e3839a3)
  • Supported clearing BLE legacy advertising on ESP32-C3 and ESP32-S3 (ca33198)
  • Supported clearing BLE legacy advertising on ESP32 (dc66da9)

Changed

  • Expanded the scan period to the maximum of 0xffff on ESP32-C6, ESP32-H2, and ESP32-C2 (28f68a0)
  • Use embedded assembly to get access to DPORT registers on ESP32 (7fcac31)
  • Modify mesh proxy solic uuid to 0x18590303 on ESP32 (dc66da9)
  • Reduced the usage of flash and RAM when only legacy adv and periph...
Read more

ESP-IDF Release v4.4.8

28 Jun 08:28
v4.4.8
Compare
Choose a tag to compare

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

ESP-IDF v4.4.8 is a bugfix update for ESP-IDF v4.4 and also the last bug fix release of ESP-IDF v4.4. According to ESP-IDF Support Period Policy, ESP-IDF v4.4 release branch reached end-of-life in July 2024. With EOL, new features, bug fixes, and security fixes will no longer be supported on this branch. Customers who are currently using ESP-IDF v4.4 release branch are encouraged to upgrade their projects to more recent ESP-IDF releases, such as ESP-IDF v5.x.

Obtaining v4.4.8

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

This is the recommended way of obtaining v4.4.8 of ESP-IDF.

Download an archive with submodules included

Attached to this release is an esp-idf-v4.4.8.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/v4.4.8/esp-idf-v4.4.8.zip

Changelog

This is the list of changes since release v4.4.7.

Bluetooth Low Energy (BLE)

Bluetooth Low Energy Controller

Added

  • Added config for channel assessment and ping procedure on ESP32-C3 and ESP32-S3 ( a4eb486)
  • Added API to get low power clock source on ESP32C3 and ESP32S3 ( 7731658)
  • Added BLE scan backoff config in menuconfig on ESP32 ( a4eb486)
  • Support sending disconnection command again if the disconnection procedure is on-going on ESP32 ( a4eb486)

Changed

  • Controller: Optimized BLE notify and write throughput performance on ESP32. ( 7c2922a)

Fixed

  • Fixed assert when starting advertising due to preemption on ESP32-C3 and ESP32-S3. ( 79e71e0)
  • Fixed RPA generation after each reboot on ESP32-C3 and ESP32-S3. ( 79e71e0)
  • Fixed RPA renew timer start and stop on ESP32-C3 and ESP32-S3. ( 79e71e0)
  • Fixed BLE scan backoff on ESP32 ( 4a69a88)
  • Fixed BLE coex assert on ESP32 ( c1f02f6)
  • Fixed BLE DTM status and TX count error on ESP32 ( c1f02f6)
  • Use embedded assembly to get access to DPORT registers on ESP32 ( a4eb486)
  • Fixed BLE scan assert on ESP32 (#8532) ( a4eb486)
  • Fixed BLE assert when receiving packet on ESP32 ( a4eb486)
  • Fixed extend uncoded and coded scan scheduling on ESP32-C3 and ESP32-S3 ( a4eb486)
  • Clear random address for extended advertising on ESP32-C3 and ESP32-S3 ( a4eb486)
  • Fixed periodic advertising data setting with zero length on ESP32-C3 and ESP32-S3 ( a4eb486)
  • Fixed HCI command status event send when LLCP busy on ESP32 ( 5bd00ec)
  • Fixed HCI command status event sending for disconnection command on ESP32 ( 5bd00ec)
  • Fixed LE transmitter test command parameters check error on ESP32 ( 5bd00ec)
  • Fixed memory leak issue when BLE SCAN and other BLE events coexist on ESP32. (#13747) ( 7c2922a)
  • Fixed BLE connection timeout issue after using DTM on ESP32. ( 7c2922a)
  • Fixed assert issue caused by DPORT access on ESP32. ( 7c2922a)

ESP Bluedroid Host

Added

  • Added support for setting BLE privacy mode for peer devices. ( d84b40d)
  • Supported adding BLE device to resolving list ( 29221d1)
  • Supported creating BLE static random address and NRPA ( 29221d1)
  • Supported setting resolvable provate address timeout by api ( 29221d1)
  • Added bluerooth hci layer data stream record ( 5c8b63c)
  • Added APIs for BLE direct test mode ( 5c8b63c)
  • Added api to send vendor hci command ( 5c8b63c)

Changed

  • Optimized BLE SPP example for improved compatibility ( 29221d1)
  • Optimized BLE documentation comments to comply with Doxygen syntax ( 29221d1)
  • Optimized the BLE documentation ( 29221d1)
  • Updated maximum BLE reconnection attempts configuration ( 8247e0b)

Fixed

  • Example: Use correct struct type in discover service complete event ( 5bd00ec)
  • Fixed BLE GATT max length of an attribute value ( 29221d1)
  • Fixed BLE appearance category ranges (#13626) ( d1f549f)
  • Fixed ADV do not restart due to disconnection reason 0x3e ( 5c8b63c)
  • Fixed crash when calculating GATTS database hash ( 5bd00ec)
  • Fixed "report" typo in esp_ble_gap_ext_adv_reprot_t ( 5bd00ec)
  • Fixed BLE crash when repeatedly iniitialize and deinitialize host ( c4ce15b)
  • Fixed BLE periodic advertising create sync parameter check ( c4ce15b)
  • Bluedroid: Fixed the issue where the BLE data length change event was not triggered when the packet length was modified on the other connected device. ( d1c8a1d)

ESP NimBLE Host

Added

  • Added ble_host_rpa_enabled flag for address resoultion for esp32 ( cfb86ec)
  • Added API to get resolve ADV data ( 799e503)
  • Added change to start readvertising for disconnect with 0x3E code in slave mode ( 1424b2b)
  • Added support for data length change event ( 74767e9)
  • Created separate API to only extract cb info ( 3168c79)
  • Added APIs to handle vs HCI commands and events ( ff9db0d)
  • Added support for deleting the oldest bonded device across reboot ( 718cdd6)
  • Added the check to prevent address resolution in case of identity addr for esp32 ( 407795d)
  • Expose API to set RPA timeout in stack. ( 370636b)

Changed

  • Changed 'move_count' to uint8_t type to fix compilation issue in nimble for -O2 flag. ( 7a00499)
  • Increased range of reattempt connection count ( 29f9259)
  • Improved find conn by ble_addr_t function ( fdfe99c)
  • Updated help sections for BLE_RPA_TIMEOUT config. ( c93a15c)

Fixed

  • Fixed compilation issues when CCCD is set to 0 ( 96db015)
  • Fixed for CVE-2024-24746 vulnerability ( caa1e63)
  • Set correct peer_addr during reattempt connection ( fadb408)
  • Simplify reconnection code ( b65ac34)
  • Handled missing free in ble spp example ( 3193203)
  • Fixed dangling pointer error during compilation (#12491) ( 6f4ff9b)
  • Fixed type in blehr/README (#13034) ( f2d72fe)
  • Authorize or deauthorize a BLE device for a connection ( 0eb7ad2)
  • Fixed memory leak during reattempt adv data usage ( fd916b3)
  • Copy data correctly into reattempt buffer ( fd916b3)
  • Explicitly NULL assign adv data pointer after free. ( fd916b3)
  • Reserve space for one extra ext adv packet ( fd916b3)

BluFi

Fixed

  • Fixed BluFi module link error(C++ hybrid compilation) ( 5bd00ec)

ESP-BLE-MESH

Fixed

  • Fixed potential deadlock during mesh GATT initialization when using Bluedroid Host ( a94dcb9)
  • Fixed the struct initialization to meet C++ requirements for BLE Mesh stack ( 29efc96)
  • Fixed the struct initialization to meet C++ requirements for BLE Mesh examples ( 29efc96)

Classic Bluetooth

Classic Bluetooth Bluedroid Host

Added

  • Added description of use limitations of security masks in SPP API document ( 6cb955e)

Changed

  • Unify the conversion of error code between HCI status and esp_bt_status_t constants( e1f8314)

Fixed

  • Fixed the HID Host inner error state caused by repeat connection of the same device ( 22dd4ba)
  • Fixed inconsistency of connection initiator state for HID Host open event ( 22dd4ba)
  • Fixed the HID Device inner error state caused by the failed connection ( 22dd4ba)
  • Allocate memory for control block of HFP Audio Gateway in its initialization when dynamic memory is enabled ( be2fba6)
  • Fixed SPP crash due to the connection not being disconnected before esp_spp_deinit was called ( e83ed8b)

Classic Bluetooth Controller

Fixed

  • Register coexist functions into Bluetooth controller on ESP32-C3/ESP32-S3 ( a4eb486)
  • Fixed assert 1024 issue when Classic Blueooth TX and Wifi coexist on ESP32 ( 4a69a88)
  • Fixed the error in parsing packet_type argument for HCI_Enhanced_Setup_Synchronous_Connection, which causes acception of eSCO EDR packet types when they are configured not to be used ( 4a69a88)
  • Fixed the incorrect timing in reporting HCI_Link_Key_Type_Changed event on ESP32 ( efcbfbe)
  • Fixed the incorrect initialization vector during resuming encryption on ESP32 ( efcbfbe)
  • Fixed incorrect link key returned from HCI command HCI_READ_STORED_LINK_KEY on ESP32 ( efcbfbe)
  • Fixed crash issue when doing Bluetooth deinit in coexistence scenario on ESP32. ( dc35452)
  • Fixed invalid transmission of LMP_MAX_POWER PDU in case that peer device is expected peer to increase TX power to maximum on ESP32. ( dc35452)
  • Fixed incorrect link key returned from HCI_rd_stored_link_key command on ESP32 ( 2146569)
  • Fixed the assert triggered during APB TX on ESP32 ( 2146569)
  • Fixed role switch LMP collision bug on ESP32 ( 2146569)

Bluetooth Common

Added

  • Added an option to make alarm number configurable ( 5510aab)
  • Fixed missing linker generated symbols in using esp_bt_mem_release when ESP_ALLOW_BSS_SEG_EXTERNAL_MEMORY is enabled (#10427, #11377) ( 9160abc)

Bluedroid

Fixed

  • Fixed controller using null pointer after bluedroid deinit ( 0f65165)

Controller

Added

...

Read more

ESP-IDF Pre-release v5.3-beta2

07 Jun 09:28
Compare
Choose a tag to compare
Pre-release

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

ESP-IDF v5.3-beta2 is a preview release for ESP-IDF v5.3.

Obtaining v5.3-beta2

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

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

Download an archive with submodules included

Attached to this release is an esp-idf-v5.3-beta2.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.3-beta2/esp-idf-v5.3-beta2.zip

Major changes

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

Major New Features

Support for New SoCs

ESP32-P4
  • Low Power System
    • Low Power Core (RISC-V)
    • Low-power GPIO
    • Low-power I2C Master
    • Low-power Timer
    • Low-power UART
    • Low-power Watchdog Timer
  • Peripherals
    • DMA (Direct Memory Access)
      • 2DDMA
      • DMA channel allocator
      • GDMA
        • CRC Calculator
      • GDMA2
    • Ethernet driver
      • SPI Ethernet driver
      • internal MAC driver
    • Event Task Matrix
    • GPIO driver
      • Analog Comparator
      • GPIO ETM
      • Glitch Filter
      • RTC IO (LP IO) driver
    • GPIO sigma delta driver
    • GPSPI
      • SPI Master driver
      • SPI Slave HD driver
      • SPI Slave driver
    • GPTimer driver
    • I2C
      • I2C master driver
      • I2C slave driver
    • I2S
      • I2S driver
        • I2S PDM rx mode
        • I2S PDM tx mode
        • I2S STD mode
        • I2S TDM mode
      • I2S legacy driver
    • JPEG
      • JPEG Decoder Driver
      • JPEG Encoder Driver
    • LCD driver
      • MIPI DSI
    • LEDC driver
      • Gamma Curve Generation
    • MCPWM driver
    • MIPI CSI
    • PCNT driver
    • PSRAM
      • PSRAM Device Driver
    • Parallel IO
      • Parallel IO TX Driver
    • RMT driver
    • SD/SDIO/MMC driver
      • SDMMC Host driver
      • SDSPI Host driver
    • SPI Flash driver
    • Systimer driver
      • Esptimer implementation over systimer
      • OS tick port over systimer
    • Temperature Sensor driver
    • UART
      • Support Low Power UART instance
      • UART FIFO mode driver
    • USB OTG
      • USB Device (TinyUSB) driver
        • USB 2.0 Device Support
      • USB Host driver
        • USB 2.0 Host Support
    • memory copy by DMA
  • Power management
    • Auto Light Sleep
    • Deep Sleep
    • Dynamic Frequency Switch
    • Light Sleep
  • Security Features
    • AES accelerator
    • Digital Signature driver
    • ECC accelerator
    • ECDSA driver
    • Flash encryption
    • HMAC driver
    • HUK Generator
    • Key Manager
    • RNG
    • RSA hardware accelerator driver
    • SHA accelerator
    • Secure boot
  • System Features
    • Bootloader Support
    • Cache
      • Cache Driver
    • Console
    • Cxx Component
    • ESP Event
    • ESP ROM
    • ESP Ringbuffer
    • ESP Timer
    • Efuse controller driver
    • Floating Point Unit
    • FreeRTOS
    • MMU
    • MSPI
      • MSPI tuning (Flash & PSRAM DDR and/or over 80 MHz)
    • POSIX Threads
    • Panic Handling Features
      • Core Dump
      • Debug Watchpoint
      • Panic Handler
      • Stack Guard
    • Ram App
    • TCM
    • Watch Dog Timers
    • newlib
  • Wireless Expansion
    • Bluedroid Host

Other Features

  • Supported external Wi-Fi connections for ESP32-P4 and other espressif chips. ( 3f486c4)
  • Added support for merging hosted Wi-Fi solution in esp_wifi component. ( 2a6b3df)

Breaking Changes

  • Removed CONFIG_IEEE802154_RECEIVE_DONE_HANDLER option, now the code using the 802.15.4 driver directly must call ieee802154_receive_handle_done after receiving the frame ( b056ac7)

Changelog

802.15.4

802.15.4 MAC

Added

  • Added the pending tx while rx feature ( d499ba4)
  • Added the feature of received done handler ( f3039dd)
  • Added ieee802154 examples ( bae3c28)
  • Added packets statistic of IEEE802.15.4 ( b516012)
  • Added 802.15.4 coex break notification ( fdf5783)
  • Supported IEEE802.15.4 MAC deinit ( 45f95e3)

Fixed

  • Fixed pending tx will be delayed issue ( ac76d44)
  • Fixed the issue of not receiving packets when RSSI is positive in ESP32-H2 ( 0a1f378)
  • Fixed ieee802154 include header file issue and unused value issue ( d022682)

Removed

  • Removed CONFIG_IEEE802154_RECEIVE_DONE_HANDLER option, now the code using the 802.15.4 driver directly must call ieee802154_receive_handle_done after receiving the frame ( b056ac7)

Thread

Added

  • Added deep sleep support for SED ( a66055f)
  • Added netif check when calling udp api ( ff89cf5)
  • Added max csmabackoffs numbers for transmission via spinel ( 8edaa94)
  • Added cli support in openthread sleep example ( c97077c)
  • Added state indicator in Thread examples ( 1e01517)
  • Added configure option for openthread address query ( f9f32d4)
  • Added ESP Radio spinel for external protocol stack ( 3b44a59)
  • Added ESP OpenThread vendor commands support ( 3b44a59)
  • Supported rcp re-initialization ( 58992e2)
  • Supported the common console command in OT CLI ( 65c838b)
  • Supported openthread radio caps rx on when idle ( e358506)
  • Supported setting netif_idx of udp pcb to no_index when binding UDP PCB to netif ( d7b9a3b)
  • Enabled uart ISR in IRAM for UART RCP process ( ac76d44)
  • Actively set raw pcb ttl value to 255 for icmpv6 message of border router ( 93d68c2)

Changed

  • Updated OpenThread upstream to 41ef807 ( 58992e2)
  • Updated SRP server update response error code ( 58992e2)
  • Enabled RCP uart configuration for BR by default ( d183000)
  • Disabled the rx on when idle in coex scenario ( ac76d44)

Fixed

  • Fixed checking the lifetime value before calling sys_timeout ( 58992e2)
  • Fixed filter the zero-length prefix when adding router table ( 58992e2)
  • Moved router entry pointer in timeout handler ( 58992e2)
  • Added parsing when txt entry key pointer is NULL ( 58992e2)
  • Fixed eventfd missing issue when SPI interface is enabled ( feb62db)
  • Fixed the race condition in rx buffer count operation ( 54e7b73)
  • Fixed openthread alarm timer calculation remaining_us overflow issue ( cda92ca)
  • Fixed RCP handle timeout crashing issue ( ac76d44)
  • Fixed frequent tx timeout && RCP recover issue when using SPI radio ( f0d10c8)
  • Fixed ot netif destroy netif order issue ( eaf4fb9)

Zigbee

Changed

  • Updated Zigbee examples to align with esp-zigbee-lib v1.0.9 ( e81932d)

Bluetooth Low Energy (BLE)

Bluetooth Low Energy Controller

Added

  • Added BLE scan backoff config option in menuconfig on ESP32 ( e3839a3)
  • Added API to get low power clock source on ESP32-C3 and ESP32-S3 ( 6b453b8)
  • Added config for channel assessment and ping procedure on ESP32-C3 and ESP32-S3 ( f36a16b)
  • Added CCA related config option on ESP32C6, ESP32H2 and ESP32C2 ( 28f68a0)
  • Added support for selecting whether to use CSA#2 through the configured option on ESP32-C2, ESP32-C6 and ESP32-H2. ( 083fe84)
  • Supported enable aux packet when extend advertising data length is zero on ESP32-C3 and ESP32-S3 ( ed025da)
  • Supported ESP32-C2 light sleep using external 32.768 kHz oscillator at pin0 as slow clock source. ( 28f68a0)
  • Supported disconnection again if the disconnection procedure is on-going on ESP32 ( e3839a3)
  • Supported clear BLE legacy advertising on ESP32-C3 and ESP32-S3 ( ca33198)
  • Supported clear BLE legacy advertising on ESP32. ( dc66da9)

Changed

  • Expanded the scan period to the maximum of 0xffff on ESP32-C6, ESP32-H2, and ESP32-C2. ( 28f68a0)
  • Use embedded assembly to get access to DPORT registers on ESP32 ( 7fcac31)
  • Modify mesh proxy solic uuid to 0x18590303 on ESP32 ( dc66da9)
  • Reduced the usage of flash and RAM when only legacy adv and peripheral are enabled on ESP32-C2. ( 148aa32)

Fixed

  • Example: Fixed UART HCI when flow control is off on ESP32C3 and ESP32S3. ( 4c190c5)
  • Fixed BLE coex assert on ESP32 ( 30fce03)
  • Fixed BLE DTM status error and TX count error on ESP32 ( 30fce03)
  • Fixed an occasional assertion issue during slave connection in coexistence scenarios on ESP32C2. ( 2cdd56e)
  • Fixed the compilation issue when use nimble host only on ESP32-H2,ESP32-C6 and ESP32-C2. ( 8ea943e)
  • Fixed BLE scan assert on ESP32(#8532) ( e3839a3)
  • Fixed BLE assert when receiving packet on ESP32 ( e3839a3)
  • Fixed the issue that BLE light sleep may randomly cause task watchdog upon power up on ESP32-H2. ( ca71f77)
  • Fixed extended uncoded and coded scan scheduling on ESP32-C3 and ESP32-S3. ( f36a16b)
  • Clear random address for extended advertising on ESP32-C3 and ESP32-S3. ( f36a16b)
  • Fixed periodic advertising data setting with zero length on ESP32-C3 and ESP32-S3. ( f36a16b)
  • Fixed an issue of occasional ACL data loss under multiple BLE connections on ESP32-C2. ( 28f68a0)
  • Fixed occasional assert issue in modem sleep mode on ESP32-C6 and ESP32-H2. ( 3dc9d66)
  • Fixed issue of slave latency applied when not receiving valid PDU on ESP32-C6 and ESP32-H2 ( 3dc9d66)
  • Fixed HCI command status event sending for disconnect command on ESP32. ( 9c075b9)
  • Fixed BLE transmitter test command parameters...
Read more

ESP-IDF Release v5.2.2

04 Jun 07:04
v5.2.2
Compare
Choose a tag to compare

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

ESP-IDF v5.2.2 is a bugfix update for ESP-IDF v5.2.1.

Obtaining v5.2.2

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

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

Download an archive with submodules included

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

Major changes

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

Changelog

802.15.4

802.15.4 MAC

Fixed

  • Fixed ieee802154 include header file issue and unused value issue (8531594)

Thread

Added

  • Added max csmabackoffs numbers for transmission via spinel (1b9597f)
  • Added cli support in openthread sleep example (9607a11)
  • Added state indicator in Thread examples (fd4b09f)
  • Added events for meshcop-e service publish and remove (66c164b)
  • Supported openthread ephemeral key feature (66c164b)

Changed

  • Moved some lwip api to lwip task (66c164b)
  • Enabled RCP uart configuration for BR by default (fd4b09f)

Fixed

  • Fixed dead lock issue related to mdns (66c164b)
  • Fixed the race condition in rx buffer count operation (fd4b09f)
  • Fixed openthread alarm timer calculation remaining_us overflow issue (6c1542e)

Removed

  • Removed the range for some configurations (70fc0e3)

Bluetooth Low Energy (BLE)

Bluetooth Low Energy Controller

Added

  • Supported sending disconnection command if the disconnection procedure is on-going on ESP32 (8c52152)
  • Supported ESP32-C2 light sleep using external 32.768 kHz oscillator at pin0 as slow clock source. (4c96e52)
  • Added CCA related config option on ESP32-C6, ESP32-H2 and ESP32-C2 (4c96e52)
  • Added API to get low power clock source on ESP32C3 and ESP32S3 (228f922)
  • Added BLE scan backoff config option in menuconfig on ESP32 (8c52152)
  • Added config for channel assessment and ping procedure on ESP32-C3 and ESP32-S3. (8c52152)

Changed

  • Expanded the scan period to the maximum of 0xffff on ESP32-C6, ESP32-H2, and ESP32-C2. (4c96e52)

Fixed

  • Fixed BLE ASSERT_PARAM(0,0) in rwble.c in coexistence scenarios on ESP32 (408294a)
  • Register coexist functions into Bluetooth controller on ESP32-C3/ESP32-S3 (8c52152)
  • Fixed BLE DTM status and TX count error on ESP32 (408294a)
  • Reduced the usage of flash and RAM when only legacy adv and peripheral are enabled on ESP32-C2. (5fa3428)
  • Fixed BLE light sleep issue which will randomly cause task watchdog upon power up on ESP32-H2. (5aad850)
  • Fixed an occasional assertion issue during slave connection in coexistence scenarios on ESP32-C2. (b19e27d)
  • Use embedded assembly to get access to DPORT registers on ESP32 (8c52152)
  • Fixed BLE scan assert(10,0) on ESP32(#8532) (8c52152)
  • Fixed BLE assert when receiving packet on ESP32 (8c52152)
  • Fixed extended uncoded and coded scan scheduling on ESP32-C3 and ESP32-S3. (8c52152)
  • Cleared random address for extended advertising on ESP32-C3 and ESP32-S3. (8c52152)
  • Fixed periodic advertising data setting with zero length on ESP32-C3 and ESP32-S3. (8c52152)
  • Fixed an issue of occasional ACL data loss under multiple BLE connections on ESP32-C2. (4c96e52)
  • Fixed occasional assert issue in modem sleep mode on ESP32-C6 and ESP32-H2. (1097ed0)
  • Fixed issue of slave latency applied when not receiving valid PDU on ESP32-C6 and ESP32-H2. (1097ed0)
  • Fixed HCI command status event send when LLCP is busy on ESP32 (daa6a0d)
  • Fixed HCI command status event sending for disconnection command on ESP32 (daa6a0d)
  • Fixed LE transmitter test command parameters check error on ESP32 (daa6a0d)
  • Fixed an occasional assertion issue when enabling multiple periodic adv on ESP32-C2. (c630c04)
  • Fixed adv interval range limit error issue on ESP32-C2,ESP32-C6 and ESP32-H2. (c630c04)
  • Fixed an occasional assertion issue when disable controller on ESP32-C2. (c630c04)

ESP Bluedroid Host

Added

  • Added bluerooth hci layer data stream record (40d3981)
  • Added API to send vendor hci command (40d3981)

Changed

  • Updated maximum BLE reconnection attempts configuration (35630f5)

Fixed

  • Fixed BLE appearance category ranges (#13626) (e362358)
  • Fixed ADV do not restart due to disconnection reason 0x3e (40d3981)
  • Fixed crash when calculating GATTS database hash (daa6a0d)
  • Fixed "report" typo in esp_ble_gap_ext_adv_reprot_t (daa6a0d)
  • Fixed BLE crash when repeatedly iniitialize and deinitialize host (8def30a)
  • Fixed BLE periodic advertising create sync parameters check error (8def30a)
  • Example: Use correct struct type in discover service complete event (daa6a0d)

Removed

  • Removed BLE functions discard declaration (2a9108f)

ESP NimBLE Host

Added

  • Added usage of esp_timer_get_expiry_time to get current remaining ticks (d9be451)
  • Added the check to prevent address resolution in case of identity addr for esp32 (391c3a1)
  • Added support for data length change event in host (abd2184)
  • Added support for deleting the oldest bonded device across reboot (a6895ce)
  • Added documentation for ESP32-P4 gpio pins configuration (a253028)
  • Added ble_host_rpa_enabled flag for address resoultion for esp32 (69dc6f3)
  • Added support to send and receive read multiple variable length characteristic request and response. (61f8f19)

Changed

  • Increased range of reattempt connection count in menuconfig (94bec84)
  • Simplify reconnection code (8599ec3)
  • Improved documentation for bleprph_host_only example. (909e7fc)
  • Updated help sections for BLE_RPA_TIMEOUT config. (1f8e365)

Fixed

  • Expose API to set RPA timeout in stack. (2ba5320)
  • Fixed aggressive termination in signed write procedure (0190214)
  • Fixed unpair API ignoring devices bonded with CSRK (0190214)
  • Fixed compilation issues when CCCD is set to 0 (f9163c6)
  • Fixed for CVE-2024-24746 vulnerability (709b74c)
  • Fixed the size of number packets in dtm event (33c6315)
  • Set correct peer_addr during reattempt connection (3d0682d)
  • Handled missing free in ble spp example (6020d08)
  • Handled auto connection flag in extended connect (064df2a)
  • Fixed call to ble_hid_task_startup and compilation issues due to incorrect prototypes (962d9de)
  • Fixed compilation issue occurring after disabling security. (ec7e307)
  • Fixed type in blehr/README (#13034) (374a03f)
  • Fixed compilation error for strict-prototype enabled (464a62b)
  • Exposed baud rate in the menuconfig. (259e2ba)
  • Handled memory leak in callout deinit (deacd79)
  • Changed 'move_count' to uint8_t type to fix compilation issue in nimble for -O2 flag. (c0faa8f)

BluFi

Fixed

  • Fixed BluFi module link error(C++ hybrid compilation) (daa6a0d)

Classic Bluetooth

Classic Bluetooth Bluedroid Host

Fixed

  • Fixed the HID Host inner error state caused by repeat connection of the same device (d4e3253)
  • Fixed inconsistency of connection initiator state for HID Host open event (d4e3253)
  • Allocate memory for control block of HFP Audio Gateway in its initialization when dynamic memory is enabled (1c09bc1)
  • Fixed SPP crash due to the connection not being disconnected before esp_spp_deinit was called (8096a16)
  • Fixed the crash caused by using illegal pointers during SDP deinit (a70bb45)
  • Fixed missing of callback event when removing an invalid SDP record (a70bb45)

Classic Bluetooth Controller

Fixed

  • Fixed the incorrect timing in reporting HCI_Link_Key_Type_Changed event on ESP32 (d34b024)
  • Fixed the incorrect initialization vector during resuming encryption on ESP32 (d34b024)
  • Fixed incorrect link key returned from HCI command HCI_READ_STORED_LINK_KEY (d34b024)
  • Fixed crash during Bluetooth deinitialization in coexistence scenario on ESP32 (f2e1c06)
  • Fixed invalid transmission of LMP_MAX_POWER PDU in case that peer device is expected peer to increase TX power to maximum on ESP32 (f2e1c06)
  • Fixed the loss of coexistence request event during sniff transition process due to insufficient of message queue length, which causes Bluetooth link disconnection in case of wireless coexistence on ESP32 (daa6a0d)
  • Clear sniff state in coexistence scheme when no connections exist (daa6a0d)

Bluetooth Common

Added

  • Added an option to make alarm number configurable (cc5101f)

Fixed

  • Fixed error in CMakeLists on ESP32-C2 (#13451) (7646dd5)
  • Fixed missing linker generated symbols in using esp_bt_mem_release when ESP_ALLOW_BSS_SEG_EXTERNAL_MEMORY is enabled (#10427, #11377) (dc3e953)

Bluedroid

Fixed

  • Fixed controller using null pointer after bluedroid deinitialization (b0eef7f)

Controller

Changed

  • Use compile options -ffunction-sections and `-fdata-section...
Read more

ESP-IDF Pre-release v5.3-beta1

21 May 06:58
v5.3-beta1
Compare
Choose a tag to compare
Pre-release

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

ESP-IDF v5.3-beta1 is a preview release for ESP-IDF v5.3.

Obtaining v5.3-beta1

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

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

Download an archive with submodules included

Attached to this release is an esp-idf-v5.3-beta1.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.3-beta1/esp-idf-v5.3-beta1.zip

Major changes

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

Major New Features

Support for New SoCs

ESP32-P4
  • Low Power System
    • Low Power Core (RISC-V)
    • Low-power GPIO
    • Low-power I2C Master
    • Low-power Timer
    • Low-power UART
    • Low-power Watchdog Timer
  • Peripherals
    • DMA (Direct Memory Access)
      • 2DDMA
      • DMA channel allocator
      • GDMA
        • CRC Calculator
      • GDMA2
    • Ethernet driver
      • SPI Ethernet driver
      • internal MAC driver
    • Event Task Matrix
    • GPIO driver
      • Analog Comparator
      • GPIO ETM
      • Glitch Filter
      • RTC IO (LP IO) driver
    • GPIO sigma delta driver
    • GPSPI
      • SPI Master driver
      • SPI Slave HD driver
      • SPI Slave driver
    • GPTimer driver
    • I2C
      • I2C master driver
      • I2C slave driver
    • I2S
      • I2S driver
        • I2S PDM rx mode
        • I2S PDM tx mode
        • I2S STD mode
        • I2S TDM mode
      • I2S legacy driver
    • JPEG
      • JPEG Decoder Driver
      • JPEG Encoder Driver
    • LCD driver
      • MIPI DSI
    • LEDC driver
      • Gamma Curve Generation
    • MCPWM driver
    • MIPI CSI
    • PCNT driver
    • PSRAM
      • PSRAM Device Driver
    • Parallel IO
      • Parallel IO TX Driver
    • RMT driver
    • SD/SDIO/MMC driver
      • SDMMC Host driver
      • SDSPI Host driver
    • SPI Flash driver
    • Systimer driver
      • Esptimer implementation over systimer
      • OS tick port over systimer
    • Temperature Sensor driver
    • UART
      • Support Low Power UART instance
      • UART FIFO mode driver
    • USB OTG
      • USB Device (TinyUSB) driver
        • USB 2.0 Device Support
      • USB Host driver
        • USB 2.0 Host Support
    • memory copy by DMA
  • Power management
    • Auto Light Sleep
    • Deep Sleep
    • Dynamic Frequency Switch
    • Light Sleep
  • Security Features
    • AES accelerator
    • Digital Signature driver
    • ECC accelerator
    • ECDSA driver
    • Flash encryption
    • HMAC driver
    • HUK Generator
    • Key Manager
    • RNG
    • RSA hardware accelerator driver
    • SHA accelerator
    • Secure boot
  • System Features
    • Bootloader Support
    • Cache
      • Cache Driver
    • Console
    • Cxx Component
    • ESP Event
    • ESP ROM
    • ESP Ringbuffer
    • ESP Timer
    • Efuse controller driver
    • Floating Point Unit
    • FreeRTOS
    • MMU
    • MSPI
      • MSPI tuning (Flash & PSRAM DDR and/or over 80 MHz)
    • POSIX Threads
    • Panic Handling Features
      • Core Dump
      • Debug Watchpoint
      • Panic Handler
      • Stack Guard
    • Ram App
    • TCM
    • Watch Dog Timers
    • newlib
  • Wireless Expansion
    • Bluedroid Host

Other Features

  • Supported external Wi-Fi connections for ESP32-P4 and other espressif chips. (3f486c4)
  • Added support for merging hosted Wi-Fi solution in esp_wifi component. (2a6b3df)

Breaking Changes

  • Removed CONFIG_IEEE802154_RECEIVE_DONE_HANDLER option, now the code using the 802.15.4 driver directly must call ieee802154_receive_handle_done after receiving the frame (b056ac7)

Known Issues

  • No known issues

Known issues are planned to be fixed before the final v5.3 release.

Changelog

802.15.4

802.15.4 MAC

Added

  • Added the pending tx while rx feature (d499ba4)
  • Added the feature of received done handler (f3039dd)
  • Added ieee802154 examples (bae3c28)
  • Added packets statistic of IEEE802.15.4 (b516012)
  • Added 802.15.4 coex break notification (fdf5783)
  • Supported IEEE802.15.4 MAC deinit (45f95e3)

Fixed

  • Fixed pending tx will be delayed issue (ac76d44)
  • Fixed the issue of not receiving packets when RSSI is positive in ESP32-H2 (0a1f378)
  • Fixed ieee802154 include header file issue and unused value issue (d022682)

Removed

  • Removed CONFIG_IEEE802154_RECEIVE_DONE_HANDLER option, now the code using the 802.15.4 driver directly must call ieee802154_receive_handle_done after receiving the frame (b056ac7)

Thread

Added

  • Added deep sleep support for SED (a66055f)
  • Added netif check when calling udp api (ff89cf5)
  • Added max csmabackoffs numbers for transmission via spinel (8edaa94)
  • Added cli support in openthread sleep example (c97077c)
  • Added state indicator in Thread examples (1e01517)
  • Added configure option for openthread address query (f9f32d4)
  • Added ESP Radio spinel for external protocol stack (3b44a59)
  • Added ESP OpenThread vendor commands support (3b44a59)
  • Supported rcp re-initialization (58992e2)
  • Supported the common console command in OT CLI (65c838b)
  • Supported openthread radio caps rx on when idle (e358506)
  • Supported setting netif_idx of udp pcb to no_index when binding UDP PCB to netif (d7b9a3b)
  • Enabled uart ISR in IRAM for UART RCP process (ac76d44)
  • Actively set raw pcb ttl value to 255 for icmpv6 message of border router (93d68c2)

Changed

  • Updated OpenThread upstream to 41ef807 (58992e2)
  • Updated SRP server update response error code (58992e2)
  • Enabled RCP uart configuration for BR by default (d183000)
  • Disabled the rx on when idle in coex scenario (ac76d44)

Fixed

  • Fixed checking the lifetime value before calling sys_timeout (58992e2)
  • Fixed filter the zero-length prefix when adding router table (58992e2)
  • Moved router entry pointer in timeout handler (58992e2)
  • Added parsing when txt entry key pointer is NULL (58992e2)
  • Fixed eventfd missing issue when SPI interface is enabled (feb62db)
  • Fixed the race condition in rx buffer count operation (54e7b73)
  • Fixed openthread alarm timer calculation remaining_us overflow issue (cda92ca)
  • Fixed RCP handle timeout crashing issue (ac76d44)
  • Fixed frequent tx timeout && RCP recover issue when using SPI radio (f0d10c8)
  • Fixed ot netif destroy netif order issue (eaf4fb9)

Zigbee

Changed

  • Updated Zigbee examples to align with esp-zigbee-lib v1.0.9 (e81932d)

Bluetooth Low Energy (BLE)

Bluetooth Low Energy Controller

Added

  • Added BLE scan backoff config in menuconfig on ESP32 (e3839a3)
  • Added API to get low power clock source on ESP32-C3 and ESP32-S3 (6b453b8)
  • Add config for channel assessment and ping procedure on ESP32-C3 and ESP32-S3. (f36a16b)
  • Added CCA related config option on ESP32C6, ESP32H2 and ESP32C2 (28f68a0)
  • Added support for selecting whether to use CSA#2 through the configured option on ESP32-C2, ESP32-C6 and ESP32-H2. (083fe84)
  • Support enable aux packet when extend advertising data length is zero on ESP32-C3 and ESP32-S3 (ed025da)
  • Supported ESP32-C2 light sleep using external 32.768 kHz oscillator at pin0 as slow clock source. (28f68a0)
  • Supported disconnect again if the procedure is on-going on ESP32 (e3839a3)
  • Supported clear BLE legacy advertising on ESP32-C3 and ESP32-S3. (ca33198)
  • Supported clear BLE legacy advertising on ESP32. (dc66da9)

Changed

  • Expanded the scan period to the maximum of 0xffff on ESP32-C6, ESP32-H2, and ESP32-C2. (28f68a0)
  • Use embedded assembly to get access to DPORT registers (7fcac31)
  • Modify mesh proxy solic uuid to 0x18590303 on ESP32. (dc66da9)
  • Reduced the usage of flash and RAM when only legacy adv and peripheral are enabled on ESP32-C2. (148aa32)

Fixed

  • Example: Fixed UART HCI when flow control is off on ESP32C3 and ESP32S3. (4c190c5)
  • Fixed BLE coex assert on ESP32 (30fce03)
  • Fixed BLE DTM status and TX count on ESP32 (30fce03)
  • Fixed an occasional assertion issue during slave connection in coexistence scenarios on ESP32C2. (2cdd56e)
  • Fixed the compilation issue when use nimble host only on ESP32-H2,ESP32-C6 and ESP32-C2. (8ea943e)
  • Fixed BLE scan assert on ESP32(#8532) (e3839a3)
  • Fixed BLE assert when receiving packet on ESP32 (e3839a3)
  • Fixed BLE light sleep randomly caused task watchdog upon power up on ESP32-H2. (ca71f77)
  • Fixed extended uncoded and coded scan scheduling on ESP32-C3 and ESP32-S3. (f36a16b)
  • Clear random address for extended advertising on ESP32-C3 and ESP32-S3. (f36a16b)
  • Fixed periodic advertising data setting with zero length on ESP32-C3 and ESP32-S3. (f36a16b)
  • Fixed an issue of occasional ACL data loss under multiple BLE connections on ESP32-C2. (28f68a0)
  • Fixed occasional assert issue in modem sleep mode on ESP32-C6 and ESP32-H2. (3dc9d66)
  • Fixed issue of slave latency applied when not receiving valid PDU. (3dc9d66)
  • Fixed HCI command status event sending for disconnect command on ESP32. (9c075b9)
  • Fixed LE transmitter test command param check on ESP32. (9c075b9)
  • Fixed HCI comm...
Read more

ESP-IDF Release v5.1.4

10 May 03:56
v5.1.4
d7b0a45
Compare
Choose a tag to compare

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

ESP-IDF v5.1.4 is a bugfix update for ESP-IDF v5.1.3.

Obtaining v5.1.4

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

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

Download an archive with submodules included

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

Major changes

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

Changelog

802.15.4

Fixed

  • Fixed ieee802154 include header file issue and unused value issue (2fd087b)

Thread

Added

  • Added state indicator in Thread examples (19dd338)
  • Added cli support in openthread sleep example (54ad993)

Changed

  • Enabled RCP uart configuration for BR by default (19dd338)

Fixed

  • Fixed the race condition in rx buffer count operation (19dd338)
  • Fixed openthread alarm timer calculation remaining_us overflow issue (1f1d252)

Bluetooth Low Energy (BLE)

Bluetooth Low Energy Controller

Added

  • Added CCA related config option on ESP32-C6, ESP32-H2 and ESP32-C2 (07c17c6)

Changed

  • Expanded the scan period to the maximum of 0xffff on ESP32C6, ESP32H2, and ESP32-C2. (07c17c6)
  • Supported ESP32C2 light sleep using external 32.768 kHz oscillator at pin0 as slow clock source. (07c17c6)

Fixed

  • Fixed occasional assert issue in modem sleep mode on ESP32C6 and ESP32H2. (9fe40d4)
  • Fixed issue of slave latency applied when not receiving valid PDU on ESP32C6 and ESP32H2. (9fe40d4)
  • Fixed HCI command status event send when LLCP busy on ESP32 (8519d3c)
  • Fixed HCI command status event sending for disconnect command on ESP32 (8519d3c)
  • Fixed LE transmitter test command parameters check error on ESP32 (8519d3c)
  • Fixed an occasional assertion issue when enabling multiple periodic adv on ESP32-C2. (b0107bd)
  • Fixed adv interval range limit error issue on ESP32-C2,ESP32-C6 and ESP32-H2. (b0107bd)
  • Fixed an occasional assertion issue when disable controller on ESP32-C2. (b0107bd)
  • Fixed Bluetooth not waking up due to internal 136k oscillator clock drift on ESP32C3 and ESP32S3 (c8d47c1)
  • Fixed scheduling when modem sleep wakeup delayed on ESP32-C3 and ESP32-S3. (00db642)
  • Fixed BLE IRQ FIFO overflow when enter critical on ESP32-C3 and ESP32-S3. (00db642)
  • Fixed clock sync timeout when exit modem sleep on ESP32-C3 and ESP32-S3. (00db642)
  • Fixed directed advertising with RPA when privacy is disabled on ESP32-C3 and ESP32-S3. (00db642)
  • Fixed instant passed when connection parameters updating or PHY updating on ESP32-C3 and ESP32-S3. (00db642)
  • Fixed BLE TX count in direct test mode on ESP32-C3 and ESP32-S3. (00db642)
  • Fixed BLE modem sleep enter failed sometimes on ESP32-C3 and ESP32-S3. (00db642)
  • Fixed BLE TX count in direct test mode on ESP32-C3 and ESP32-S3. (00db642)
  • Fixed BLE modem sleep enter failed sometimes on ESP32-C3 and ESP32-S3. (00db642)
  • Fixed an issue of occasional ACL data loss under multiple BLE connections on ESP32-C2. (07c17c6)
  • Fixed an occasional assertion issue during slave connection in coexistence scenarios on ESP32-C2. (2622be4)

ESP Bluedroid Host

Changed

  • Updated maximum BLE reconnection attempts configuration (7cfe227)

Fixed

  • Example: Use correct struct type in discover service complete event (8519d3c)
  • Example: Fixed UART HCI when flow control is off on ESP32-C3 and ESP32-S3. (2e9916b)
  • Fixed BLE crash when repeatedly iniitialize and deinitialize host (b0fb3bb)
  • Fixed BLE periodic advertising create sync parameters check error (b0fb3bb)
  • Fixed crash when calculating GATTS database hash (8519d3c)
  • Fixed "report" typo in esp_ble_gap_ext_adv_reprot_t (8519d3c)
  • Fixed xQueueSemaphoreTask assert when deinit host during scan (69900de)

ESP NimBLE Host

Added

  • Added documentation for p4 gpio pins configuration (0c26579)
  • Added ble_host_rpa_enabled flag for address resoultion for ESP32 (5710425)
  • Added menuconfig options for bleprph_host_only example (67c4eac)
  • Added Gatt Caching support (956797e)
  • Added usage of esp_timer_get_expiry_time to get current remaining ticks (9ddaaca)
  • Added support to send and receive read multiple variable length characteristic request and response. (cac867d)
  • Added observer role flag. (67c4eac)
  • Added support for user to authorize GATT read or write operations. (67c4eac)
  • Added support for more advertisement data AD Types. (67c4eac)
  • Added support for Characteristic Presentation Format Descriptors. (67c4eac)
  • Added support for Characteristic Aggregate Format Descriptor. (67c4eac)
  • Added support for sending and receiving signed write commands using CSRK and Sign Counter. (67c4eac)
  • Added APIs to support BLE DTM functions. (67c4eac)
  • Added nimble-host only support over UART. (67c4eac)
  • Added test API to show stack operations status (67c4eac)

Changed

  • Updated help sections for BLE_RPA_TIMEOUT config. (dc384fc)
  • Updated variable name to remove keyword. (67c4eac)
  • Improved documentation for bleprph_host_only example. (13141a0)
  • Increase range of reattempt connection count (c1f26cc)
  • Added change to return success for API execution in "ble_sm_inject_io" (67c4eac)

Fixed

  • Fixed type in blehr/README (#13034) (077a966)
  • Fixed compilation error for strict-prototype enabled (a4916eb)
  • Exposed macros used by the GAP service as menuconfig options. (f93025b)
  • Exposed baud rate in the menuconfig. (e78e9a9)
  • Handle memory leak in callout deinit (cac867d)
  • Added the check to prevent address resolution in case of identity addr for ESP32 (cac867d)
  • Fixed general and limited scanning to check relevent Flags AD Type. (67c4eac)
  • Fixed allowing selective and auto connection establishment. (67c4eac)
  • Added check to validate adv interval min /max range (67c4eac)
  • Fixed out of order message causing DOS during SMP procedure. (67c4eac)
  • Authorized or deauthorized a BLE device for a connection (67c4eac)
  • Fixed signed write procedure using correct CSRK and message. (67c4eac)
  • Changed 'move_count' to uint8_t type to fix compilation issue in nimble for -O2 flag (67c4eac)
  • Fixed wrong #if guard in porting layer and UART configuration support. (67c4eac)
  • Added change to return success for API execution in "ble_sm_inject_io" (956797e)

Removed

  • Removed double free of l2cap packet in example (4677804)
  • Removed duplicate hci_common.h file. (67c4eac)

BluFi

Fixed

  • Fixed BluFi module link error(C++ hybrid compilation) (8519d3c)
  • Corrected host deinit API (2b07dbf)

ESP-BLE-MESH

Fixed

  • Fixed the struct initialization to meet C++ requirements for BLE Mesh stack (7452f30)
  • Fixed the struct initialization to meet C++ requirements for BLE Mesh examples (7452f30)
  • Fixed using wrong type value for non-connectable adv in NimBLE Host adapter (d1ad4b5)

Bluetooth Common

Bluedroid

Changed

  • Make the maximum number of bond devices to be configurable. (2e9916b)

Controller

Changed

  • Added compile options -ffunction-sections and -fdata-sections when building libbtdm_app.a, to allow to reduce code and data from executable on ESP32 (2d2bfc1)
  • Apply only necessary patches for Bluetooth controller ROM code according to Bluetooth mode on ESP32 in order to reduce IRAM consumption and binary size (2d2bfc1)

Classic Bluetooth

Classic Bluetooth Bluedroid Host

Added

  • Added description of use limitations of security masks in SPP API document (603268e)

Changed

  • Moved the memory allocation of HF AG control blocks to BTC module when option dynamic memory is enabled (e1eaa7b)

Fixed

  • Fixed the dangling pointer in processing the list of bonded bluetooth device (f9db462)
  • Fixed SPP connection failure due to out-of-sync status of application layer and BTU layer (69695c2)

Classic Bluetooth Controller

Fixed

  • Fixed crash issue when doing Bluetooth deinit in coexistence scenario on ESP32. (7d16878)
  • Fixed invalid transmission of LMP_MAX_POWER PDU in case that peer device is expected peer to increase TX power to maximum on ESP32. (7d16878)
  • Fixed the loss of coexistence request event during sniff transition process due to insufficent of message queue length, which causes Bluetooth link disconnection in case of wireless coexistence on ESP32 (8519d3c)
  • Clear sniff state in coexistence scheme when no connections exist on ESP32 (8519d3c)

Coexistence

Fixed

PHY

Changed

  • Updated ESP32C3 PHY version to 1170, f4aea9b, Apr 30 2024. (9d8842f)
  • Updated ESP32S3 PHY version to 670, b7bc9b9, Apr 30 2024. (9d8842f)
  • Updated ESP32C6 PHY version to 290, 81efd96, May 8 2024. (9d8842f)
  • Updated ESP32C2 PHY version to 320, 1f0ce9d, Mar 22 2024. (3826f2b)
  • Updated ESP32S2 PHY version ...
Read more

ESP-IDF Release v5.2.1

06 Mar 11:28
v5.2.1
Compare
Choose a tag to compare

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

ESP-IDF v5.2.1 is a bugfix update for ESP-IDF v5.2.

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

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

Download an archive with submodules included

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

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

Major changes

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

Breaking Changes

  • Removed CONFIG_IEEE802154_RECEIVE_DONE_HANDLER option, now the code using the 802.15.4 driver directly must call ieee802154_receive_handle_done after receiving the frame. ( dbbe2cf)

Changelog

802.15.4

802.15.4 MAC

Added

  • Added the pending tx while rx feature ( dbbe2cf)

Removed

  • Removed CONFIG_IEEE802154_RECEIVE_DONE_HANDLER option, now the code using the 802.15.4 driver directly must call ieee802154_receive_handle_done after receiving the frame. ( dbbe2cf)

Thread

Added

  • Added ESP Radio spinel for external protocol stack ( dbbe2cf)
  • Added ESP OpenThread vendor commands support ( dbbe2cf)
  • Added configure option for openthread address query ( dbbe2cf)
  • Supported the common console command in OT CLI ( dbbe2cf)
  • Supported openthread radio caps rx on when idle ( dbbe2cf)

Fixed

  • Fixed RCP handle timeout crashing issue ( dbbe2cf)
  • Enabled UART ISR in IRAM for UART RCP process ( dbbe2cf)
  • Disabled the rx on when idle in coex scenario ( dbbe2cf)

Zigbee

Changed

  • Updated Zigbee examples to align with esp-zigbee-lib v1.0.9 ( dbbe2cf)

Bluetooth Low Energy (BLE)

Bluetooth Low Energy Controller

Added

  • Support enable aux packet when extend advertising data length is zero on ESP32-C3 and ESP32-S3. ( d4dd0d4)

Fixed

  • Fixed the occasional assertion of rxbuffer_free_all on ESP32-C6 and ESP32-H2. ( b0fc021)
  • Fixed the assertion in memory check when the host processing is too slow on ESP32-C6 and ESP32-H2. ( b0fc021)
  • Fixed the assertion of get_rxed_buffer() when the host task is blocked for a long time on ESP32-C6 and ESP32-H2. ( 1c2a671)
  • Resolved the problem of packet loss occurring during the 1M DTM Rx process on ESP32-H2. ( 1c2a671)
  • Fixed the occasional cache error issue when sleep is enabled on ESP32-C6 and ESP32-H2. ( 1c2a671)
  • Fixed scheduling when modem sleep wakeup delayed on ESP32-C3 and ESP32-S3. ( d4dd0d4)
  • Fixed BLE IRQ FIFO overflow when enter critical on ESP32-C3 and ESP32-S3. ( d4dd0d4)
  • Fixed clock sync timeout when exit modem sleep on ESP32-C3 and ESP32-S3. ( d4dd0d4)
  • Fixed directed advertising with RPA when privacy disabled on ESP32-C3 and ESP32-S3. ( d4dd0d4)
  • Fixed instant passed when connection updating or PHY updating on ESP32-C3 and ESP32-S3. ( d4dd0d4)
  • Fixed BLE TX count in direct test mode on ESP32-C3 and ESP32-S3. ( d4dd0d4)
  • Fixed BLE modem sleep enter failed sometimes on ESP32-C3 and ESP32-S3. ( d4dd0d4)
  • Fixed BLE TX count in direct test mode on ESP32-C3 and ESP32-S3. ( d4dd0d4)
  • Fixed BLE modem sleep enter failed sometimes on ESP32-C3 and ESP32-S3. ( d4dd0d4)
  • Fixed Bluetooth not waking up due to internal 136k oscillator clock drift on ESP32-C3 and ESP32-S3 ( 9e984cd)
  • Fixed BLE scan request IFS time error in coexistence scenarios on ESP32 ( 11eaf41)

ESP Bluedroid Host

Added

  • Added getter for BLE GATTC GATTS and GAP calllback. ( d4dd0d4)

Changed

  • Optimized BLE heap allocation to fix malloc fail in malloc_internal_wrapper (#12574). ( d4dd0d4)

Fixed

  • Fixed BLE dangling pointer issue in deletion of bonded devices. ( d4dd0d4)
  • Fixed xQueueSemaphoreTask assert when deinit host during scan ( 7e6e769)
  • Example: Fixed UART HCI when flow control is off on ESP32C3 and ESP32-S3. ( 5cb1e9f)

ESP-BLE-Mesh

Fixed

  • Fixed compiling error when PB-ADV is disabled for node ( 95b5f12)
  • Fixed using wrong adv type for ADV_NONCONN_IND in NimBLE Host adapter ( 8a0132a)
  • Fixed the struct initialization to meet C++ requirements for BLE Mesh stack ( 7a9b686)
  • Fixed the struct initialization to meet C++ requirements for BLE Mesh examples ( 7a9b686)

ESP NimBLE Host

Added

  • Added change to return success for API execution in "ble_sm_inject_io" ( e094428)
  • Added APIs to support BLE DTM functions. ( e094428)
  • Added Gatt Caching support ( 8b08d11)
  • Added connection reattempt in case of Ext connect ( 8b1c532)
  • Added check to validate adv interval min /max range ( e094428)
  • Added test API to show stack operations status ( e094428)
  • Added nimble-host only support over UART. ( e094428)
  • Added observer role flag. ( e094428)
  • Added support for user to authorize GATT read or write operations. ( e094428)
  • Added support for more advertisement data AD Types. ( e094428)
  • Added support for Characteristic Presentation Format Descriptors. ( e094428)
  • Added support for Characteristic Aggregate Format Descriptor. ( e094428)
  • Added support for sending and receiving signed write commands using CSRK and Sign Counter. ( e094428)

Changed

  • Updated variable name to remove keyword. ( e573b7c)

Fixed

  • Fixed wrong #if guard in porting layer and UART configuration support. ( a707ab9)
  • Fixed signed write procedure using correct CSRK and message. ( 9feab17)
  • Authorized or deauthorized a BLE device for a connection ( 768bd47)
  • Fixed general and limited scanning to check relevant Flags AD Type. ( e094428)
  • Fixed allowing selective and auto connection establishment. ( e094428)
  • Fix out of order message causing DOS during SMP procedure. ( e094428)
  • Fixed address resolution during inquiry for host based privacy. ( 93ea06f)
  • Fixed issue of enabling address resolution across reboot ( 2d36710)

Removed

  • Removed unwanted assert. ( 99552eb)
  • Removed double free of l2cap packet in example ( 923546b)
  • Removed duplicate hci_common.h file. ( e094428)

Classic Bluetooth

Classic Bluetooth Bluedroid Host

Added

  • Added field link key type to the parameter structure of callback event ESP_BT_GAP_AUTH_CMPL_EVT ( 77f5391)
  • Added callback event ESP_BT_GAP_ENC_CHG_EVT to notify the change of encryption mode to application layer ( 77f5391)
  • Added description of use limitations of security masks in SPP API document ( 9dcc8c9)

Changed

  • Update migration docs for new version of API for Bluedroid host stack initialization ( 3de398b)

Fixed

  • Fixed SPP connection failure due to out-of-sync status of application layer and BTU layer ( ee4fdf8)
  • Fixed the dangling pointer in processing the list of bonded Bluetooth device ( 406e11b)

Classic Bluetooth Controller

Bluetooth Common

Bluedroid

Changed

  • Make the maximum number of bond devices to be configurable. ( 5cb1e9f)

Coexistence

Fixed

PHY

Fixed

  • Fixed BLE 2M PHY TX problem causing by phy_wifi_enable_set() on ESP32-C3 and ESP32-S3 ( 8ab1027)
  • Fixed BLE CCA bug on ESP32-C2 ( 8ab1027)
  • Fixed Wi-Fi boot bug at low temperature on ESP32-C6 ( 8ab1027)
  • Fixed BLE and Wi-Fi could not receive packets after entering light sleep for a long time on ESP32-C3, ESP32-S3, ESP32-C2 and ESP32-C6 ( 8ab1027)

Wi-Fi

Fixed

  • Smart Config: Removed rogue semicolon in SMARTCONFIG_START_CONFIG_DEFAULT() which was causing some build errors when used in C++ (#12867) ( f1561c6)

Wi-Fi MAC

Changed

  • Updated scan AP number when clear scan AP records ( a328e1a)

Fixed

  • Fixed beacon timeout after restart ( a328e1a)
  • Fixed Wi-Fi stop cost too much time at coexist scenario ( a328e1a)
  • Fixed the old_snd filed error in WIFI_EVENT_HOME_CHANNEL_CHANGE event (closes #13051) ( a328e1a)
  • Fixed issue that task watchdog got triggered in mplen clear on ESP32C6( a328e1a)
  • Fixed issue that esp_wifi_set_mode() not returning error for invalid argument ( a328e1a)
  • Used low rate to send DHCP offer and DHCP ack to avoid get IP fail ( a328e1a)
  • Used QoS data to send EAPOL packets ( a328e1a)
  • Fixed potential memory issue in wifi stop(may increase binary image by 2KB) ( a328e1a)
  • Fixed esp_wifi_scan_start memory leakage issue (#10693) ( 1cd164b)
  • Fixed PMK invalid causes same SSID WPA and WPA2 connect fail issue ( e8548e7)
  • Fixed ESP32-C2 disconnect reason code wrong issue ( 4f6cca6)

ESP-WIFI-MESH

Fixed

  • Waited for child disconnect event when mesh deinit ( a328e1a)

Wi-Fi Supplicant

Added

  • Added low heap Kconfig option for EAP enterprise ( 4a3f224)
  • Added support to move supplicant BSS to external memory ( 65d127d)

Fixed

  • Added change to allow calling esp_mbo_* APIs only when MBO config flag is en...
Read more

ESP-IDF Release v4.4.7

01 Mar 13:38
v4.4.7
Compare
Choose a tag to compare

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

ESP-IDF v4.4.7 is a bugfix update for ESP-IDF v4.4.

Obtaining v4.4.7

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

This is the recommended way of obtaining v4.4.7 of ESP-IDF.

Download an archive with submodules included

Attached to this release is an esp-idf-v4.4.7.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/v4.4.7/esp-idf-v4.4.7.zip

Changelog

Bluetooth Low Energy (BLE)

Bluetooth Low Energy Controller

Added

  • Added BLE mesh advertising types for exception list on ESP32C3 and ESP32-S3 ( b2a1097)
  • Added BLE mesh advertising types for exception list on ESP32 ( b2a1097)
  • Supported enable aux packet when extend advertising data length is zero on ESP32-C3 and ESP32-S3 ( b9124d3)
  • Supported ESP32-C3 ECO7 BLE ( 7e5f4df)
  • Supported clear BLE legacy advertising on ESP32, ESP32-C3 and ESP32-S3 ( 27cf25e)

Changed

  • Modify mesh proxy solic uuid to 0x18590303 on ESP32. ( 27cf25e)
  • Modify mesh proxy solic uuid to 0x18590303 on ESP32-C3 and ESP32-S3 ( b2a1097)

Fixed

  • Fixed scheduling when modem sleep wakeup delayed on ESP32-C3 and ESP32-S3. ( 839719a)
  • Fixed BLE IRQ FIFO overflow when enter critical on ESP32-C3 and ESP32-S3. ( 839719a)
  • Fixed clock sync timeout when exit modem sleep on ESP32-C3 and ESP32-S3. ( 839719a)
  • Fixed directed advertising with RPA when privacy disabled on ESP32-C3 and ESP32-S3. ( 839719a)
  • Fixed instant passed when connection updating or PHY updating on ESP32-C3 and ESP32-S3. ( 839719a)
  • Fixed BLE TX count in direct test mode on ESP32-C3 and ESP32-S3. ( 839719a)
  • Fixed BLE modem sleep enter failed sometimes on ESP32-C3 and ESP32-S3. ( 839719a)
  • Fixed Bluetooth not waking up due to internal 136k oscillator clock drift on ESP32C3 and ESP32S3 ( 61e7464)
  • Fixed BLE scan request IFS time error in coexistence scenarios on ESP32 ( a1c2e71)
  • Fixed interrupt timeout issue after enabling CONFIG_MAC_BB_PD on ESP32-C3 and ESP32-S3. ( 53dd2ba)
  • Fixed BLE recorrect enable bug on ESP32-C3 and ESP32-S3 ( 69bb72a)
  • Fixed BLE bb isr is enabled by default on ESP32-C3 and ESP32-S3 ( 69bb72a)
  • Fixed memory leak in BLE controller after enabling CONFIG_MAC_BB_PD on ESP32-C3 and ESP32-S3 ( 69bb72a)
  • Fixed assert when BLE disconnect due to instant passed on ESP32-C3 and ESP32-S3. ( 597a4d4)
  • Fixed add(remove) RPA to(from) white list on ESP32-C3 and ESP32-S3. ( 597a4d4)
  • Fixed AES encryption for RPA resolution on ESP32-C3 and ESP32-S3. ( 597a4d4)
  • Fixed assert when BLE disconnect due to instant passed on ESP32. ( 597a4d4)
  • Fixed scan event timeout on ESP32. ( 597a4d4)
  • Fixed random address setting when scanning on ESP32. ( 597a4d4)
  • Fixed BLE bugs in setting advertising data and scan response data on ESP32-C3 and ESP32-S3. ( 27cf25e)
  • Fixed power state setting when entering modem sleep on ESP32-C3 and ESP32-S3. ( 27cf25e)
  • Added config to enable HW recorrect eco on ESP32-C3 and ESP32-S3 ( b2a1097)
  • Fixed DTM payload length cannot be 0 on ESP32-C3 and ESP32-S3 ( b2a1097)
  • Report the number of packets sent on the TX end on ESP32-C3 and ESP32-S3 ( b2a1097)
  • Fixed resolvable private address renew after timeout on ESP32-C3 and ESP32-S3 ( b2a1097)
  • Fixed address resolution for directed advertising when scanning on ESP32-C3 and ESP32-S3 ( b2a1097)
  • Fixed extended advertising address setting after advertising restart on ESP32-C3 and ESP32-S3 ( b2a1097)

ESP Bluedroid Host

Added

  • Added API to clear BLE legacy advertising. ( 27cf25e)
  • Added getter for BLE GATTC GATTS and GAP callback ( b9124d3)
  • Supported scan response data length zero in BLE ( 2fa1213)
  • Supported BLE gattc notify registration number ( ae54709)
  • Supported control point in BLE HID example ( ae54709)

Changed

  • Optimized BLE heap allocation to fix malloc fail in malloc_internal_wrapper (#12574) ( b9124d3)
  • 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 ( ca7cc8e)
  • Optimized BLE remove all bonded devices function ( ca7cc8e)
  • Optimized compatibility with IOS and MACOS devices ( ae54709)

Fixed

  • Examples: Fixed UART HCI when flow control is off on ESP32C3 and ESP32S3. ( 5adad46)
  • Fixed xQueueSemaphoreTask assert when deinit host during scan ( 2b490ae)
  • Fixed BLE dangling pointer issue in deletion of bonded devices ( b9124d3)
  • Fixed background connection status log level when a bg connection is initiated or terminated ( b9124d3)
  • Fixed BLE advertising data check to avoid memory overflow (#12886) ( 9186e0e)
  • Fixed BLE memory leak when gattc config off ( 753bed3)
  • Fixed BLE gattc app unregister no event ( ece1bf2)
  • Fixed BLE Prepare Write Request timeout on Client Characteristic Configuration and Client Supported Features characteristic ( 11f9081)
  • Fixed Prepare Write out-of-bound memory write BLE for example ( 11f9081)
  • Fixed the BLE advertising and scan status after stop/start cycles of the host ( ad44330)
  • Fixed the connection cannot be established after several stop/start cycles of the host ( ad44330)
  • Fixed add RPA to white list ( 597a4d4)
  • Fixed bluedroid menuconfig dependents ( 2be3fa2)
  • Fixed BLE SMP register log level ( 2be3fa2)
  • Fixed deinit init BLE scan fail issue ( 25cd984)
  • Fixed BLE load bond information error after reboot ( 6475f7f)
  • Fixed HID example stack overflow bugs when using ESP32-S3 ( 2fa1213)
  • Fixed remove resolving list error for ESP32 ( 2fa1213)
  • Fixed bugs in handling reading requests for GATT service changes characteristic ( 2fa1213)
  • Fixed set periodic advertising data error ( 2fa1213)
  • Fixed BLE extended advertising random address setting for NRPA ( 182303a)
  • Fixed BLE advertising data construct for device name ( 182303a)
  • Fixed BLE SMP key distribution setting ( 182303a)
  • Fixed BLE advertising scan response event type ( dea8532)
  • Fixed BLE keysize check ( dea8532)
  • Deleted one HID service to optimize compatibility with Android 10 and later devices ( ae54709)
  • Fixed encryption key size check in BLE SMP ( ae54709)

ESP NimBLE Host

Added

  • Added event for reattempt connection count information ( d9a6dbe)
  • Added test API to show stack operations status ( bae4375)

Fixed

  • Fixed out of order message causing DOS during SMP procedure. ( 02312e6)
  • Added check to validate adv interval min /max range ( 0456f97)
  • Added change to return success for API execution in "ble_sm_inject_io" ( 2ded73b)
  • Fixed address resolution during inquiry for host based privacy. ( f765235)
  • Added connection reattempt in case of Ext connect ( efe283f)
  • Fixed authcomplete failure due to mismatch in the c1 value. ( 3f117c7)
  • Handled deletion of IRK/LTK based of key availability. ( 2fa6dab)
  • Memory leak fixes ( 68df912)
  • Fixed incorrect handling of bonded devices. ( 79954fe)

Removed

  • Remove unwanted assert. ( 8a97a02)

ESP-BLE-MESH

Fixed

  • Fixed compilation failure while using scene model ( 1c49830)
  • Fixed PB-GATT adv reported to app layer too frequently ( 8cb1f37)
  • Fixed using wrong adv type for ADV_NONCONN_IND in NimBLE Host adapter ( 21b041f)

Classic Bluetooth

Classic Bluetooth Bluedroid Host

Added

  • Added two new APIs for HFP performance test to collect statistics of synchronous stream transmission and reception ( c1d9e61)
  • Added dynamic memory allocation for HFP control blocks when HF_DYNAMIC_MEMORY is enabled ( 54c529a)
  • Added support for build different roles in corresponding profile HID and HFP into one single executable ( 4c0bc4b)
  • Added an API to terminate an ongoing call from HF client side ( c1d9e61)
  • Added peer Bluetooth device address into HF callback parameters ( c1d9e61)

Changed

  • Changed the description of HFP API esp_hf_client_reject_call ( c1d9e61)
  • Modified AT+CNUM response api and HFP AG example. ( 6f38dfe)
  • Limited the number of paired BT devices stored into NVS and remove the oldest exceeded device from NVS when loading bond list. ( 5690b2f)
  • Changed log level from WARNING to DEBUG in bta_ag_sco_read_cback when received packets with invalid air mode ( c1d9e61)

Fixed

  • Fixed the dangling pointer issue when logging the removed section ( b2146b8)
  • Fixed connection failure due to out-of-sync status of application layer and BTU layer ( 3f0f8f3)
  • Avoided crash of LoadProhibited during HFP AG deinitialization by releasing the control block in the event of BTA_AG_DISABLE_EVT ( 54c529a)
  • Corrected the definitions of HF Client callback events ( 54c529a)
  • Disabled Sniff Subrating temporarily as it did not work well ( 54c529a)
  • Fixed the panic when the mutex created is enclosed by macro SMP_INCLUDE, but locked by functions beyond that macro ( 40f4228)
  • Fixed compilation error in the L2CAP and HF_AG module when compiler optimization level is `optimize fo...
Read more

ESP-IDF Release v5.1.3

27 Feb 09:20
v5.1.3
Compare
Choose a tag to compare

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

ESP-IDF v5.1.3 is a bugfix update for ESP-IDF v5.1.

Obtaining v5.1.3

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

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

Download an archive with submodules included

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

Major changes

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

Breaking Changes

  • Removed CONFIG_IEEE802154_RECEIVE_DONE_HANDLER option, now the code using the 802.15.4 driver directly must call ieee802154_receive_handle_done after receiving the frame. (81ee463)

Changelog

802.15.4

802.15.4 MAC

Added

  • Introduced the feature of received done handler (47c8944)
  • Supported IEEE802.15.4 MAC deinit (d09d7bb)
  • Supported packets statistic of IEEE802.15.4 (f922e43)
  • Added the pending tx while rx feature (15a392c)

Changed

  • Removed CONFIG_IEEE802154_RECEIVE_DONE_HANDLER option, now the code using the 802.15.4 driver directly must call ieee802154_receive_handle_done after receiving the frame. (0b28bdb)

Fixed

  • Fixed pending tx will be delayed issue (eb4fa72)
  • Fixed the issue of not receiving packets when RSSI is positive in ESP32-H2. (db1e54a)

Thread

Added

  • Add deep sleep support for SED. (ecbbd3c)
  • Added netif check when calling udp api (f922e43)
  • Supported rcp re-initialization. (f922e43)
  • Added ESP Radio spinel for external protocol stack (15a392c)
  • Added ESP OpenThread vendor commands support (15a392c)
  • Added configure option for openthread address query (15a392c)
  • Supported the common console command in OT CLI (15a392c)
  • Supported openthread radio caps rx on when idle (15a392c)
  • Supported setting netif_idx of udp pcb to no_index when binding UDP PCB to netif (f922e43)

Changed

  • Updated OpenThread upstream to 456c448 (d117ae0)
  • Updated SRP server update response error code (f922e43)
  • Disabled the rx on when idle in coex scenario (5c74483)
  • Enabled uart ISR in IRAM for UART RCP process (ff1fd81)

Fixed

  • Fixed eventfd missing issue when SPI interface is enabled (46d52c8)
  • Actively set raw pcb ttl value to 255 for icmpv6 message of border router (575af15)
  • Fixed frequent tx timeout && RCP recover issue when using SPI radio (f922e43)
  • Fixed ot netif destroy netif order issue (f922e43)
  • Fixed checking the lifetime value before calling sys_timeout (f922e43)
  • Fixed filter the zero-length prefix when adding router table (f922e43)
  • Moved router entry pointer in timeout handler (f922e43)
  • Added parsing when txt entry key pointer is NULL (f922e43)
  • Fixed RCP handle timeout crashing issue (d117ae0)
  • Fixed RCP handle timeout crashing issue (eb4fa72)
  • Enabled uart ISR in IRAM for UART RCP process (eb4fa72)
  • Disabled the rx on when idle in coex scenario (eb4fa72)

Zigbee

Changed

  • Updated Zigbee examples to align with esp-zigbee-lib v1.0.9 (0b28bdb)

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, ESP32-C6 and ESP32-H2. (6deb0ae)
  • Added support for ESP32-C3 ECO7 BLE (d51b712)
  • Supported clear BLE legacy advertising on ESP32. (4023a22)
  • Supported clear BLE legacy advertising on ESP32-C3 and ESP32-S3. (4023a22)
  • Added config to enable HW recorrect eco on ESP32-C3 and ESP32-S3 (c467750)
  • Added BLE mesh advertising types for exception list on ESP32-C3 and ESP32-S3 (c467750)
  • Added BLE mesh advertising types for exception list on ESP32 (c467750)
  • Support enable advertising packet when extend advertising data length is zero on ESP32-C3 and ESP32-S3(4fd3de1)

Changed

  • Modify mesh proxy solic uuid to 0x18590303 on ESP32. (4023a22)
  • Modify mesh proxy solic uuid to 0x18590303 on ESP32-C3 and ESP32-S3 (c467750)

Fixed

  • Fixed BLE recorrect enable bug on ESP32-C3 and ESP32-S3 (ddd142e)
  • Fixed BLE bb isr is enabled by default on ESP32-C3 and ESP32-S3 (ddd142e)
  • Fixed an assertion issue when stopping periodic adv if the extended adv data is longer than 228 bytes and the periodic adv is enabled after extended adv on ESP32-C6 and ESP32-H2.. (d24b321)
  • Fixed the crash issue of deinitializing controller when the controller is busy on ESP32-C2. (6deb0ae)
  • Fixed occasional enter sleep failure during scan and connection on ESP32-C2. (6deb0ae)
  • Fixed occasional MIC error during multiple concurrent connections on ESP32-C6 and ESP32-H2. (6deb0ae)
  • Fixed the issue of the slave waiting for response timeout in the indication procedure when the device is in multi-connection on ESP32-C6 and ESP32-H2. (6deb0ae)
  • Fixed assert when BLE disconnect due to instant passed on ESP32-C3 and ESP32-S3. (c6a9a06)
  • Fixed add(remove) RPA to(from) white list on ESP32-C3 and ESP32-S3. (c6a9a06)
  • Fixed AES encryption for RPA resolution on ESP32-C3 and ESP32-S3. (c6a9a06)
  • Fixed assert when BLE disconnect due to instant passed on ESP32. (c6a9a06)
  • Fixed scan event timeout on ESP32. (c6a9a06)
  • Fixed random address setting when scanning on ESP32. (c6a9a06)
  • Fixed the issue that failed to establish synchronization with periodic advertising when coexisted with the connection on ESP32-C2. (5bd0ae4)
  • Fixed the occasional issue of being unable to receive packets on ESP32-C2. (80b6128)
  • Fixed extended adv tx issue when connection and adv coexist on ESP32C2. (80b6128)
  • Fixed BLE occasional connection timeout after connection params update process on ESP32C6, ESP32H2 and ESP32C2. (80b6128)
  • Fixed BLE occasional wakeup failure from light sleep when restarting scan and updating connection params on ESP32-C6 and ESP32-H2. (80b6128)
  • Fixed BLE bugs in setting advertising data and scan response data on ESP32-C3 and ESP32-S3. (4023a22)
  • Fixed power state setting when entering modem sleep on ESP32-C3 and ESP32-S3. (4023a22)
  • Fixed DTM payload length cannot be 0 on ESP32-C3 and ESP32-S3 (c467750)
  • Report the number of packets sent on the TX end on ESP32-C3 and ESP32-S3 (c467750)
  • Fixed resolvable private address renew after timeout on ESP32-C3 and ESP32-S3 (c467750)
  • Fixed address resolution for directed advertising when scanning on ESP32-C3 and ESP32-S3 (c467750)
  • Fixed extended advertising address setting after advertising restart on ESP32-C3 and ESP32-S3 (c467750)
  • Fixed memory leak in BLE controller after enabling CONFIG_MAC_BB_PD on ESP32-C3 and ESP32-S3. (9043501)
  • Fixed the assertion of get_rxed_buffer() when the host task is blocked for a long time on ESP32-C6 and ESP32-H2. (71dfc32)
  • Fixed the issue of losing a packet during the 1M DTM Rx process on ESP32-H2. (71dfc32)
  • Fixed the occasional cache error issue when sleep is enabled on ESP32-C6 and ESP32-H2. (71dfc32)
  • Fixed BLE scan request IFS time error in coexistence scenarios on ESP32 (7011329)
  • Fixed the issue of releasing memory improperly when the controller is de-initialized after scanning on ESP32-C6 and ESP32-H2. (899b216)
  • Fixed interrupt timeout issue after enabling CONFIG_MAC_BB_PD on ESP32-C3 and ESP32-S3 (214a4d7)
  • Fixed the assertion in memory check when the host processing is too slow on ESP32-C6 and ESP32-H2. (931eaf7)
  • Fixed the occasional assertion of rxbuffer_free_all on ESP32-C6 and ESP32-H2. (d922d41)

ESP Bluedroid Host

Added

  • Added API to clear BLE legacy advertising. (4023a22)
  • Supported BLE sync create with reporting initially enabled(disabled) and duplicate filtering initially enabled(disabled) (08d54a6)
  • Supported BLE GATTC notify registration number (8f4c9bd)
  • Supported control point in BLE hid example (8f4c9bd)
  • Added getter for BLE GATTC, GATTS and GAP calllback (4fd3de1)

Changed

  • 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 (0aed680)
  • Optimized BLE remove all bonded devices function (0aed680)
  • Optimized compatibility with IOS and MACOS devices (8f4c9bd)
  • Deleted one HID service to optimize compatibility with Android 10 and later devices (8f4c9bd)
  • Optimized BLE heap allocation to fix malloc fail in malloc_internal_wrapper (#12574) (4fd3de1)

Fixed

  • Fixed BLE Prepare Write Request timeout on Client Characteristic Configuration and Client Supported Features characteristic (8b84071)
  • Fixed Prepare Write out-of-bound memory write BLE for example (8b84071)
  • Fixed the BLE advertising and scan status after stop/start cycles of the host (fae6ce0)
  • Fixed the connection cannot be established after several stop/start cycles of the host (fae6ce0)
  • Fixed add RPA to white list. (c6a9a06)
  • Fixed BLE advertising scan response event type (7f63951)
  • Fixed BLE keysize check (7f63951)
  • Fixed BLE load bond information error after reboot (472718d)
  • Fixed deinit init BLE scan fail issue (0172c33)
  • Fixed e...
Read more

ESP-IDF Release v5.0.6

22 Feb 09:00
bcca689
Compare
Choose a tag to compare

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 no...
Read more