[ English | 简体中文 ]
Bluetooth BLE Advertising API
The openvela Bluetooth BLE advertising interface is used to send BLE advertising data and manage advertising instances.
Header file: #include "bt_le_advertiser.h"
openvela Implementation Notes
- Advertising types: Supports connectable advertising, non-connectable advertising, scan response, etc.
- Advertising data: Supports custom advertising data and scan response data
- Multiple instances: Supports running multiple advertising instances simultaneously
Synchronous Interfaces
bt_le_stop_advertising
void bt_le_stop_advertising(bt_instance_t* ins, bt_advertiser_t* adver);
Stop BLE advertising.
Parameters:
insBluetooth client instance.adverAdvertiser instance.
Returns:
None.
bt_le_stop_advertising_id
void bt_le_stop_advertising_id(bt_instance_t* ins, uint8_t adv_id);
Stop the BLE advertising instance with the specified ID.
Parameters:
insBluetooth client instance.adv_idAdvertising instance ID.
bt_le_advertising_is_supported
bool bt_le_advertising_is_supported(bt_instance_t* ins);
Query whether BLE advertising is supported.
Parameters:
insBluetooth client instance.
Returns:
Returns true if BLE advertising is supported, false otherwise.
Asynchronous Interfaces
bt_le_start_advertising_async
bt_status_t bt_le_start_advertising_async(bt_instance_t* ins, ble_adv_params_t* params, uint8_t* adv_data, uint16_t adv_len, uint8_t* scan_rsp_data, uint16_t scan_rsp_len, advertiser_callback_t* adv_cbs, bt_le_start_adv_callback_cb_t cb, void* userdata);
Start BLE advertising (asynchronous version).
Parameters:
insBluetooth client instance.paramsAdvertising parameters structure.adv_dataAdvertising data.adv_lenAdvertising data length.scan_rsp_dataScan response data.scan_rsp_lenScan response data length.adv_cbsAdvertiser callback function set.cbCompletion callback function.userdataUser data.
bt_le_stop_advertising_async
bt_status_t bt_le_stop_advertising_async(bt_instance_t* ins, bt_advertiser_t* adver, bt_status_cb_t cb, void* userdata);
Stop BLE advertising (asynchronous version).
Parameters:
insBluetooth client instance.adverAdvertiser instance.cbCompletion callback function.userdataUser data.
bt_le_stop_advertising_id_async
bt_status_t bt_le_stop_advertising_id_async(bt_instance_t* ins, uint8_t adv_id, bt_status_cb_t cb, void* userdata);
Stop BLE advertising by specified ID (asynchronous version).
Parameters:
insBluetooth client instance.adv_idAdvertising instance ID.cbCompletion callback function.userdataUser data.
bt_le_advertising_is_supported_async
bt_status_t bt_le_advertising_is_supported_async(bt_instance_t* ins, bt_bool_cb_t cb, void* userdata);
Query whether BLE advertising is supported (asynchronous version).
Parameters:
insBluetooth client instance.cbCompletion callback function.userdataUser data.