Răsfoiți Sursa

Merge branch 'feature/modify_bt_sdkconfig_to_support_bluedroid_on_esp32c6' into 'master'

modify bt sdkconfig to support bluedroid examples for esp32c6

Closes IDF-6525 and BT-3113

See merge request espressif/esp-idf!21928
Island 3 ani în urmă
părinte
comite
1157657664
69 a modificat fișierele cu 340 adăugiri și 137 ștergeri
  1. 9 2
      components/bt/controller/esp32c2/Kconfig.in
  2. 13 5
      components/bt/controller/esp32c6/Kconfig.in
  3. 12 5
      components/bt/controller/esp32h4/Kconfig.in
  4. 10 1
      components/bt/porting/npl/freertos/include/nimble/npl_freertos.h
  5. 19 19
      components/bt/porting/npl/freertos/src/npl_os_freertos.c
  6. 119 18
      examples/bluetooth/.build-test-rules.yml
  7. 2 2
      examples/bluetooth/bluedroid/ble/ble_ancs/README.md
  8. 3 0
      examples/bluetooth/bluedroid/ble/ble_ancs/sdkconfig.defaults
  9. 2 2
      examples/bluetooth/bluedroid/ble/ble_compatibility_test/README.md
  10. 3 0
      examples/bluetooth/bluedroid/ble/ble_compatibility_test/sdkconfig.defaults
  11. 2 2
      examples/bluetooth/bluedroid/ble/ble_eddystone/README.md
  12. 3 0
      examples/bluetooth/bluedroid/ble/ble_eddystone/sdkconfig.defaults
  13. 2 2
      examples/bluetooth/bluedroid/ble/ble_hid_device_demo/README.md
  14. 3 0
      examples/bluetooth/bluedroid/ble/ble_hid_device_demo/sdkconfig.defaults
  15. 2 2
      examples/bluetooth/bluedroid/ble/ble_ibeacon/README.md
  16. 3 0
      examples/bluetooth/bluedroid/ble/ble_ibeacon/sdkconfig.defaults
  17. 2 2
      examples/bluetooth/bluedroid/ble/ble_spp_client/README.md
  18. 3 0
      examples/bluetooth/bluedroid/ble/ble_spp_client/sdkconfig.defaults
  19. 2 2
      examples/bluetooth/bluedroid/ble/ble_spp_server/README.md
  20. 3 0
      examples/bluetooth/bluedroid/ble/ble_spp_server/sdkconfig.defaults
  21. 2 2
      examples/bluetooth/bluedroid/ble/ble_throughput/throughput_client/README.md
  22. 3 0
      examples/bluetooth/bluedroid/ble/ble_throughput/throughput_client/sdkconfig.defaults
  23. 2 2
      examples/bluetooth/bluedroid/ble/ble_throughput/throughput_server/README.md
  24. 3 0
      examples/bluetooth/bluedroid/ble/ble_throughput/throughput_server/sdkconfig.defaults
  25. 2 2
      examples/bluetooth/bluedroid/ble/gatt_client/README.md
  26. 3 0
      examples/bluetooth/bluedroid/ble/gatt_client/sdkconfig.defaults
  27. 2 2
      examples/bluetooth/bluedroid/ble/gatt_security_client/README.md
  28. 3 0
      examples/bluetooth/bluedroid/ble/gatt_security_client/sdkconfig.defaults
  29. 2 2
      examples/bluetooth/bluedroid/ble/gatt_security_server/README.md
  30. 3 0
      examples/bluetooth/bluedroid/ble/gatt_security_server/sdkconfig.defaults
  31. 2 2
      examples/bluetooth/bluedroid/ble/gatt_server/README.md
  32. 3 0
      examples/bluetooth/bluedroid/ble/gatt_server/sdkconfig.defaults
  33. 2 2
      examples/bluetooth/bluedroid/ble/gatt_server_service_table/README.md
  34. 3 0
      examples/bluetooth/bluedroid/ble/gatt_server_service_table/sdkconfig.defaults
  35. 2 2
      examples/bluetooth/bluedroid/ble/gattc_multi_connect/README.md
  36. 3 0
      examples/bluetooth/bluedroid/ble/gattc_multi_connect/sdkconfig.defaults
  37. 2 2
      examples/bluetooth/bluedroid/ble_50/ble50_security_client/README.md
  38. 2 2
      examples/bluetooth/bluedroid/ble_50/ble50_security_server/README.md
  39. 2 2
      examples/bluetooth/bluedroid/ble_50/multi-adv/README.md
  40. 1 0
      examples/bluetooth/bluedroid/ble_50/multi-adv/sdkconfig.defaults
  41. 2 2
      examples/bluetooth/bluedroid/ble_50/peroidic_adv/README.md
  42. 2 2
      examples/bluetooth/bluedroid/ble_50/peroidic_sync/README.md
  43. 2 2
      examples/bluetooth/bluedroid/coex/gattc_gatts_coex/README.md
  44. 3 0
      examples/bluetooth/bluedroid/coex/gattc_gatts_coex/sdkconfig.defaults
  45. 2 2
      examples/bluetooth/blufi/README.md
  46. 13 0
      examples/bluetooth/blufi/sdkconfig.defaults.esp32c6
  47. 2 2
      examples/bluetooth/esp_ble_mesh/ble_mesh_console/README.md
  48. 2 2
      examples/bluetooth/esp_ble_mesh/ble_mesh_fast_provision/fast_prov_client/README.md
  49. 2 2
      examples/bluetooth/esp_ble_mesh/ble_mesh_fast_provision/fast_prov_server/README.md
  50. 2 2
      examples/bluetooth/esp_ble_mesh/ble_mesh_node/onoff_client/README.md
  51. 2 2
      examples/bluetooth/esp_ble_mesh/ble_mesh_node/onoff_server/README.md
  52. 2 2
      examples/bluetooth/esp_ble_mesh/ble_mesh_provisioner/README.md
  53. 2 2
      examples/bluetooth/esp_ble_mesh/ble_mesh_sensor_model/sensor_client/README.md
  54. 2 2
      examples/bluetooth/esp_ble_mesh/ble_mesh_sensor_model/sensor_server/README.md
  55. 2 2
      examples/bluetooth/esp_ble_mesh/ble_mesh_vendor_model/vendor_client/README.md
  56. 2 2
      examples/bluetooth/esp_ble_mesh/ble_mesh_vendor_model/vendor_server/README.md
  57. 2 2
      examples/bluetooth/esp_ble_mesh/ble_mesh_wifi_coexist/README.md
  58. 2 2
      examples/bluetooth/esp_ble_mesh/ble_mesh_wifi_coexist/README_CN.md
  59. 5 0
      examples/bluetooth/esp_hid_device/sdkconfig.defaults.esp32c6
  60. 5 0
      examples/bluetooth/esp_hid_host/sdkconfig.defaults.esp32c6
  61. 2 2
      examples/bluetooth/nimble/ble_spp/spp_client/README.md
  62. 2 2
      examples/bluetooth/nimble/ble_spp/spp_server/README.md
  63. 2 2
      examples/bluetooth/nimble/blecent/README.md
  64. 2 2
      examples/bluetooth/nimble/blehr/README.md
  65. 2 2
      examples/bluetooth/nimble/bleprph/README.md
  66. 2 2
      examples/bluetooth/nimble/bleprph_wifi_coex/README.md
  67. 2 3
      examples/bluetooth/nimble/hci/README.md
  68. 2 2
      examples/bluetooth/nimble/throughput_app/blecent_throughput/README.md
  69. 2 2
      examples/bluetooth/nimble/throughput_app/bleprph_throughput/README.md

+ 9 - 2
components/bt/controller/esp32c2/Kconfig.in

@@ -207,13 +207,13 @@ menu "Memory Settings"
 
     config BT_LE_ACL_BUF_COUNT
         int "ACL Buffer count"
-        default 24
+        default 10
         help
             The number of ACL data buffers.
 
     config BT_LE_ACL_BUF_SIZE
         int "ACL Buffer size"
-        default 255
+        default 517
         help
             This is the maximum size of the data portion of HCI ACL data packets.
             It does not include the HCI data header (of 4 bytes)
@@ -387,3 +387,10 @@ choice BT_LE_WAKEUP_SOURCE
         help
             Use BLE rtc timer to wakeup CPU
 endchoice
+
+config BT_LE_USE_ESP_TIMER
+    bool "Use Esp Timer for callout"
+    depends on !BT_NIMBLE_ENABLED
+    default y
+    help
+        Set this option to use Esp Timer which has higher priority timer instead of FreeRTOS timer

+ 13 - 5
components/bt/controller/esp32c6/Kconfig.in

@@ -159,7 +159,7 @@ config BT_LE_MAX_PERIODIC_SYNCS
     int "Maximum number of periodic advertising syncs"
     depends on BT_LE_50_FEATURE_SUPPORT && !BT_NIMBLE_ENABLED
 
-    range 0 3
+    range 0 8
     default 1 if BT_LE_ENABLE_PERIODIC_ADV
     default 0
     help
@@ -207,13 +207,13 @@ menu "Memory Settings"
 
     config BT_LE_ACL_BUF_COUNT
         int "ACL Buffer count"
-        default 24
+        default 10
         help
             The number of ACL data buffers.
 
     config BT_LE_ACL_BUF_SIZE
         int "ACL Buffer size"
-        default 255
+        default 517
         help
             This is the maximum size of the data portion of HCI ACL data packets.
             It does not include the HCI data header (of 4 bytes)
@@ -333,8 +333,8 @@ config BT_LE_LL_SCA
 config BT_LE_MAX_CONNECTIONS
     int "Maximum number of concurrent connections"
     depends on !BT_NIMBLE_ENABLED
-    range 1 2
-    default 2
+    range 1 9
+    default 3
     help
         Defines maximum number of concurrent BLE connections. For ESP32, user
         is expected to configure BTDM_CTRL_BLE_MAX_CONN from controller menu
@@ -387,3 +387,11 @@ choice BT_LE_WAKEUP_SOURCE
         help
             Use BLE rtc timer to wakeup CPU
 endchoice
+
+config BT_LE_USE_ESP_TIMER
+    bool "Enable Esp Timer for Callout"
+    depends on !BT_NIMBLE_ENABLED
+    default y
+    help
+        Set this option to use Esp Timer which has higher priority timer
+        instead of FreeRTOS timer

+ 12 - 5
components/bt/controller/esp32h4/Kconfig.in

@@ -159,7 +159,7 @@ config BT_LE_MAX_PERIODIC_SYNCS
     int "Maximum number of periodic advertising syncs"
     depends on BT_LE_50_FEATURE_SUPPORT && !BT_NIMBLE_ENABLED
 
-    range 0 3
+    range 0 8
     default 1 if BT_LE_ENABLE_PERIODIC_ADV
     default 0
     help
@@ -207,13 +207,13 @@ menu "Memory Settings"
 
     config BT_LE_ACL_BUF_COUNT
         int "ACL Buffer count"
-        default 24
+        default 10
         help
             The number of ACL data buffers.
 
     config BT_LE_ACL_BUF_SIZE
         int "ACL Buffer size"
-        default 255
+        default 517
         help
             This is the maximum size of the data portion of HCI ACL data packets.
             It does not include the HCI data header (of 4 bytes)
@@ -333,7 +333,7 @@ config BT_LE_LL_SCA
 config BT_LE_MAX_CONNECTIONS
     int "Maximum number of concurrent connections"
     depends on !BT_NIMBLE_ENABLED
-    range 1 8
+    range 1 9
     default 3
     help
         Defines maximum number of concurrent BLE connections. For ESP32, user
@@ -381,5 +381,12 @@ choice BT_LE_WAKEUP_SOURCE
         bool "Use ESP timer to wakeup CPU"
         help
             Use esp timer to wakeup CPU
-
 endchoice
+
+config BT_LE_USE_ESP_TIMER
+    bool "Use Esp Timer for callout"
+    depends on !BT_NIMBLE_ENABLED
+    default y
+    help
+        Set this option to use Esp Timer which has higher priority timer
+        instead of FreeRTOS timer

+ 10 - 1
components/bt/porting/npl/freertos/include/nimble/npl_freertos.h

@@ -12,6 +12,15 @@
 #ifdef __cplusplus
 extern "C" {
 #endif
+#include "sdkconfig.h"
+
+#if ((defined(CONFIG_BT_NIMBLE_USE_ESP_TIMER) && CONFIG_BT_NIMBLE_USE_ESP_TIMER) || \
+     (defined(CONFIG_BT_LE_USE_ESP_TIMER) && CONFIG_BT_LE_USE_ESP_TIMER))
+/* Use esp timer instead of FreeRTOS timer to implement the callout. */
+#define BLE_NPL_USE_ESP_TIMER       (1)
+#else
+#define BLE_NPL_USE_ESP_TIMER       (0)
+#endif
 
 typedef struct {
     uint16_t evt_count;
@@ -34,7 +43,7 @@ struct ble_npl_eventq_freertos {
 };
 
 struct ble_npl_callout_freertos {
-#if CONFIG_BT_NIMBLE_USE_ESP_TIMER
+#if BLE_NPL_USE_ESP_TIMER
    esp_timer_handle_t handle;
 #else
     TimerHandle_t handle;

+ 19 - 19
components/bt/porting/npl/freertos/src/npl_os_freertos.c

@@ -27,7 +27,7 @@
 
 portMUX_TYPE ble_port_mutex = portMUX_INITIALIZER_UNLOCKED;
 
-#if CONFIG_BT_NIMBLE_USE_ESP_TIMER
+#if BLE_NPL_USE_ESP_TIMER
 static const char *TAG = "Timer";
 #endif
 
@@ -547,7 +547,7 @@ IRAM_ATTR npl_freertos_sem_release(struct ble_npl_sem *sem)
     return BLE_NPL_OK;
 }
 
-#if CONFIG_BT_NIMBLE_USE_ESP_TIMER
+#if BLE_NPL_USE_ESP_TIMER
 static void
 IRAM_ATTR ble_npl_event_fn_wrapper(void *arg)
 {
@@ -613,7 +613,7 @@ npl_freertos_callout_init(struct ble_npl_callout *co, struct ble_npl_eventq *evq
         memset(callout, 0, sizeof(*callout));
         ble_npl_event_init(&callout->ev, ev_cb, ev_arg);
 
-#if CONFIG_BT_NIMBLE_USE_ESP_TIMER
+#if BLE_NPL_USE_ESP_TIMER
         callout->evq = evq;
 
         esp_timer_create_args_t create_args = {
@@ -637,7 +637,7 @@ npl_freertos_callout_init(struct ble_npl_callout *co, struct ble_npl_eventq *evq
             co->co = NULL;
             return -1;
         }
-#endif // CONFIG_BT_NIMBLE_USE_ESP_TIMER
+#endif // BLE_NPL_USE_ESP_TIMER
     } else {
         callout = (struct ble_npl_callout_freertos *)co->co;
         BLE_LL_ASSERT(callout);
@@ -656,7 +656,7 @@ npl_freertos_callout_init(struct ble_npl_callout *co, struct ble_npl_eventq *evq
         memset(callout, 0, sizeof(*callout));
         ble_npl_event_init(&callout->ev, ev_cb, ev_arg);
 
-#if CONFIG_BT_NIMBLE_USE_ESP_TIMER
+#if BLE_NPL_USE_ESP_TIMER
         callout->evq = evq;
 
         esp_timer_create_args_t create_args = {
@@ -680,7 +680,7 @@ npl_freertos_callout_init(struct ble_npl_callout *co, struct ble_npl_eventq *evq
             co->co = NULL;
             return -1;
         }
-#endif // CONFIG_BT_NIMBLE_USE_ESP_TIMER
+#endif // BLE_NPL_USE_ESP_TIMER
     }
     else {
         callout = (struct ble_npl_callout_freertos *)co->co;
@@ -707,7 +707,7 @@ npl_freertos_callout_deinit(struct ble_npl_callout *co)
     }
 
     ble_npl_event_deinit(&callout->ev);
-#if CONFIG_BT_NIMBLE_USE_ESP_TIMER
+#if BLE_NPL_USE_ESP_TIMER
     esp_err_t err = esp_timer_stop(callout->handle);
     if(err != ESP_OK) {
         if (err != ESP_ERR_INVALID_STATE) { // ESP_ERR_INVALID_STATE is expected when timer is already stopped
@@ -725,7 +725,7 @@ npl_freertos_callout_deinit(struct ble_npl_callout *co)
 #else
     free((void *)callout);
 #endif // OS_MEM_ALLOC
-#endif // CONFIG_BT_NIMBLE_USE_ESP_TIMER
+#endif // BLE_NPL_USE_ESP_TIMER
     co->co = NULL;
     memset(co, 0, sizeof(struct ble_npl_callout));
 }
@@ -742,7 +742,7 @@ ble_npl_error_t
 IRAM_ATTR npl_freertos_callout_reset(struct ble_npl_callout *co, ble_npl_time_t ticks)
 {
     struct ble_npl_callout_freertos *callout = (struct ble_npl_callout_freertos *)co->co;
-#if CONFIG_BT_NIMBLE_USE_ESP_TIMER
+#if BLE_NPL_USE_ESP_TIMER
     esp_timer_stop(callout->handle);
 
     return esp_err_to_npl_error(esp_timer_start_once(callout->handle, ticks*1000));
@@ -780,7 +780,7 @@ IRAM_ATTR npl_freertos_callout_stop(struct ble_npl_callout *co)
 	return;
     }
 
-#if CONFIG_BT_NIMBLE_USE_ESP_TIMER
+#if BLE_NPL_USE_ESP_TIMER
     esp_timer_stop(callout->handle);
 #else
     xTimerStop(callout->handle, portMAX_DELAY);
@@ -791,7 +791,7 @@ bool
 IRAM_ATTR npl_freertos_callout_is_active(struct ble_npl_callout *co)
 {
     struct ble_npl_callout_freertos *callout = (struct ble_npl_callout_freertos *)co->co;
-#if CONFIG_BT_NIMBLE_USE_ESP_TIMER
+#if BLE_NPL_USE_ESP_TIMER
     return esp_timer_is_active(callout->handle);
 #else
     return xTimerIsTimerActive(callout->handle) == pdTRUE;
@@ -801,7 +801,7 @@ IRAM_ATTR npl_freertos_callout_is_active(struct ble_npl_callout *co)
 ble_npl_time_t
 IRAM_ATTR npl_freertos_callout_get_ticks(struct ble_npl_callout *co)
 {
-#if CONFIG_BT_NIMBLE_USE_ESP_TIMER
+#if BLE_NPL_USE_ESP_TIMER
    /* Currently, esp_timer does not support an API which gets the expiry time for
     * current timer.
     * Returning 0 from here should not cause any effect.
@@ -826,7 +826,7 @@ IRAM_ATTR npl_freertos_callout_remaining_ticks(struct ble_npl_callout *co,
 
     struct ble_npl_callout_freertos *callout = (struct ble_npl_callout_freertos *)co->co;
 
-#if CONFIG_BT_NIMBLE_USE_ESP_TIMER
+#if BLE_NPL_USE_ESP_TIMER
 #if ESP_IDF_VERSION >= ESP_IDF_VERSION_VAL(5, 0, 0)
     uint64_t expiry = 0;
     esp_err_t err;
@@ -869,7 +869,7 @@ IRAM_ATTR npl_freertos_callout_set_arg(struct ble_npl_callout *co, void *arg)
 uint32_t
 IRAM_ATTR npl_freertos_time_get(void)
 {
-#if CONFIG_BT_NIMBLE_USE_ESP_TIMER
+#if BLE_NPL_USE_ESP_TIMER
     return esp_timer_get_time() / 1000;
 #else
     return xTaskGetTickCountFromISR();
@@ -880,7 +880,7 @@ ble_npl_error_t
 IRAM_ATTR npl_freertos_time_ms_to_ticks(uint32_t ms, ble_npl_time_t *out_ticks)
 {
     uint64_t ticks;
-#if CONFIG_BT_NIMBLE_USE_ESP_TIMER
+#if BLE_NPL_USE_ESP_TIMER
     ticks = (uint64_t)ms;
 #else
     ticks = ((uint64_t)ms * configTICK_RATE_HZ) / 1000;
@@ -898,7 +898,7 @@ ble_npl_error_t
 IRAM_ATTR npl_freertos_time_ticks_to_ms(ble_npl_time_t ticks, uint32_t *out_ms)
 {
     uint64_t ms;
-#if CONFIG_BT_NIMBLE_USE_ESP_TIMER
+#if BLE_NPL_USE_ESP_TIMER
     ms = ((uint64_t)ticks);
 #else
     ms = ((uint64_t)ticks * 1000) / configTICK_RATE_HZ;
@@ -915,7 +915,7 @@ IRAM_ATTR npl_freertos_time_ticks_to_ms(ble_npl_time_t ticks, uint32_t *out_ms)
 ble_npl_time_t
 IRAM_ATTR npl_freertos_time_ms_to_ticks32(uint32_t ms)
 {
-#if CONFIG_BT_NIMBLE_USE_ESP_TIMER
+#if BLE_NPL_USE_ESP_TIMER
     return ms;
 #else
     return ms * configTICK_RATE_HZ / 1000;
@@ -925,7 +925,7 @@ IRAM_ATTR npl_freertos_time_ms_to_ticks32(uint32_t ms)
 uint32_t
 IRAM_ATTR npl_freertos_time_ticks_to_ms32(ble_npl_time_t ticks)
 {
-#if CONFIG_BT_NIMBLE_USE_ESP_TIMER
+#if BLE_NPL_USE_ESP_TIMER
     return ticks;
 #else
     return ticks * 1000 / configTICK_RATE_HZ;
@@ -935,7 +935,7 @@ IRAM_ATTR npl_freertos_time_ticks_to_ms32(ble_npl_time_t ticks)
 void
 IRAM_ATTR npl_freertos_time_delay(ble_npl_time_t ticks)
 {
-#if CONFIG_BT_NIMBLE_USE_ESP_TIMER
+#if BLE_NPL_USE_ESP_TIMER
     vTaskDelay(ticks / portTICK_PERIOD_MS);
 #else
     vTaskDelay(ticks);

+ 119 - 18
examples/bluetooth/.build-test-rules.yml

@@ -2,129 +2,230 @@
 
 examples/bluetooth/bluedroid/ble:
   enable:
-    - if: IDF_TARGET in ["esp32", "esp32c2", "esp32c3", "esp32h4", "esp32s3"]
+    - if: IDF_TARGET in ["esp32", "esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"]
       temporary: true
       reason: the other targets are not tested yet
+  disable_test:
+    - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"]
+      temporary: true
+      reason: The runner doesn't support yet
 
 examples/bluetooth/bluedroid/ble_50:
   enable:
-    - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3"]
+    - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"]
       temporary: true
       reason: the other targets are not tested yet
+  disable_test:
+    - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"]
+      temporary: true
+      reason: The runner doesn't support yet
 
 examples/bluetooth/bluedroid/ble_50/multi-adv:
   enable:
-    - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32s3"]
+    - if: IDF_TARGET in ["esp32c3", "esp32h4", "esp32s3", "esp32c6"]
       temporary: true
       reason: the other targets are not tested yet
+  disable_test:
+    - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"]
+      temporary: true
+      reason: The runner doesn't support yet
 
 examples/bluetooth/bluedroid/classic_bt:
   enable:
     - if: IDF_TARGET == "esp32"
       temporary: true
       reason: the other targets are not tested yet
+  disable_test:
+    - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"]
+      temporary: true
+      reason: The runner doesn't support yet
 
 examples/bluetooth/bluedroid/coex/a2dp_gatts_coex:
   enable:
     - if: IDF_TARGET == "esp32"
       temporary: true
       reason: the other targets are not tested yet
+  disable_test:
+    - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"]
+      temporary: true
+      reason: The runner doesn't support yet
 
 examples/bluetooth/bluedroid/coex/gattc_gatts_coex:
   enable:
-    - if: IDF_TARGET in ["esp32", "esp32c3"]
+    - if: IDF_TARGET in ["esp32", "esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"]
       temporary: true
       reason: the other targets are not tested yet
+  disable_test:
+    - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"]
+      temporary: true
+      reason: The runner doesn't support yet
 
 examples/bluetooth/blufi:
   enable:
-    - if: IDF_TARGET in ["esp32", "esp32c2", "esp32c3", "esp32s3"]
+    - if: IDF_TARGET in ["esp32", "esp32c2", "esp32c3", "esp32s3", "esp32c6"]
       temporary: true
       reason: the other targets are not tested yet
+  disable_test:
+    - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"]
+      temporary: true
+      reason: The runner doesn't support yet
 
 examples/bluetooth/esp_ble_mesh:
   enable:
-    - if: IDF_TARGET == "esp32"
+    - if: IDF_TARGET in ["esp32", "esp32c3", "esp32s3", "esp32c6"]
+      temporary: true
+      reason: the other targets are not tested yet
+  disable_test:
+    - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"]
+      temporary: true
+      reason: The runner doesn't support yet
+
+examples/bluetooth/esp_ble_mesh/aligenie_demo:
+  enable:
+    - if: IDF_TARGET in ["esp32"]
       temporary: true
       reason: the other targets are not tested yet
+  disable_test:
+    - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"]
+      temporary: true
+      reason: The runner doesn't support yet
 
-examples/bluetooth/esp_ble_mesh/ble_mesh_console:
+examples/bluetooth/esp_ble_mesh/ble_mesh_coex_test:
   enable:
-    - if: IDF_TARGET in ["esp32", "esp32c3", "esp32s3"]
+    - if: IDF_TARGET in ["esp32"]
       temporary: true
       reason: the other targets are not tested yet
+  disable_test:
+    - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"]
+      temporary: true
+      reason: The runner doesn't support yet
 
 examples/bluetooth/esp_hid_device:
   enable:
     - if: IDF_TARGET == "esp32"
       temporary: true
       reason: the other targets are not tested yet
+  disable_test:
+    - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"]
+      temporary: true
+      reason: The runner doesn't support yet
 
 examples/bluetooth/esp_hid_host:
   enable:
     - if: IDF_TARGET == "esp32"
       temporary: true
       reason: the other targets are not tested yet
+  disable_test:
+    - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"]
+      temporary: true
+      reason: The runner doesn't support yet
 
 examples/bluetooth/hci/ble_adv_scan_combined:
   enable:
     - if: IDF_TARGET == "esp32"
       temporary: true
       reason: the other targets are not tested yet
+  disable_test:
+    - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"]
+      temporary: true
+      reason: The runner doesn't support yet
 
 examples/bluetooth/hci/controller_hci_uart_esp32:
   enable:
     - if: IDF_TARGET == "esp32"
+      temporary: true
+      reason: the other targets are not tested yet
+  disable_test:
+    - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"]
+      temporary: true
+      reason: The runner doesn't support yet
 
 examples/bluetooth/hci/controller_hci_uart_esp32c3_and_esp32s3:
   enable:
     - if: IDF_TARGET in ["esp32c3", "esp32s3"]
+      temporary: true
+      reason: the other targets are not tested yet
+  disable_test:
+    - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"]
+      temporary: true
+      reason: The runner doesn't support yet
 
 examples/bluetooth/hci/controller_vhci_ble_adv:
   enable:
     - if: IDF_TARGET == "esp32"
       temporary: true
       reason: the other targets are not tested yet
-
-examples/bluetooth/nimble:
-  enable:
-    - if: IDF_TARGET == "esp32"
+  disable_test:
+    - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"]
       temporary: true
+      reason: The runner doesn't support yet
 
-      reason: not tested yet
-
-examples/bluetooth/nimble/ble_l2cap_coc:
+examples/bluetooth/nimble:
   enable:
     - if: IDF_TARGET in ["esp32", "esp32c2", "esp32c3", "esp32s3"]
       temporary: true
       reason: the other targets are not tested yet
+  disable_test:
+    - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"]
+      temporary: true
+      reason: The runner doesn't support yet
 
 examples/bluetooth/nimble/ble_periodic_adv:
   enable:
     - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32s3"]
       temporary: true
       reason: the other targets are not tested yet
+  disable_test:
+    - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"]
+      temporary: true
+      reason: The runner doesn't support yet
 
 examples/bluetooth/nimble/ble_periodic_sync:
   enable:
     - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32s3"]
       temporary: true
       reason: the other targets are not tested yet
+  disable_test:
+    - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"]
+      temporary: true
+      reason: The runner doesn't support yet
 
 examples/bluetooth/nimble/ble_phy:
   enable:
     - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32s3"]
       temporary: true
       reason: the other targets are not tested yet
+  disable_test:
+    - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"]
+      temporary: true
+      reason: The runner doesn't support yet
 
-examples/bluetooth/nimble/ble_spp:
+examples/bluetooth/nimble/blemesh:
   enable:
-    - if: IDF_TARGET in ["esp32", "esp32c3", "esp32s3"]
+    - if: IDF_TARGET in ["esp32"]
       temporary: true
       reason: the other targets are not tested yet
+  disable_test:
+    - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"]
+      temporary: true
+      reason: The runner doesn't support yet
+
+examples/bluetooth/nimble/bleprph_wifi_coex:
+  enable:
+    - if: IDF_TARGET in ["esp32", "esp32c2", "esp32c3", "esp32s3"]
+      temporary: true
+      reason: the other targets are not tested yet
+  disable_test:
+    - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"]
+      temporary: true
+      reason: The runner doesn't support yet
 
 examples/bluetooth/nimble/hci:
   enable:
-    - if: IDF_TARGET == "esp32c2"
+    - if: IDF_TARGET in ["esp32c2", "esp32c6"]
       temporary: true
       reason: the other targets are not tested yet
+  disable_test:
+    - if: IDF_TARGET in ["esp32c2", "esp32c3", "esp32h4", "esp32s3", "esp32c6"]
+      temporary: true
+      reason: The runner doesn't support yet

+ 2 - 2
examples/bluetooth/bluedroid/ble/ble_ancs/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-H4 | ESP32-S3 |
-| ----------------- | ----- | -------- | -------- | -------- | -------- |
+| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H4 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
 
 # ESP-IDF BLE ANCS Example
 

+ 3 - 0
examples/bluetooth/bluedroid/ble/ble_ancs/sdkconfig.defaults

@@ -2,3 +2,6 @@
 # Espressif IoT Development Framework (ESP-IDF) Project Minimal Configuration
 #
 CONFIG_BT_ENABLED=y
+CONFIG_BT_BLE_50_FEATURES_SUPPORTED=n
+CONFIG_BT_BLE_42_FEATURES_SUPPORTED=y
+CONFIG_BT_LE_50_FEATURE_SUPPORT=n

+ 2 - 2
examples/bluetooth/bluedroid/ble/ble_compatibility_test/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-H4 | ESP32-S3 |
-| ----------------- | ----- | -------- | -------- | -------- | -------- |
+| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H4 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
 
 # ESP-IDF BLE Compatibility Test Example
 

+ 3 - 0
examples/bluetooth/bluedroid/ble/ble_compatibility_test/sdkconfig.defaults

@@ -2,3 +2,6 @@
 # Espressif IoT Development Framework (ESP-IDF) Project Minimal Configuration
 #
 CONFIG_BT_ENABLED=y
+CONFIG_BT_BLE_50_FEATURES_SUPPORTED=n
+CONFIG_BT_BLE_42_FEATURES_SUPPORTED=y
+CONFIG_BT_LE_50_FEATURE_SUPPORT=n

+ 2 - 2
examples/bluetooth/bluedroid/ble/ble_eddystone/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-H4 | ESP32-S3 |
-| ----------------- | ----- | -------- | -------- | -------- | -------- |
+| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H4 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
 
 # ESP-IDF Eddystone Example
 

+ 3 - 0
examples/bluetooth/bluedroid/ble/ble_eddystone/sdkconfig.defaults

@@ -2,3 +2,6 @@
 # Espressif IoT Development Framework (ESP-IDF) Project Minimal Configuration
 #
 CONFIG_BT_ENABLED=y
+CONFIG_BT_BLE_50_FEATURES_SUPPORTED=n
+CONFIG_BT_BLE_42_FEATURES_SUPPORTED=y
+CONFIG_BT_LE_50_FEATURE_SUPPORT=n

+ 2 - 2
examples/bluetooth/bluedroid/ble/ble_hid_device_demo/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-H4 | ESP32-S3 |
-| ----------------- | ----- | -------- | -------- | -------- | -------- |
+| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H4 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
 
 # ESP-IDF BLE HID Example
 

+ 3 - 0
examples/bluetooth/bluedroid/ble/ble_hid_device_demo/sdkconfig.defaults

@@ -2,3 +2,6 @@
 # Espressif IoT Development Framework (ESP-IDF) Project Minimal Configuration
 #
 CONFIG_BT_ENABLED=y
+CONFIG_BT_BLE_50_FEATURES_SUPPORTED=n
+CONFIG_BT_BLE_42_FEATURES_SUPPORTED=y
+CONFIG_BT_LE_50_FEATURE_SUPPORT=n

+ 2 - 2
examples/bluetooth/bluedroid/ble/ble_ibeacon/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-H4 | ESP32-S3 |
-| ----------------- | ----- | -------- | -------- | -------- | -------- |
+| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H4 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
 
 # ESP-IDF iBeacon demo
 

+ 3 - 0
examples/bluetooth/bluedroid/ble/ble_ibeacon/sdkconfig.defaults

@@ -2,3 +2,6 @@
 # Espressif IoT Development Framework (ESP-IDF) Project Minimal Configuration
 #
 CONFIG_BT_ENABLED=y
+CONFIG_BT_BLE_50_FEATURES_SUPPORTED=n
+CONFIG_BT_BLE_42_FEATURES_SUPPORTED=y
+CONFIG_BT_LE_50_FEATURE_SUPPORT=n

+ 2 - 2
examples/bluetooth/bluedroid/ble/ble_spp_client/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-H4 | ESP32-S3 |
-| ----------------- | ----- | -------- | -------- | -------- | -------- |
+| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H4 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
 
 # ESP-IDF SPP GATT CLIENT demo
 

+ 3 - 0
examples/bluetooth/bluedroid/ble/ble_spp_client/sdkconfig.defaults

@@ -2,3 +2,6 @@
 # Espressif IoT Development Framework (ESP-IDF) Project Minimal Configuration
 #
 CONFIG_BT_ENABLED=y
+CONFIG_BT_BLE_50_FEATURES_SUPPORTED=n
+CONFIG_BT_BLE_42_FEATURES_SUPPORTED=y
+CONFIG_BT_LE_50_FEATURE_SUPPORT=n

+ 2 - 2
examples/bluetooth/bluedroid/ble/ble_spp_server/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-H4 | ESP32-S3 |
-| ----------------- | ----- | -------- | -------- | -------- | -------- |
+| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H4 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
 
 ## ESP-IDF GATT SERVER SPP Example
 

+ 3 - 0
examples/bluetooth/bluedroid/ble/ble_spp_server/sdkconfig.defaults

@@ -2,3 +2,6 @@
 # Espressif IoT Development Framework (ESP-IDF) Project Minimal Configuration
 #
 CONFIG_BT_ENABLED=y
+CONFIG_BT_BLE_50_FEATURES_SUPPORTED=n
+CONFIG_BT_BLE_42_FEATURES_SUPPORTED=y
+CONFIG_BT_LE_50_FEATURE_SUPPORT=n

+ 2 - 2
examples/bluetooth/bluedroid/ble/ble_throughput/throughput_client/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-H4 | ESP32-S3 |
-| ----------------- | ----- | -------- | -------- | -------- | -------- |
+| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H4 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
 
 # ESP-IDF BLE throughput GATT CLIENT Test
 

+ 3 - 0
examples/bluetooth/bluedroid/ble/ble_throughput/throughput_client/sdkconfig.defaults

@@ -2,5 +2,8 @@
 # Espressif IoT Development Framework (ESP-IDF) Project Minimal Configuration
 #
 CONFIG_BT_ENABLED=y
+CONFIG_BT_BLE_50_FEATURES_SUPPORTED=n
+CONFIG_BT_BLE_42_FEATURES_SUPPORTED=y
+CONFIG_BT_LE_50_FEATURE_SUPPORT=n
 CONFIG_GATTS_NOTIFY_THROUGHPUT=y
 CONFIG_GATTC_WRITE_THROUGHPUT=n

+ 2 - 2
examples/bluetooth/bluedroid/ble/ble_throughput/throughput_server/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-H4 | ESP32-S3 |
-| ----------------- | ----- | -------- | -------- | -------- | -------- |
+| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H4 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
 
 # ESP-IDF BLE throughput GATT SERVER Test
 

+ 3 - 0
examples/bluetooth/bluedroid/ble/ble_throughput/throughput_server/sdkconfig.defaults

@@ -4,3 +4,6 @@
 CONFIG_EXAMPLE_GATTS_NOTIFY_THROUGHPUT=y
 CONFIG_EXAMPLE_GATTC_WRITE_THROUGHPUT=n
 CONFIG_BT_ENABLED=y
+CONFIG_BT_BLE_50_FEATURES_SUPPORTED=n
+CONFIG_BT_BLE_42_FEATURES_SUPPORTED=y
+CONFIG_BT_LE_50_FEATURE_SUPPORT=n

+ 2 - 2
examples/bluetooth/bluedroid/ble/gatt_client/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-H4 | ESP32-S3 |
-| ----------------- | ----- | -------- | -------- | -------- | -------- |
+| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H4 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
 
 # ESP-IDF Gatt Client Example
 

+ 3 - 0
examples/bluetooth/bluedroid/ble/gatt_client/sdkconfig.defaults

@@ -2,3 +2,6 @@
 # Espressif IoT Development Framework (ESP-IDF) Project Minimal Configuration
 #
 CONFIG_BT_ENABLED=y
+CONFIG_BT_BLE_50_FEATURES_SUPPORTED=n
+CONFIG_BT_BLE_42_FEATURES_SUPPORTED=y
+CONFIG_BT_LE_50_FEATURE_SUPPORT=n

+ 2 - 2
examples/bluetooth/bluedroid/ble/gatt_security_client/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-H4 | ESP32-S3 |
-| ----------------- | ----- | -------- | -------- | -------- | -------- |
+| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H4 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
 
 # ESP-IDF Gatt Security Client Example
 

+ 3 - 0
examples/bluetooth/bluedroid/ble/gatt_security_client/sdkconfig.defaults

@@ -2,3 +2,6 @@
 # Espressif IoT Development Framework (ESP-IDF) Project Minimal Configuration
 #
 CONFIG_BT_ENABLED=y
+CONFIG_BT_BLE_50_FEATURES_SUPPORTED=n
+CONFIG_BT_BLE_42_FEATURES_SUPPORTED=y
+CONFIG_BT_LE_50_FEATURE_SUPPORT=n

+ 2 - 2
examples/bluetooth/bluedroid/ble/gatt_security_server/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-H4 | ESP32-S3 |
-| ----------------- | ----- | -------- | -------- | -------- | -------- |
+| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H4 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
 
 # ESP-IDF Gatt Security Server Example
 

+ 3 - 0
examples/bluetooth/bluedroid/ble/gatt_security_server/sdkconfig.defaults

@@ -2,3 +2,6 @@
 # Espressif IoT Development Framework (ESP-IDF) Project Minimal Configuration
 #
 CONFIG_BT_ENABLED=y
+CONFIG_BT_BLE_50_FEATURES_SUPPORTED=n
+CONFIG_BT_BLE_42_FEATURES_SUPPORTED=y
+CONFIG_BT_LE_50_FEATURE_SUPPORT=n

+ 2 - 2
examples/bluetooth/bluedroid/ble/gatt_server/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-H4 | ESP32-S3 |
-| ----------------- | ----- | -------- | -------- | -------- | -------- |
+| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H4 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
 
 # ESP-IDF Gatt Server Example
 

+ 3 - 0
examples/bluetooth/bluedroid/ble/gatt_server/sdkconfig.defaults

@@ -2,3 +2,6 @@
 # Espressif IoT Development Framework (ESP-IDF) Project Minimal Configuration
 #
 CONFIG_BT_ENABLED=y
+CONFIG_BT_BLE_50_FEATURES_SUPPORTED=n
+CONFIG_BT_BLE_42_FEATURES_SUPPORTED=y
+CONFIG_BT_LE_50_FEATURE_SUPPORT=n

+ 2 - 2
examples/bluetooth/bluedroid/ble/gatt_server_service_table/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-H4 | ESP32-S3 |
-| ----------------- | ----- | -------- | -------- | -------- | -------- |
+| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H4 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
 
 # ESP-IDF Gatt Server Service Table Example
 

+ 3 - 0
examples/bluetooth/bluedroid/ble/gatt_server_service_table/sdkconfig.defaults

@@ -2,3 +2,6 @@
 # Espressif IoT Development Framework (ESP-IDF) Project Minimal Configuration
 #
 CONFIG_BT_ENABLED=y
+CONFIG_BT_BLE_50_FEATURES_SUPPORTED=n
+CONFIG_BT_BLE_42_FEATURES_SUPPORTED=y
+CONFIG_BT_LE_50_FEATURE_SUPPORT=n

+ 2 - 2
examples/bluetooth/bluedroid/ble/gattc_multi_connect/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-H4 | ESP32-S3 |
-| ----------------- | ----- | -------- | -------- | -------- | -------- |
+| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H4 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
 
 # ESP-IDF Gatt Client Multi Connection Example
 

+ 3 - 0
examples/bluetooth/bluedroid/ble/gattc_multi_connect/sdkconfig.defaults

@@ -2,3 +2,6 @@
 # Espressif IoT Development Framework (ESP-IDF) Project Minimal Configuration
 #
 CONFIG_BT_ENABLED=y
+CONFIG_BT_BLE_50_FEATURES_SUPPORTED=n
+CONFIG_BT_BLE_42_FEATURES_SUPPORTED=y
+CONFIG_BT_LE_50_FEATURE_SUPPORT=n

+ 2 - 2
examples/bluetooth/bluedroid/ble_50/ble50_security_client/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32-C2 | ESP32-C3 | ESP32-H4 | ESP32-S3 |
-| ----------------- | -------- | -------- | -------- | -------- |
+| Supported Targets | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H4 | ESP32-S3 |
+| ----------------- | -------- | -------- | -------- | -------- | -------- |
 
 # ESP-IDF Gatt Security Client Example
 

+ 2 - 2
examples/bluetooth/bluedroid/ble_50/ble50_security_server/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32-C2 | ESP32-C3 | ESP32-H4 | ESP32-S3 |
-| ----------------- | -------- | -------- | -------- | -------- |
+| Supported Targets | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H4 | ESP32-S3 |
+| ----------------- | -------- | -------- | -------- | -------- | -------- |
 
 # ESP-IDF BLE50 Security Server Example
 

+ 2 - 2
examples/bluetooth/bluedroid/ble_50/multi-adv/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32-C2 | ESP32-C3 | ESP32-S3 |
-| ----------------- | -------- | -------- | -------- |
+| Supported Targets | ESP32-C3 | ESP32-C6 | ESP32-H4 | ESP32-S3 |
+| ----------------- | -------- | -------- | -------- | -------- |
 
 #ESP-IDF Multi Adv Example
 

+ 1 - 0
examples/bluetooth/bluedroid/ble_50/multi-adv/sdkconfig.defaults

@@ -2,3 +2,4 @@
 # Espressif IoT Development Framework (ESP-IDF) Project Minimal Configuration
 #
 CONFIG_BT_ENABLED=y
+CONFIG_BT_LE_MAX_EXT_ADV_INSTANCES=4

+ 2 - 2
examples/bluetooth/bluedroid/ble_50/peroidic_adv/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32-C2 | ESP32-C3 | ESP32-H4 | ESP32-S3 |
-| ----------------- | -------- | -------- | -------- | -------- |
+| Supported Targets | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H4 | ESP32-S3 |
+| ----------------- | -------- | -------- | -------- | -------- | -------- |
 
 # ESP_IDF Periodic Adv Example
 

+ 2 - 2
examples/bluetooth/bluedroid/ble_50/peroidic_sync/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32-C2 | ESP32-C3 | ESP32-H4 | ESP32-S3 |
-| ----------------- | -------- | -------- | -------- | -------- |
+| Supported Targets | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H4 | ESP32-S3 |
+| ----------------- | -------- | -------- | -------- | -------- | -------- |
 
 # ESP-IDF Periodic Sync Example
 

+ 2 - 2
examples/bluetooth/bluedroid/coex/gattc_gatts_coex/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 | ESP32-C3 |
-| ----------------- | ----- | -------- |
+| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H4 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
 
 ESP-IDF Gattc and Gatts Coexistence example
 ==============================================

+ 3 - 0
examples/bluetooth/bluedroid/coex/gattc_gatts_coex/sdkconfig.defaults

@@ -2,3 +2,6 @@
 # Espressif IoT Development Framework (ESP-IDF) Project Minimal Configuration
 #
 CONFIG_BT_ENABLED=y
+CONFIG_BT_BLE_50_FEATURES_SUPPORTED=n
+CONFIG_BT_BLE_42_FEATURES_SUPPORTED=y
+CONFIG_BT_LE_50_FEATURE_SUPPORT=n

+ 2 - 2
examples/bluetooth/blufi/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-S3 |
-| ----------------- | ----- | -------- | -------- | -------- |
+| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- | -------- |
 
 # ESP-IDF Blufi Example
 

+ 13 - 0
examples/bluetooth/blufi/sdkconfig.defaults.esp32c6

@@ -0,0 +1,13 @@
+# This file was generated using idf.py save-defconfig. It can be edited manually.
+# Espressif IoT Development Framework (ESP-IDF) Project Minimal Configuration
+#
+CONFIG_PARTITION_TABLE_SINGLE_APP_LARGE=y
+CONFIG_BT_ENABLED=y
+CONFIG_BT_NIMBLE_BLUFI_ENABLE=y
+# CONFIG_BT_GATTC_ENABLE is not set
+# CONFIG_BT_BLE_SMP_ENABLE is not set
+# CONFIG_BT_BLE_50_FEATURES_SUPPORTED is not set
+CONFIG_BT_BLE_42_FEATURES_SUPPORTED=y
+CONFIG_MBEDTLS_DHM_C=y
+CONFIG_BT_NIMBLE_ENABLED=y
+CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT=n

+ 2 - 2
examples/bluetooth/esp_ble_mesh/ble_mesh_console/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 | ESP32-C3 | ESP32-S3 |
-| ----------------- | ----- | -------- | -------- |
+| Supported Targets | ESP32 | ESP32-C3 | ESP32-C6 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- |
 
 # ble mesh node console demo
 ## Introduction  

+ 2 - 2
examples/bluetooth/esp_ble_mesh/ble_mesh_fast_provision/fast_prov_client/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 |
-| ----------------- | ----- |
+| Supported Targets | ESP32 | ESP32-C3 | ESP32-C6 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- |
 
 ESP BLE Mesh Fast Provisioning Client example
 ========================

+ 2 - 2
examples/bluetooth/esp_ble_mesh/ble_mesh_fast_provision/fast_prov_server/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 |
-| ----------------- | ----- |
+| Supported Targets | ESP32 | ESP32-C3 | ESP32-C6 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- |
 
 ESP BLE Mesh Fast Provisioning Server example
 ========================

+ 2 - 2
examples/bluetooth/esp_ble_mesh/ble_mesh_node/onoff_client/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 |
-| ----------------- | ----- |
+| Supported Targets | ESP32 | ESP32-C3 | ESP32-C6 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- |
 
 ESP BLE Mesh Client Model Demo
 ========================

+ 2 - 2
examples/bluetooth/esp_ble_mesh/ble_mesh_node/onoff_server/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 |
-| ----------------- | ----- |
+| Supported Targets | ESP32 | ESP32-C3 | ESP32-C6 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- |
 
 ESP BLE Mesh Node demo
 ==========================

+ 2 - 2
examples/bluetooth/esp_ble_mesh/ble_mesh_provisioner/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 |
-| ----------------- | ----- |
+| Supported Targets | ESP32 | ESP32-C3 | ESP32-C6 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- |
 
 ESP BLE Mesh Provisioner demo
 ================================

+ 2 - 2
examples/bluetooth/esp_ble_mesh/ble_mesh_sensor_model/sensor_client/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 |
-| ----------------- | ----- |
+| Supported Targets | ESP32 | ESP32-C3 | ESP32-C6 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- |
 
 ESP BLE Mesh Sensor Client Example
 ==================================

+ 2 - 2
examples/bluetooth/esp_ble_mesh/ble_mesh_sensor_model/sensor_server/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 |
-| ----------------- | ----- |
+| Supported Targets | ESP32 | ESP32-C3 | ESP32-C6 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- |
 
 ESP BLE Mesh Sensor Server Example
 ==================================

+ 2 - 2
examples/bluetooth/esp_ble_mesh/ble_mesh_vendor_model/vendor_client/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 |
-| ----------------- | ----- |
+| Supported Targets | ESP32 | ESP32-C3 | ESP32-C6 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- |
 
 ESP BLE Mesh Vendor Client Example
 ==================================

+ 2 - 2
examples/bluetooth/esp_ble_mesh/ble_mesh_vendor_model/vendor_server/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 |
-| ----------------- | ----- |
+| Supported Targets | ESP32 | ESP32-C3 | ESP32-C6 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- |
 
 ESP BLE Mesh Vendor Server Example
 ==================================

+ 2 - 2
examples/bluetooth/esp_ble_mesh/ble_mesh_wifi_coexist/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 |
-| ----------------- | ----- |
+| Supported Targets | ESP32 | ESP32-C3 | ESP32-C6 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- |
 
 ESP-BLE-MESH and Wi-Fi Coexistence Example
 =============================================

+ 2 - 2
examples/bluetooth/esp_ble_mesh/ble_mesh_wifi_coexist/README_CN.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 |
-| ----------------- | ----- |
+| Supported Targets | ESP32 | ESP32-C3 | ESP32-C6 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- |
 
 ESP-BLE-MESH 和 Wi-Fi Coexistence 示例
 ==========================================

+ 5 - 0
examples/bluetooth/esp_hid_device/sdkconfig.defaults.esp32c6

@@ -0,0 +1,5 @@
+CONFIG_BT_ENABLED=y
+CONFIG_BT_BLUEDROID_ENABLED=y
+CONFIG_BT_BLE_ENABLED=y
+CONFIG_BT_BLE_42_FEATURES_SUPPORTED=y
+CONFIG_BT_LE_50_FEATURE_SUPPORT=n

+ 5 - 0
examples/bluetooth/esp_hid_host/sdkconfig.defaults.esp32c6

@@ -0,0 +1,5 @@
+CONFIG_BT_ENABLED=y
+CONFIG_BT_BLUEDROID_ENABLED=y
+CONFIG_BT_BLE_ENABLED=y
+CONFIG_BT_BLE_42_FEATURES_SUPPORTED=y
+CONFIG_BT_LE_50_FEATURE_SUPPORT=n

+ 2 - 2
examples/bluetooth/nimble/ble_spp/spp_client/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 | ESP32-C3 | ESP32-S3 |
-| ----------------- | ----- | -------- | -------- |
+| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- |
 
 # BLE SPP central example
 

+ 2 - 2
examples/bluetooth/nimble/ble_spp/spp_server/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 | ESP32-C3 | ESP32-S3 |
-| ----------------- | ----- | -------- | -------- |
+| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- |
 
 # BLE SPP peripheral example
 

+ 2 - 2
examples/bluetooth/nimble/blecent/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 |
-| ----------------- | ----- |
+| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- |
 
 # BLE Central Example
 

+ 2 - 2
examples/bluetooth/nimble/blehr/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 |
-| ----------------- | ----- |
+| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- |
 
 # BLE Heart Rate Measurement Example
 

+ 2 - 2
examples/bluetooth/nimble/bleprph/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 |
-| ----------------- | ----- |
+| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- |
 
 # BLE Peripheral Example
 

+ 2 - 2
examples/bluetooth/nimble/bleprph_wifi_coex/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 |
-| ----------------- | ----- |
+| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- |
 
 # BLE Peripheral with ICMP Echo-Reply
 

+ 2 - 3
examples/bluetooth/nimble/hci/README.md

@@ -1,6 +1,5 @@
-| Supported Targets | ESP32-C2 |
-| ----------------- | -------- |
-
+| Supported Targets | ESP32-C2 | ESP32-C6 |
+| ----------------- | -------- | -------- |
 
 ESP-IDF UART HCI Controller
 ===========================

+ 2 - 2
examples/bluetooth/nimble/throughput_app/blecent_throughput/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 |
-| ----------------- | ----- |
+| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- |
 
 # Throughput blecent Example
 

+ 2 - 2
examples/bluetooth/nimble/throughput_app/bleprph_throughput/README.md

@@ -1,5 +1,5 @@
-| Supported Targets | ESP32 |
-| ----------------- | ----- |
+| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-S3 |
+| ----------------- | ----- | -------- | -------- | -------- |
 
 # Throughput bleprph Example