HCI Vendor-specific (VS) Commands
HCI VS Commands for Espressif's Bluetooth Host
The following HCI VS commands are exclusively for Espressif's Bluetooth Host (ESP-Bluedroid Host or ESP-NimBLE Host). If you are using a non-ESP host or HCI UART, these commands will remain disabled unless the initialization function is explicitly called from the application. Note, these init functions as well as these additional HCI VS commands are intended for Espressif's Bluetooth Host use only. Application developers should not call the init functions in their applications.
- 
ESP_BT_VS_CONFIG_DUP_EXC_LIST_OCF
- Config scanning duplicate exceptional list (OCF: 0x0108) - Note - The init function is - advFilter_stack_eanbleDupExcListCmd(true)
- 
ESP_BT_VS_SET_ADV_REPORT_FLOW_CTRL_OCF
- Enable/disable advertising report flow control (OCF: 0x0109) - Note - The init function is - scan_stack_enableAdvFlowCtrlVsCmd(true)
- 
ESP_BT_VS_UPD_ADV_REPORT_FLOW_CTRL_NUM_OCF
- Update the number of advertising report in ADV flow control (OCF: 0x010A) - Note - The init function is - scan_stack_enableAdvFlowCtrlVsCmd(true)
- 
ESP_BT_VS_CLR_LEGACY_ADV_OCF
- Clear legacy advertising (same as HCI_LE_Clear_Advertising_Sets) (OCF: 0x010C) - Note - The init function is - adv_stack_enableClearLegacyAdvVsCmd(true)
- 
ESP_BT_VS_SET_DUP_LIST_PARAMS_OCF
- Set parameters of duplicate list (OCF: 0x010D) - Note - The init function is - advFilter_stack_eanbleDupExcListCmd(true)
- 
ESP_BT_VS_ENABLE_DUP_EXC_LIST_OCF
- Enable/disable duplicate and exception list (OCF: 0x010E) - Note - The init function is - advFilter_stack_eanbleDupExcListCmd(true)
- 
ESP_BT_VS_ENABLE_ARRANGEMENT_OCF
- Enable optimization of multiple connections (OCF: 0x010F) - Note - The init function is - arr_stack_enableMultiConnVsCmd(true)
- 
ESP_BT_VS_SET_SCHED_ROLE_LEN_OCF
- Set scheduling length for a certain role (OCF: 0x0110) - Note - The init function is - arr_stack_enableMultiConnVsCmd(true)
- 
ESP_BT_VS_SET_PCL_RSSI_THRESH_OCF
- Set RSSI threshold for automatic power control (OCF: 0x0111) - Note - The init function is - pcl_stack_enableSetRssiThreshVsCmd(true)
- 
ESP_BT_VS_ENABLE_CSA2_OCF
- Enable/disable channel selection algorithm #2 (OCF: 0x0112) - Note - The init function is - chanSel_stack_enableSetCsaVsCmd(true)
- 
ESP_BT_VS_SET_LOG_PARAMS_OCF
- Set parameters of controller logs (OCF: 0x0114) - Note - The init function is - log_stack_enableLogsRelatedVsCmd(true)
- 
ESP_BT_VS_SET_LE_VENDOR_EVTS_MASK_OCF
- Set BLE vendor events mask (OCF: 0x0116) - Note - The init function is - hci_stack_enableSetVsEvtMaskVsCmd(true)
HCI VS Events for Espressif's Bluetooth Host
The following HCI VS events are exclusively for Espressif's Bluetooth Host (ESP-Bluedroid Host or ESP-NimBLE Host). If you are using a non-ESP host or HCI UART, these events will remain disabled unless the initialization function is explicitly called from the application. Note, these init functions as well as these additional HCI VS events are intended for Espressif's Bluetooth Host use only. Application developers should not call the init functions in their applications.
- 
ESP_BT_VS_LE_CONN_SCAN_REQ_RXED_EVT_SUBCODE
- BLE Scan/Connect Request, Aux Connect Response received event (EVTCODE: 0xFF, SUBCODE: 0xC0) - Note - The init function is - adv_stack_enableScanReqRxdVsEvent(true)
- 
ESP_BT_VS_LE_CHAN_UPDATE_COMP_EVT_SUBCODE
- BLE Channel Map Update Completion event (EVTCODE: 0xFF, SUBCODE: 0xC1) - Note - The init function is - conn_stack_enableChanMapUpdCompVsEvent(true)
- 
ESP_BT_VS_LE_ADV_LOST_EVT_SUBCODE
- BLE advertising report lost event for flow control (EVTCODE: 0x3E, SUBCODE: 0xF0) - Note - The init function is - scan_stack_enableAdvFlowCtrlVsCmd(true)
HCI VS Commands for Espressif's Internal-Use Debugging
The following HCI VS debugging commands are implemented in Bluetooth Low Energy controller pre-compiled libraries. These commands are not linked into the application binary, unless the function esp_ble_internalTestFeaturesEnable(true) is called from the application. They are intended for Espressif's internal use only. Application developers should not call esp_ble_internalTestFeaturesEnable(true) in their applications.
- 
ESP_BT_VS_CFG_TEST_RELATED_OCF
- 
ESP_BT_VS_CFG_TEST_ENABLE_SUBCMD
- 
ESP_BT_VS_CFG_TEST_ENABLE_ADV_DELAY_SUBCMD
- 
ESP_BT_VS_CFG_TEST_SET_PREF_CODED_SUBCMD
- 
ESP_BT_VS_CFG_TEST_SET_DEFAULT_PRIV_MODE_SUBCMD
- 
ESP_BT_VS_CFG_TEST_SET_SCAN_FOREVER_SUBCMD
- 
ESP_BT_VS_CFG_TEST_SET_EXPECTED_PEER_SUBCMD
- 
ESP_BT_VS_CFG_TEST_GET_ADV_TXED_CNT_SUBCMD
- 
ESP_BT_VS_CFG_TEST_GET_SCAN_RXED_CNT_SUBCMD
- 
ESP_BT_VS_CFG_TEST_SET_TXPWR_LVL_SUBCMD
- 
ESP_BT_VS_CFG_TEST_GET_TXPWR_LVL_SUBCMD
- 
ESP_BT_VS_CFG_TEST_SET_TXPWR_LVL_ENH_SUBCMD
- 
ESP_BT_VS_CFG_TEST_GET_TXPWR_LVL_ENH_SUBCMD
- 
ESP_BT_VS_CFG_TEST_IGNORE_WL_FOR_DIR_ADV_SUBCMD
- 
ESP_BT_VS_CFG_TEST_GET_ADV_RXED_RSSI_SUBCMD
- 
ESP_BT_VS_CFG_TEST_ENABLE_CCA_SUBCMD
- 
ESP_BT_VS_CFG_TEST_SET_CCA_WIN_SUBCMD
- 
ESP_BT_VS_CFG_TEST_READ_CCA_DATA_SUBCM
- 
ESP_BT_VS_CFG_TEST_CLEAR_RAND_ADDR_SUBCMD
- 
ESP_BT_VS_CFG_TEST_GET_MAX_TXPWR_SUBCMD
- 
ESP_BT_VS_CFG_TEST_GET_TXPWR_RANGE_SUBCMD
- 
ESP_BT_VS_CFG_TEST_SET_SCAN_AA_SUBCMD
- 
ESP_BT_VS_CFG_TEST_SET_ADV_AA_SUBCMD
- 
ESP_BT_VS_CFG_TEST_SET_SCAN_CHAN_SUBCMD
- 
ESP_BT_VS_CFG_TEST_SKIP_LIGHT_SLEEP_CHECK_SUBCMD
- 
ESP_BT_VS_CFG_TEST_SET_WAKEUP_OVERHEAD_SUBCMD
- 
ESP_BT_VS_CFG_TEST_GET_ADV_MIN_ITVL_SUBCMD
- 
ESP_BT_VS_CFG_TEST_GET_CTRL_STATUS_SUBCMD
- 
ESP_BT_VS_CFG_TEST_SET_CONN_PHY_TXPWR_SUBCMD
- 
ESP_BT_VS_CFG_TEST_GET_CONN_PHY_TXPWR_SUBCMD
- 
ESP_BT_VS_CFG_TEST_GET_RXBUF_EMPTY_CNT_SUBCMD
- 
ESP_BT_VS_CFG_TEST_RESTART_SUBCMD
- 
ESP_BT_VS_CFG_TEST_ENABLE_RECODE_RX_STATE_SUBCMD
- 
ESP_BT_VS_CFG_TEST_GET_RECODE_CNT_SUBCMD
- 
ESP_BT_VS_CFG_TEST_CLR_RECODE_CNT_SUBCMD
- 
ESP_BT_VS_CFG_TEST_GET_CTRL_COMPILE_VER_SUBCMD
- 
ESP_BT_VS_CFG_TEST_SET_AUX_ADV_OFFSET_SUBCMD
- 
ESP_BT_VS_CFG_TEST_INIT_FLEXIBLE_MODE_SUBCMD
- 
ESP_BT_VS_CFG_TEST_ENABLE_FLEXIBLE_MODE_SUBCMD
- 
ESP_BT_VS_CFG_TEST_SET_FLEXIBLE_CONN_ERR_SUBCMD
- 
ESP_BT_VS_CFG_TEST_SET_FLEXIBLE_ADV_ERR_SUBCMD
- 
ESP_BT_VS_CFG_TEST_SET_FLEXIBLE_SCAN_ERR_SUBCMD
- 
ESP_BT_VS_CFG_TEST_GET_TXED_CRCERR_SUBCMD
- 
ESP_BT_VS_CFG_TEST_GET_BACKOFF_UPLIMIT_SUBCMD
- 
ESP_BT_VS_CFG_TEST_GET_RXED_ADV_ADI_SUBCMD
- 
ESP_BT_VS_CFG_TEST_SET_SCH_RAND_MODE_SUBCMD
- 
ESP_BT_VS_CFG_TEST_SET_RX_SENS_THRESH_SUBCMD
- 
ESP_BT_VS_CFG_TEST_CHECK_MSYS_BUF_SUBCMD
- 
ESP_BT_VS_CFG_TEST_UPDATE_BLE_TIMER_SUBCMD
- 
ESP_BT_VS_CFG_TEST_UPDATE_BLE_RTC_SUBCMD
- 
ESP_BT_VS_CFG_TEST_SET_LOCKED_MEM_NUM_SUBCMD
- 
ESP_BT_VS_CFG_TEST_ALLOW_MEM_ALLOC_SUBCMD
- 
ESP_BT_VS_CFG_TEST_SET_SCH_RAND_INFO_PTR_SUBCMD
- 
ESP_BT_VS_CFG_TEST_SET_DIAG_IO_SUBCMD
- 
ESP_BT_VS_CFG_TEST_SET_AGC_MAX_GAIN_SUBCMD
- 
ESP_BT_VS_CFG_TEST_ENABLE_CHAN_ASSESS_SUBCMD
- 
ESP_BT_VS_CFG_TEST_SET_BACKOFF_UPLIMIT_SUBCMD
- 
ESP_BT_VS_CFG_TEST_SET_CONN_TOP_PRIO_RESV_THRESH_SUBCMD
- 
ESP_BT_VS_CFG_TEST_SET_TEST_EVT_MSK_SUBCMD
- 
ESP_BT_VS_CFG_TEST_GET_WAKEUP_TIMEOUT_SUBCMD
- 
ESP_BT_VS_CFG_TEST_RELATED_SUBCMD_MAX
HCI VS Events for Espressif's Internal-Use Debugging
The following HCI VS debugging events are implemented in Bluetooth controller pre-compiled libraries. These events are not linked into the application binary and are intended for Espressif's internal use only. Application developers should not call the corresponding initialization function in their applications.
- 
ESP_BT_VS_LE_RUNNING_STATUS_EVT_SUBCODE