Callbacks Declarations#

Modules#

rsi_ble_apis.h

ATT_MAINTAIN_IN_HOST

Typedefs#

typedef void(*
rsi_ble_on_adv_report_event_t)(rsi_ble_event_adv_report_t *rsi_ble_event_adv)

Callback function advertise event report from the module. This callback function is called whenever an advertise event report is received from the module. It has to registered using the rsi_ble_gap_register_callbacks API.

typedef void(*
rsi_ble_on_connect_t)(rsi_ble_event_conn_status_t *rsi_ble_event_conn)

Callback function for the BLE connection status from the module.

typedef void(*
rsi_ble_on_conn_update_complete_t)(rsi_ble_event_conn_update_t *rsi_ble_event_conn_update_complete, uint16_t resp_status)

Callback function for a connection update complete event from the module. This callback function is called whenever the connection update complete event is received. rsi_ble_event_conn_update_s contains connection information. It has to be registered using the rsi_ble_gap_register_callbacks API.

typedef void(*
rsi_ble_on_enhance_connect_t)(rsi_ble_event_enhance_conn_status_t *rsi_ble_event_enhance_conn)

Callback function for the BLE enhanced connection status from the module.

typedef void(*
rsi_ble_on_data_length_update_t)(rsi_ble_event_data_length_update_t *remote_dev_address)

Callback function for the data length update complete event. This callback function is called whenever the data length update complete event is received. rsi_ble_event_data_length_update_s type variable remote_dev_address contains information about dev_addr - Device address of the remote device , MaxTxOctets - Maximum TX Octets to be transmitted , MaxTxTime - Maximum TX time to transmit the MaxTxOctets , MaxRxOctets - Maximum Rx Octets to be received , MaxRxTime - Maximum Rx time to receive the MaxRxOctets It has to be registered using the rsi_ble_gap_register_callbacks API.

typedef void(*
rsi_ble_on_directed_adv_report_event_t)(rsi_ble_event_directedadv_report_t *rsi_ble_event_directed)

Callback function for a directed advertise report event from the module. This callback function is called whenever a directed advertise report event is received from the module. It has to be registered using the rsi_ble_gap_register_callbacks API.

typedef void(*
rsi_ble_on_disconnect_t)(rsi_ble_event_disconnect_t *rsi_ble_event_disconnect, uint16_t reason)

Callback function for the disconnect status event from the module.

typedef void(*
rsi_ble_on_phy_update_complete_t)(rsi_ble_event_phy_update_t *rsi_ble_event_phy_update_complete)

Callback function for receiving the PHY update complete event.

typedef void(*
rsi_ble_on_le_ping_payload_timeout_t)(rsi_ble_event_le_ping_time_expired_t *rsi_ble_event_timeout_expired)

Callback function for the LE ping time expired event from the module.

typedef void(*
rsi_ble_on_remote_conn_params_request_t)(rsi_ble_event_remote_conn_param_req_t *rsi_ble_event_remote_conn_param, uint16_t resp_status)

Callback function for remote connection parameters request.

typedef void(*
rsi_ble_on_remote_features_t)(rsi_ble_event_remote_features_t *rsi_ble_event_remote_features)

Callback function for supported features of remote device This callback function will be called when LE remote features event is received. it has to be registered using rsi_ble_gap_extended_register_callbacks API.

typedef void(*
rsi_ble_on_le_more_data_req_t)(rsi_ble_event_le_dev_buf_ind_t *rsi_ble_more_data_evt)

Callback function for the LE more data event.

typedef void(*
rsi_ble_on_le_ltk_req_event_t)(rsi_bt_event_le_ltk_request_t *rsi_ble_event_le_ltk_request)

Callback function for the LE LTK request event from the module.

typedef void(*
rsi_ble_on_le_security_keys_t)(rsi_bt_event_le_security_keys_t *rsi_ble_event_le_security_keys)

Callback function for the LE security keys event from the module. This callback function is called whenever the LE security keys event is received from the module. It has to be registered using the rsi_ble_smp_register_callbacks API.

typedef void(*
rsi_ble_on_smp_request_t)(rsi_bt_event_smp_req_t *remote_dev_address)

Callback function for the SMP request in central mode from the remote device. This callback function is called whenever an SMP request is received in central mode from the remote device. When the central device initiates the bonding process, the application receives the smp_req from the module. It has to be registered using the rsi_ble_smp_register_callbacks API.

typedef void(*
rsi_ble_on_smp_response_t)(rsi_bt_event_smp_resp_t *remote_dev_address)

Callback function for the SMP response in peripheral mode from the remote device. This callback function is called whenever an SMP response is received in peripheral mode from the remote device. When the central device initiates the bonding process, the application receives the smp_resp from the module. It has to be registered using the rsi_ble_smp_register_callbacks API.

typedef void(*
rsi_ble_on_smp_passkey_t)(rsi_bt_event_smp_passkey_t *remote_dev_address)

Callback function for SMP passkey event from the module. This callback function is called whenever an SMP passkey event is received from the module. It has to be registered using the rsi_ble_smp_register_callbacks API.

typedef void(*
rsi_ble_on_smp_passkey_display_t)(rsi_bt_event_smp_passkey_display_t *smp_passkey_display)

Callback function for SMP passkey display event from the module. This callback function is called whenever an SMP passkey display event is received from the module. It has to be registered using the rsi_ble_smp_register_callbacks API.

typedef void(*
rsi_ble_on_smp_failed_t)(uint16_t resp_status, rsi_bt_event_smp_failed_t *remote_dev_address)

Callback function for SMP failed event from the module. This callback function will be called if the smp process is failed with remote device. It has to be registered using the rsi_ble_smp_register_callbacks API.

typedef void(*
rsi_ble_on_sc_method_t)(rsi_bt_event_sc_method_t *scmethod)

Callback function for a secure connection method event from the module. This callback function will be called if the secure connection method is done with remote device. It has to be registered using the rsi_ble_smp_register_callbacks API.

typedef void(*
rsi_ble_on_encrypt_started_t)(uint16_t resp_status, rsi_bt_event_encryption_enabled_t *enc_enabled)

Callback function an encrypted event from the module. This callback function will be called if the encryption process is started with remote device. It has to be registered using the rsi_ble_smp_register_callbacks API.

typedef void(*
rsi_ble_on_sc_passkey_t)(rsi_bt_event_sc_passkey_t *sc_passkey)

Callback function for a BLE Secure Connection passkey event from the module. This callback function is called whenever a BLE Secure Connection passkey event is received from the module. It has to be registered using the rsi_ble_smp_register_callbacks API.

typedef void(*
rsi_ble_on_gatt_error_resp_t)(uint16_t event_status, rsi_ble_event_error_resp_t *rsi_ble_gatt_error)

Callback function for a GATT error event from the module.

typedef void(*
rsi_ble_on_gatt_desc_val_event_t)(uint16_t event_status, rsi_ble_event_gatt_desc_t *rsi_ble_gatt_desc_val)

Callback function for an attribute descriptors event from the module.

typedef void(*
rsi_ble_on_event_profiles_list_t)(uint16_t event_status, rsi_ble_event_profiles_list_t *rsi_ble_event_profiles)

Callback function for a profiles list response from the module.

typedef void(*
rsi_ble_on_event_profile_by_uuid_t)(uint16_t event_status, rsi_ble_event_profile_by_uuid_t *rsi_ble_event_profile)

Callback function for a profile response from the module.

typedef void(*
rsi_ble_on_event_read_by_char_services_t)(uint16_t event_status, rsi_ble_event_read_by_type1_t *rsi_ble_event_read_type1)

This callback function will be called if the characteristic services list response is received from the module.

typedef void(*
rsi_ble_on_event_read_by_inc_services_t)(uint16_t event_status, rsi_ble_event_read_by_type2_t *rsi_ble_event_read_type2)

Callback function for an included services list response from the module.

typedef void(*
rsi_ble_on_event_read_att_value_t)(uint16_t event_status, rsi_ble_event_read_by_type3_t *rsi_ble_event_read_type3)

Callback function for an attribute value response from the module.

typedef void(*
rsi_ble_on_event_read_resp_t)(uint16_t event_status, rsi_ble_event_att_value_t *rsi_ble_event_att_val)

Callback function for an attribute value from the module.

typedef void(*
rsi_ble_on_event_write_resp_t)(uint16_t event_status, rsi_ble_set_att_resp_t *rsi_ble_event_set_att_rsp)

Callback function for a GATT write response from the module.

typedef void(*
rsi_ble_on_event_indicate_confirmation_t)(uint16_t event_status, rsi_ble_set_att_resp_t *rsi_ble_event_set_att_rsp)

Callback function for indication confirmation event.

typedef void(*
rsi_ble_on_event_prepare_write_resp_t)(uint16_t event_status, rsi_ble_prepare_write_resp_t *rsi_ble_event_prepare_write)

Callback function for a GATT prepare write response from the module.

typedef void(*
rsi_ble_on_profiles_list_resp_t)(uint16_t resp_status, rsi_ble_resp_profiles_list_t *rsi_ble_resp_profiles)

Callback function for a profiles list response from the module.

typedef void(*
rsi_ble_on_profile_resp_t)(uint16_t resp_status, profile_descriptors_t *rsi_ble_resp_profile)

Callback function for a profile response from the module.

typedef void(*
rsi_ble_on_char_services_resp_t)(uint16_t resp_status, rsi_ble_resp_char_services_t *rsi_ble_resp_char_serv)

Callback function for a service characteristics response from the module.

typedef void(*
rsi_ble_on_inc_services_resp_t)(uint16_t resp_status, rsi_ble_resp_inc_services_t *rsi_ble_resp_inc_serv)

Callback function for included services response from the module.

typedef void(*
rsi_ble_on_att_desc_resp_t)(uint16_t resp_status, rsi_ble_resp_att_descs_t *rsi_ble_resp_att_desc)

Callback function for an attribute descriptors response from the module.

typedef void(*
rsi_ble_on_read_resp_t)(uint16_t resp_status, uint16_t resp_id, rsi_ble_resp_att_value_t *rsi_ble_resp_att_val)

Callback function for attribute read response from the module.

typedef void(*
rsi_ble_on_write_resp_t)(uint16_t resp_status, uint16_t resp_id)

Callback function for attribute write response such as set/prepare/execute action completion.

typedef void(*
rsi_ble_on_gatt_write_event_t)(uint16_t event_id, rsi_ble_event_write_t *rsi_ble_write)

Callback function are triggered for GATT write command, write request, notification, and event indication from the module. It is registered by using the rsi_ble_gatt_register_callbacks API.

typedef void(*
rsi_ble_on_gatt_prepare_write_event_t)(uint16_t event_id, rsi_ble_event_prepare_write_t *rsi_ble_write)

This callback function will be called if the GATT write/notify/indicate events are received This callback has to be registered using rsi_ble_gatt_register_callbacks API.

typedef void(*
rsi_ble_on_execute_write_event_t)(uint16_t event_id, rsi_ble_execute_write_t *rsi_ble_execute_write)

The callback function will be called if the GATT write execute events are received. This callback has to be registered using rsi_ble_gatt_register_callbacks API.

typedef void(*
rsi_ble_on_read_req_event_t)(uint16_t event_id, rsi_ble_read_req_t *rsi_ble_read_req)

The callback function will be called if the GATT read request events are received. This callback has to be registered using rsi_ble_gatt_register_callbacks API.

typedef void(*
rsi_ble_on_mtu_event_t)(rsi_ble_event_mtu_t *rsi_ble_event_mtu)

The callback function will be called if MTU size request is received. The MTU size negotiation occurs after establishing a connection, and the callback provides the updated MTU size information.

typedef void(*
rsi_ble_on_remote_device_info_t)(uint16_t status, rsi_ble_event_remote_device_info_t *resp_buffer)

Callback function to retrieve remote device information.it provides the version and manufacturer-specific details of a remote device. This callback has to be registered using rsi_ble_enhanced_gap_extended_register_callbacks API.

typedef void(*
rsi_ble_on_rcp_resp_rcvd_t)(uint16_t status, rsi_ble_event_rcp_rcvd_info_t *resp_buffer)

Callback function type for receiving RCP response events.

typedef void(*
rsi_ble_on_cbfc_conn_req_event_t)(rsi_ble_event_cbfc_conn_req_t *rsi_ble_cbfc_conn_req)

Callback function to handle an L2CAP CBFC connection request event. This callback function is called when a Circular Buffer Flow Control (CBFC) connection request is received from a remote BLE device. It provides the necessary connection parameters to process the request. This callback has to be registered using rsi_ble_l2cap_cbfc_callbacks API.

typedef void(*
rsi_ble_on_cbfc_conn_complete_event_t)(rsi_ble_event_cbfc_conn_complete_t *rsi_ble_cbfc_conn_complete, uint16_t status)

Callback function to indicate L2CAP CBFC connection complete status. This callback function will be called when Circular Buffer Flow Control (CBFC) connection has been successfully established or when the connection attempt fails. The function provides detailed information about the connection parameters and the status of the operation. This callback has to be registered using rsi_ble_l2cap_cbfc_callbacks API.

typedef void(*
rsi_ble_on_cbfc_rx_data_event_t)(rsi_ble_event_cbfc_rx_data_t *rsi_ble_cbfc_rx_data)

Callback function to indicate L2CAP CBFC RX data event. This callback function will be called when data is received over a Circular Buffer Flow Control (CBFC) connection from a remote device. This callback has to be registered using rsi_ble_l2cap_cbfc_callbacks API.

typedef void(*
rsi_ble_on_cbfc_disconn_event_t)(rsi_ble_event_cbfc_disconn_t *rsi_ble_cbfc_disconn)

Callback function to indicate L2CAP CBFC disconnection event. This callback function will be called whenever a Circular Buffer Flow Control (CBFC) disconnection event occurs. This callback has to be registered using rsi_ble_l2cap_cbfc_callbacks API.

typedef void(*
chip_ble_buffers_stats_handler_t)(chip_ble_buffers_stats_t *chip_ble_buffers_stats)

Typedef for the chip_ble_buffers_stats_handler_t function pointer.

typedef void(*
rsi_ble_ae_report_complete_t)(uint16_t resp_status, rsi_ble_ae_adv_report_t *rsi_ble_event_ae_report)

Callback function to report the AE Advertisements. This callback function will be called when AE adv report event is received. This callback has to be registered using rsi_ble_ae_events_register_callbacks API.

typedef void(*
rsi_ble_ae_per_adv_sync_estbl_t)(uint16_t resp_status, rsi_ble_per_adv_sync_estbl_t *rsi_ble_event_per_adv_sync_estbl)

Callback function to report the AE periodic sync established event. This callback function will be called when AE periodic sync established event is received. This callback has to be registered using rsi_ble_ae_events_register_callbacks API.

typedef void(*
rsi_ble_ae_per_adv_report_t)(uint16_t resp_status, rsi_ble_per_adv_report_t *rsi_ble_event_per_adv_report)

Callback function to report the AE periodic advertisement event This callback function will be called when AE periodic advertisement event is received This callback has to be registered using rsi_ble_ae_events_register_callbacks API.

typedef void(*
rsi_ble_ae_per_adv_sync_lost_t)(uint16_t resp_status, rsi_ble_per_adv_sync_lost_t *rsi_ble_event_per_adv_sync_lost)

Callback function to report the AE periodic sync lost event This callback function will be called when AE periodic sync lost event is received This callback has to be registered using rsi_ble_ae_events_register_callbacks API.

typedef void(*
rsi_ble_ae_scan_timeout_t)(uint16_t resp_status, rsi_ble_scan_timeout_t *rsi_ble_event_scan_timeout)

Callback function to report the AE scan timeout event This callback function will be called when AE scan timeout event is received This callback has to be registered using rsi_ble_ae_events_register_callbacks API.

typedef void(*
rsi_ble_ae_adv_set_terminated_t)(uint16_t resp_status, rsi_ble_adv_set_terminated_t *rsi_ble_event_adv_set_terminated)

Callback function to report the AE advertising set terminated event This callback function will be called when AE advertising set terminated is received. This callback has to be registered using rsi_ble_ae_events_register_callbacks API.

typedef void(*
rsi_ble_ae_scan_req_recvd_t)(uint16_t resp_status, rsi_ble_scan_req_recvd_t *rsi_ble_event_scan_req_recvd)

Callback function to report the AE scan request received event This callback function will be called when AE scan request is received. it provides AE scan request information. This callback has to be registered using rsi_ble_ae_events_register_callbacks API.

Functions#

void
rsi_ble_l2cap_cbsc_register_callbacks(rsi_ble_on_cbfc_conn_req_event_t ble_on_cbsc_conn_req, rsi_ble_on_cbfc_conn_complete_event_t ble_on_cbsc_conn_complete, rsi_ble_on_cbfc_rx_data_event_t ble_on_cbsc_rx_data, rsi_ble_on_cbfc_disconn_event_t ble_on_cbsc_disconn)

Register callbacks for BLE L2CAP Credit Based Flow Control (CBFC) events.

Typedef Documentation#

rsi_ble_on_adv_report_event_t#

void(* rsi_ble_on_adv_report_event_t)(rsi_ble_event_adv_report_t *rsi_ble_event_adv) )(rsi_ble_event_adv_report_t *rsi_ble_event_adv)

Callback function advertise event report from the module. This callback function is called whenever an advertise event report is received from the module. It has to registered using the rsi_ble_gap_register_callbacks API.

Parameters
[out]rsi_ble_event_adv

includes the advertise report information. Refer to rsi_ble_event_adv_report_s for more details.

Returns

  • The following values are returned: void


Definition at line 4624 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_connect_t#

void(* rsi_ble_on_connect_t)(rsi_ble_event_conn_status_t *rsi_ble_event_conn) )(rsi_ble_event_conn_status_t *rsi_ble_event_conn)

Callback function for the BLE connection status from the module.

Parameters
[out]rsi_ble_event_conn

includes the connection status. Refer rsi_ble_event_conn_status_s for more details.

This callback function is called whenever the BLE connection status is received from the module. For Bluetooth 4.1 and lower versions, this callback is received. It has to be registered using the rsi_ble_gap_register_callbacks API. Returns

  • The following values are returned: void


Definition at line 4637 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_conn_update_complete_t#

void(* rsi_ble_on_conn_update_complete_t)(rsi_ble_event_conn_update_t *rsi_ble_event_conn_update_complete, uint16_t resp_status) )(rsi_ble_event_conn_update_t *rsi_ble_event_conn_update_complete, uint16_t resp_status)

Callback function for a connection update complete event from the module. This callback function is called whenever the connection update complete event is received. rsi_ble_event_conn_update_s contains connection information. It has to be registered using the rsi_ble_gap_register_callbacks API.

Parameters
[out]rsi_ble_event_conn_update_complete

contains the connection information. Refer to rsi_ble_event_conn_update_s for more details.

[out]resp_status

contains the response status (Success or Error code)


Definition at line 4649 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_enhance_connect_t#

void(* rsi_ble_on_enhance_connect_t)(rsi_ble_event_enhance_conn_status_t *rsi_ble_event_enhance_conn) )(rsi_ble_event_enhance_conn_status_t *rsi_ble_event_enhance_conn)

Callback function for the BLE enhanced connection status from the module.

Parameters
[out]rsi_ble_event_enhance_conn

Contains the connection status and connection parameters, such as connection interval, latency, and supervision timeout, and more. Refer to rsi_ble_event_enhance_conn_status_s for more details.

This callback function is called whenever the connection status is received from the module. For Bluetooth 4.2 and later versions, this callback will be triggered. It has to be registered using the rsi_ble_gap_register_callbacks API. Returns

  • The following values are returned: void


Definition at line 4662 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_data_length_update_t#

void(* rsi_ble_on_data_length_update_t)(rsi_ble_event_data_length_update_t *remote_dev_address) )(rsi_ble_event_data_length_update_t *remote_dev_address)

Callback function for the data length update complete event. This callback function is called whenever the data length update complete event is received. rsi_ble_event_data_length_update_s type variable remote_dev_address contains information about dev_addr - Device address of the remote device , MaxTxOctets - Maximum TX Octets to be transmitted , MaxTxTime - Maximum TX time to transmit the MaxTxOctets , MaxRxOctets - Maximum Rx Octets to be received , MaxRxTime - Maximum Rx time to receive the MaxRxOctets It has to be registered using the rsi_ble_gap_register_callbacks API.

Parameters
[out]remote_dev_address

contains the controller support TX and RX length, and transmission time information. Refer to rsi_ble_event_data_length_update_s for more details.


Definition at line 4673 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_directed_adv_report_event_t#

void(* rsi_ble_on_directed_adv_report_event_t)(rsi_ble_event_directedadv_report_t *rsi_ble_event_directed) )(rsi_ble_event_directedadv_report_t *rsi_ble_event_directed)

Callback function for a directed advertise report event from the module. This callback function is called whenever a directed advertise report event is received from the module. It has to be registered using the rsi_ble_gap_register_callbacks API.

Parameters
[in]rsi_ble_event_directed

contains the advertise report information


Definition at line 4683 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_disconnect_t#

void(* rsi_ble_on_disconnect_t)(rsi_ble_event_disconnect_t *rsi_ble_event_disconnect, uint16_t reason) )(rsi_ble_event_disconnect_t *rsi_ble_event_disconnect, uint16_t reason)

Callback function for the disconnect status event from the module.

Parameters
[out]rsi_ble_event_disconnect

contains the disconnect status. Refer to rsi_ble_event_disconnect_s for more details.

[out]reason

contains reason for failure.

This callback function is called whenever the disconnect status event is received from the module. It has to be registered using the rsi_ble_gap_register_callbacks API. Note

  • Few reason for failure are given below 0x4E13 Remote user terminated connection 0x4E14 Remote device terminated connection due to low resources 0x4E15 Remote device terminated connection due to power off 0x4E3D Connection terminated due to MIC failure 0x4E3E Connection Failed to be Established 0x4E08 Connection Timeout 0x4E60 Invalid Handle Range

Returns

  • The following values are returned: void


Definition at line 4706 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_phy_update_complete_t#

void(* rsi_ble_on_phy_update_complete_t)(rsi_ble_event_phy_update_t *rsi_ble_event_phy_update_complete) )(rsi_ble_event_phy_update_t *rsi_ble_event_phy_update_complete)

Callback function for receiving the PHY update complete event.

Parameters
[out]rsi_ble_event_phy_update_complete

contains the controller support PHY information BIT(0) - The Host prefers to use the LE 1M transmitter PHY (possibly among others)

  • BIT(1) - The Host prefers to use the LE 2M transmitter PHY (possibly among others)

  • BIT(2) - The Host prefers to use the LE Coded transmitter PHY (possibly among others) Refer to rsi_ble_event_phy_update_s for more details.

This callback function is called whenever the PHY update complete event is received. It has to be registered using the rsi_ble_gap_register_callbacks API.


Definition at line 4723 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_le_ping_payload_timeout_t#

void(* rsi_ble_on_le_ping_payload_timeout_t)(rsi_ble_event_le_ping_time_expired_t *rsi_ble_event_timeout_expired) )(rsi_ble_event_le_ping_time_expired_t *rsi_ble_event_timeout_expired)

Callback function for the LE ping time expired event from the module.

Parameters
[out]rsi_ble_event_timeout_expired

contains the disconnect status. Refer to rsi_ble_event_le_ping_time_expired_s for more details.

This callback function is called whenever the LE ping time expired event is received from the module. It has to be registered using the rsi_ble_gap_register_callbacks API. Returns

  • The following values are returned: void


Definition at line 4735 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_remote_conn_params_request_t#

void(* rsi_ble_on_remote_conn_params_request_t)(rsi_ble_event_remote_conn_param_req_t *rsi_ble_event_remote_conn_param, uint16_t resp_status) )(rsi_ble_event_remote_conn_param_req_t *rsi_ble_event_remote_conn_param, uint16_t resp_status)

Callback function for remote connection parameters request.

Parameters
[out]resp_status

contains the response status (Success or Error code)

[out]rsi_ble_event_remote_conn_param

contains the remote device connection parameters. Refer to rsi_ble_event_remote_conn_param_req_s for more details.

This callback function is called whenever a remote connection parameters request is received. It has to be registered using the rsi_ble_gap_register_callbacks API. Returns

  • The following values are returned: void


Definition at line 4753 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_remote_features_t#

void(* rsi_ble_on_remote_features_t)(rsi_ble_event_remote_features_t *rsi_ble_event_remote_features) )(rsi_ble_event_remote_features_t *rsi_ble_event_remote_features)

Callback function for supported features of remote device This callback function will be called when LE remote features event is received. it has to be registered using rsi_ble_gap_extended_register_callbacks API.

Parameters
[out]rsi_ble_event_remote_features

contains the remote device supported features. Refer to rsi_ble_event_remote_features_s for more details.


Definition at line 4767 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_le_more_data_req_t#

void(* rsi_ble_on_le_more_data_req_t)(rsi_ble_event_le_dev_buf_ind_t *rsi_ble_more_data_evt) )(rsi_ble_event_le_dev_buf_ind_t *rsi_ble_more_data_evt)

Callback function for the LE more data event.

Parameters
[out]rsi_ble_more_data_evt

contains the LE Device Buffer Indication information. Refer to rsi_ble_event_le_dev_buf_ind_s for details.

This callback function is called whenever an LE more data event is received. It has to be registered using the rsi_ble_gap_extended_register_callbacks API. Returns

  • The following values are returned: void


Definition at line 4782 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_le_ltk_req_event_t#

void(* rsi_ble_on_le_ltk_req_event_t)(rsi_bt_event_le_ltk_request_t *rsi_ble_event_le_ltk_request) )(rsi_bt_event_le_ltk_request_t *rsi_ble_event_le_ltk_request)

Callback function for the LE LTK request event from the module.

Parameters
[out]rsi_ble_event_le_ltk_request

contains the LTK request information. Refer to rsi_bt_event_le_ltk_request_s for more details.

This callback function is called whenever the LE LTK request event is received from the module. It has to be registered using the rsi_ble_smp_register_callbacks API. Returns

  • The following values are returned: void


Definition at line 4801 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_le_security_keys_t#

void(* rsi_ble_on_le_security_keys_t)(rsi_bt_event_le_security_keys_t *rsi_ble_event_le_security_keys) )(rsi_bt_event_le_security_keys_t *rsi_ble_event_le_security_keys)

Callback function for the LE security keys event from the module. This callback function is called whenever the LE security keys event is received from the module. It has to be registered using the rsi_ble_smp_register_callbacks API.

Parameters
[out]rsi_ble_event_le_security_keys

contains security keys. Refer to rsi_bt_event_le_security_keys_s for more details.


Definition at line 4812 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_smp_request_t#

void(* rsi_ble_on_smp_request_t)(rsi_bt_event_smp_req_t *remote_dev_address) )(rsi_bt_event_smp_req_t *remote_dev_address)

Callback function for the SMP request in central mode from the remote device. This callback function is called whenever an SMP request is received in central mode from the remote device. When the central device initiates the bonding process, the application receives the smp_req from the module. It has to be registered using the rsi_ble_smp_register_callbacks API.

Parameters
[out]remote_dev_address

contains the SMP request information. Refer to rsi_bt_event_smp_req_s for more details.

Returns

  • The following values are returned: void


Definition at line 4826 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_smp_response_t#

void(* rsi_ble_on_smp_response_t)(rsi_bt_event_smp_resp_t *remote_dev_address) )(rsi_bt_event_smp_resp_t *remote_dev_address)

Callback function for the SMP response in peripheral mode from the remote device. This callback function is called whenever an SMP response is received in peripheral mode from the remote device. When the central device initiates the bonding process, the application receives the smp_resp from the module. It has to be registered using the rsi_ble_smp_register_callbacks API.

Parameters
[out]remote_dev_address

contains the SMP response information. Refer to rsi_bt_event_smp_resp_s for more details.

Returns

  • The following values are returned: void


Definition at line 4842 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_smp_passkey_t#

void(* rsi_ble_on_smp_passkey_t)(rsi_bt_event_smp_passkey_t *remote_dev_address) )(rsi_bt_event_smp_passkey_t *remote_dev_address)

Callback function for SMP passkey event from the module. This callback function is called whenever an SMP passkey event is received from the module. It has to be registered using the rsi_ble_smp_register_callbacks API.

Parameters
[out]remote_dev_address

contains the remote device address. Refer to rsi_bt_event_smp_passkey_s for more details.


Definition at line 4854 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_smp_passkey_display_t#

void(* rsi_ble_on_smp_passkey_display_t)(rsi_bt_event_smp_passkey_display_t *smp_passkey_display) )(rsi_bt_event_smp_passkey_display_t *smp_passkey_display)

Callback function for SMP passkey display event from the module. This callback function is called whenever an SMP passkey display event is received from the module. It has to be registered using the rsi_ble_smp_register_callbacks API.

Parameters
[out]smp_passkey_display

contains the smp passkey display information. Refer to rsi_bt_event_smp_passkey_display_s for more details.


Definition at line 4866 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_smp_failed_t#

void(* rsi_ble_on_smp_failed_t)(uint16_t resp_status, rsi_bt_event_smp_failed_t *remote_dev_address) )(uint16_t resp_status, rsi_bt_event_smp_failed_t *remote_dev_address)

Callback function for SMP failed event from the module. This callback function will be called if the smp process is failed with remote device. It has to be registered using the rsi_ble_smp_register_callbacks API.

Parameters
[out]resp_status

contains the remote device address. Refer to rsi_bt_event_smp_failed_s for more details.

Note

  • Error codes for SMP FAILED are given below: 0x4B01 SMP Passkey entry failed
    0x4B02 SMP OOB not available 0x4B03 SMP Authentication Requirements 0x4B04 SMP confirm value failed 0x4B05 SMP Pairing not supported 0x4B06 SMP Encryption key size insufficient 0x4B07 SMP command not supported 0x4B08 SMP Unspecified Reason 0x4B09 SMP repeated attempts 0x4B0C SMP Numeric Comparison Failed 0x4B0B DHKEY Check Failed


Definition at line 4891 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_sc_method_t#

void(* rsi_ble_on_sc_method_t)(rsi_bt_event_sc_method_t *scmethod) )(rsi_bt_event_sc_method_t *scmethod)

Callback function for a secure connection method event from the module. This callback function will be called if the secure connection method is done with remote device. It has to be registered using the rsi_ble_smp_register_callbacks API.

Parameters
[out]scmethod

Pointer to a structure of type rsi_bt_event_sc_method_t containing details about the Security Method used. Possible values:

  • 1: Just Works – No user interaction required, suitable for devices without input/output capabilities.

  • 2: Passkey – Requires to enter or confirm a 6-digit passkey, which provides strong security. Refer to rsi_bt_event_sc_method_s for more details.


Definition at line 4907 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_encrypt_started_t#

void(* rsi_ble_on_encrypt_started_t)(uint16_t resp_status, rsi_bt_event_encryption_enabled_t *enc_enabled) )(uint16_t resp_status, rsi_bt_event_encryption_enabled_t *enc_enabled)

Callback function an encrypted event from the module. This callback function will be called if the encryption process is started with remote device. It has to be registered using the rsi_ble_smp_register_callbacks API.

Parameters
[out]resp_status

contains the response status (Success or Error code)

[out]enc_enabled

contains encryption information. Refer to rsi_bt_event_encryption_enabled_s for more details.


Definition at line 4920 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_sc_passkey_t#

void(* rsi_ble_on_sc_passkey_t)(rsi_bt_event_sc_passkey_t *sc_passkey) )(rsi_bt_event_sc_passkey_t *sc_passkey)

Callback function for a BLE Secure Connection passkey event from the module. This callback function is called whenever a BLE Secure Connection passkey event is received from the module. It has to be registered using the rsi_ble_smp_register_callbacks API.

Parameters
[out]sc_passkey

contains LE SC Passkey information such as address of device involved in SMP process and the key required in pairing process. Refer to rsi_bt_event_encryption_enabled_s for more details.

the Security Method used. Possible values:

  • 1: Just Works – No user interaction required, suitable for devices without input/output capabilities.

  • 2: Passkey – Requires to enter or confirm a 6-digit passkey, which provides strong security.


Definition at line 4937 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_gatt_error_resp_t#

void(* rsi_ble_on_gatt_error_resp_t)(uint16_t event_status, rsi_ble_event_error_resp_t *rsi_ble_gatt_error) )(uint16_t event_status, rsi_ble_event_error_resp_t *rsi_ble_gatt_error)

Callback function for a GATT error event from the module.

Parameters
[out]event_status

contains the error response
Non-Zero Value - Failure Attribute protocol error codes 0x4A01 - Invalid Handle 0x4A06 - Request not supported 0x4A0A - Attribute not found 0x4A05 - Insufficient authentication 0x4A08 - Insufficient authorization 0x4A0C - Insufficient encryption key size 0x4A0F - Insufficient encryption 0x4A02 - Read not permitted 0x4A03 - Write not permitted 0x4A07 - Invalid offset 0x4A0B - Attribute not Long (Attribute value has a fixed length that is less than or equal to (ATT_MTU - 1) octets in length , refer to Bluetooth Spec 5.4 for further details.)

[out]rsi_ble_gatt_error

contains the GATT error information. Refer to rsi_ble_event_error_resp_s for more details.

This callback function is called whenever a GATT error event is received from the module. It has to be registered using the rsi_ble_gatt_register_callbacks API. Returns

  • The following values are returned: void


Definition at line 5092 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_gatt_desc_val_event_t#

void(* rsi_ble_on_gatt_desc_val_event_t)(uint16_t event_status, rsi_ble_event_gatt_desc_t *rsi_ble_gatt_desc_val) )(uint16_t event_status, rsi_ble_event_gatt_desc_t *rsi_ble_gatt_desc_val)

Callback function for an attribute descriptors event from the module.

Parameters
[out]event_status

contains the response status

  • 0 - Success

  • Non-Zero Value - Failure

[out]rsi_ble_gatt_desc_val

contains the profiles list event information. Refer to rsi_ble_event_gatt_desc_s for more details.

This callback function is called whenever an attribute descriptors event is received from the module. It has to be registered using the rsi_ble_gatt_register_callbacks API. Returns

  • The following values are returned: void


Definition at line 5109 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_event_profiles_list_t#

void(* rsi_ble_on_event_profiles_list_t)(uint16_t event_status, rsi_ble_event_profiles_list_t *rsi_ble_event_profiles) )(uint16_t event_status, rsi_ble_event_profiles_list_t *rsi_ble_event_profiles)

Callback function for a profiles list response from the module.

Parameters
[out]event_status

contains the response status

         - 0 - Success 
         - Non-Zero Value   -   Failure 
[out]rsi_ble_event_profiles

contains the profiles list event information. Refer to rsi_ble_event_profiles_list_s for more details.

This callback function is called whenever a profiles list response is received from the module. It has to be registered using the rsi_ble_gatt_register_callbacks API. Returns

  • The following values are returned: void


Definition at line 5131 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_event_profile_by_uuid_t#

void(* rsi_ble_on_event_profile_by_uuid_t)(uint16_t event_status, rsi_ble_event_profile_by_uuid_t *rsi_ble_event_profile) )(uint16_t event_status, rsi_ble_event_profile_by_uuid_t *rsi_ble_event_profile)

Callback function for a profile response from the module.

Parameters
[out]event_status

contains the response status

         - 0 - Success 
         - Non-Zero Value   -   Failure 
[out]rsi_ble_event_profile

contains the profile response information. Refer to rsi_ble_event_profile_by_uuid_s for more details.

This callback function is called whenever a profile response is received from the module. It provides the particular profile information. It has to be registered using the rsi_ble_gatt_register_callbacks API. Returns

  • The following values are returned: void


Definition at line 5154 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_event_read_by_char_services_t#

void(* rsi_ble_on_event_read_by_char_services_t)(uint16_t event_status, rsi_ble_event_read_by_type1_t *rsi_ble_event_read_type1) )(uint16_t event_status, rsi_ble_event_read_by_type1_t *rsi_ble_event_read_type1)

This callback function will be called if the characteristic services list response is received from the module.

Parameters
[out]event_status

contains the response status

         - 0 - Success 
         - Non-Zero Value   -   Failure 
[out]rsi_ble_event_read_type1

contains the char services event information. Refer to rsi_ble_event_read_by_type1_s for more details.

Returns

  • The following values are returned: void


Definition at line 5170 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_event_read_by_inc_services_t#

void(* rsi_ble_on_event_read_by_inc_services_t)(uint16_t event_status, rsi_ble_event_read_by_type2_t *rsi_ble_event_read_type2) )(uint16_t event_status, rsi_ble_event_read_by_type2_t *rsi_ble_event_read_type2)

Callback function for an included services list response from the module.

Parameters
[out]event_status

contains the response status

         - 0 - Success 
         - Non-Zero Value   -   Failure 
[out]rsi_ble_event_read_type2

includes the services event information. Refer to rsi_ble_event_read_by_type2_s for details.

This callback function is called whenever an included services list response is received from the module. It has to be registered using the rsi_ble_gatt_register_callbacks API. Returns

  • The following values are returned: void


Definition at line 5190 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_event_read_att_value_t#

void(* rsi_ble_on_event_read_att_value_t)(uint16_t event_status, rsi_ble_event_read_by_type3_t *rsi_ble_event_read_type3) )(uint16_t event_status, rsi_ble_event_read_by_type3_t *rsi_ble_event_read_type3)

Callback function for an attribute value response from the module.

Parameters
[out]event_status

contains the response status

         - 0 - Success 
         - Non-Zero Value   -   Failure
[out]rsi_ble_event_read_type3

includes the attribute value information. Refer to rsi_ble_event_read_by_type3_s for details.

This callback function is called whenever an attribute value response is received from the module. It has to be registered using the rsi_ble_gatt_register_callbacks API. Returns

  • The following values are returned: void


Definition at line 5208 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_event_read_resp_t#

void(* rsi_ble_on_event_read_resp_t)(uint16_t event_status, rsi_ble_event_att_value_t *rsi_ble_event_att_val) )(uint16_t event_status, rsi_ble_event_att_value_t *rsi_ble_event_att_val)

Callback function for an attribute value from the module.

Parameters
[out]event_status

contains the response status

         - 0 - Success 
         - Non-Zero Value   -   Failure 
[out]rsi_ble_event_att_val

contains the profile response information. Refer to rsi_ble_event_att_value_s for more details.

This callback function is called whenever an attribute value is received from the module. It has to be registered using the rsi_ble_gatt_register_callbacks API. Returns

  • The following values are returned: void


Definition at line 5226 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_event_write_resp_t#

void(* rsi_ble_on_event_write_resp_t)(uint16_t event_status, rsi_ble_set_att_resp_t *rsi_ble_event_set_att_rsp) )(uint16_t event_status, rsi_ble_set_att_resp_t *rsi_ble_event_set_att_rsp)

Callback function for a GATT write response from the module.

Parameters
[out]event_status

contains the response status

         - 0 - Success 
         - Non-Zero Value   -   Failure 
[out]rsi_ble_event_set_att_rsp

includes the response of the set attribute request information. Refer to rsi_ble_set_att_resp_t for details.

rsi_ble_set_att_resp_t holds the response for the set attribute request that is, it specifically includes the remote device address which intiates the write request. This callback function is called whenever a GATT write response is received from the module. It has to be registered using the rsi_ble_gatt_register_callbacks API. Returns

  • The following values are returned: void


Definition at line 5245 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_event_indicate_confirmation_t#

void(* rsi_ble_on_event_indicate_confirmation_t)(uint16_t event_status, rsi_ble_set_att_resp_t *rsi_ble_event_set_att_rsp) )(uint16_t event_status, rsi_ble_set_att_resp_t *rsi_ble_event_set_att_rsp)

Callback function for indication confirmation event.

Parameters
[out]event_status

contains the response status

         - 0 - Success 
         - Non-Zero Value   -   Failure 
[out]rsi_ble_event_set_att_rsp

includes the response for the set attribute request information. Refer to rsi_ble_set_att_resp_s for details.

rsi_ble_set_att_resp_t holds the response for the set attribute request, specifically includes the remote device address which intiates the write request. This callback function is called whenever an indication confirmation response is received from the module. It has to be registered using the rsi_ble_gatt_register_callbacks API. Returns

  • The following values are returned: void


Definition at line 5263 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_event_prepare_write_resp_t#

void(* rsi_ble_on_event_prepare_write_resp_t)(uint16_t event_status, rsi_ble_prepare_write_resp_t *rsi_ble_event_prepare_write) )(uint16_t event_status, rsi_ble_prepare_write_resp_t *rsi_ble_event_prepare_write)

Callback function for a GATT prepare write response from the module.

Parameters
[out]event_status

contains the response status

  • 0 - Success

  • Non-Zero Value - Failure

[out]rsi_ble_event_prepare_write

Pointer to structure rsi_ble_prepare_write_resp_s includes write response information such as: attribute value, length of attribute, and attribute handle.

This callback function is called whenever a GATT prepare response is received from the module. It has to be registered using the rsi_ble_gatt_register_callbacks API. Returns

  • The following values are returned: void


Definition at line 5280 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_profiles_list_resp_t#

void(* rsi_ble_on_profiles_list_resp_t)(uint16_t resp_status, rsi_ble_resp_profiles_list_t *rsi_ble_resp_profiles) )(uint16_t resp_status, rsi_ble_resp_profiles_list_t *rsi_ble_resp_profiles)

Callback function for a profiles list response from the module.

Parameters
[out]resp_status

contains the profiles list response information. Refer to rsi_ble_resp_profiles_list_s for more details.

This callback function is called whenever a profiles list response is received from the module. It has to be registered using the rsi_ble_gatt_register_callbacks API. Note

  • Attribute protocol error codes 0x4A01 - Invalid Handle 0x4A0A - Attribute not found

Returns

  • The following values are returned: void


Definition at line 5301 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_profile_resp_t#

void(* rsi_ble_on_profile_resp_t)(uint16_t resp_status, profile_descriptors_t *rsi_ble_resp_profile) )(uint16_t resp_status, profile_descriptors_t *rsi_ble_resp_profile)

Callback function for a profile response from the module.

Parameters
[out]resp_status

contains the profile response information. Refer to profile_descriptors_s for more details.

This callback function is called whenever a profile response is received from the module. It has to be registered using the rsi_ble_gatt_register_callbacks API. Note

  • Attribute protocol error codes 0x4A01 - Invalid Handle 0x4A06 - Request not supported 0x4A0A - Attribute not found

Returns

  • The following values are returned: void


Definition at line 5322 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_char_services_resp_t#

void(* rsi_ble_on_char_services_resp_t)(uint16_t resp_status, rsi_ble_resp_char_services_t *rsi_ble_resp_char_serv) )(uint16_t resp_status, rsi_ble_resp_char_services_t *rsi_ble_resp_char_serv)

Callback function for a service characteristics response from the module.

Parameters
[out]resp_status

contains the service characteristics response information. Refer to rsi_ble_resp_char_services_s for more details.

This callback function is called whenever a service characteristics response is received from the module. It has to be registered using the rsi_ble_gatt_register_callbacks API. Note

  • Attribute protocol error codes 0x4A01 - Invalid Handle 0x4A06 - Request not supported 0x4A0A - Attribute not found 0x4A05 - Insufficient authentication 0x4A08 - Insufficient authorization 0x4A0C - Insufficient encryption key size 0x4A0F - Insufficient encryption 0x4A02 - Read not permitted

Returns

  • The following values are returned: void


Definition at line 5348 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_inc_services_resp_t#

void(* rsi_ble_on_inc_services_resp_t)(uint16_t resp_status, rsi_ble_resp_inc_services_t *rsi_ble_resp_inc_serv) )(uint16_t resp_status, rsi_ble_resp_inc_services_t *rsi_ble_resp_inc_serv)

Callback function for included services response from the module.

Parameters
[out]resp_status

includes the services response information. Refer to rsi_ble_resp_inc_services_s for details.

This callback function is triggered whenever an included services response is received from the module. It has to be registered using the rsi_ble_gatt_register_callbacks API. Note

  • Attribute protocol error codes 0x4A01 - Invalid Handle 0x4A06 - Request not supported 0x4A0A - Attribute not found 0x4A05 - Insufficient authentication 0x4A08 - Insufficient authorization 0x4A0C - Insufficient encryption key size 0x4A0F - Insufficient encryption 0x4A02 - Read not permitted

Returns

  • The following values are returned: void


Definition at line 5378 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_att_desc_resp_t#

void(* rsi_ble_on_att_desc_resp_t)(uint16_t resp_status, rsi_ble_resp_att_descs_t *rsi_ble_resp_att_desc) )(uint16_t resp_status, rsi_ble_resp_att_descs_t *rsi_ble_resp_att_desc)

Callback function for an attribute descriptors response from the module.

Parameters
[out]resp_status

contains the attribute descriptors response information. Refer to rsi_ble_resp_att_descs_s for more details.

This callback function is called whenever an attribute descriptors response is received from the module. It has to be registered using the rsi_ble_gatt_register_callbacks API. Note

  • Attribute protocol error codes 0x4A01 - Invalid Handle 0x4A0A - Attribute not found 0x4A05 - Insufficient authentication 0x4A08 - Insufficient authorization 0x4A0C - Insufficient encryption key size 0x4A0F - Insufficient encryption 0x4A02 - Read not permitted

Returns

  • The following values are returned: void


Definition at line 5403 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_read_resp_t#

void(* rsi_ble_on_read_resp_t)(uint16_t resp_status, uint16_t resp_id, rsi_ble_resp_att_value_t *rsi_ble_resp_att_val) )(uint16_t resp_status, uint16_t resp_id, rsi_ble_resp_att_value_t *rsi_ble_resp_att_val)

Callback function for attribute read response from the module.

Parameters
[out]resp_status

contains the response id because of which, this callback is called response ids: (RSI_BLE_RSP_READ_VAL, RSI_BLE_RSP_READ_BY_UUID, RSI_BLE_RSP_LONG_READ, RSI_BLE_RSP_MULTIPLE_READ)

[out]rsi_ble_resp_att_val

contains the attribute value on attribute read response. Refer to rsi_ble_resp_att_value_s for more details.

This callback function is called upon receiving an attribute value from the module. It has to be registered using the rsi_ble_gatt_register_callbacks API. Note

  • Attribute protocol error codes 0x4A01 - Invalid Handle 0x4A0A - Attribute not found 0x4A05 - Insufficient authentication 0x4A08 - Insufficient authorization 0x4A0C - Insufficient encryption key size 0x4A0F - Insufficient encryption 0x4A02 - Read not permitted 0x4A06 - Request not supported 0x4A07 - Invalid offset 0x4A0B - Attribute not Long - attribute value has a fixed length that is less than or equal to (ATT_MTU - 1) octets in length , refer to Bluetooth Spec 5.4 for further details.

Returns

  • The following values are returned: void


Definition at line 5435 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_write_resp_t#

void(* rsi_ble_on_write_resp_t)(uint16_t resp_status, uint16_t resp_id) )(uint16_t resp_status, uint16_t resp_id)

Callback function for attribute write response such as set/prepare/execute action completion.

Parameters
[out]resp_status

contains the response id because of which, this callback is called response ids: (RSI_BLE_RSP_WRITE, RSI_BLE_RSP_WRITE_NO_ACK, RSI_BLE_RSP_LONG_WRITE, RSI_BLE_RSP_EXECUTE_WRITE)

This callback function is called when an attribute set, prepare, or execute action is completed. It has to be registered using the rsi_ble_gatt_register_callbacks API. Note

  • Attribute protocol error codes 0x4A01 - Invalid Handle 0x4A0A - Attribute not found 0x4A05 - Insufficient authentication 0x4A08 - Insufficient authorization 0x4A0C - Insufficient encryption key size 0x4A0F - Insufficient encryption 0x4A03 - Write not permitted 0x4A07 - Invalid offset
    0x4A0D - Invalid attribute value length


Definition at line 5463 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_gatt_write_event_t#

void(* rsi_ble_on_gatt_write_event_t)(uint16_t event_id, rsi_ble_event_write_t *rsi_ble_write) )(uint16_t event_id, rsi_ble_event_write_t *rsi_ble_write)

Callback function are triggered for GATT write command, write request, notification, and event indication from the module. It is registered by using the rsi_ble_gatt_register_callbacks API.

Parameters
[out]event_id

includes the event id (RSI_BLE_EVENT_GATT_NOTIFICATION, RSI_BLE_EVENT_GATT_INDICATION, RSI_BLE_EVENT_GATT_WRITE)

[out]rsi_ble_write

Pointer to a structure of type rsi_ble_event_write_t includes the detailed event information such as dev_addr (Address of the remote device) , dev_addr (Type of the event received) , handle (Attribute handle associated with the event) length (length of attribute value) , att_value (the attribute value). Refer to rsi_ble_event_write_s for more details.


Definition at line 5482 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_gatt_prepare_write_event_t#

void(* rsi_ble_on_gatt_prepare_write_event_t)(uint16_t event_id, rsi_ble_event_prepare_write_t *rsi_ble_write) )(uint16_t event_id, rsi_ble_event_prepare_write_t *rsi_ble_write)

This callback function will be called if the GATT write/notify/indicate events are received This callback has to be registered using rsi_ble_gatt_register_callbacks API.

Parameters
[in]event_id

contains the event id (RSI_BLE_EVENT_GATT_NOTIFICATION, RSI_BLE_EVENT_GATT_INDICATION, RSI_BLE_EVENT_GATT_WRITE)

[in]rsi_ble_write

Pointer to a rsi_ble_event_prepare_write_s structure containing detailed information about the GATT prepare write event. This includes the remote device address, attribute handle, value offset, length of the value, and the attribute value itself. Refer to rsi_ble_event_prepare_write_s for more details.


Definition at line 5494 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_execute_write_event_t#

void(* rsi_ble_on_execute_write_event_t)(uint16_t event_id, rsi_ble_execute_write_t *rsi_ble_execute_write) )(uint16_t event_id, rsi_ble_execute_write_t *rsi_ble_execute_write)

The callback function will be called if the GATT write execute events are received. This callback has to be registered using rsi_ble_gatt_register_callbacks API.

Parameters
[out]event_id

contains the gatt_execute_write event id (RSI_BLE_EVENT_EXECUTE_WRITE)

[out]rsi_ble_execute_write

Pointer to a rsi_ble_execute_write_s structure containing details about the execute write request. This includes the remote device address and the execute write flag.


Definition at line 5506 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_read_req_event_t#

void(* rsi_ble_on_read_req_event_t)(uint16_t event_id, rsi_ble_read_req_t *rsi_ble_read_req) )(uint16_t event_id, rsi_ble_read_req_t *rsi_ble_read_req)

The callback function will be called if the GATT read request events are received. This callback has to be registered using rsi_ble_gatt_register_callbacks API.

Parameters
[out]event_id

contains the gatt_read_req_event id (RSI_BLE_EVENT_READ_REQ)

[out]rsi_ble_read_req

Pointer to a rsi_ble_read_req_s structure containing details about the GATT read request. This includes the remote device address, attribute handle, request type, and the offset of the attribute value.


Definition at line 5518 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_mtu_event_t#

void(* rsi_ble_on_mtu_event_t)(rsi_ble_event_mtu_t *rsi_ble_event_mtu) )(rsi_ble_event_mtu_t *rsi_ble_event_mtu)

The callback function will be called if MTU size request is received. The MTU size negotiation occurs after establishing a connection, and the callback provides the updated MTU size information.

Parameters
[out]rsi_ble_event_mtu

contains the MTU size information. Refer to rsi_ble_event_mtu_s for more details.


Definition at line 5528 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_remote_device_info_t#

void(* rsi_ble_on_remote_device_info_t)(uint16_t status, rsi_ble_event_remote_device_info_t *resp_buffer) )(uint16_t status, rsi_ble_event_remote_device_info_t *resp_buffer)

Callback function to retrieve remote device information.it provides the version and manufacturer-specific details of a remote device. This callback has to be registered using rsi_ble_enhanced_gap_extended_register_callbacks API.

Parameters
[out]status

Pointer to a rsi_ble_event_remote_device_info_s structure containing remote device version information, including the version, company ID, and sub-version.

Note

  • Refer Bluetooth Generic Error Codes section up to 0x4FF8 from error-codes.


Definition at line 5559 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_rcp_resp_rcvd_t#

void(* rsi_ble_on_rcp_resp_rcvd_t)(uint16_t status, rsi_ble_event_rcp_rcvd_info_t *resp_buffer) )(uint16_t status, rsi_ble_event_rcp_rcvd_info_t *resp_buffer)

Callback function type for receiving RCP response events.

Parameters
N/Astatus

The status of the RCP response event.

N/Aresp_buffer

Pointer to the buffer containing the RCP response information.


Definition at line 5572 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_cbfc_conn_req_event_t#

void(* rsi_ble_on_cbfc_conn_req_event_t)(rsi_ble_event_cbfc_conn_req_t *rsi_ble_cbfc_conn_req) )(rsi_ble_event_cbfc_conn_req_t *rsi_ble_cbfc_conn_req)

Callback function to handle an L2CAP CBFC connection request event. This callback function is called when a Circular Buffer Flow Control (CBFC) connection request is received from a remote BLE device. It provides the necessary connection parameters to process the request. This callback has to be registered using rsi_ble_l2cap_cbfc_callbacks API.

Parameters
[in]rsi_ble_cbfc_conn_req

contains the connection request information , refer to rsi_ble_event_cbfc_conn_req_s for more details.


Definition at line 5588 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_cbfc_conn_complete_event_t#

void(* rsi_ble_on_cbfc_conn_complete_event_t)(rsi_ble_event_cbfc_conn_complete_t *rsi_ble_cbfc_conn_complete, uint16_t status) )(rsi_ble_event_cbfc_conn_complete_t *rsi_ble_cbfc_conn_complete, uint16_t status)

Callback function to indicate L2CAP CBFC connection complete status. This callback function will be called when Circular Buffer Flow Control (CBFC) connection has been successfully established or when the connection attempt fails. The function provides detailed information about the connection parameters and the status of the operation. This callback has to be registered using rsi_ble_l2cap_cbfc_callbacks API.

Parameters
[in]status

The status of the connection operation:

  • 0: SUCCESS

  • Non-Zero Value: Error code indicating the reason for the failure.

[in]rsi_ble_cbfc_conn_complete

contains the connection completed information such as psm , mtu , mps , lcid. Refer to rsi_ble_event_cbfc_conn_complete_s for more details.


Definition at line 5606 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_cbfc_rx_data_event_t#

void(* rsi_ble_on_cbfc_rx_data_event_t)(rsi_ble_event_cbfc_rx_data_t *rsi_ble_cbfc_rx_data) )(rsi_ble_event_cbfc_rx_data_t *rsi_ble_cbfc_rx_data)

Callback function to indicate L2CAP CBFC RX data event. This callback function will be called when data is received over a Circular Buffer Flow Control (CBFC) connection from a remote device. This callback has to be registered using rsi_ble_l2cap_cbfc_callbacks API.

Parameters
[in]rsi_ble_cbfc_rx_data

contains the received data information , refer to rsi_ble_event_cbfc_rx_data_s


Definition at line 5618 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_on_cbfc_disconn_event_t#

void(* rsi_ble_on_cbfc_disconn_event_t)(rsi_ble_event_cbfc_disconn_t *rsi_ble_cbfc_disconn) )(rsi_ble_event_cbfc_disconn_t *rsi_ble_cbfc_disconn)

Callback function to indicate L2CAP CBFC disconnection event. This callback function will be called whenever a Circular Buffer Flow Control (CBFC) disconnection event occurs. This callback has to be registered using rsi_ble_l2cap_cbfc_callbacks API.

Parameters
[in]rsi_ble_cbfc_disconn

contains the disconnect device information , refer to rsi_ble_event_cbfc_disconn_s.


Definition at line 5628 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

chip_ble_buffers_stats_handler_t#

void(* chip_ble_buffers_stats_handler_t)(chip_ble_buffers_stats_t *chip_ble_buffers_stats) )(chip_ble_buffers_stats_t *chip_ble_buffers_stats)

Typedef for the chip_ble_buffers_stats_handler_t function pointer.

Parameters
N/Achip_ble_buffers_stats

Pointer to the chip_ble_buffers_stats_t structure that contains the statistics of the BLE buffers.

This function pointer type is used to define a callback function that handles the statistics of the BLE buffers in the chip.


Definition at line 5660 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_ae_report_complete_t#

void(* rsi_ble_ae_report_complete_t)(uint16_t resp_status, rsi_ble_ae_adv_report_t *rsi_ble_event_ae_report) )(uint16_t resp_status, rsi_ble_ae_adv_report_t *rsi_ble_event_ae_report)

Callback function to report the AE Advertisements. This callback function will be called when AE adv report event is received. This callback has to be registered using rsi_ble_ae_events_register_callbacks API.

Parameters
[out]rsi_ble_event_ae_report

A pointer to the structure containing AE Adv packets information. It contains important information such PHY rate, Set ID (SID) , event type etc. Refer to rsi_ble_ae_adv_report_s for more details.

[out]resp_status

Status of the event response:

  • 0: SUCCESS

  • Non-zero: Error code


Definition at line 5676 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_ae_per_adv_sync_estbl_t#

void(* rsi_ble_ae_per_adv_sync_estbl_t)(uint16_t resp_status, rsi_ble_per_adv_sync_estbl_t *rsi_ble_event_per_adv_sync_estbl) )(uint16_t resp_status, rsi_ble_per_adv_sync_estbl_t *rsi_ble_event_per_adv_sync_estbl)

Callback function to report the AE periodic sync established event. This callback function will be called when AE periodic sync established event is received. This callback has to be registered using rsi_ble_ae_events_register_callbacks API.

Parameters
[out]rsi_ble_event_per_adv_sync_estbl

A pointer to the structure containing AE periodic sync established information. Such as status of sync indicating whether Periodic Advertising is successful or not. Refer to rsi_ble_per_adv_sync_estbl_s for more details.

[out]resp_status

Status of the event response:

  • 0: SUCCESS

  • Non-zero: Error code


Definition at line 5690 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_ae_per_adv_report_t#

void(* rsi_ble_ae_per_adv_report_t)(uint16_t resp_status, rsi_ble_per_adv_report_t *rsi_ble_event_per_adv_report) )(uint16_t resp_status, rsi_ble_per_adv_report_t *rsi_ble_event_per_adv_report)

Callback function to report the AE periodic advertisement event This callback function will be called when AE periodic advertisement event is received This callback has to be registered using rsi_ble_ae_events_register_callbacks API.

Parameters
[out]rsi_ble_event_per_adv_report

A pointer to the structure containing AE periodic advertisement, report information such as sync_handle, tx_power, RSSI, data etc. Refer to rsi_ble_per_adv_report_s for more details.

[out]resp_status

Status of the event response:

  • 0: SUCCESS

  • Non-zero: Error code


Definition at line 5704 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_ae_per_adv_sync_lost_t#

void(* rsi_ble_ae_per_adv_sync_lost_t)(uint16_t resp_status, rsi_ble_per_adv_sync_lost_t *rsi_ble_event_per_adv_sync_lost) )(uint16_t resp_status, rsi_ble_per_adv_sync_lost_t *rsi_ble_event_per_adv_sync_lost)

Callback function to report the AE periodic sync lost event This callback function will be called when AE periodic sync lost event is received This callback has to be registered using rsi_ble_ae_events_register_callbacks API.

Parameters
[out]rsi_ble_event_per_adv_sync_lost

A pointer to the structure containing AE periodic sync lost information of sync handle on which adv sync is lost , refer to rsi_ble_per_adv_sync_lost_s for more details.

[out]resp_status

Status of the event response:

  • 0: SUCCESS

  • Non-zero: Error code


Definition at line 5718 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_ae_scan_timeout_t#

void(* rsi_ble_ae_scan_timeout_t)(uint16_t resp_status, rsi_ble_scan_timeout_t *rsi_ble_event_scan_timeout) )(uint16_t resp_status, rsi_ble_scan_timeout_t *rsi_ble_event_scan_timeout)

Callback function to report the AE scan timeout event This callback function will be called when AE scan timeout event is received This callback has to be registered using rsi_ble_ae_events_register_callbacks API.

Parameters
[out]rsi_ble_event_scan_timeout

A pointer to the structure containing AE scan timeout information. Such as status indicating that scanning has ended because the duration has expired, refer to rsi_ble_scan_timeout_s for more details.

[out]resp_status

Status of the event response:

  • 0: SUCCESS

  • Non-zero: Error code


Definition at line 5732 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_ae_adv_set_terminated_t#

void(* rsi_ble_ae_adv_set_terminated_t)(uint16_t resp_status, rsi_ble_adv_set_terminated_t *rsi_ble_event_adv_set_terminated) )(uint16_t resp_status, rsi_ble_adv_set_terminated_t *rsi_ble_event_adv_set_terminated)

Callback function to report the AE advertising set terminated event This callback function will be called when AE advertising set terminated is received. This callback has to be registered using rsi_ble_ae_events_register_callbacks API.

Parameters
[out]rsi_ble_event_adv_set_terminated

A pointer to the structure containing the AE advertising set terminated information about status on advertisement termination, adv handle, connection handle, number of AE events. Refer to rsi_ble_adv_set_terminated_s for more details.

[out]resp_status

Status of the event response:

  • 0: SUCCESS

  • Non-zero: Error code


Definition at line 5746 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

rsi_ble_ae_scan_req_recvd_t#

void(* rsi_ble_ae_scan_req_recvd_t)(uint16_t resp_status, rsi_ble_scan_req_recvd_t *rsi_ble_event_scan_req_recvd) )(uint16_t resp_status, rsi_ble_scan_req_recvd_t *rsi_ble_event_scan_req_recvd)

Callback function to report the AE scan request received event This callback function will be called when AE scan request is received. it provides AE scan request information. This callback has to be registered using rsi_ble_ae_events_register_callbacks API.

Parameters
[out]rsi_ble_event_scan_req_recvd

A pointer to the structure containing AE scan request information about the received scan request, including the advertising set handle and scanner details. Refer to rsi_ble_scan_req_recvd_s for detailed information

[out]resp_status

Status of the event response:

  • 0: SUCCESS

  • Non-zero: Error code


Definition at line 5762 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h

Function Documentation#

rsi_ble_l2cap_cbsc_register_callbacks#

void rsi_ble_l2cap_cbsc_register_callbacks (rsi_ble_on_cbfc_conn_req_event_t ble_on_cbsc_conn_req, rsi_ble_on_cbfc_conn_complete_event_t ble_on_cbsc_conn_complete, rsi_ble_on_cbfc_rx_data_event_t ble_on_cbsc_rx_data, rsi_ble_on_cbfc_disconn_event_t ble_on_cbsc_disconn)

Register callbacks for BLE L2CAP Credit Based Flow Control (CBFC) events.

Parameters
N/Able_on_cbsc_conn_req

Callback function to handle CBFC connection request event.

N/Able_on_cbsc_conn_complete

Callback function to handle CBFC connection complete event.

N/Able_on_cbsc_rx_data

Callback function to handle CBFC receive data event.

N/Able_on_cbsc_disconn

Callback function to handle CBFC disconnection event.

This function is used to register callbacks for various CBFC events in BLE L2CAP. The registered callbacks will be invoked when the corresponding events occur.


Definition at line 5645 of file components/device/silabs/si91x/wireless/ble/inc/rsi_ble_apis.h