Infineon Logo AIROC BTSDK v4.9 - Documentation
 
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
wiced_bt_ble.h File Reference

WICED Bluetooth Low Energy Functions. More...

Data Structures

struct  wiced_bt_ble_advert_elem_t
 Advertisement element. More...
 
struct  wiced_bt_ble_scan_results_t
 LE inquiry result type. More...
 
struct  wiced_bt_ble_phy_preferences_t
 Host PHY preferences. More...
 
struct  wiced_bt_ble_conn_params_t
 LE connection parameteres. More...
 
struct  wiced_bt_ble_pref_conn_params_t
 LE preferred connection parameters. More...
 
struct  wiced_bt_ble_multi_adv_params_t
 LE Multi advertising parameter. More...
 
struct  wiced_bt_ble_ext_adv_duration_config_t
 Advertisement duration configuration for specified adv handle. More...
 
struct  wiced_bt_ble_ext_conn_cfg_t
 Extended ADV connection configuration structure. More...
 
struct  wiced_bt_ble_ext_adv_report_t
 Extended advertisement report data format. More...
 
struct  wiced_bt_ble_periodic_adv_sync_established_event_data_t
 Sync extablished to periodic advertiser event data format. More...
 
struct  wiced_bt_ble_periodic_adv_report_event_data_t
 Periodic advertising report data format. More...
 
struct  wiced_bt_ble_ext_adv_set_terminated_event_data_t
 extended adv set terminated event data format. More...
 
struct  wiced_bt_ble_scan_req_received_event_data_t
 scan request received event data format More...
 
struct  wiced_bt_ble_channel_sel_algo_event_data_t
 Channel selection algorithm event data format. More...
 
struct  wiced_bt_ble_biginfo_adv_report_t
 BIGInfo report. More...
 
struct  wiced_bt_ble_periodic_adv_sync_transfer_event_data_t
 Periodic Adv Sync Transfer Received Event Data. More...
 
union  wiced_bt_ble_adv_ext_event_data_t
 union of events data More...
 
struct  wiced_bt_ble_ext_scan_config_t
 Configuration for extended scanning. More...
 

Macros

#define BTM_BLE_LEGACY_AD_DATA_LEN   31
 Max legacy advertisement data len.
 
#define BTM_AFH_CHNL_MAP_SIZE   HCI_AFH_CHANNEL_MAP_LEN
 AFH channel map size.
 
#define BLE_CHANNEL_MAP_LEN   5
 AFH Channel Map len.
 
#define BTM_BLE_DEFAULT_ADVERT_CHNL_MAP   (BTM_BLE_ADVERT_CHNL_37| BTM_BLE_ADVERT_CHNL_38| BTM_BLE_ADVERT_CHNL_39)
 default advertising channel map
 
#define BTM_BLE_ADVERT_FILTER_DEFAULT   BTM_BLE_ADV_POLICY_ACCEPT_CONN_AND_SCAN
 default advertising filter policy
 
#define BTM_BLE_ADVERT_INTERVAL_MIN   0x0020
 adv parameter Min value
 
#define BTM_BLE_ADVERT_INTERVAL_MAX   0x4000
 adv parameter Max value
 
#define BTM_BLE_SCAN_INTERVAL_MIN   0x0004
 Scan interval minimum value.
 
#define BTM_BLE_SCAN_INTERVAL_MAX   0x4000
 Scan interval miximum value.
 
#define BTM_BLE_SCAN_WINDOW_MIN   0x0004
 Scan window minimum value.
 
#define BTM_BLE_SCAN_WINDOW_MAX   0x4000
 Scan window maximum value.
 
#define BTM_BLE_CONN_INTERVAL_MIN   0x0006
 Connection interval minimum value.
 
#define BTM_BLE_CONN_INTERVAL_MAX   0x0C80
 Connection interval maximum value.
 
#define BTM_BLE_CONN_LATENCY_MAX   500
 Maximum Connection Latency.
 
#define BTM_BLE_CONN_SUP_TOUT_MIN   0x000A
 Minimum Supervision Timeout.
 
#define BTM_BLE_CONN_SUP_TOUT_MAX   0x0C80
 Maximum Supervision Timeout.
 
#define BTM_BLE_CONN_PARAM_UNDEF   0xffff
 use this value when a specific value not to be overwritten
 
#define BTM_BLE_CONN_SUP_TOUT_DEF   700
 Default Supervision Timeout.
 
#define BTM_BLE_SCAN_FAST_INTERVAL   96
 default scan interval 30 ~ 60 ms (use 60) = 96 *0.625
 
#define BTM_BLE_SCAN_FAST_WINDOW   48
 default scan window (in .625ms slots) for background auto connections 30 ms = 48 *0.625
 
#define BTM_BLE_SCAN_SLOW_INTERVAL_1   2048
 default scan interval used in reduced power cycle (background scanning) 1.28 s = 2048 *0.625
 
#define BTM_BLE_SCAN_SLOW_WINDOW_1   18
 default scan window used in reduced power cycle (background scanning) 11.25 ms = 18 *0.625
 
#define BTM_BLE_SCAN_SLOW_INTERVAL_2   4096
 default scan interval used in reduced power cycle (background scanning) 2.56 s = 4096 *0.625
 
#define BTM_BLE_SCAN_SLOW_WINDOW_2   36
 default scan window used in reduced power cycle (background scanning) 22.5 ms = 36 *0.625
 
#define BTM_BLE_CONN_INTERVAL_MIN_DEF   24
 default connection interval min recommended min: 30ms = 24 * 1.25
 
#define BTM_BLE_CONN_INTERVAL_MAX_DEF   40
 default connection interval max recommended max: 50 ms = 56 * 1.25
 
#define BTM_BLE_CONN_PERIPHERAL_LATENCY_DEF   0
 default Peripheral latency
 
#define BTM_BLE_CONN_TIMEOUT_DEF   2000
 default supervision timeout
 
#define BTM_BLE_AUTH_SIGNATURE_SIZE   12
 LE Signature LE data signature length 8 Bytes + 4 bytes counter.
 
#define BTM_BLE_POLICY_REJECT_ALL   0x00
 relevant to both
 
#define BTM_BLE_POLICY_ALLOW_SCAN   0x01
 relevant to advertiser
 
#define BTM_BLE_POLICY_ALLOW_CONN   0x02
 relevant to advertiser
 
#define BTM_BLE_POLICY_ALLOW_ALL   0x03
 relevant to both
 
#define BTM_BLE_LIMITED_DISCOVERABLE_FLAG   (0x01 << 0)
 Limited Discoverable.
 
#define BTM_BLE_GENERAL_DISCOVERABLE_FLAG   (0x01 << 1)
 General Discoverable.
 
#define BTM_BLE_BREDR_NOT_SUPPORTED   (0x01 << 2)
 BR/EDR Not Supported.
 
#define BTM_BLE_SIMULTANEOUS_DUAL_MODE_TO_SAME_DEVICE_CONTROLLER_SUPPORTED   (0x01 << 3)
 Simultaneous LE and BR/EDR to Same Device Capable (Controller). More...
 
#define BTM_BLE_SIMULTANEOUS_DUAL_MODE_TO_SAME_DEVICE_HOST_SUPPORTED   (0x01 << 4)
 Simultaneous LE and BR/EDR to Same Device Capable (Host). More...
 
#define BTM_BLE_NON_LIMITED_DISCOVERABLE_FLAG   (0x00 )
 Non Discoverable.
 
#define BTM_BLE_ADVERT_FLAG_MASK   (BTM_BLE_LIMITED_DISCOVERABLE_FLAG | BTM_BLE_BREDR_NOT_SUPPORTED | BTM_BLE_GENERAL_DISCOVERABLE_FLAG)
 LE adverisement mask.
 
#define BTM_BLE_LIMITED_DISCOVERABLE_MASK   (BTM_BLE_LIMITED_DISCOVERABLE_FLAG )
 LE Limited discovery mask.
 
#define BTM_BLE_PREFER_1M_PHY   0x01
 LE 1M PHY preference.
 
#define BTM_BLE_PREFER_2M_PHY   0x02
 LE 2M PHY preference.
 
#define BTM_BLE_PREFER_LELR_PHY   0x04
 LE LELR PHY preference.
 
#define BTM_BLE_PREFER_NO_LELR   0x0000
 No preferred coding.
 
#define BTM_BLE_PREFER_LELR_125K   0x0001
 Preferred coding is S=2.
 
#define BTM_BLE_PREFER_LELR_512K   0x0002
 Preferred coding is S=8.
 
#define MULTI_ADV_TX_POWER_MIN_INDEX   0
 Multi adv tx min power index.
 
#define MULTI_ADV_TX_POWER_MAX_INDEX   4
 Multi adv tx max power index.
 
#define WICED_BT_BLE_MAX_EXT_ADV_DATA_LEN   251
 ADV extension structures.
 
#define IS_CONNECTABLE_ADV_REPORT(x)   (x & (1 << 0))
 adv is connectable
 
#define IS_SCANNABLE_ADV_REPORT(x)   (x & (1 << 1))
 adv is scannable
 
#define IS_DIRECTED_ADV_REPORT(x)   (x & (1 << 2))
 directed adv
 
#define IS_SCAN_RSP_ADV_REPORT(x)   (x & (1 << 3))
 scan response
 
#define IS_LEGACY_ADV_REPORT(x)   (x & (1 << 4))
 legacy adv
 
#define IS_ADV_REPORT_DATA_STATUS_INCOMPLETE(x)   (x & (1 << 5))
 adv data incomplete, more data to come
 
#define IS_ADV_REPORT_DATA_STATUS_TRUNCATED(x)   (x & (2 << 5))
 Incomplete, data truncated, no more to come.
 

Typedefs

typedef uint8_t wiced_bt_ble_chnl_map_t [BLE_CHANNEL_MAP_LEN]
 LE Channel Map.
 
typedef uint8_t wiced_bt_ble_scanner_filter_policy_t
 LE Scanner filter policy. More...
 
typedef uint8_t wiced_bt_ble_advert_filter_policy_t
 Advertising filter policy (see wiced_bt_ble_advert_filter_policy_e)
 
typedef uint8_t wiced_dev_ble_signature_t [BTM_BLE_AUTH_SIGNATURE_SIZE]
 Device address (see BTM_BLE_AUTH_SIGNATURE_SIZE)
 
typedef uint8_t wiced_bt_ble_advert_type_t
 LE advertisement data type (see wiced_bt_ble_advert_type_e)
 
typedef uint8_t wiced_bt_dev_ble_evt_type_t
 Scan result event value (see wiced_bt_dev_ble_evt_type_e)
 
typedef uint8_t wiced_bt_ble_conn_type_t
 Connection type (see wiced_bt_ble_conn_type_e)
 
typedef uint8_t wiced_bt_ble_sec_action_type_t
 LE security type. More...
 
typedef uint8_t wiced_bt_ble_host_phy_preferences_t
 Host preferences on PHY. More...
 
typedef uint16_t wiced_bt_ble_lelr_phy_preferences_t
 The PHY_options parameter is a bit field that allows the Host to specify options for LE long range PHY. More...
 
typedef int8_t wiced_bt_ble_adv_tx_power_t
 Transmit Power in dBm ( MULTI_ADV_TX_POWER_MIN_INDEX to MULTI_ADV_TX_POWER_MAX_INDEX )
 
typedef uint8_t wiced_bt_ble_multi_advert_type_t
 LE advertisement type (see wiced_bt_ble_multi_advert_type_e)
 
typedef uint8_t wiced_bt_ble_privacy_mode_t
 LE Privacy mode. More...
 
typedef uint8_t wiced_bt_ble_multi_advert_filtering_policy_t
 LE advertisement filtering policy (see wiced_bt_ble_multi_advert_filtering_policy_e)
 
typedef void( wiced_bt_ble_scan_result_cback_t )(wiced_bt_ble_scan_results_t *p_scan_result, uint8_t *p_adv_data)
 Callback wiced_bt_ble_scan_result_cback_t. More...
 
typedef void( wiced_bt_ble_read_phy_complete_callback_t )(wiced_bt_ble_phy_update_t *p_phy_result)
 Callback wiced_bt_ble_read_phy_complete_callback_t. More...
 
typedef uint8_t wiced_bt_ble_ext_adv_phy_t
 LE phy to be used for extended advertisement.
 
typedef uint8_t wiced_bt_ble_ext_adv_phy_mask_t
 LE phy mask to be used for extended advertisement.
 
typedef uint16_t wiced_bt_ble_ext_adv_event_property_t
 LE extended advertisement event property.
 
typedef uint8_t wiced_bt_ble_ext_adv_handle_t
 advertisement set handle value
 
typedef uint8_t wiced_bt_ble_ext_adv_sid_t
 SID value.
 
typedef uint8_t wiced_bt_ble_ext_adv_scan_req_notification_setting_t
 Enable or disable notification value (see wiced_bt_ble_ext_adv_scan_req_notification_setting_e)
 
typedef uint16_t wiced_bt_ble_periodic_adv_prop_t
 Periodic adv property (see wiced_bt_ble_periodic_adv_prop_e)
 
typedef uint8_t wiced_bt_ble_ext_scan_filter_duplicate_t
 Extended scan duplicate filter policy (see wiced_bt_ble_ext_scan_filter_duplicate_e)
 
typedef uint8_t wiced_bt_ble_ext_filter_policy_t
 Filter policy used. More...
 
typedef uint8_t wiced_bt_ble_adv_sync_options_t
 Options used in create periodic sync to periodic adv command (see wiced_bt_ble_adv_sync_options_e)
 
typedef uint8_t wiced_bt_ble_periodic_adv_sync_transfer_mode_t
 Mode used in create periodic sync to periodic adv command (see wiced_bt_ble_periodic_adv_sync_transfer_mode_e)
 
typedef uint16_t wiced_bt_ble_periodic_adv_sync_handle_t
 Sync_Handle to be used to identify the periodic advertiser. More...
 
typedef uint16_t wiced_bt_ble_adv_report_event_mask_t
 Bit mask to identify the type of the adv received in extended adv report. More...
 
typedef uint8_t wiced_bt_ble_ext_adv_report_count_t
 Min and Max reports (see wiced_bt_ble_ext_adv_report_count_e)
 
typedef uint8_t wiced_bt_ble_advertiser_clock_accuracy_t
 Advertiser clock accuracy (see wiced_bt_ble_advertiser_clock_accuracy_e)
 
typedef
wiced_bt_ble_periodic_adv_sync_handle_t 
wiced_bt_ble_connection_handle_t
 sync handle and connection handle are same range
 
typedef uint8_t wiced_bt_ble_channel_sel_algo_t
 LE channel algorithm selection (see wiced_bt_ble_channel_sel_algo_e)
 
typedef void(* wiced_bt_ble_adv_ext_event_cb_fp_t )(wiced_bt_ble_adv_ext_event_t event, wiced_bt_ble_adv_ext_event_data_t *p_data)
 Callback wiced_bt_ble_adv_ext_event_cb_fp_t. More...
 

Enumerations

enum  wiced_bt_ble_scanner_filter_policy_e {
  BTM_BLE_SCAN_POLICY_ACCEPT_ADV_RSP, BTM_BLE_SCAN_POLICY_FILTER_ADV_RSP, BTM_BLE_SCAN_POLICY_ACCEPT_RPA_DIR_ADV_RSP, BTM_BLE_SCAN_POLICY_FILTER_RPA_DIR_ADV_RSP,
  BTM_BLE_SCAN_POLICY_MAX
}
 Scanner filter policy. More...
 
enum  wiced_bt_ble_advert_filter_policy_e {
  BTM_BLE_ADV_POLICY_ACCEPT_CONN_AND_SCAN = 0x00, BTM_BLE_ADV_POLICY_ACCEPT_CONN_FILTER_SCAN = 0x01, BTM_BLE_ADV_POLICY_FILTER_CONN_ACCEPT_SCAN = 0x02, BTM_BLE_ADV_POLICY_FILTER_CONN_FILTER_SCAN = 0x03,
  BTM_BLE_ADV_POLICY_MAX
}
 Advertising filter policy. More...
 
enum  wiced_bt_ble_advert_type_e {
  BTM_BLE_ADVERT_TYPE_FLAG = 0x01, BTM_BLE_ADVERT_TYPE_16SRV_PARTIAL = 0x02, BTM_BLE_ADVERT_TYPE_16SRV_COMPLETE = 0x03, BTM_BLE_ADVERT_TYPE_32SRV_PARTIAL = 0x04,
  BTM_BLE_ADVERT_TYPE_32SRV_COMPLETE = 0x05, BTM_BLE_ADVERT_TYPE_128SRV_PARTIAL = 0x06, BTM_BLE_ADVERT_TYPE_128SRV_COMPLETE = 0x07, BTM_BLE_ADVERT_TYPE_NAME_SHORT = 0x08,
  BTM_BLE_ADVERT_TYPE_NAME_COMPLETE = 0x09, BTM_BLE_ADVERT_TYPE_TX_POWER = 0x0A, BTM_BLE_ADVERT_TYPE_DEV_CLASS = 0x0D, BTM_BLE_ADVERT_TYPE_SIMPLE_PAIRING_HASH_C = 0x0E,
  BTM_BLE_ADVERT_TYPE_SIMPLE_PAIRING_RAND_C = 0x0F, BTM_BLE_ADVERT_TYPE_SM_TK = 0x10, BTM_BLE_ADVERT_TYPE_SM_OOB_FLAG = 0x11, BTM_BLE_ADVERT_TYPE_INTERVAL_RANGE = 0x12,
  BTM_BLE_ADVERT_TYPE_SOLICITATION_SRV_UUID = 0x14, BTM_BLE_ADVERT_TYPE_128SOLICITATION_SRV_UUID = 0x15, BTM_BLE_ADVERT_TYPE_SERVICE_DATA = 0x16, BTM_BLE_ADVERT_TYPE_PUBLIC_TARGET = 0x17,
  BTM_BLE_ADVERT_TYPE_RANDOM_TARGET = 0x18, BTM_BLE_ADVERT_TYPE_APPEARANCE = 0x19, BTM_BLE_ADVERT_TYPE_ADVERT_INTERVAL = 0x1a, BTM_BLE_ADVERT_TYPE_LE_BD_ADDR = 0x1b,
  BTM_BLE_ADVERT_TYPE_LE_ROLE = 0x1c, BTM_BLE_ADVERT_TYPE_256SIMPLE_PAIRING_HASH = 0x1d, BTM_BLE_ADVERT_TYPE_256SIMPLE_PAIRING_RAND = 0x1e, BTM_BLE_ADVERT_TYPE_32SOLICITATION_SRV_UUID = 0x1f,
  BTM_BLE_ADVERT_TYPE_32SERVICE_DATA = 0x20, BTM_BLE_ADVERT_TYPE_128SERVICE_DATA = 0x21, BTM_BLE_ADVERT_TYPE_CONN_CONFIRM_VAL = 0x22, BTM_BLE_ADVERT_TYPE_CONN_RAND_VAL = 0x23,
  BTM_BLE_ADVERT_TYPE_URI = 0x24, BTM_BLE_ADVERT_TYPE_INDOOR_POS = 0x25, BTM_BLE_ADVERT_TYPE_TRANS_DISCOVER_DATA = 0x26, BTM_BLE_ADVERT_TYPE_SUPPORTED_FEATURES = 0x27,
  BTM_BLE_ADVERT_TYPE_UPDATE_CH_MAP_IND = 0x28, BTM_BLE_ADVERT_TYPE_PB_ADV = 0x29, BTM_BLE_ADVERT_TYPE_MESH_MSG = 0x2A, BTM_BLE_ADVERT_TYPE_MESH_BEACON = 0x2B,
  BTM_BLE_ADVERT_TYPE_PSRI = 0x2E, BTM_BLE_ADVERT_TYPE_3D_INFO_DATA = 0x3D, BTM_BLE_ADVERT_TYPE_MANUFACTURER = 0xFF
}
 Advertisement data types. More...
 
enum  wiced_bt_ble_sec_flags_e { BTM_SEC_LE_LINK_ENCRYPTED = 0x01, BTM_SEC_LE_LINK_PAIRED_WITHOUT_MITM = 0x02, BTM_SEC_LE_LINK_PAIRED_WITH_MITM = 0x04 }
 security settings used with L2CAP LE COC More...
 
enum  wiced_bt_dev_ble_evt_type_e {
  BTM_BLE_EVT_CONNECTABLE_ADVERTISEMENT = 0x00, BTM_BLE_EVT_CONNECTABLE_DIRECTED_ADVERTISEMENT = 0x01, BTM_BLE_EVT_SCANNABLE_ADVERTISEMENT = 0x02, BTM_BLE_EVT_NON_CONNECTABLE_ADVERTISEMENT = 0x03,
  BTM_BLE_EVT_SCAN_RSP = 0x04
}
 Scan result event type. More...
 
enum  wiced_bt_ble_conn_type_e { BTM_BLE_CONN_NONE, BTM_BLE_CONN_AUTO, BTM_BLE_CONN_SELECTIVE = BTM_BLE_CONN_AUTO }
 Background connection type. More...
 
enum  wiced_bt_ble_sec_action_type_e { BTM_BLE_SEC_NONE, BTM_BLE_SEC_ENCRYPT, BTM_BLE_SEC_ENCRYPT_NO_MITM, BTM_BLE_SEC_ENCRYPT_MITM }
 LE encryption method. More...
 
enum  wiced_bt_ble_multi_advert_start_e { MULTI_ADVERT_STOP = 0x00, MULTI_ADVERT_START = 0x01 }
 Multi-advertisement start/stop. More...
 
enum  wiced_bt_ble_multi_advert_type_e {
  MULTI_ADVERT_CONNECTABLE_UNDIRECT_EVENT = 0x00, MULTI_ADVERT_CONNECTABLE_DIRECT_EVENT = 0x01, MULTI_ADVERT_DISCOVERABLE_EVENT = 0x02, MULTI_ADVERT_NONCONNECTABLE_EVENT = 0x03,
  MULTI_ADVERT_LOW_DUTY_CYCLE_DIRECT_EVENT = 0x04
}
 Multi-advertisement type. More...
 
enum  wiced_bt_ble_privacy_e { BTM_BLE_PRIVACY_MODE_NETWORK, BTM_BLE_PRIVACY_MODE_DEVICE }
 Privacy mode refer Spec version 5.0 Vol 3 Part C Section 10.7 privacy feature. More...
 
enum  wiced_bt_ble_multi_advert_filtering_policy_e { MULTI_ADVERT_FILTER_POLICY_NOT_USED = 0x00, MULTI_ADVERT_FILTER_POLICY_ADV_ALLOW_UNKNOWN_CONNECTION = 0x01, MULTI_ADVERT_FILTER_POLICY_ADV_ALLOW_UNKNOWN_SCANNING = 0x02, MULTI_ADVERT_FILTER_POLICY_USE_FOR_ALL = 0x03 }
 Multi-advertisement Filtering policy. More...
 
enum  { WICED_BT_BLE_EXT_ADV_PHY_1M = 0x1, WICED_BT_BLE_EXT_ADV_PHY_2M = 0x2, WICED_BT_BLE_EXT_ADV_PHY_LE_CODED = 0x3, WICED_BT_BLE_EXT_ADV_NUM_PHYS = 0x3 }
 LE PHY. More...
 
enum  { WICED_BT_BLE_EXT_ADV_PHY_1M_BIT = (1 << 0), WICED_BT_BLE_EXT_ADV_PHY_2M_BIT = (1 << 1), WICED_BT_BLE_EXT_ADV_PHY_LE_CODED_BIT = (1 << 2) }
 LE PHY bit mask. More...
 
enum  {
  WICED_BT_BLE_EXT_ADV_EVENT_CONNECTABLE_ADV = (1 << 0), WICED_BT_BLE_EXT_ADV_EVENT_SCANNABLE_ADV = (1 << 1), WICED_BT_BLE_EXT_ADV_EVENT_DIRECTED_ADV = (1 << 2), WICED_BT_BLE_EXT_ADV_EVENT_HIGH_DUTY_DIRECTED_CONNECTABLE_ADV = (1 << 3),
  WICED_BT_BLE_EXT_ADV_EVENT_LEGACY_ADV = (1 << 4), WICED_BT_BLE_EXT_ADV_EVENT_ANONYMOUS_ADV = (1 << 5), WICED_BT_BLE_EXT_ADV_EVENT_INCLUDE_TX_POWER = (1 << 6)
}
 Advertising event properties: Describes the type of advertising event that is being configured and its basic properties. More...
 
enum  { WICED_BT_BLE_EXT_ADV_HANDLE_MIN = 0x00, WICED_BT_BLE_EXT_ADV_HANDLE_MAX = 0xef }
 Advertisement set handle to identify adv set b/n host and controller. More...
 
enum  { WICED_BT_BLE_EXT_ADV_SID_MIN = 0x00, WICED_BT_BLE_EXT_ADV_SID_MAX = 0x0f }
 The Advertising set identifier(SID) is used to uniquely identify adv sets from advertiser. More...
 
enum  wiced_bt_ble_ext_adv_scan_req_notification_setting_e { WICED_BT_BLE_EXT_ADV_SCAN_REQ_NOTIFY_DISABLE = 0x00, WICED_BT_BLE_EXT_ADV_SCAN_REQ_NOTIFY_ENABLE = 0x01 }
 Value to configure to receive scan request recived notification. More...
 
enum  wiced_bt_ble_periodic_adv_prop_e { WICED_BT_BLE_PERIODIC_ADV_PROPERTY_INCLUDE_TX_POWER = (1 << 6) }
 Periodic adv property. More...
 
enum  wiced_bt_ble_ext_scan_filter_duplicate_e { WICED_BT_BLE_EXT_SCAN_FILTER_DUPLICATE_DISABLE, WICED_BT_BLE_EXT_SCAN_FILTER_DUPLICATE_ENABLE, WICED_BT_BLE_EXT_SCAN_FILTER_DUPLICATE_ENABLE_RESET_ON_SCAN_PERIOD }
 Extended scan duplicate filter policy. More...
 
enum  wiced_bt_ble_ext_filter_policy_e { WICED_BT_BLE_IGNORE_FILTER_ACCEPT_LIST_FOR_CONNS = 0, WICED_BT_BLE_USE_FILTER_ACCEPT_LIST_FOR_CONNS = 1 }
 Filter policy used in extended create connection command. More...
 
enum  wiced_bt_ble_adv_sync_options_e { WICED_BT_BLE_IGNORE_SYNC_TO_PERIODIC_ADV_LIST, WICED_BT_BLE_SYNC_TO_PERIODIC_ADV_LIST = 1 }
 Options used in create periodic sync to periodic adv command. More...
 
enum  wiced_bt_ble_periodic_adv_sync_transfer_mode_e { WICED_BT_BLE_IGNORE_PA_SYNC_TRANSFER_EVT, WICED_BT_BLE_ENABLE_PA_SYNC_TRANSFER_DISABLE_PA_REPORT_EVT, WICED_BT_BLE_ENABLE_PA_SYNC_TRANSFER_ENABLE_PA_REPORT_EVT }
 Mode used in Periodic Advertising Sync Transfer Parameters. More...
 
enum  { PERIODIC_SYNC_HANDLE_MIN = 0, PERIODIC_SYNC_HANDLE_MAX = 0x0EFF }
 When controller receives succesfully periodic adv event based on create sync to periodic advertiser command, sync handle get generated by controller and reported in periodic sync established event scanner uniquely identifies periodic adv data from adv reports using this handle and advertismenet set id(SID)
 
enum  wiced_bt_ble_ext_adv_report_count_e { ADV_REP_EVT_COUNT_MIN = 1, ADV_REP_EVT_COUNT_MAX = 10 }
 Min and Max possible number of reports in LE extended adv report event. More...
 
enum  wiced_bt_ble_advertiser_clock_accuracy_e {
  ADVERTISER_CLK_ACCURACY_500PPM, ADVERTISER_CLK_ACCURACY_250PPM, ADVERTISER_CLK_ACCURACY_150PPM, ADVERTISER_CLK_ACCURACY_100PPM,
  ADVERTISER_CLK_ACCURACY_75PPM, ADVERTISER_CLK_ACCURACY_50PPM, ADVERTISER_CLK_ACCURACY_30PPM, ADVERTISER_CLK_ACCURACY_20PPM
}
 Advertiser clock accuracy.
 
enum  wiced_bt_ble_channel_sel_algo_e { LE_CHANNEL_SEL_ALGO_1_USED, LE_CHANNEL_SEL_ALGO_2_USED }
 LE channel selection algorithms. More...
 
enum  wiced_bt_ble_adv_ext_event_t {
  WICED_BT_BLE_PERIODIC_ADV_SYNC_ESTABLISHED_EVENT, WICED_BT_BLE_PERIODIC_ADV_REPORT_EVENT, WICED_BT_BLE_PERIODIC_ADV_SYNC_LOST_EVENT, WICED_BT_BLE_ADV_SET_TERMINATED_EVENT,
  WICED_BT_BLE_SCAN_REQUEST_RECEIVED_EVENT, WICED_BT_BLE_CHANNEL_SEL_ALGO_EVENT, WICED_BT_BLE_BIGINFO_ADV_REPORT_EVENT, WICED_BT_BLE_PERIODIC_ADV_SYNC_TRANSFER_EVENT
}
 ADV extension events to the application. More...
 

Functions

wiced_result_t wiced_bt_start_advertisements (wiced_bt_ble_advert_mode_t advert_mode, wiced_bt_ble_address_type_t directed_advertisement_bdaddr_type, wiced_bt_device_address_ptr_t directed_advertisement_bdaddr_ptr)
 Start advertising. More...
 
wiced_bt_ble_advert_mode_t wiced_bt_ble_get_current_advert_mode (void)
 Get current advertising mode. More...
 
wiced_result_t wiced_bt_ble_set_raw_advertisement_data (uint8_t num_elem, wiced_bt_ble_advert_elem_t *p_data)
 Set advertisement raw data to the controller. More...
 
int wiced_bt_ble_build_raw_advertisement_data (uint8_t *p_adv, int adv_len, wiced_bt_ble_advert_type_t adv_type, uint8_t *p_type_data, uint16_t type_len)
 Write advertisement raw data to application buffer. More...
 
uint8_t * wiced_bt_ble_check_advertising_data (uint8_t *p_adv, wiced_bt_ble_advert_type_t type, uint8_t *p_length)
 Parse advertising data (returned from scan results callback wiced_bt_ble_scan_result_cback_t). More...
 
uint8_t * wiced_bt_ble_get_next_adv_entry (uint8_t *p_adv, int *p_offset, wiced_bt_ble_advert_type_t type, uint8_t *p_length)
 When multiple entry for same adv type is available in the adv data this api will help to get next entry of specified advertisement data type when there is a single instance use wiced_bt_ble_check_advertising_data. More...
 
wiced_bool_t wiced_btm_ble_update_advertisement_filter_policy (wiced_bt_ble_advert_filter_policy_t advertising_policy)
 Update the filter policy of advertiser. More...
 
wiced_result_t wiced_bt_ble_set_adv_tx_power (int8_t power, wiced_bt_dev_vendor_specific_command_complete_cback_t *p_cb)
 Command to set LE Advertisement tx power. More...
 
wiced_result_t wiced_bt_ble_read_adv_tx_power (wiced_bt_dev_cmpl_cback_t *p_cback)
 Read LE Advertisement transmit power. More...
 
wiced_bt_dev_status_t wiced_bt_ble_set_raw_scan_response_data (uint8_t num_elem, wiced_bt_ble_advert_elem_t *p_data)
 Set scan response raw data. More...
 
wiced_bt_dev_status_t wiced_bt_ble_observe (wiced_bool_t start, uint8_t duration, wiced_bt_ble_scan_result_cback_t *p_scan_result_cback)
 This function makes the device start or stop operating in the observer role. More...
 
wiced_result_t wiced_bt_ble_scan (wiced_bt_ble_scan_type_t scan_type, wiced_bool_t duplicate_filter_enable, wiced_bt_ble_scan_result_cback_t *p_scan_result_cback)
 Start LE scanning. More...
 
wiced_bt_ble_scan_type_t wiced_bt_ble_get_current_scan_state (void)
 Get current scan state. More...
 
void wiced_bt_ble_update_scanner_filter_policy (wiced_bt_ble_scanner_filter_policy_t scanner_policy)
 Update the filter policy of scanning. More...
 
wiced_bool_t wiced_bt_ble_set_background_connection_type (wiced_bt_ble_conn_type_t conn_type, void *p_select_cback)
 Set LE background connection procedure type. More...
 
wiced_bool_t wiced_bt_ble_update_background_connection_device (wiced_bool_t add_remove, wiced_bt_device_address_t remote_bda, wiced_bt_ble_address_type_t ble_addr_type)
 This function is called to add or remove a device into/from the filter list. More...
 
wiced_result_t wiced_bt_ble_get_connection_parameters (wiced_bt_device_address_t remote_bda, wiced_bt_ble_conn_params_t *p_conn_parameters)
 To read LE connection parameters based on connection address received in gatt connection up indication. More...
 
wiced_bool_t wiced_bt_ble_update_advertising_filter_accept_list (wiced_bool_t add, wiced_bt_ble_address_type_t addr_type, wiced_bt_device_address_t remote_bda)
 Add or remove device from advertising filter Accept List. More...
 
wiced_bool_t wiced_bt_ble_update_scanner_filter_list (wiced_bool_t add, wiced_bt_device_address_t remote_bda, wiced_bt_ble_address_type_t addr_type)
 Add or remove device from scanner filter Accept List. More...
 
wiced_bool_t wiced_bt_ble_clear_filter_accept_list (void)
 Request clearing filter Accept List in controller side. More...
 
uint8_t wiced_bt_ble_get_filter_accept_list_size (void)
 Returns size of Filter Accept List size in controller side. More...
 
wiced_bt_dev_status_t wiced_bt_ble_read_phy (wiced_bt_device_address_t remote_bd_addr, wiced_bt_ble_read_phy_complete_callback_t *p_read_phy_complete_callback)
 Host to read the current transmitter PHY and receiver PHY on the connection identified by the remote bdaddr. More...
 
wiced_bt_dev_status_t wiced_bt_ble_set_default_phy (wiced_bt_ble_phy_preferences_t *phy_preferences)
 Host to configure default transmitter phy and receiver phy to be used for all subsequent connections over the LE transport. More...
 
wiced_result_t wiced_bt_ble_set_phy (wiced_bt_ble_phy_preferences_t *phy_preferences)
 Host to configure the LE link to 1M or 2M and LE coding to be used. More...
 
wiced_result_t wiced_bt_ble_set_channel_classification (const wiced_bt_ble_chnl_map_t ble_channel_map)
 Set channel classification for the available 40 channels. More...
 
wiced_bt_dev_status_t wiced_start_multi_advertisements (uint8_t advertising_enable, uint8_t adv_instance)
 Start/Stop Mulit advertisements. More...
 
wiced_bt_dev_status_t wiced_set_multi_advertisement_data (uint8_t *p_data, uint8_t data_len, uint8_t adv_instance)
 Set multi advertisement data for each adv_instance. More...
 
wiced_bt_dev_status_t wiced_set_multi_advertisement_params (uint8_t adv_instance, wiced_bt_ble_multi_adv_params_t *params)
 Set multi advertisement params for each adv_instance. More...
 
wiced_bt_dev_status_t wiced_set_multi_advertisement_scan_response_data (uint8_t *p_data, uint8_t data_len, uint8_t adv_instance)
 Set multi advertisement data for scan response. More...
 
wiced_bt_dev_status_t wiced_set_multi_advertisements_random_address (wiced_bt_device_address_t randomAddr, uint8_t adv_instance)
 Set multi advertisement random address for an instance. More...
 
wiced_bool_t wiced_bt_notify_multi_advertisement_packet_transmissions (uint8_t adv_instance, void(*clientCallback)(uint32_t), uint32_t advanceNoticeInMicroSeconds)
 Allows the application to register a callback that will be invoked just before an ADV packet is about to be sent out and immediately after. More...
 
void wiced_bt_ble_security_grant (wiced_bt_device_address_t bd_addr, wiced_bt_dev_status_t res)
 btm_ble_api_functions More...
 
wiced_bool_t wiced_bt_ble_data_signature (wiced_bt_device_address_t bd_addr, uint8_t *p_text, uint16_t len, wiced_dev_ble_signature_t signature)
 Sign the data using AES128 CMAC algorith. More...
 
wiced_bool_t wiced_bt_ble_verify_signature (wiced_bt_device_address_t bd_addr, uint8_t *p_orig, uint16_t len, uint32_t counter, uint8_t *p_comp)
 Verify the data signature. More...
 
wiced_bool_t wiced_bt_ble_get_security_state (wiced_bt_device_address_t bd_addr, uint8_t *p_le_sec_flags, uint8_t *p_le_key_size)
 Get security mode 1 flags and encryption key size for LE peer. More...
 
wiced_bt_dev_status_t wiced_bt_ble_set_privacy_mode (wiced_bt_device_address_t remote_bda, wiced_bt_ble_address_type_t rem_bda_type, wiced_bt_ble_privacy_mode_t privacy_mode)
 Updates privacy mode if device is already available in controller resolving list. More...
 
wiced_bt_dev_status_t wiced_bt_ble_read_device_random_address (wiced_bt_device_address_t random_bd_addr)
 Get the configured local random device address. More...
 
wiced_bool_t wiced_bt_ble_is_ext_adv_supported (void)
 Check if the local BT controller supports extended advertising. More...
 
wiced_bool_t wiced_bt_ble_is_periodic_adv_supported (void)
 Check if the local BT controller supports periodic advertising. More...
 
wiced_bt_dev_status_t wiced_bt_ble_set_ext_adv_random_address (wiced_bt_ble_ext_adv_handle_t adv_handle, wiced_bt_device_address_t random_addr)
 Sends HCI command to set the random address for an adv set. More...
 
wiced_bt_dev_status_t wiced_bt_ble_set_ext_adv_parameters (wiced_bt_ble_ext_adv_handle_t adv_handle, wiced_bt_ble_ext_adv_event_property_t event_properties, uint32_t primary_adv_int_min, uint32_t primary_adv_int_max, wiced_bt_ble_advert_chnl_map_t primary_adv_channel_map, wiced_bt_ble_address_type_t own_addr_type, wiced_bt_ble_address_type_t peer_addr_type, wiced_bt_device_address_t peer_addr, wiced_bt_ble_advert_filter_policy_t adv_filter_policy, int8_t adv_tx_power, wiced_bt_ble_ext_adv_phy_t primary_adv_phy, uint8_t secondary_adv_max_skip, wiced_bt_ble_ext_adv_phy_t secondary_adv_phy, wiced_bt_ble_ext_adv_sid_t adv_sid, wiced_bt_ble_ext_adv_scan_req_notification_setting_t scan_request_not)
 Sends the HCI command to set the parameters for extended advetisement. More...
 
wiced_bt_dev_status_t wiced_bt_ble_set_ext_adv_data (wiced_bt_ble_ext_adv_handle_t adv_handle, uint16_t data_len, uint8_t *p_data)
 Sends HCI command to write the extended adv data. More...
 
wiced_bt_dev_status_t wiced_bt_ble_set_legacy_adv_data (uint16_t data_len, uint8_t *p_data)
 Sends HCI command to write the legacy adv data. More...
 
wiced_bt_dev_status_t wiced_bt_ble_set_ext_scan_rsp_data (wiced_bt_ble_ext_adv_handle_t adv_handle, uint16_t data_len, uint8_t *p_data)
 Sends HCI command to write the extended scan rsp data. More...
 
wiced_bt_dev_status_t wiced_bt_ble_start_ext_adv (uint8_t enable, uint8_t num_sets, wiced_bt_ble_ext_adv_duration_config_t *p_dur)
 Sends the HCI command to start/stop extended advertisements. More...
 
wiced_bt_dev_status_t wiced_bt_ble_remove_adv_set (wiced_bt_ble_ext_adv_handle_t adv_handle)
 Sends the HCI command to remove an extended advertisement set (which is currently not advertising) More...
 
wiced_bt_dev_status_t wiced_bt_ble_clear_adv_sets (void)
 Sends the HCI command to remove all extended advertisement sets which are currently not advertising. More...
 
uint8_t wiced_bt_ble_read_num_ext_adv_sets (void)
 Read the number of ADV sets supported by the controller. More...
 
uint16_t wiced_bt_ble_read_max_ext_adv_data_len (void)
 Read the maximum ADV data length supported by the controller. More...
 
wiced_bt_dev_status_t wiced_bt_ble_set_periodic_adv_params (wiced_bt_ble_ext_adv_handle_t adv_handle, uint16_t periodic_adv_int_min, uint16_t periodic_adv_int_max, wiced_bt_ble_periodic_adv_prop_t periodic_adv_properties)
 Sends the HCI command to set the parameters for periodic advertising. More...
 
wiced_bt_dev_status_t wiced_bt_ble_set_periodic_adv_data (wiced_bt_ble_ext_adv_handle_t adv_handle, uint16_t adv_data_length, uint8_t *p_adv_data)
 Sends the HCI command to write the periodic adv data. More...
 
wiced_bt_dev_status_t wiced_bt_ble_start_periodic_adv (wiced_bt_ble_ext_adv_handle_t adv_handle, wiced_bool_t enable)
 Sends the HCI command to start/stop periodic advertisements. More...
 
wiced_bt_dev_status_t wiced_bt_ble_cache_ext_scan_config (wiced_bt_ble_ext_scan_config_t *p_ext_scan_cfg)
 Stores extended scan configuration to apply on start ext scan. More...
 
wiced_bt_dev_status_t wiced_bt_ble_cache_ext_conn_config (wiced_bt_ble_ext_conn_cfg_t *p_ext_conn_cfg)
 Stores the extended ADV connection configuration. More...
 
wiced_bt_dev_status_t wiced_bt_ble_create_sync_to_periodic_adv (wiced_bt_ble_adv_sync_options_t options, wiced_bt_ble_ext_adv_sid_t adv_sid, wiced_bt_ble_address_type_t adv_addr_type, wiced_bt_device_address_t adv_addr, uint16_t skip, uint16_t sync_timeout, uint8_t sync_cte_type)
 Sends the HCI command to synchronize with periodic advertising from an advertiser and begin receiving periodic advertising packets. More...
 
wiced_bt_dev_status_t wiced_bt_ble_cancel_sync_to_periodic_adv (void)
 Sends HCI command to cancel the create sync command while it is pending. More...
 
wiced_bt_dev_status_t wiced_bt_ble_terminate_sync_to_periodic_adv (uint16_t sync_handle)
 Sends the HCI command to stop reception of periodic advertising identified by the sync_handle. More...
 
wiced_bt_dev_status_t wiced_bt_ble_add_device_to_periodic_adv_list (wiced_bt_ble_address_type_t advertiser_addr_type, wiced_bt_device_address_t advetiser_addr, wiced_bt_ble_ext_adv_sid_t adv_sid)
 Sends the HCI command to add the given advertiser to Periodic Advertiser list. More...
 
wiced_bt_dev_status_t wiced_bt_ble_remove_device_from_periodic_adv_list (wiced_bt_ble_address_type_t advertiser_addr_type, wiced_bt_device_address_t advetiser_addr, wiced_bt_ble_ext_adv_sid_t adv_sid)
 Sends the HCI command to remove the given advertiser from Periodic Advertiser list. More...
 
wiced_bt_dev_status_t wiced_bt_ble_clear_periodic_adv_list (void)
 Sends the HCI command to remove to remove all devices from the the Periodic Advertisers list. More...
 
uint8_t wiced_bt_ble_read_periodic_adv_list_size (void)
 Read the Periodic Advertisers list size. More...
 
void wiced_bt_ble_register_adv_ext_cback (wiced_bt_ble_adv_ext_event_cb_fp_t p_app_adv_ext_event_cb)
 Register an application callback function to receive extended advertising events. More...
 
wiced_bt_dev_status_t wiced_bt_ble_set_periodic_adv_rcv_enable (wiced_bt_ble_periodic_adv_sync_handle_t sync_handle, wiced_bool_t enable)
 Sends the HCI command enable or disable receiving periodic ADV data for a sync handle. More...
 
wiced_bt_dev_status_t wiced_bt_ble_periodic_adv_sync_transfer (wiced_bt_device_address_t peer_bda, uint16_t service_data, wiced_bt_ble_periodic_adv_sync_handle_t sync_handle)
 Sends the HCI command to send synchronization information about the periodic advertising train identified by the Sync_Handle parameter to given device. More...
 
wiced_bt_dev_status_t wiced_bt_ble_periodic_adv_set_info_transfer (wiced_bt_device_address_t peer_bda, uint16_t service_data, wiced_bt_ble_ext_adv_handle_t adv_handle)
 Sends the HCI command to send synchronization information about the periodic advertising in an advertising set to given device. More...
 
wiced_bt_dev_status_t wiced_bt_ble_set_periodic_adv_sync_transfer_param (wiced_bt_device_address_t peer_bda, wiced_bt_ble_periodic_adv_sync_transfer_mode_t mode, uint16_t skip, uint16_t sync_timeout, uint8_t sync_cte_type)
 Sends the HCI command to set synchronize periodic transfer parameter. More...
 
wiced_bt_dev_status_t wiced_bt_ble_set_default_periodic_adv_sync_transfer_param (wiced_bt_ble_periodic_adv_sync_transfer_mode_t mode, uint16_t skip, uint16_t sync_timeout, uint8_t sync_cte_type)
 Sends the HCI command to set Default synchronize periodic transfer parameter. More...
 
wiced_result_t wiced_ble_private_device_address_resolution (wiced_bt_device_address_t rpa, BT_OCTET16 irk)
 Function wiced_ble_private_device_address_resolution. More...
 
wiced_result_t wiced_bt_ble_read_le_features (wiced_bt_device_address_t bda, wiced_bt_features_t features)
 Function wiced_bt_ble_read_le_features. More...
 
wiced_result_t wiced_bt_ble_address_resolution_list_clear_and_disable (void)
 Function wiced_bt_ble_address_resolution_list_clear_and_disable. More...
 

Detailed Description

WICED Bluetooth Low Energy Functions.