Infineon Logo AIROC BTSDK v4.9 - Documentation
 
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
Isochronous (ISOC) functions

Isochronous(ISOC) Functions. More...

Functions

void wiced_bt_isoc_register_cb (wiced_bt_isoc_cback_t isoc_cb)
 Function wiced_bt_isoc_register_cb. More...
 
void wiced_bt_isoc_register_data_cb (wiced_bt_iso_rx_cb_t rx_data_cb, wiced_bt_iso_num_complete_cb_t num_complete_cb)
 Register ISO data event callbacks. More...
 
wiced_result_t wiced_bt_isoc_central_set_cig_param (wiced_bt_ble_cig_param_t *cig_params, void *ctx)
 Function wiced_bt_isoc_central_set_cig_param. More...
 
wiced_result_t wiced_bt_isoc_central_set_cig_param_test (wiced_bt_ble_cig_param_test_t *cig_params, void *ctx)
 Function wiced_bt_isoc_central_set_cig_param_test. More...
 
wiced_result_t wiced_bt_isoc_central_create_cis (wiced_bt_isoc_create_cis_param_t *create_cis_param)
 Function wiced_bt_isoc_central_create_cis. More...
 
wiced_result_t wiced_bt_isoc_create_cis_by_bda (uint8_t cis_count, uint8_t *peer_bda_list, uint16_t *cis_handle_list)
 Function wiced_bt_isoc_create_cis_by_bda. More...
 
wiced_result_t wiced_bt_isoc_peripheral_accept_cis (uint8_t cig_id, uint8_t cis_id, uint16_t cis_conn_handle, uint8_t src_ase_id, uint8_t sink_ase_id)
 Function wiced_bt_isoc_peripheral_accept_cis. More...
 
wiced_result_t wiced_bt_isoc_peripheral_reject_cis (uint16_t cis_handle, uint8_t reason)
 Function wiced_bt_isoc_peripheral_reject_cis. More...
 
wiced_result_t wiced_bt_isoc_peripheral_remove_cig (uint8_t cig_id)
 Function wiced_bt_isoc_peripheral_remove_cig. More...
 
wiced_result_t wiced_bt_isoc_disconnect_cis (uint16_t cis_handle)
 Function wiced_bt_isoc_disconnect_cis. More...
 
wiced_bool_t wiced_bt_isoc_is_cis_connected (uint8_t cig_id, uint8_t cis_id)
 Get CIS connection status. More...
 
wiced_bool_t wiced_bt_isoc_is_cis_connected_by_conn_id (uint16_t cis_conn_id)
 Get CIS connection status by CIS conn id. More...
 
wiced_result_t wiced_bt_isoc_central_request_peer_sca (wiced_bt_device_address_t peer_bda)
 Function wiced_bt_isoc_central_request_peer_sca. More...
 
wiced_result_t wiced_bt_isoc_central_remove_cig (uint8_t cig_id)
 Function wiced_bt_isoc_central_remove_cig. More...
 
uint16_t wiced_bt_isoc_central_get_psn_by_cis_handle (uint16_t handle)
 wiced_bt_isoc_central_get_psn_by_cis_handle More...
 
uint16_t wiced_bt_isoc_get_psn_by_bis_handle (uint16_t handle)
 wiced_bt_isoc_get_psn_by_bis_handle More...
 
wiced_bool_t wiced_bt_isoc_is_bis_created (uint16_t bis_conn_handle)
 wiced_bt_isoc_is_bis_created More...
 
wiced_result_t wiced_bt_isoc_central_create_big (wiced_bt_isoc_create_big_param_t *p_big_param)
 Create BIG with provided parameters. More...
 
wiced_result_t wiced_bt_isoc_central_terminate_big (uint8_t big_handle, uint8_t reason)
 terminate a BIG identified by the BIG_Handle More...
 
wiced_bool_t wiced_bt_isoc_peripheral_big_create_sync (wiced_bt_isoc_big_create_sync_t *p_create_sync)
 Sync to the BIS stream described by wiced_bt_isoc_big_create_sync_t. More...
 
wiced_result_t wiced_bt_isoc_peripheral_big_terminate_sync (uint8_t big_handle)
 Stop synchronizing or cancel the process of synchronizing to the BIG identified by the BIG_Handle. More...
 
wiced_bool_t wiced_bt_isoc_remove_data_path (uint16_t conn_hdl, wiced_bool_t is_cis, wiced_bt_isoc_data_path_bit_t data_path_dir_bitfield)
 Remove data path setup for a CIS/BIS. More...
 
wiced_bool_t wiced_bt_isoc_is_data_path_active (uint8_t cig_id, uint8_t cis_id, wiced_bt_isoc_data_path_direction_t data_path_dir)
 Get status of the ISO CIS/BIS data path. More...
 
void wiced_bt_isoc_update_cis_conn_handle (uint8_t cig_id, uint8_t cis_id, uint16_t cis_conn_handle)
 
uint16_t wiced_bt_isoc_get_cis_conn_handle (uint8_t cig_id, uint8_t cis_id)
 
wiced_bool_t wiced_bt_isoc_setup_data_path (uint16_t conn_hdl, wiced_bool_t is_cis, wiced_bt_isoc_data_path_direction_t data_path_dir, wiced_bt_isoc_data_path_id_t data_path_id, uint32_t controller_delay)
 Can be invoked twice per connection handle (once per direction) Supports only HCI for datapath and Does not support configuring codec in the controller. More...
 
wiced_bool_t wiced_bt_write_iso_data_to_lower (uint8_t *p_data, uint16_t len)
 This function writes ISO buffer to the lower layer (or controller in the Hosted Stack) More...
 
uint16_t wiced_bt_isoc_get_max_data_pkt_len (void)
 This function returns ISOC buffer size.
 

Detailed Description

Isochronous(ISOC) Functions.

Function Documentation

wiced_result_t wiced_bt_isoc_central_create_big ( wiced_bt_isoc_create_big_param_t p_big_param)

Create BIG with provided parameters.

Parameters
p_big_paramNumber of BIS, SDU Interval, Packing, Framing
Returns
WICED_SUCCESS if successful
wiced_result_t wiced_bt_isoc_central_create_cis ( wiced_bt_isoc_create_cis_param_t create_cis_param)

Function wiced_bt_isoc_central_create_cis.

This API is invoked to create one or more CIS channels

Parameters
[in]cis_count: Number of elements in CIS handle list and ACL handle list. These lists must be of the same length
[in]cis_handle_list: List of connection handles of the cis to be established
[in]acl_handle_list: ACL connection handle associated with the cis handles. The ith acl handle corresponds to the ith cis handle, etc.
Returns
status

Note : Once CIS is establish WICED_BLE_ISOC_CIS_ESTABLISHED event will be received in registered application callback.

uint16_t wiced_bt_isoc_central_get_psn_by_cis_handle ( uint16_t  handle)

wiced_bt_isoc_central_get_psn_by_cis_handle

Parameters
[in]handle: CIS handle
Returns
packet sequence number
wiced_result_t wiced_bt_isoc_central_remove_cig ( uint8_t  cig_id)

Function wiced_bt_isoc_central_remove_cig.

Remove given CIG

Parameters
[in]cig_id: CIG ID
Returns
status
wiced_result_t wiced_bt_isoc_central_request_peer_sca ( wiced_bt_device_address_t  peer_bda)

Function wiced_bt_isoc_central_request_peer_sca.

Request for Slave Clock Accuracy

Parameters
[in]peer_bda: Peer Bluetooth Address
Returns
status

Note : WICED_BLE_ISOC_SLAVE_CLOCK_ACCURACY event will be received in registered application callback.

wiced_result_t wiced_bt_isoc_central_set_cig_param ( wiced_bt_ble_cig_param_t cig_params,
void *  ctx 
)

Function wiced_bt_isoc_central_set_cig_param.

Used by a master’s Host to set the parameters of one or more CISes that are associated with a CIG in the Controller. If none of the CISes in that CIG have been created, this command may also be used to modify or add CIS(s) to that CIG.

Parameters
[in]cig_params: CIG parameter (wiced_bt_ble_cig_param_t)
[in]ctx: pointer to application data that will be given back to application through the WICED_BLE_ISOC_SET_CIG_CMD_COMPLETE event
Returns
status
wiced_result_t wiced_bt_isoc_central_set_cig_param_test ( wiced_bt_ble_cig_param_test_t cig_params,
void *  ctx 
)

Function wiced_bt_isoc_central_set_cig_param_test.

Command should only be used for testing purposes only.

Used by a master’s Host to set the parameters of one or more CISes that are associated with a CIG in the Controller. If none of the CISes in that CIG have been created, this command may also be used to modify or add CIS(s) to that CIG.

Parameters
[in]cig_params: CIG parameter (wiced_bt_ble_cig_param_t)
[in]ctx: pointer to application data that will be given back to application through the WICED_BLE_ISOC_SET_CIG_CMD_COMPLETE event
Returns
status
wiced_result_t wiced_bt_isoc_central_terminate_big ( uint8_t  big_handle,
uint8_t  reason 
)

terminate a BIG identified by the BIG_Handle

Parameters
big_handleUsed to identify the BIG
reasonReason the BIG is terminated.
Returns
wiced_result_t WICED_SUCCESS if successful
wiced_result_t wiced_bt_isoc_create_cis_by_bda ( uint8_t  cis_count,
uint8_t *  peer_bda_list,
uint16_t *  cis_handle_list 
)

Function wiced_bt_isoc_create_cis_by_bda.

Create CIS (Connected Isochronous Stream) connection

Parameters
[in]cis_count: Number of elements in Peer BDA list and CIS handle list.
[in]peer_bda_list: Peer Bluetooth Address List
[in]cis_handle_list: CIS handles List
Returns
status

Note : Once CIS is establish WICED_BLE_ISOC_CIS_ESTABLISHED event will be received in registered application callback.

wiced_result_t wiced_bt_isoc_disconnect_cis ( uint16_t  cis_handle)

Function wiced_bt_isoc_disconnect_cis.

Disconnect CIS (Connected Isochronous Stream) connection

Parameters
[in]cis_handle: CIS handle
Returns
status

Note : Once CIS is disconnected WICED_BLE_ISOC_CIS_DISCONNECTED event will be received in registered application callback.

uint16_t wiced_bt_isoc_get_cis_conn_handle ( uint8_t  cig_id,
uint8_t  cis_id 
)
Parameters
cig_idCIG identifier
cis_idCIS identifier
Returns
uint16_t CIS connection handle
uint16_t wiced_bt_isoc_get_psn_by_bis_handle ( uint16_t  handle)

wiced_bt_isoc_get_psn_by_bis_handle

Parameters
[in]handle: BIS handle
Returns
packet sequence number
wiced_bool_t wiced_bt_isoc_is_bis_created ( uint16_t  bis_conn_handle)

wiced_bt_isoc_is_bis_created

Parameters
[in]handle: BIS Connection handle
Returns
TRUE if BIG exists
wiced_bool_t wiced_bt_isoc_is_cis_connected ( uint8_t  cig_id,
uint8_t  cis_id 
)

Get CIS connection status.

Parameters
cig_idCIG identifier
cis_idCIS identifier
Returns
wiced_bool_t TRUE if CIS connection exists
wiced_bool_t wiced_bt_isoc_is_cis_connected_by_conn_id ( uint16_t  cis_conn_id)

Get CIS connection status by CIS conn id.

Parameters
cis_conn_idCIS conn id
Returns
wiced_bool_t TRUE if CIS connection exists
wiced_bool_t wiced_bt_isoc_is_data_path_active ( uint8_t  cig_id,
uint8_t  cis_id,
wiced_bt_isoc_data_path_direction_t  data_path_dir 
)

Get status of the ISO CIS/BIS data path.

Parameters
cig_idCIG identifier
cis_idCIS identifier
data_path_dirINPUT/OUTPUT see #wiced_bt_isoc_data_path_direction_t
Returns
wiced_bool_t
wiced_result_t wiced_bt_isoc_peripheral_accept_cis ( uint8_t  cig_id,
uint8_t  cis_id,
uint16_t  cis_conn_handle,
uint8_t  src_ase_id,
uint8_t  sink_ase_id 
)

Function wiced_bt_isoc_peripheral_accept_cis.

Accept CIS (Connected Isochronous Stream) connection request Slave should call this API on receiving WICED_BLE_ISOC_CIS_REQUEST event in registered application callback

Parameters
[in]cis_handle: CIS handle
Returns
status

Note : Once CIS is establish WICED_BLE_ISOC_CIS_ESTABLISHED event will be received in registered application callback.

wiced_bool_t wiced_bt_isoc_peripheral_big_create_sync ( wiced_bt_isoc_big_create_sync_t p_create_sync)

Sync to the BIS stream described by wiced_bt_isoc_big_create_sync_t.

Parameters
p_create_syncsync_handle, list of BIS indices
Returns
wiced_bool_t TRUE if successful
wiced_result_t wiced_bt_isoc_peripheral_big_terminate_sync ( uint8_t  big_handle)

Stop synchronizing or cancel the process of synchronizing to the BIG identified by the BIG_Handle.

Parameters
big_handleUsed to identify the BIG
Returns
wiced_result_t wiced_result_t WICED_SUCCESS if successful
wiced_result_t wiced_bt_isoc_peripheral_reject_cis ( uint16_t  cis_handle,
uint8_t  reason 
)

Function wiced_bt_isoc_peripheral_reject_cis.

Reject CIS (Connected Isochronous Stream) connection request Slave should call this API on receiving WICED_BLE_ISOC_CIS_REQUEST event in registered application callback

Parameters
[in]cis_handle: CIS handle
[in]reason: Reject Reason
Returns
status
wiced_result_t wiced_bt_isoc_peripheral_remove_cig ( uint8_t  cig_id)

Function wiced_bt_isoc_peripheral_remove_cig.

Remove CIG (Connected Isochronous Group) Slave should call this API on receiving WICED_BLE_ISOC_CIS_DISCONNECTED event in registered application callback and if ASCS State is Releasing

Parameters
[in]cig_id: CIG ID
Returns
status
void wiced_bt_isoc_register_cb ( wiced_bt_isoc_cback_t  isoc_cb)

Function wiced_bt_isoc_register_cb.

ISOC Register event callback handler

Parameters
[in]isoc_cb: ISOC event callback
Returns
None
void wiced_bt_isoc_register_data_cb ( wiced_bt_iso_rx_cb_t  rx_data_cb,
wiced_bt_iso_num_complete_cb_t  num_complete_cb 
)

Register ISO data event callbacks.

Parameters
rx_data_cbCallback upon receiving ISO data
num_complete_cbCallback after transmitting ISO data
wiced_bool_t wiced_bt_isoc_remove_data_path ( uint16_t  conn_hdl,
wiced_bool_t  is_cis,
wiced_bt_isoc_data_path_bit_t  data_path_dir_bitfield 
)

Remove data path setup for a CIS/BIS.

Parameters
conn_hdlCIS/BIS Connection handle
is_cisTRUE if CIS connection handle is provided
data_path_dir_bitfieldsee #wiced_bt_isoc_data_path_bit_t bit 0: Remove Input data path bit 1: Remove output data path
Returns
wiced_bool_t TRUE if successful in sending the command
wiced_bool_t wiced_bt_isoc_setup_data_path ( uint16_t  conn_hdl,
wiced_bool_t  is_cis,
wiced_bt_isoc_data_path_direction_t  data_path_dir,
wiced_bt_isoc_data_path_id_t  data_path_id,
uint32_t  controller_delay 
)

Can be invoked twice per connection handle (once per direction) Supports only HCI for datapath and Does not support configuring codec in the controller.

Parameters
conn_hdlCIS/BIS Connection handle
is_cisTRUE if CIS connection handle is provided
data_path_dirsee #wiced_bt_isoc_data_path_direction_t
data_path_idsee #wiced_bt_isoc_data_path_id_t
controller_delayselect a suitable Controller_Delay value from the range of values provided by the HCI_Read_Local_Supported_Controller_Delay command
Returns
wiced_bool_t TRUE if successful in sending the command
void wiced_bt_isoc_update_cis_conn_handle ( uint8_t  cig_id,
uint8_t  cis_id,
uint16_t  cis_conn_handle 
)
Parameters
cig_idCIG identifier
cis_idCIS identifier
Returns
cis_conn_handle CIS connection handle
wiced_bool_t wiced_bt_write_iso_data_to_lower ( uint8_t *  p_data,
uint16_t  len 
)

This function writes ISO buffer to the lower layer (or controller in the Hosted Stack)

Called by application to send the isoc data.

Parameters
[in]p_data: Pointer to the buffer
[in]len: Length of data at p_data
Returns
: wiced_bool_t TRUE if successful otherwise FALSE