Skip to content

Releases: espressif/esp-idf

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

ESP-IDF Release v5.2

16 Feb 05:29
v5.2
Compare
Choose a tag to compare

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

ESP-IDF v5.2 is a minor update for ESP-IDF v5.1. Release v5.2 is mostly compatible with apps written for ESP-IDF v5.1.

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

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

Download an archive with submodules included

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

Major changes

This is a list of changes since IDF v5.1.

Major Features

  • Supported ESP32-C3 (v1.1) (6481080)
  • Added external coexist support for esp32h2/esp32c6 as a follower (8d48ff5)
  • Added support of light sleep for ieee802.15.4 on chip esp32c6 (f64a6bc)
  • Supported ESP32-C6 PMP and PMA sleep retention (d899199)
  • ADC: Supported ADC calibration on ESP32-H2 (4331ae7)
  • ADC: Supported ADC calibration V2 on ESP32-C6 (028c7be)
  • I2C: Added new I2C Slave driver (fec9a11)
  • I2C: Added new I2C master driver (96bf37a)
  • UART: Added a new LP_UART port for UART driver on ESP32C6 (03d4fa2)
  • MCPWM: Added FOC SVPWM open loop example (2975cc5)
  • PSRAM: Supported 32MB Octal PSRAM (APS256XXN) on ESP32S3 (e3fea3a)
  • USB Host: Restrict ESP32-S2 USB OTG AHB errata workaround to only ESP32-S2 ECO0 chips. Other chips and ECOs will no longer be affected by USB OTG DMA usage. (4fc2e5c)
  • NVS Flash: Added support for HMAC peripheral-based NVS encryption scheme (d00e7b5)
  • SPI Flash: Added new flash GD25QL255E suppport (a754efc)
  • TWAI: Added new TWAI driver APIs to support multiple controller instances (#11383) (d4dbacf)
  • Added USB-NCM example that demonstrates USB to WiFi bridge (9f9bd8c)
  • FreeRTOS: Upgraded IDF FreeRTOS kernel to v10.5.1 LTS. (b0124b9)

Major Bug Fixes

  • Efuse: Fixed the burning issue when RS coding data is left at zero. (#12489) (172b7e4)
  • Spi Flash: Fixed concurrency issue when concurrently calling esp_flash APIs under XIP_PSRAM or Auto-suspend condition (ad0345a)

Breaking Changes

  • Python 3.7 is no longer supported by the community, therefore, ESP-IDF installations will require Python 3.8 or newer versions (4bbc57c)
  • SPI Flash: Now HPM-DC (Quad Flash > 80MHz on some flash models) is no longer enabled by default because it needs bootloader support. Without this support, some flash chips are not able to run > 80 MHz. Read Programming guide SPI Flash API > Optional Features for Flash > High Performance Mode to know how to enable this feature on new projects or re-enable it on existing projects. (d2d75ef)
  • Modified the 11AX esp_wifi_rxctrl_t member noise_floor from unsigned 8 to signed 8 (42db3c8)
  • Added more descriptive reason codes upon station disconnect due to no AP found, original WIFI_REASON_NO_AP_FOUND now will be WIFI_REASON_NO_AP_FOUND, WIFI_REASON_NO_AP_FOUND_W_COMPATIBLE_SECURITY, WIFI_REASON_NO_AP_FOUND_IN_AUTHMODE_THRESHOLD and WIFI_REASON_NO_AP_FOUND_IN_RSSI_THRESHOLD (2fa1e2b)
  • Wi-Fi/Vendor: esp_now_send() will return ESP_ERR_ESPNOW_CHAN if current channel doesn't match ESP-NOW channel (40f7ada)
  • NVS Flash: For SoCs with the HMAC peripheral, turning on flash encryption will no longer enable NVS encryption automatically (ea51f4e)

Known Issues

  • Occasional assertion of get_rxed_buffer() occurs when the BLE host task is blocked for a long time on ESP32-C6 and ESP32-H2.

Changelog

802.15.4

802.15.4 MAC

Added

  • Added debug feature for 802.15.4 driver (685dff0)
  • Added support of light sleep for ieee802.15.4 on chip esp32c6 (f64a6bc)
  • Open source driver code (5d222db)
  • Introduced the feature of received done handler (0e03d10)
  • Supported IEEE802.15.4 MAC deinit support (9d2d1e2)
  • Added packets statistic of 802.15.4 MAC (3139ae0)

Changed

  • Match ESP32-C6/ESP32-H2 max txpower value with datasheet (80e1c5a)
  • Updated coex_arb_delay reg (54e45c7)

Fixed

  • Fixed multipan api errorg (54e45c7)
  • Fixed a typo in set_channel API (8c5a395)
  • Fixed the issue of not receiving packets when RSSI is positive in ESP32-H2 (be39aab)

Thread

Added

  • Added deep sleep support for SED (a25673e)
  • Supported time synchronization feature (f6c76aa)
  • Added support to allocate message pool from PSRAM (a9349f4)
  • Added support for border router deinit. (c1e464a)
  • Added configuration for setting mesh local prefix (32ad8f1)
  • Added the default DNS server address configuration (bb12cda)
  • Supported border router to communicate with the SSED (8fd6e73)
  • Support border router to response the link metrics registration (8fd6e73)
  • Added openthread border agent id support (42e18dd)
  • Added event post for OpenThread role changed (28a6aeb)
  • Introduced the auto start API (72972db)
  • Added netif check when calling udp api (3139ae0)
  • Supported rcp re-initialization. (3139ae0)
  • Supported OTBR's discovery delegate be able to reply selfhosted service (fce25bc)
  • Supported setting netif_idx of udp pcb to no_index when binding UDP PCB to netif (3139ae0)

Changed

  • Host connection logic refactor (fbf8d06)
  • Added rcp size optimization configuration (a5caa1c)
  • Optimized Thread Sleepy device power consumption by disabling ND6 timer (7af7723)
  • Updated OpenThread upstream to 41ef807 (3139ae0)
  • Set raw pcb ttl value to 255 for icmpv6 message of border router (ffe6458)
  • Updated SRP server update response error code (3139ae0)

Fixed

  • Fixed removing client service failure in some cases (c1e464a)
  • Fixed curl failure in NAT64 (c1e464a)
  • Fixed multi connection issue in NAT64 (c1e464a)
  • Fixed openthread settings get next empty index (c135efe)
  • Fixed memory leak for handling ICMP6 MLQ packets (871943a)
  • Fixed set mcast forwarding enable (871943a)
  • Fixed an out-of-range memory issue when calling NVS API (453dc6a)
  • Fixed dead lock issue related to ot and lwip (acbdbbb)
  • Fixed assert when parsing security key failed (523e259)
  • Fixed frame counter setting bugs when re-transmition (38b4952)
  • Fixed Call sleep api only in native radio (8019d6d)
  • Fixed eventfd missing issue when SPI interface is enabled (3c43fb0)
  • Fixed frequent tx timeout && RCP recover issue when using SPI radio (3139ae0)
  • Fixed ot netif destroy netif order issue (3139ae0)
  • Fixed checking the lifetime value before calling sys_timeout (3139ae0)
  • Fixed filter the zero-length prefix when adding router table (3139ae0)
  • Moved router entry pointer in timeout handler (3139ae0)
  • Added parsing when txt entry key pointer is NULL (3139ae0)

Zigbee

Changed

  • Updated the zigbee example to adapt the newest esp zigbee and zboss lib version (a287a0b)

Bluetooth Low Energy (BLE)

Bluetooth Low Energy Controller

Added

  • Supported IRAM release in esp_bt_mem_release for ESP32-C2. (59417a4)
  • Supported clear BLE legacy advertising on ESP32 (7f8fe95)
  • Supported clear BLE legacy advertising on ESP32-C3 and ESP32-S3. (7f8fe95)
  • Supported ESP32-C3(v1.1) BLE (6481080)
  • Supported extra link retention used for sleep on ESP32-C6, ESP32-H2 (d918b52)
  • Added DTM function on ESP32-C6 and ESP32-H2. (865d29e)
  • Added support for using the RPA to remove the device from the whitelist after the IRK is deleted on ESP32-C2, ESP32-C6 and ESP32-H2. (865d29e)
  • Added config to enable HW recorrect eco on ESP32-C3 and ESP32-S3 (daf1fc7)
  • Added support for using RPA to remove devices from the resolution list on ESP32-C2, ESP32-C6 and ESP32-H2. (f19f1db)
  • Added modem reset when initializing BLE on ESP32-C2, ESP32-C6 and ESP32-H2. (83943ed)
  • Added wake up overhead change on ESP32-C6 and ESP32-H2. (a1c0d9c)
  • Added API to enable/disable pll track on ESP32 (4f7e7ce)
  • Added BLE mesh ADV types for exception list on ESP32-C3 and ESP32-S3 (98d9d14)
  • Added BLE mesh ADV types for exception list on ESP32 (6daba77)
  • Added the vendor hci command for adv report flow control on ESP32-C2. (8904d6b)
  • Added the vendor hci command for adv report flow control on ESP32-C6 and ESP32-H2. (db51cee)
  • Added VS commands to support mesh duplicate list for ESP32-C6, ESP32-H2 (a7e5d49)

Changed

  • Improved scan performance when scan and sync coexist on ESP32-C3 and ESP32-S3 (5a603a6)
  • Modified mesh proxy solic uuid to 0x18590303 on ESP32 (7f8fe95)
  • Modified mesh proxy solic uuid to 0x18590303 on ESP32-C3 and ESP32-S3 (daf1fc7)
  • Improved the coexistence performance of ADV in conn throughput on ESP32-C6 and ESP32-H2. (ca78f8b)
  • Moved PHY enable from BT controller initialization to enable on ESP32-C3 and ESP32-S3. (8e5aebe)
  • Changed the power level for ESP32-C6. (aa6a8b7)

Fixed

  • Fixed power state setting when entering modem sleep on ESP32-C3 and ESP32-S3 (7f8fe95)
  • Fixed adv chain pdu tx stopping issue on ESP32C6 and ESP32H2. (3d37631)
  • Fixed scan not stopping after scan window expires on ESP32C2. (3d37631)
  • Fixed peripheral latency without ACL data to send on ESP32C6, ESP32H2 and ESP32C2. (3d37631)
  • Fixed BLE bug...
Read more

ESP-IDF Pre-release v5.2-rc1

05 Feb 11:04
v5.2-rc1
Compare
Choose a tag to compare
Pre-release

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

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

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

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

Download an archive with submodules included

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

Major changes

This is a list of changes since IDF v5.1.

Major Features

  • Supported ESP32-C3 (v1.1) (6481080)
  • Added external coexist support for esp32h2/esp32c6 as a follower (8d48ff5)
  • Added support of light sleep for ieee802.15.4 on chip esp32c6 (f64a6bc)
  • Supported ESP32-C6 PMP and PMA sleep retention (d899199)
  • ADC: Supported ADC calibration on ESP32-H2 (4331ae7)
  • ADC: Supported ADC calibration V2 on ESP32-C6 (028c7be)
  • I2C: Added new I2C Slave driver (fec9a11)
  • I2C: Added new I2C master driver (96bf37a)
  • UART: Added a new LP_UART port for UART driver on ESP32C6 (03d4fa2)
  • MCPWM: Added FOC SVPWM open loop example (2975cc5)
  • PSRAM: Supported 32MB Octal PSRAM (APS256XXN) on ESP32S3 (e3fea3a)
  • USB Host: Restrict ESP32-S2 USB OTG AHB errata workaround to only ESP32-S2 ECO0 chips. Other chips and ECOs will no longer be affected by USB OTG DMA usage. (4fc2e5c)
  • NVS Flash: Added support for HMAC peripheral-based NVS encryption scheme (d00e7b5)
  • SPI Flash: Added new flash GD25QL255E suppport (a754efc)
  • TWAI: Added new TWAI driver APIs to support multiple controller instances (#11383) (d4dbacf)
  • Added USB-NCM example that demonstrates USB to WiFi bridge (9f9bd8c)
  • FreeRTOS: Upgraded IDF FreeRTOS kernel to v10.5.1 LTS. (b0124b9)

Major Bug Fixes

  • Efuse: Fixed the burning issue when RS coding data is left at zero. (#12489) (172b7e4)
  • Spi Flash: Fixed concurrency issue when concurrently calling esp_flash APIs under XIP_PSRAM or Auto-suspend condition (ad0345a)

Breaking Changes

  • Python 3.7 is no longer supported by the community, therefore, ESP-IDF installations will require Python 3.8 or newer versions (4bbc57c)
  • SPI Flash: Now HPM-DC (Quad Flash > 80MHz on some flash models) is no longer enabled by default because it needs bootloader support. Without this support, some flash chips are not able to run > 80 MHz. Read Programming guide SPI Flash API > Optional Features for Flash > High Performance Mode to know how to enable this feature on new projects or re-enable it on existing projects. (d2d75ef)
  • Modified the 11AX esp_wifi_rxctrl_t member noise_floor from unsigned 8 to signed 8 (42db3c8)
  • Added more descriptive reason codes upon station disconnect due to no AP found, original WIFI_REASON_NO_AP_FOUND now will be WIFI_REASON_NO_AP_FOUND, WIFI_REASON_NO_AP_FOUND_W_COMPATIBLE_SECURITY, WIFI_REASON_NO_AP_FOUND_IN_AUTHMODE_THRESHOLD and WIFI_REASON_NO_AP_FOUND_IN_RSSI_THRESHOLD (2fa1e2b)
  • Wi-Fi/Vendor: esp_now_send() will return ESP_ERR_ESPNOW_CHAN if current channel doesn't match ESP-NOW channel (40f7ada)

Known Issues

  • Occasional assertion of get_rxed_buffer() occurs when the BLE host task is blocked for a long time on ESP32-C6 and ESP32-H2.

Changelog

802.15.4

802.15.4 MAC

Added

  • Added debug feature for 802.15.4 driver (685dff0)
  • Added support of light sleep for ieee802.15.4 on chip esp32c6 (f64a6bc)
  • Open source driver code (5d222db)
  • Introduced the feature of received done handler (0e03d10)
  • Supported IEEE802.15.4 MAC deinit support (9d2d1e2)
  • Added packets statistic of 802.15.4 MAC (3139ae0)

Changed

  • Match ESP32-C6/ESP32-H2 max txpower value with datasheet (80e1c5a)
  • Updated coex_arb_delay reg (54e45c7)

Fixed

  • Fixed multipan api errorg (54e45c7)
  • Fixed a typo in set_channel API (8c5a395)
  • Fixed the issue of not receiving packets when RSSI is positive in ESP32-H2 (be39aab)

Thread

Added

  • Added deep sleep support for SED (a25673e)
  • Supported time synchronization feature (f6c76aa)
  • Added support to allocate message pool from PSRAM (a9349f4)
  • Added support for border router deinit. (c1e464a)
  • Added configuration for setting mesh local prefix (32ad8f1)
  • Added the default DNS server address configuration (bb12cda)
  • Supported border router to communicate with the SSED (8fd6e73)
  • Support border router to response the link metrics registration (8fd6e73)
  • Added openthread border agent id support (42e18dd)
  • Added event post for OpenThread role changed (28a6aeb)
  • Introduced the auto start API (72972db)
  • Added netif check when calling udp api (3139ae0)
  • Supported rcp re-initialization. (3139ae0)
  • Supported OTBR's discovery delegate be able to reply selfhosted service (fce25bc)
  • Supported setting netif_idx of udp pcb to no_index when binding UDP PCB to netif (3139ae0)

Changed

  • Host connection logic refactor (fbf8d06)
  • Added rcp size optimization configuration (a5caa1c)
  • Optimized Thread Sleepy device power consumption by disabling ND6 timer (7af7723)
  • Updated OpenThread upstream to 41ef807 (3139ae0)
  • Set raw pcb ttl value to 255 for icmpv6 message of border router (ffe6458)
  • Updated SRP server update response error code (3139ae0)

Fixed

  • Fixed removing client service failure in some cases (c1e464a)
  • Fixed curl failure in NAT64 (c1e464a)
  • Fixed multi connection issue in NAT64 (c1e464a)
  • Fixed openthread settings get next empty index (c135efe)
  • Fixed memory leak for handling ICMP6 MLQ packets (871943a)
  • Fixed set mcast forwarding enable (871943a)
  • Fixed an out-of-range memory issue when calling NVS API (453dc6a)
  • Fixed dead lock issue related to ot and lwip (acbdbbb)
  • Fixed assert when parsing security key failed (523e259)
  • Fixed frame counter setting bugs when re-transmition (38b4952)
  • Fixed Call sleep api only in native radio (8019d6d)
  • Fixed eventfd missing issue when SPI interface is enabled (3c43fb0)
  • Fixed frequent tx timeout && RCP recover issue when using SPI radio (3139ae0)
  • Fixed ot netif destroy netif order issue (3139ae0)
  • Fixed checking the lifetime value before calling sys_timeout (3139ae0)
  • Fixed filter the zero-length prefix when adding router table (3139ae0)
  • Moved router entry pointer in timeout handler (3139ae0)
  • Added parsing when txt entry key pointer is NULL (3139ae0)

Zigbee

Changed

  • Updated the zigbee example to adapt the newest esp zigbee and zboss lib version (a287a0b)

Bluetooth Low Energy (BLE)

Bluetooth Low Energy Controller

Added

  • Supported IRAM release in esp_bt_mem_release for ESP32-C2. (59417a4)
  • Supported clear BLE legacy advertising on ESP32 (7f8fe95)
  • Supported clear BLE legacy advertising on ESP32-C3 and ESP32-S3. (7f8fe95)
  • Supported ESP32-C3(v1.1) BLE (6481080)
  • Supported extra link retention used for sleep on ESP32-C6, ESP32-H2 (d918b52)
  • Added DTM function on ESP32-C6 and ESP32-H2. (865d29e)
  • Added support for using the RPA to remove the device from the whitelist after the IRK is deleted on ESP32-C2, ESP32-C6 and ESP32-H2. (865d29e)
  • Added config to enable HW recorrect eco on ESP32-C3 and ESP32-S3 (daf1fc7)
  • Added support for using RPA to remove devices from the resolution list on ESP32-C2, ESP32-C6 and ESP32-H2. (f19f1db)
  • Added modem reset when initializing BLE on ESP32-C2, ESP32-C6 and ESP32-H2. (83943ed)
  • Added wake up overhead change on ESP32-C6 and ESP32-H2. (a1c0d9c)
  • Added API to enable/disable pll track on ESP32 (4f7e7ce)
  • Added BLE mesh ADV types for exception list on ESP32-C3 and ESP32-S3 (98d9d14)
  • Added BLE mesh ADV types for exception list on ESP32 (6daba77)
  • Added the vendor hci command for adv report flow control on ESP32-C2. (8904d6b)
  • Added the vendor hci command for adv report flow control on ESP32-C6 and ESP32-H2. (db51cee)
  • Added VS commands to support mesh duplicate list for ESP32-C6, ESP32-H2 (a7e5d49)

Changed

  • Improved scan performance when scan and sync coexist on ESP32-C3 and ESP32-S3 (5a603a6)
  • Modified mesh proxy solic uuid to 0x18590303 on ESP32 (7f8fe95)
  • Modified mesh proxy solic uuid to 0x18590303 on ESP32-C3 and ESP32-S3 (daf1fc7)
  • Improved the coexistence performance of ADV in conn throughput on ESP32-C6 and ESP32-H2. (ca78f8b)
  • Moved PHY enable from BT controller initialization to enable on ESP32-C3 and ESP32-S3. (8e5aebe)
  • Changed the power level for ESP32-C6. (aa6a8b7)

Fixed

  • Fixed power state setting when entering modem sleep on ESP32-C3 and ESP32-S3 (7f8fe95)
  • Fixed adv chain pdu tx stopping issue on ESP32C6 and ESP32H2. (3d37631)
  • Fixed scan not stopping after scan window expires on ESP32C2. (3d37631)
  • Fixed peripheral latency without ACL data to send on ESP32C6, ESP32H2 and ESP32C2. (3d37631)
  • Fixed BLE bugs in setting advertising data and scan response data on ESP32-C3 and ESP32-S3. (0f84e7d)
  • Fixed mempool get cause crash issue on ESP32-C6, ESP32-H2 and ESP32...
Read more

ESP-IDF Release v4.3.7

04 Jan 09:23
v4.3.7
1bdf0a8
Compare
Choose a tag to compare

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

ESP-IDF v4.3.7 is a bugfix update for ESP-IDF v4.3.

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

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

Download an archive with submodules included

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

Major changes

  • Increase the maximum supported version of ESP32-C3 to v1.99 (e19f84c)

This is the list of changes since release v4.3.6:

Changelog

Bluetooth Low Energy (BLE)

Bluetooth Low Energy Controller

Added

  • Added BLE mesh advertising types for exception list on ESP32C3 and ESP32(2b6ebac)
  • Support ESP32-C3 ECO7(v1.1) BLE (ef90a3d)
  • Support clear BLE legacy advertising on ESP32-C3 and ESP32 (173f596)
  • Added config to enable HW recorrect eco on ESP32-C3 (2b6ebac)

Changed

  • Modify mesh proxy solic uuid to 0x18590303 on ESP32-C3 and ESP32 (173f596)

Fixed

  • Fixed assert when BLE disconnect due to instant passed on ESP32-C3 (49c2896)
  • Fixed add(remove) RPA to(from) white list on ESP32-C3 (49c2896)
  • Fixed AES encryption for RPA resolution on ESP32-C3 (49c2896)
  • Fixed assert when BLE disconnect due to instant passed on ESP32. (49c2896)
  • Fixed scan event timeout on ESP32. (49c2896)
  • Fixed random address setting when scanning on ESP32. (49c2896)
  • Fixed BLE bugs in setting advertising data and scan response data on ESP32-C3 (173f596)
  • Fixed power state setting when entering modem sleep on ESP32-C3 (173f596)
  • Fixed DTM payload length cannot be 0 on ESP32-C3 (2b6ebac)
  • Report the number of packets sent on the TX end on ESP32-C3 (2b6ebac)
  • Fixed resolvable private address renew after timeout on ESP32-C3 (2b6ebac)
  • Fixed address resolution for directed advertising when scanning on ESP32-C3 (2b6ebac)
  • Fixed extended advertising address setting after advertising restart on ESP32-C3 (2b6ebac)
  • Fixed PHY enable and disable for BLE controller on ESP32-C3. (fbd905a)
  • Fixed advertising random delay when advertising interval is less than 20ms on ESP32-C3. (fbd905a)
  • Fixed advertising random address setting when owner address type is public on ESP32-C3. (fbd905a)
  • Fixed instant setting for BLE LLC procedures with instants on ESP32. (fbd905a)
  • Fixed advertising random delay when advertising interval is less than 20ms on ESP32. (fbd905a)
  • Fixed memory leak in ESP32-C3 controller (530cf57)
  • Fixed BLE recorrect enable bug on ESP32-C3 (2e8d33e)
  • Fixed BLE bb isr is enabled by default on ESP32-C3 (2e8d33e)

ESP Bluedroid Host

Added

  • Added BLE Micro definition in a header file (8560017)
  • Added BLE GATTS local database print API (8560017)
  • Added BLE periodic advertising sync transfer API and EVT (8560017)
  • Added GATTC read multiple variable length characteristic API and EVT (8560017)
  • Added API to clear BLE legacy advertising. (173f596)
  • Support setting scan response data length to zero in BLE (b84f952)
  • Support high duty advertising interval setting. (fbd905a)
  • Support periodic ADI feature. (fbd905a)
  • Supported LE GATT service database hash calculate (8560017)
  • Supported LE GATT robust caching feature (8560017)
  • Supported LE periodic advertising sync transfer (8560017)
  • Supported LE L2CAP credit based connection (8560017)
  • Supported SMP OOB pairing for LE secure connection (8560017)
  • Added internal GATT API for BLE PTS (8560017)
  • Added characteristics for LE GAP and GATT service (8560017)
  • Support BLE gattc notify registration number (a01caee)
  • Support control point in BLE HID example (a01caee)

Changed

  • Delete one HID service to optimize compatibility with Android 10 and later devices (a01caee)
  • Optimized compatibility with IOS and MACOS devices (a01caee)
  • Increased default stack size of BTU task by 256 bytes (738a49f)

Fixed

  • Fixed the BLE advertising and scan status after stop/start cycles of the host (7cdd2b2)
  • Fixed the connection cannot be established after several stop/start cycles of the host (7cdd2b2)
  • Fixed add RPA to white list. (49c2896)
  • Fixed BLE SMP register log level (925654a)
  • Fixed deinit init BLE scan fail issue (ca64739)
  • Fixed BLE load bond information error after reboot (eb53913)
  • Fixed HID example stack overflow bugs when using ESP32-S3 (b84f952)
  • Fixed remove resolving list error for ESP32 (b84f952)
  • Fixed bugs in handling reading requests for GATT service changes characteristic (b84f952)
  • Fixed setting periodic advertising data error (b84f952)
  • Fixed address check error when using NRPA as random device address. (fbd905a)
  • Report BLE disconnect event after BLE link closed. (fbd905a)
  • Fixed BLE GATTC cache address saving when the cache list is full. (fbd905a)
  • Fixed bug while calculating block cipher using . (fbd905a)
  • Fixed timeout error when updating connection params. (fbd905a)
  • Fixed connection parameter validation error. (fbd905a)
  • Fixed GATT multiple notifications and robust caching (8560017)
  • Fixed an issue where memory resources were not properly released when devices disconnected (6cc40d5)
  • Fixed BLE advertising scan response event type error(64831f3)
  • Fixed BLE key size check error(64831f3)
  • Fixed encryption key size check error in BLE SMP (a01caee)
  • Fixed BLE Prepare Write Request timeout on Client Characteristic Configuration and Client Supported Features characteristic (aab7332)
  • Fixed prepare write out-of-bound memory write BLE for example (aab7332)

ESP NimBLE Host

Added

  • Added support for high duty adv interval (83778ad)

Fixed

  • Fixed authcomplete failure due to mismatch in the c1 value. (bcc3487)
  • Handled deletion of IRK/LTK on basis of key availability. (baf57ec)
  • Fixed incorrect handling of bonded devices. (baf57ec)
  • Memory leak fixes (5936402)

Removed

  • Removed global min/max definition (d6d55aa)

ESP-BLE-Mesh

Fixed

  • Fixed compilation failure while using time scene model (320f0a4)
  • Fixed PB-GATT adv packets reported to app layer too frequently (ac0138f)

Classic Bluetooth

Classic Bluetooth Bluedroid Host

Added

  • Added two new APIs for HFP performance test to collect statistics of synchronous stream transmission and reception (d832144)
  • Added peer Bluetooth device address into HF callback parameters (d832144)
  • Added an API to terminate an ongoing call from HF client side (d832144)

Changed

  • Modified the number of SDP maximum connections from 2 to 4 to avoid connection exhaustion (ff16d2d)
  • Changed the description of esp_hf_client_reject_call (d832144)

Fixed

  • Fixed the crash of invalid access to released resources, which is caused by the delayed timer which is alarmed after esp_spp_deinit as all the control blocks have been already released (949c296)
  • Limit the number of paired BT devices stored into NVS and remove the oldest exceeded device from NVS when loading bond list. (f8e9443)
  • Fixed failure in QoS configuration when polling interval requested is greater than 40 (947085b)
  • Fixed failure of GAP disconnection complete event (947085b)
  • Fixed HID congestion checking issue. (5cd95b2)
  • Limit sniff request when pending the mode change event caused by the previous sniff request. (435561c)
  • Fixed incorrect enumeration values defined in type esp_hf_dial_type_t (08991d3)
  • Fixed the issue of uninitialized parameters in event BTA_AG_WBS_EVT in HFP (08991d3)
  • Fixed NULL Bluetooth device address in events of HF-AG was reported to application layer (d832144)
  • Fixed errors in parsing ATD command in HFP AG (d832144)
  • Fixed incorrect definition of event ESP_HF_CIND_RESPONSE_EVT in HF-AG (d832144)
  • Fixed wrong indexes of HF-AG indicators (d832144)
  • Fixed incorrect handling of A2DP set configuration command when response with error code INVALID_CODEC_TYPE is expected (82f1755)
  • Fixed the panic when the mutex created is enclosed by macro SMP_INCLUDE, but locked by functions beyond that macro (a8584ed)

Removed

  • Removed the incorrectly defined HCI error code ESP_BT_STATUS_HCI_PENDING (1915151)
  • Deleted the redundant 'memset' in btc_hf_cb_handler (d832144)

Classic Bluetooth Controller

Changed

  • Moved the transmission of hardware error event out of ISR context on ESP32. (dc90927)

Fixed

  • Fixed logic error during sniff negotiatoin which causes failure to enter sniff mode on ESP32. (dc90927)
  • Fixed conflicts during unsniff procedure negotiation on ESP32, when local and peer devices initiate unsniff procedure at the same time. (dc90927)
  • Fixed crash when central and peripheral both attempt to initiate sniff procedure on ESP32. (dc90927)
  • Fixed the crash during hardware error handling caused by Rx IRQ generated from sniff frame on ESP32. (dc90927)
  • Fixed assertion resulted from failure of insertion of role switch frame on ESP32. (dc90927)
  • Fixed the assertion caused by improper handling of Rx IRQ in inquiry scan frame on ES...
Read more

ESP-IDF Pre-release v5.2-beta2

02 Jan 05:17
v5.2-beta2
Compare
Choose a tag to compare
Pre-release

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

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

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

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

Download an archive with submodules included

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

Major changes

This is a list of changes since IDF v5.1.

Major Features

  • Supported ESP32-C3(v1.1) (6481080)
  • Added external coexist support for esp32h2/esp32c6 as a follower (8d48ff5)
  • Added support of light sleep for ieee80254 on chip esp32c6 (f64a6bc)
  • Supported ESP32-C6 PMP and PMA sleep retention (d899199)
  • ADC: Supported ADC calibration on ESP32-H2 (4331ae7)
  • ADC: Supported ADC calibration V2 on ESP32-C6 (028c7be)
  • I2C: Added new I2C Slave driver (fec9a11)
  • I2C: Added new I2C master driver (96bf37a)
  • UART: Added a new LP_UART port for UART driver on ESP32C6 (03d4fa2)
  • MCPWM: Added FOC SVPWM open loop example (2975cc5)
  • PSRAM: Supported 32MB Octal PSRAM (APS256XXN) on ESP32S3 (e3fea3a)
  • USB Host: Restrict ESP32-S2 USB OTG AHB errata workaround to only ESP32-S2 ECO0 chips. Other chips and ECOs will no longer be affected by USB OTG DMA usage. (4fc2e5c)
  • NVS Flash: Added support for HMAC peripheral-based NVS encryption scheme (d00e7b5)
  • Added new flash GD25QL255E suppport (a754efc)
  • Added new TWAI driver APIs to support multiple controller instances (#11383) (d4dbacf)
  • Added USB-NCM example that demonstrates USB to WiFi bridge (9f9bd8c)
  • FreeRTOS: Upgraded IDF FreeRTOS kernel to v10.5.1 LTS. (b0124b9)

Major Bug Fixes

  • Efuse: Fixed the burning issue when RS coding data is left at zero. (#12489) (172b7e4)
  • Spi Flash: Fixed concurrency issue when concurrently calling esp_flash APIs under XIP_PSRAM or Auto-suspend condition (ad0345a)

Breaking Changes

  • Python 3.7 is no longer supported by the community, therefore, ESP-IDF installations will require Python 3.8 or newer versions (4bbc57c)
  • SPI Flash: Now HPM-DC (Quad Flash > 80MHz on some flash models) is no longer enabled by default because it needs bootloader support. Without this support, some flash chips are not able to run > 80 MHz. Read Programming guide SPI Flash API > Optional Features for Flash > High Performance Mode to know how to enable this feature on new projects or re-enable it on existing projects. (d2d75ef)
  • Modified the 11AX esp_wifi_rxctrl_t member noise_floor from unsigned 8 to signed 8 (42db3c8)
  • Added more descriptive reason codes upon station disconnect due to no AP found, original WIFI_REASON_NO_AP_FOUND now will be WIFI_REASON_NO_AP_FOUND, WIFI_REASON_NO_AP_FOUND_W_COMPATIBLE_SECURITY, WIFI_REASON_NO_AP_FOUND_IN_AUTHMODE_THRESHOLD and WIFI_REASON_NO_AP_FOUND_IN_RSSI_THRESHOLD (2fa1e2b)

Known Issues

  • No Docker images have been published for v5.2-beta2 release on Docker Hub. This will be fixed by the time of the final release.
  • ESP32-C6 and ESP32-H2 have an assertion when stopping periodic adv if the extended adv data exceeds 228 bytes and the periodic adv is enabled after extended adv is enabled.
  • Chips fail to connect to AP with WEP encryption.This has been fixed in 83d9e817

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

Changelog

802.15.4

802.15.4 MAC

Added

  • Added debug feature for 802.15.4 driver (685dff0)
  • Added support of light sleep for ieee80254 on chip esp32c6 (f64a6bc)
  • Open source driver code (5d222db)

Changed

  • Match ESP32-C6/ESP32-H2 max txpower value with datasheet (80e1c5a)
  • Updated coex_arb_delay reg (54e45c7)

Fixed

  • Fixed multipan api errorg (54e45c7)
  • Fixed a typo in set_channel API (8c5a395)

Thread

Added

  • Added deep sleep support for SED (a25673e)
  • Supported time synchronization feature (f6c76aa)
  • Added support to allocate message pool from PSRAM (a9349f4)
  • Added support for border router deinit. (c1e464a)
  • Added configuration for setting mesh local prefix (32ad8f1)
  • Added the default DNS server address configuration (bb12cda)
  • Supported border router to communicate with the SSED (8fd6e73)
  • Support border router to response the link metrics registration (8fd6e73)
  • Added openthread border agent id support (42e18dd)
  • Added event post for OpenThread role changed (28a6aeb)
  • Introduced the auto start API (72972db)

Changed

  • Host connection logic refactor (fbf8d06)
  • Added rcp size optimization configuration (a5caa1c)
  • Updated openthread upstream (fd90671)
  • Optimized Thread Sleepy device power consumption by disabling ND6 timer (7af7723)

Fixed

  • Make OTBR's discovery delegate be able to reply selfhosted service (fce25bc)
  • Fixed removing client service failure in some cases (c1e464a)
  • Fixed curl failure in NAT64 (c1e464a)
  • Fixed multi connection issue in NAT64 (c1e464a)
  • Fixed openthread settings get next empty index (c135efe)
  • Fixed memory leak for handling ICMP6 MLQ packets (871943a)
  • Fixed set mcast forwarding enable (871943a)
  • Fixed an out-of-range memory issue when calling NVS API (453dc6a)
  • Fixed dead lock issue related to ot and lwip (acbdbbb)
  • Fixed assert when parsing security key failed (523e259)
  • Fixed frame counter setting bugs when re-transmition (38b4952)
  • Call sleep api only in native radio (8019d6d)
  • Fixed eventfd missing issue when SPI interface is enabled (3c43fb0)

Zigbee

Changed

  • Updated the zigbee example to adapt the newest esp zigbee and zboss lib version (a287a0b)

Bluetooth Low Energy (BLE)

Bluetooth Low Energy Controller

Added

  • Supported IRAM release in esp_bt_mem_release for ESP32-C2. (59417a4)
  • Supported clear BLE legacy advertising on ESP32 (7f8fe95)
  • Supported clear BLE legacy advertising on ESP32-C3 and ESP32-S3. (7f8fe95)
  • Supported ESP32-C3(v1.1) BLE (6481080)
  • Supported extra link retention used for sleep on ESP32-C6, ESP32-H2 (d918b52)
  • Added DTM function on ESP32-C6 and ESP32-H2. (865d29e)
  • Added support for using the RPA to remove the device from the whitelist after the IRK is deleted on ESP32-C2, ESP32-C6 and ESP32-H2. (865d29e)
  • Added config to enable HW recorrect eco on ESP32-C3 and ESP32-S3 (daf1fc7)
  • Added support for using RPA to remove devices from the resolution list on ESP32-C2, ESP32-C6 and ESP32-H2. (f19f1db)
  • Added modem reset when initializing BLE on ESP32-C2, ESP32-C6 and ESP32-H2. (83943ed)
  • Added wake up overhead change on ESP32-C6 and ESP32-H2. (a1c0d9c)
  • Added API to enable/disable pll track on ESP32(4f7e7ce)
  • Added BLE mesh ADV types for exception list on ESP32-C3 and ESP32-S3 (98d9d14)
  • Added BLE mesh ADV types for exception list on ESP32 (6daba77)
  • Added the vendor hci command for adv report flow control on ESP32-C2. (8904d6b)
  • Added the vendor hci command for adv report flow control on ESP32-C6 and ESP32-H2. (db51cee)
  • Added VS commands to support mesh duplicate list for ESP32-C6, ESP32-H2 (a7e5d49)

Changed

  • Improved scan performance when scan and sync coexist on ESP32-C3 and ESP32-S3 (5a603a6)
  • Modified mesh proxy solic uuid to 0x18590303 on ESP32 (7f8fe95)
  • Modified mesh proxy solic uuid to 0x18590303 on ESP32-C3 and ESP32-S3 (daf1fc7)
  • Improved the coexistence performance of ADV in conn throughput on ESP32-C6 and ESP32-H2. (ca78f8b)
  • Moved PHY enable from BT controller initialization to enable on ESP32-C3 and ESP32-S3. (8e5aebe)
  • Changed the power level for ESP32-C6. (aa6a8b7)

Fixed

  • Fixed power state setting when entering modem sleep on ESP32-C3 and ESP32-S3 (7f8fe95)
  • Fixed adv chain pdu tx stopping issue on ESP32C6 and ESP32H2. (3d37631)
  • Fixed scan not stopping after scan window expires on ESP32C2. (3d37631)
  • Fixed peripheral latency without ACL data to send on ESP32C6, ESP32H2 and ESP32C2. (3d37631)
  • Fixed BLE bugs in setting advertising data and scan response data on ESP32-C3 and ESP32-S3. (0f84e7d)
  • Fixed mempool get cause crash issue on ESP32-C6, ESP32-H2 and ESP32-C2. (865d29e)
  • Fixed ble occasional connection timeout issue on ESP32-H2. (865d29e)
  • Fixed occasional abnormal TX behavior issue on ESP32-C6. (865d29e)
  • Fixed msys mempool assert issue on ESP32C6 and ESP32-H2. (865d29e)
  • Fixed crash issue of setting scan response data after enabling nonscannable legacy adv on ESP32-C6 and ESP32-H2. (865d29e)
  • Fixed DTM payload length cannot be 0 on ESP32-C3 and ESP32-S3 (daf1fc7)
  • Reported the number of packets sent on the TX end on ESP32-C3 and ESP32-S3 (daf1fc7)
  • Fixed extended advertising address setting after advertising restart on ESP32-C3 and ESP32-S3. (492c819)
  • Fixed resolvable private address renew after timeout on ESP32-C3 and ESP32-S3. (2c51e10)
  • Fix...
Read more

ESP-IDF Release v5.0.5

15 Dec 03:44
v5.0.5
Compare
Choose a tag to compare

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

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

Obtaining v5.0.5

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

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

Download an archive with submodules included

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

Major changes

  • Increased the maximum supported version of ESP32-C3 to v1.99 (3cab1a0)

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

Changelog

Bluetooth Low Energy (BLE)

Bluetooth Low Energy Controller

Added

  • Added the vendor hci command for adv report flow control on ESP32C2. (d1d4519)
  • Supported clear BLE legacy advertising on ESP32 (a84ad08)
  • Supported clear BLE legacy advertising on ESP32-C3 and ESP32-S3 (a84ad08)
  • Added BLE mesh advertising types for exception list on ESP32C3 and ESP32-S3 (231e822)
  • Support ESP32-C3 (v1.1) BLE (e9ee047)
  • Supported IRAM release in esp_bt_mem_release for ESP32-C2. (349bc17)
  • Added config to enable HW recorrect eco on ESP32-C3 and ESP32-S3 (231e822)
  • Added BLE mesh advertising types for exception list on ESP32 (231e822)
  • Added support for using the RPA to remove the device from the whitelist after the IRK is deleted on ESP32-C2. (ded1414)
  • Added modem reset when initializing BLE on ESP32C2 (00d58a9)
  • Added support for using RPA to remove devices from the resolution list on ESP32-C2. (f8f9998)

Changed

  • Improved the coexistence performance of ADV in conn throughput on ESP32-C6 and ESP32-H2. (d1d4519)
  • Modified mesh proxy solic uuid to 0x18590303 on ESP32 (a84ad08)
  • Modified mesh proxy solic uuid to 0x18590303 on ESP32-C3 and ESP32-S3 (231e822)

Fixed

  • Fixed assert when BLE disconnect due to instant passed on ESP32-C3 and ESP32-S3. (ab5576d)
  • Fixed add RPA to white list on ESP32-C3 and ESP32-S3. (ab5576d)
  • Fixed AES encryption for RPA resolution on ESP32-C3 and ESP32-S3. (ab5576d)
  • Fixed the occasional issue of being unable to receive packets on ESP32-C2. (a5c2e40)
  • Fixed extended adv tx issue when connection and adv coexist on ESP32-C2. (a5c2e40)
  • Fixed BLE occasional connection timeout after connection params update process on ESP32C2. (a5c2e40)
  • Fixed BLE bugs in setting advertising data and scan response data on ESP32-C3 and ESP32-S3 (a84ad08)
  • Fixed power state setting when entering modem sleep on ESP32-C3 and ESP32-S3 (a84ad08)
  • Fixed scan not stopping after scan window expires on ESP32C2. (02089b1)
  • Fixed peripheral latency without ACL data to send on ESP32C2. (02089b1)
  • Fixed DTM payload length cannot be 0 on ESP32-C3 and ESP32-S3 (231e822)
  • Report the number of packets sent on the TX end on ESP32-C3 and ESP32-S3 (231e822)
  • Fixed resolvable private address renew after timeout on ESP32-C3 and ESP32-S3 (231e822)
  • Fixed address resolution for directed advertising when scanning on ESP32-C3 and ESP32-S3 (231e822)
  • Fixed extended advertising address setting after advertising restart on ESP32-C3 and ESP32-S3 (231e822)
  • Fixed mempool get cause crash issue on ESP32C2. (ded1414)
  • Fixed PHY enable and disable for BLE controller on ESP32-C3 and ESP32-S3 (caf6660)
  • Fixed advertising random delay when advertising interval is less than 20ms on ESP32-C3 and ESP32-S3 (caf6660)
  • Fixed advertising random address setting when owner address type is public on ESP32-C3 and ESP32-S3 (caf6660)
  • Fixed instant setting for BLE LLC procedures with instants on ESP32 (caf6660)
  • Fixed advertising random delay when advertising interval is less than 20ms on ESP32 (caf6660)
  • Fixed connect parameter update issue on ESP32-C2. (d1d4519)
  • Fixed add(remove) RPA to(from) white list on ESP32-C3 and ESP32-S3. (9fe3bf2)

ESP Bluedroid Host

Added

  • Bluedroid: Supported LE GATT service database hash calculate (87aeb49)
  • Bluedroid: Supported LE GATT robust caching feature (87aeb49)
  • Bluedroid: Supported LE periodic advertising sync transfer (87aeb49)
  • Bluedroid: Supported LE L2CAP credit based connection (87aeb49)
  • Bluedroid: Supported SMP OOB pairing for LE secure connection (87aeb49)
  • Bluedroid: Added internal GATT API for BLE PTS (87aeb49)
  • Bluedroid: Added characteristics for LE GAP and GATT service (87aeb49)
  • Bluedroid: Added API to clear BLE legacy advertising (a84ad08)
  • Bluedroid: Supported BLE GATTC notify registration number (52ff470)
  • Bluedroid: Supported control point in BLE HID example (52ff470)
  • Bluedroid: Supported BLE scan response data length to zero (467cae8)
  • Bluedroid: Supported high duty advertising interval setting (caf6660)
  • Bluedroid: Support periodic ADI feature (caf6660)
  • Bluedroid: Added BLE GATTS local database print API (87aeb49)
  • Bluedroid: Added BLE periodic advertising sync transfer API and EVT (87aeb49)
  • Bluedroid: Added GATTC read multiple variable length characteristic API and EVT (87aeb49)

Changed

  • Bluedroid: Optimized compatibility with IOS and MACOS devices (52ff470)
  • Bluedroid: Deleted one HID service to optimize compatibility with Android 10 and later devices (52ff470)
  • Bluedroid: Optimized the description of BLE scan duplicate (467cae8)
  • Bluedroid: Updated comments in BLE (caf6660)

Fixed

  • Bluedroid: Fixed adding RPA to white list error (ab5576d)
  • Bluedroid: Fixed BLE advertising scan response event type (6d77fe9)
  • Bluedroid: Fixed BLE key size check error (6d77fe9)
  • Bluedroid: Fixed BLE load bond information error after reboot (2aa66f5)
  • Bluedroid: Fixed encryption key size check error in BLE SMP (52ff470)
  • Bluedroid: Fixed HID example stack overflow bugs when using ESP32-S3 (467cae8)
  • Bluedroid: Fixed remove resolving list error for ESP32 (467cae8)
  • Bluedroid: Fixed bugs in handling reading requests for GATT service changes characteristic (467cae8)
  • Bluedroid: Fixed setting periodic advertising data error (467cae8)
  • Bluedroid: Fixed address check when using NRPA as random device address (caf6660)
  • Bluedroid: Report BLE disconnect event after BLE link closed (caf6660)
  • Bluedroid: Fixed BLE GATTC cache address saving when the cache list is full (caf6660)
  • Bluedroid: Fixed bug while calculating block cipher using AES-128 (caf6660)
  • Bluedroid: Fixed timeout error when updating connection params (caf6660)
  • Bluedroid: Fixed connection parameter validation error (caf6660)
  • Bluedroid: Fixed GATT multiple notifications and robust caching (87aeb49)
  • Bluedroid: Fixed an issue where memory resources were not properly released when devices disconnected (3da1684)

ESP NimBLE Host

Added

  • Added check to validate allowed random address (893dac6)

Changed

  • Nimble: Added change to initiate pairing when enc fails with key missing reason (13fdffb)
  • Nimble: Added support for high duty adv interval (e3f05d0)
  • Nimble: Added event for reattempt connection count information (3f55377)
  • Nimble: Added log information for extended advertising (6d7c585)
  • Nimble: Added queue congestion check for BLE adv report (840d8a2)

Fixed

  • Nimble: Updated BLE PHY example for nimble (35bc5c3)
  • Handled the Load access fault crash caused due to an invalid setting of index-variable 'reattempt_idx'. (20d8259)
  • Handled deletion of IRK/LTK on basis of key availability. (b1e88e3)
  • Handled the deletion of RPA mapping. (b1e88e3)

Removed

  • Nimble: Removed occurance of IRAM_ATTR from internal files. (1f34bec)
  • Nimble: Removed unused coex header inclusion (2007f2f)
  • Removed Menuconfig option BT_NIMBLE_COEX_PHY_CODED_TX_RX_TLIM (46c75fc)

ESP-BLE-Mesh

Fixed

  • MESH: Fixed compilation failure while using scene model (6a33321)
  • MESH: Fixed PB-GATT adv packets reported to app layer too frequently (3df12b0)

Classic Bluetooth

Classic Bluetooth Bluedroid Host

Added

  • Bluedroid: Added argument check in some APIs of HFP AG (5c1f5f2)
  • Bluedroid: Added peer Bluetooth device address into HF callback parameters (6314d35)
  • Bluedroid: Added new API functions that can add 32 and 128-bit UUID to the EIR data (d920052)
  • Bluedroid: Added support for build different roles in corresponding profile HID and HFP into a single binary (2d00212)
  • Bluedroid: Added supprot for specific indicator sending from AG to Client. (64639bb)
  • Bluedroid: Added an API to terminate an ongoing call from HF client side (6314d35)
  • Bluedroid: Added two new APIs for HFP performance test to collect statistics of synchronous stream transmission and reception (6314d35)

Changed

  • Bluedroid: Changed the description of esp_hf_client_reject_call (6314d35)
  • Bluedroid: Changed log level from WARNING to DEBUG in bta_ag_sco_read_cback when received packets with invalid air mode (6314d35)
  • Bluedroid: Replaced API esp_hf_ag_devices_status_indchange with esp_hf_ag_ciev_report (478ac96)
  • Bluedroid: Modified the operator name to English in hfp_ag example. (64639bb)
  • Bluedroid: Modified AT+CNUM response api and HFP AG example. (64639bb)

**...

Read more

ESP-IDF Pre-release v5.2-beta1

13 Dec 08:36
v5.2-beta1
Compare
Choose a tag to compare
Pre-release

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

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

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

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

Download an archive with submodules included

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

Major changes

This is a list of changes since IDF v5.1.

Major Features

  • Added preview support for ESP32-P4
  • Added support for ESP32-C3 chip revision v1.1 (6481080)
  • Added external coexist support for ESP32-H2/ESP32-C6 as a follower (8d48ff5)
  • Added support of light sleep for ieee80254 on chip ESP32-C6 (f64a6bc)
  • Supported ESP32-C6 PMP and PMA sleep retention (d899199)
  • ADC: Supported ADC calibration on ESP32-H2 (4331ae7)
  • ADC: Supported ADC calibration V2 on ESP32-C6 (028c7be)
  • I2C: Added new I2C Slave driver (fec9a11)
  • I2C: Added new I2C master driver (96bf37a)
  • UART: Added a new LP_UART port for UART driver on ESP32C6 (03d4fa2)
  • MCPWM: Added FOC SVPWM open loop example (2975cc5)
  • PSRAM: Supported 32MB Octal PSRAM (APS256XXN) on ESP32S3 (e3fea3a)
  • USB Host: Restrict ESP32-S2 USB OTG AHB errata workaround to only ESP32-S2 ECO0 chips. Other chips and ECOs will no longer be affected by USB OTG DMA usage. (4fc2e5c)
  • NVS Flash: Added support for HMAC peripheral-based NVS encryption scheme (d00e7b5)
  • Added new flash GD25QL255E support (a754efc)
  • Added new TWAI driver APIs to support multiple controller instances (#11383) (d4dbacf)
  • Added USB-NCM example that demonstrates USB to WiFi bridge (9f9bd8c)
  • FreeRTOS: Upgraded IDF FreeRTOS kernel to v10.5.1 LTS. (b0124b9)

Major Bug Fixes

  • Efuse: Fixed the burning issue when RS coding data is left at zero. (#12489) (172b7e4)
  • Spi Flash: Fixed concurrency issue when concurrently calling esp_flash APIs under XIP_PSRAM or Auto-suspend condition (ad0345a)

Breaking Changes

  • Python 3.7 is no longer supported by the community, therefore, ESP-IDF installations will require Python 3.8 or newer versions (4bbc57c)
  • SPI Flash: Now HPM-DC (Quad Flash > 80MHz on some flash models) is no longer enabled by default because it needs bootloader support. Without this support, some flash chips are not able to run > 80 MHz. Read Programming guide SPI Flash API > Optional Features for Flash > High Performance Mode to know how to enable this feature on new projects or re-enable it on existing projects. (d2d75ef)
  • Modified the 11AX esp_wifi_rxctrl_t member noise_floor from unsigned 8 to signed 8 (42db3c8)
  • Added more descriptive reason codes upon station disconnect due to no AP found, original WIFI_REASON_NO_AP_FOUND now will be WIFI_REASON_NO_AP_FOUND, WIFI_REASON_NO_AP_FOUND_W_COMPATIBLE_SECURITY, WIFI_REASON_NO_AP_FOUND_IN_AUTHMODE_THRESHOLD and
    WIFI_REASON_NO_AP_FOUND_IN_RSSI_THRESHOLD (2fa1e2b)

Known Issues

  • No Docker images have been published for v5.2-beta1 release on Docker Hub.
  • The ESP32-C3 and ESP32-S3 may experience a system crash with a low probability during the BLE connection update or channel map update procedure.
  • There is a possibility of unintended memory writes due to an issue in the NimBLE host when handling bonded peers.
  • Chips fail to connect to AP with WEP encryption.This has been fixed in 83d9e817

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

Changelog

802.15.4

802.15.4 MAC

Added

  • Added debug feature for driver (685dff0)
  • Added support of light sleep for ieee80254 on chip esp32c6 (f64a6bc)
  • Open source driver code (5d222db)

Changed

  • Match ESP32-C6/ESP32-H2 max txpower value with datasheet (80e1c5a)
  • Updated coex_arb_delay reg (54e45c7)

Fixed

  • Fixed multipan api errorg (54e45c7)
  • Fixed a typo in set_channel API (8c5a395)

Thread

Added

  • Added deep sleep support for SED (a25673e)
  • Supported time synchronization feature (f6c76aa)
  • Added support to allocate message pool from PSRAM (a9349f4)
  • Added support for border router deinit. (c1e464a)
  • Added configuration for setting mesh local prefix (32ad8f1)
  • Added the default DNS server address configuration (bb12cda)
  • Supported border router to communicate with the SSED (8fd6e73)
  • Support border router to response the link metrics registration (8fd6e73)
  • Added openthread border agent id support (42e18dd)
  • Added event post for OpenThread role changed (28a6aeb)
  • Introduced the auto start API (72972db)

Changed

  • Host connection logic refactor (fbf8d06)
  • Added rcp size optimization configuration (a5caa1c)
  • Updated openthread upstream (fd90671)
  • Optimized Thread Sleepy device power consumption by disabling ND6 timer (7af7723)

Fixed

  • Make OTBR's discovery delegate be able to reply selfhosted service (fce25bc)
  • Fixed removing client service failure in some cases (c1e464a)
  • Fixed curl failure in NAT64 (c1e464a)
  • Fixed multi connection issue in NAT64 (c1e464a)
  • Fixed openthread settings get next empty index (c135efe)
  • Fixed memory leak for handling ICMP6 MLQ packets (871943a)
  • Fixed set mcast forwarding enable (871943a)
  • Fixed an out-of-range memory issue when calling NVS API (453dc6a)
  • Fixed dead lock issue related to ot and lwip (acbdbbb)
  • Fixed assert when parsing security key failed (523e259)
  • Fixed frame counter setting bugs when re-transmition (38b4952)
  • Call sleep api only in native radio (8019d6d)

Zigbee

Changed

  • Updated the zigbee example to adapt the newest esp zigbee and zboss lib version (a287a0b)

Bluetooth Low Energy (BLE)

Bluetooth Low Energy Controller

Added

  • Supported IRAM release in esp_bt_mem_release for ESP32-C2. (59417a4)
  • Supported clear BLE legacy advertising on ESP32 (7f8fe95)
  • Supported clear BLE legacy advertising on ESP32-C3 and ESP32-S3. (7f8fe95)
  • Supported ESP32-C3(v1.1) BLE (6481080)
  • Supported extra link retention used for sleep on ESP32-C6, ESP32-H2 (d918b52)
  • Added DTM function on ESP32-C6 and ESP32-H2. (865d29e)
  • Added support for using the RPA to remove the device from the whitelist after the IRK is deleted on ESP32-C2, ESP32-C6 and ESP32-H2. (865d29e)
  • Added config to enable HW recorrect eco on ESP32-C3 and ESP32-S3 (daf1fc7)
  • Added support for using RPA to remove devices from the resolution list on ESP32-C2, ESP32-C6 and ESP32-H2. (f19f1db)
  • Added modem reset when initializing BLE on ESP32-C2, ESP32-C6 and ESP32-H2. (83943ed)
  • Added wake up overhead change on ESP32-C6 and ESP32-H2. (a1c0d9c)
  • Added API to enable/disable pll track on ESP32(4f7e7ce)
  • Added BLE mesh ADV types for exception list on ESP32-C3 and ESP32-S3 (98d9d14)
  • Added BLE mesh ADV types for exception list on ESP32 (6daba77)
  • Added the vendor hci command for adv report flow control on ESP32-C2. (8904d6b)
  • Added the vendor hci command for adv report flow control on ESP32-C6 and ESP32-H2. (db51cee)
  • Added VS commands to support mesh duplicate list for ESP32-C6, ESP32-H2 (a7e5d49)

Changed

  • Improved scan performance when scan and sync coexist on ESP32-C3 and ESP32-S3 (5a603a6)
  • Modified mesh proxy solic uuid to 0x18590303 on ESP32 (7f8fe95)
  • Modified mesh proxy solic uuid to 0x18590303 on ESP32-C3 and ESP32-S3 (daf1fc7)
  • Improved the coexistence performance of ADV in conn throughput on ESP32-C6 and ESP32-H2. (ca78f8b)
  • Moved PHY enable from BT controller initialization to enable on ESP32-C3 and ESP32-S3. (8e5aebe)
  • Changed the power level for ESP32-C6. (aa6a8b7)

Fixed

  • Fixed power state setting when entering modem sleep on ESP32-C3 and ESP32-S3 (7f8fe95)
  • Fixed adv chain pdu tx stopping issue on ESP32C6 and ESP32H2. (3d37631)
  • Fixed scan not stopping after scan window expires on ESP32C2. (3d37631)
  • Fixed peripheral latency without ACL data to send on ESP32C6, ESP32H2 and ESP32C2. (3d37631)
  • Fixed BLE bugs in setting adv data and scan response data on ESP32-C3 and ESP32-S3. (0f84e7d)
  • Fixed mempool get cause crash issue on ESP32-C6, ESP32-H2 and ESP32-C2. (865d29e)
  • Fixed ble occasional connection timeout issue on ESP32-H2. (865d29e)
  • Fixed occasional abnormal TX behavior issue on ESP32-C6. (865d29e)
  • Fixed msys mempool assert issue on ESP32C6 and ESP32-H2. (865d29e)
  • Fixed crash issue of setting scan response data after enabling nonscannable legacy adv on ESP32-C6 and ESP32-H2. (865d29e)
  • Fixed DTM payload length cannot be 0 on ESP32-C3 and ESP32-S3 (daf1fc7)
  • Reported the number of packets sent on the TX end on ESP32-C3 and ESP32-S3 (daf1fc7)
  • Fixed extended advertising address setting after advertising restart on ESP32-C3 and ESP32-S3. (492c819)
  • Fixed resolvable private address renew after timeout on ESP32-C3 and ESP32-S3. (2c51e1...
Read more