|
Zephyr API Documentation 4.3.0-rc1
A Scalable Open Source RTOS
|
Bluetooth Coordinated Set Identification Profile (CSIP) APIs. More...
#include <stdbool.h>#include <stddef.h>#include <stdint.h>#include <zephyr/autoconf.h>#include <zephyr/bluetooth/addr.h>#include <zephyr/bluetooth/bluetooth.h>#include <zephyr/bluetooth/conn.h>#include <zephyr/bluetooth/gap.h>#include <zephyr/kernel.h>#include <zephyr/sys/slist.h>Go to the source code of this file.
Data Structures | |
| struct | bt_csip_set_member_cb |
| Callback structure for the Coordinated Set Identification Service. More... | |
| struct | bt_csip_set_member_register_param |
| Register structure for Coordinated Set Identification Service. More... | |
| struct | bt_csip_set_member_set_info |
| Struct to hold information about a service instance. More... | |
| struct | bt_csip_set_coordinator_set_info |
| Information about a specific set. More... | |
| struct | bt_csip_set_coordinator_csis_inst |
| Struct representing a coordinated set instance on a remote device. More... | |
| struct | bt_csip_set_coordinator_set_member |
| Struct representing a remote device as a set member. More... | |
| struct | bt_csip_set_coordinator_cb |
| Struct to hold the Coordinated Set Identification Profile Set Coordinator callbacks. More... | |
Macros | |
| #define | BT_CSIP_SET_COORDINATOR_DISCOVER_TIMER_VALUE K_SECONDS(10) |
| Recommended timer for member discovery. | |
| #define | BT_CSIP_SET_COORDINATOR_MAX_CSIS_INSTANCES 0 |
| Defines the maximum number of Coordinated Set Identification service instances for the Coordinated Set Identification Set Coordinator. | |
| #define | BT_CSIP_READ_SIRK_REQ_RSP_ACCEPT 0x00 |
| Accept the request to read the SIRK as plaintext. | |
| #define | BT_CSIP_READ_SIRK_REQ_RSP_ACCEPT_ENC 0x01 |
| Accept the request to read the SIRK, but return encrypted SIRK. | |
| #define | BT_CSIP_READ_SIRK_REQ_RSP_REJECT 0x02 |
| Reject the request to read the SIRK. | |
| #define | BT_CSIP_READ_SIRK_REQ_RSP_OOB_ONLY 0x03 |
| SIRK is available only via an OOB procedure. | |
| #define | BT_CSIP_SIRK_SIZE 16 |
| Size of the Set Identification Resolving Key (SIRK) | |
| #define | BT_CSIP_RSI_SIZE 6 |
| Size of the Resolvable Set Identifier (RSI) | |
| #define | BT_CSIP_ERROR_LOCK_DENIED 0x80 |
| Service is already locked. | |
| #define | BT_CSIP_ERROR_LOCK_RELEASE_DENIED 0x81 |
| Service is not locked. | |
| #define | BT_CSIP_ERROR_LOCK_INVAL_VALUE 0x82 |
| Invalid lock value. | |
| #define | BT_CSIP_ERROR_SIRK_OOB_ONLY 0x83 |
| SIRK only available out-of-band. | |
| #define | BT_CSIP_ERROR_LOCK_ALREADY_GRANTED 0x84 |
| Client is already owner of the lock. | |
| #define | BT_CSIP_DATA_RSI(_rsi) |
| Helper to declare bt_data array including RSI. | |
Typedefs | |
| typedef void(* | bt_csip_set_coordinator_discover_cb) (struct bt_conn *conn, const struct bt_csip_set_coordinator_set_member *member, int err, size_t set_count) |
| Callback for discovering Coordinated Set Identification Services. | |
| typedef void(* | bt_csip_set_coordinator_lock_set_cb) (int err) |
| Callback for locking a set across one or more devices. | |
| typedef void(* | bt_csip_set_coordinator_lock_changed_cb) (struct bt_csip_set_coordinator_csis_inst *inst, bool locked) |
| Callback when the lock value on a set of a connected device changes. | |
| typedef void(* | bt_csip_set_coordinator_sirk_changed_cb) (struct bt_csip_set_coordinator_csis_inst *inst) |
| Callback when the SIRK value of a set of a connected device changes. | |
| typedef void(* | bt_csip_set_coordinator_size_changed_cb) (struct bt_conn *conn, const struct bt_csip_set_coordinator_csis_inst *inst) |
| Callback when the size of a set of a connected device changes. | |
| typedef void(* | bt_csip_set_coordinator_ordered_access_cb_t) (const struct bt_csip_set_coordinator_set_info *set_info, int err, bool locked, struct bt_csip_set_coordinator_set_member *member) |
| Callback for bt_csip_set_coordinator_ordered_access() | |
| typedef bool(* | bt_csip_set_coordinator_ordered_access_t) (const struct bt_csip_set_coordinator_set_info *set_info, struct bt_csip_set_coordinator_set_member *members[], size_t count) |
| Callback function definition for bt_csip_set_coordinator_ordered_access() | |
Functions | |
| void * | bt_csip_set_member_svc_decl_get (const struct bt_csip_set_member_svc_inst *svc_inst) |
| Get the service declaration attribute. | |
| int | bt_csip_set_member_register (const struct bt_csip_set_member_register_param *param, struct bt_csip_set_member_svc_inst **svc_inst) |
| Register a Coordinated Set Identification Service instance. | |
| int | bt_csip_set_member_unregister (struct bt_csip_set_member_svc_inst *svc_inst) |
| Unregister a Coordinated Set Identification Service instance. | |
| int | bt_csip_set_member_sirk (struct bt_csip_set_member_svc_inst *svc_inst, const uint8_t sirk[16]) |
| Set the SIRK of a service instance. | |
| int | bt_csip_set_member_set_size_and_rank (struct bt_csip_set_member_svc_inst *svc_inst, uint8_t size, uint8_t rank) |
| Set a new size and rank for a service instance. | |
| int | bt_csip_set_member_get_info (const struct bt_csip_set_member_svc_inst *svc_inst, struct bt_csip_set_member_set_info *info) |
| Get information about a service instances. | |
| int | bt_csip_set_member_generate_rsi (const struct bt_csip_set_member_svc_inst *svc_inst, uint8_t rsi[6]) |
| Generate the Resolvable Set Identifier (RSI) value. | |
| int | bt_csip_set_member_lock (struct bt_csip_set_member_svc_inst *svc_inst, bool lock, bool force) |
| Locks a specific Coordinated Set Identification Service instance on the server. | |
| int | bt_csip_set_coordinator_discover (struct bt_conn *conn) |
| Initialise the csip_set_coordinator instance for a connection. | |
| struct bt_csip_set_coordinator_set_member * | bt_csip_set_coordinator_set_member_by_conn (const struct bt_conn *conn) |
| Get the set member from a connection pointer. | |
| bool | bt_csip_set_coordinator_is_set_member (const uint8_t sirk[16], struct bt_data *data) |
| Check if advertising data indicates a set member. | |
| int | bt_csip_set_coordinator_register_cb (struct bt_csip_set_coordinator_cb *cb) |
| Registers callbacks for csip_set_coordinator. | |
| int | bt_csip_set_coordinator_ordered_access (const struct bt_csip_set_coordinator_set_member *members[], uint8_t count, const struct bt_csip_set_coordinator_set_info *set_info, bt_csip_set_coordinator_ordered_access_t cb) |
| Access Coordinated Set devices in an ordered manner as a client. | |
| int | bt_csip_set_coordinator_lock (const struct bt_csip_set_coordinator_set_member **members, uint8_t count, const struct bt_csip_set_coordinator_set_info *set_info) |
| Lock an array of set members. | |
| int | bt_csip_set_coordinator_release (const struct bt_csip_set_coordinator_set_member **members, uint8_t count, const struct bt_csip_set_coordinator_set_info *set_info) |
| Release an array of set members. | |
Bluetooth Coordinated Set Identification Profile (CSIP) APIs.