Zephyr Project API 4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches

Connection management. More...

Data Structures

struct  bt_le_conn_param
 Connection parameters for LE connections. More...
struct  bt_conn_le_phy_info
 Connection PHY information for LE connections. More...
struct  bt_conn_le_phy_param
 Preferred PHY parameters for LE connections. More...
struct  bt_conn_le_data_len_info
 Connection data length information for LE connections. More...
struct  bt_conn_le_data_len_param
 Connection data length parameters for LE connections. More...
struct  bt_conn_le_subrate_param
 Connection subrating parameters for LE connections. More...
struct  bt_conn_le_subrating_info
 Subrating information for LE connections. More...
struct  bt_conn_le_subrate_changed
 Updated subrating connection parameters for LE connections. More...
struct  bt_conn_le_min_conn_interval_group
 Minimum supported connection interval group. More...
struct  bt_conn_le_min_conn_interval_info
 Minimum supported connection interval information. More...
struct  bt_conn_le_conn_rate_param
 Connection rate parameters for LE connections. More...
struct  bt_conn_le_conn_rate_changed
 Updated connection rate parameters. More...
struct  bt_conn_le_read_all_remote_feat_complete
 Read all remote features complete callback params. More...
struct  bt_conn_le_frame_space_update_param
 Frame space update params. More...
struct  bt_conn_le_frame_space_updated
 Frame space updated callback params. More...
struct  bt_conn_le_cs_capabilities
 Remote channel sounding capabilities for LE connections supporting CS. More...
struct  bt_conn_le_cs_fae_table
 Remote FAE Table for LE connections supporting CS. More...
struct  bt_conn_le_cs_config
 Channel sounding configuration. More...
struct  bt_conn_le_cs_subevent_result
 Subevent data for LE connections supporting CS. More...
struct  bt_conn_le_info
 LE Connection Info Structure. More...
struct  bt_conn_br_info
 BR/EDR Connection Info Structure. More...
struct  bt_conn_sco_info
 SCO Connection Info Structure. More...
struct  bt_security_info
 Security Info Structure. More...
struct  bt_conn_info
 Connection Info Structure. More...
struct  bt_conn_le_remote_info
 LE Connection Remote Info Structure. More...
struct  bt_conn_br_remote_info
 BR/EDR Connection Remote Info structure. More...
struct  bt_conn_remote_info
 Connection Remote Info Structure. More...
struct  bt_conn_le_tx_power
 LE Transmit Power Level Structure. More...
struct  bt_conn_le_tx_power_report
 LE Transmit Power Reporting Structure. More...
struct  bt_conn_le_path_loss_threshold_report
 LE Path Loss Monitoring Threshold Change Report Structure. More...
struct  bt_conn_le_path_loss_reporting_param
 LE Path Loss Monitoring Parameters Structure as defined in Core Spec. More...
struct  bt_conn_le_create_param
struct  bt_conn_le_create_synced_param
struct  bt_conn_le_cs_procedure_enable_complete
struct  bt_conn_br_cb
 BR/EDR specific connection callbacks. More...
struct  bt_conn_cb
 Connection callback structure. More...
struct  bt_conn_oob_info
 Info Structure for OOB pairing. More...
struct  bt_conn_pairing_feat
 Pairing request and pairing response info structure. More...
struct  bt_conn_auth_cb
 Authenticated pairing callback structure. More...
struct  bt_conn
 Opaque type representing a connection to a remote device. More...

Macros

#define BT_LE_CONN_PARAM_INIT(int_min, int_max, lat, to)
 Initialize connection parameters.
#define BT_LE_CONN_PARAM(int_min, int_max, lat, to)
 Helper to declare connection parameters inline.
#define BT_LE_CONN_PARAM_DEFAULT
 Default LE connection parameters: Connection Interval: 30-50 ms Latency: 0 Timeout: 4 s.
#define BT_CONN_LE_PHY_PARAM_INIT(_pref_tx_phy, _pref_rx_phy)
 Initialize PHY parameters.
#define BT_CONN_LE_PHY_PARAM(_pref_tx_phy, _pref_rx_phy)
 Helper to declare PHY parameters inline.
#define BT_CONN_LE_PHY_PARAM_1M
 Only LE 1M PHY.
#define BT_CONN_LE_PHY_PARAM_2M
 Only LE 2M PHY.
#define BT_CONN_LE_PHY_PARAM_CODED
 Only LE Coded PHY.
#define BT_CONN_LE_PHY_PARAM_ALL
 All LE PHYs.
#define BT_CONN_LE_DATA_LEN_PARAM_INIT(_tx_max_len, _tx_max_time)
 Initialize transmit data length parameters.
#define BT_CONN_LE_DATA_LEN_PARAM(_tx_max_len, _tx_max_time)
 Helper to declare transmit data length parameters inline.
#define BT_LE_DATA_LEN_PARAM_DEFAULT
 Default LE data length parameters.
#define BT_LE_DATA_LEN_PARAM_MAX
 Maximum LE data length parameters.
#define BT_CONN_LE_MAX_CONN_INTERVAL_GROUPS   41
 Maximum Connection Interval Groups possible.
#define BT_CONN_LE_FRAME_SPACE_TYPES_MASK_ACL_IFS
#define BT_CONN_LE_FRAME_SPACE_TYPES_MASK_ACL
#define BT_CONN_LE_FRAME_SPACE_TYPES_MASK_CIS
#define BT_CONN_LE_FRAME_SPACE_MAX   (10000U)
 Maximum frame space in microseconds.
#define BT_CONN_LE_CS_MODE_MAIN_MODE_PART(x)
 Extract main mode part from bt_conn_le_cs_mode.
#define BT_CONN_LE_CS_MODE_SUB_MODE_PART(x)
 Extract sub-mode part from bt_conn_le_cs_mode.
#define BT_CONN_INTERVAL_TO_MS(interval)
 Convert connection interval to milliseconds.
#define BT_CONN_INTERVAL_TO_US(interval)
 Convert connection interval to microseconds.
#define BT_CONN_SCI_INTERVAL_TO_US(_interval)
 Convert shorter connection interval to microseconds.
#define bt_conn_dst_str(_conn)
 Get a string pointer to a connection destination (peer) address.
#define BT_CONN_LE_CREATE_PARAM_INIT(_options, _interval, _window)
 Initialize create connection parameters.
#define BT_CONN_LE_CREATE_PARAM(_options, _interval, _window)
 Helper to declare create connection parameters inline.
#define BT_CONN_LE_CREATE_CONN
 Default LE create connection parameters.
#define BT_CONN_LE_CREATE_CONN_AUTO
 Default LE create connection using filter accept list parameters.
#define BT_CONN_PARAM_REJECT_ERR_L2CAP_CPUP   0xFF
 Synthetic error value for an L2CAP Connection Parameter Update Procedure (CPUP) rejection.
#define BT_CONN_CB_DEFINE(_name)
 Register a callback structure for connection events.
#define BT_PASSKEY_RAND   0xffffffff
 Special passkey value that can be used to generate a random passkey when using the app_passkey callback from bt_conn_auth_cb.

Enumerations

enum  { BT_CONN_LE_PHY_OPT_NONE = 0 , BT_CONN_LE_PHY_OPT_CODED_S2 = BIT(0) , BT_CONN_LE_PHY_OPT_CODED_S8 = BIT(1) }
 Connection PHY options. More...
enum  bt_conn_le_frame_space_update_initiator { BT_CONN_LE_FRAME_SPACE_UPDATE_INITIATOR_LOCAL_HOST , BT_CONN_LE_FRAME_SPACE_UPDATE_INITIATOR_LOCAL_CONTROLLER , BT_CONN_LE_FRAME_SPACE_UPDATE_INITIATOR_PEER }
 Frame space update initiator. More...
enum  bt_conn_type {
  BT_CONN_TYPE_LE = BIT(0) , BT_CONN_TYPE_BR = BIT(1) , BT_CONN_TYPE_SCO = BIT(2) , BT_CONN_TYPE_ISO = BIT(3) ,
  BT_CONN_TYPE_ALL
}
 Connection Type. More...
enum  bt_conn_le_cs_capability_rtt_aa_only { BT_CONN_LE_CS_RTT_AA_ONLY_NOT_SUPP = 0 , BT_CONN_LE_CS_RTT_AA_ONLY_10NS , BT_CONN_LE_CS_RTT_AA_ONLY_150NS }
 Supported AA-Only RTT precision. More...
enum  bt_conn_le_cs_capability_rtt_sounding { BT_CONN_LE_CS_RTT_SOUNDING_NOT_SUPP = 0 , BT_CONN_LE_CS_RTT_SOUNDING_10NS , BT_CONN_LE_CS_RTT_SOUNDING_150NS }
 Supported Sounding Sequence RTT precision. More...
enum  bt_conn_le_cs_capability_rtt_random_payload { BT_CONN_LE_CS_RTT_RANDOM_PAYLOAD_NOT_SUPP = 0 , BT_CONN_LE_CS_RTT_RANDOM_PAYLOAD_10NS , BT_CONN_LE_CS_RTT_RANDOM_PAYLOAD_150NS }
 Supported Random Payload RTT precision. More...
enum  bt_conn_le_cs_mode {
  BT_CONN_LE_CS_MAIN_MODE_1_NO_SUB_MODE = BT_HCI_OP_LE_CS_MAIN_MODE_1 , BT_CONN_LE_CS_MAIN_MODE_2_NO_SUB_MODE = BT_HCI_OP_LE_CS_MAIN_MODE_2 , BT_CONN_LE_CS_MAIN_MODE_3_NO_SUB_MODE = BT_HCI_OP_LE_CS_MAIN_MODE_3 , BT_CONN_LE_CS_MAIN_MODE_2_SUB_MODE_1 ,
  BT_CONN_LE_CS_MAIN_MODE_2_SUB_MODE_3 , BT_CONN_LE_CS_MAIN_MODE_3_SUB_MODE_2
}
 Channel sounding mode (main and sub-mode). More...
enum  bt_conn_le_cs_role { BT_CONN_LE_CS_ROLE_INITIATOR , BT_CONN_LE_CS_ROLE_REFLECTOR }
 Channel sounding role. More...
enum  bt_conn_le_cs_rtt_type {
  BT_CONN_LE_CS_RTT_TYPE_AA_ONLY = BT_HCI_OP_LE_CS_RTT_TYPE_AA_ONLY , BT_CONN_LE_CS_RTT_TYPE_32_BIT_SOUNDING = BT_HCI_OP_LE_CS_RTT_TYPE_32BIT_SOUND , BT_CONN_LE_CS_RTT_TYPE_96_BIT_SOUNDING = BT_HCI_OP_LE_CS_RTT_TYPE_96BIT_SOUND , BT_CONN_LE_CS_RTT_TYPE_32_BIT_RANDOM = BT_HCI_OP_LE_CS_RTT_TYPE_32BIT_RAND ,
  BT_CONN_LE_CS_RTT_TYPE_64_BIT_RANDOM = BT_HCI_OP_LE_CS_RTT_TYPE_64BIT_RAND , BT_CONN_LE_CS_RTT_TYPE_96_BIT_RANDOM = BT_HCI_OP_LE_CS_RTT_TYPE_96BIT_RAND , BT_CONN_LE_CS_RTT_TYPE_128_BIT_RANDOM = BT_HCI_OP_LE_CS_RTT_TYPE_128BIT_RAND
}
 Channel sounding RTT type. More...
enum  bt_conn_le_cs_sync_phy { BT_CONN_LE_CS_SYNC_1M_PHY = BT_HCI_OP_LE_CS_CS_SYNC_1M , BT_CONN_LE_CS_SYNC_2M_PHY = BT_HCI_OP_LE_CS_CS_SYNC_2M , BT_CONN_LE_CS_SYNC_2M_2BT_PHY = BT_HCI_OP_LE_CS_CS_SYNC_2M_2BT }
 Channel sounding PHY used for CS sync. More...
enum  bt_conn_le_cs_chsel_type { BT_CONN_LE_CS_CHSEL_TYPE_3B = BT_HCI_OP_LE_CS_TEST_CHSEL_TYPE_3B , BT_CONN_LE_CS_CHSEL_TYPE_3C = BT_HCI_OP_LE_CS_TEST_CHSEL_TYPE_3C }
 Channel sounding channel selection type. More...
enum  bt_conn_le_cs_ch3c_shape { BT_CONN_LE_CS_CH3C_SHAPE_HAT = BT_HCI_OP_LE_CS_TEST_CH3C_SHAPE_HAT , BT_CONN_LE_CS_CH3C_SHAPE_X = BT_HCI_OP_LE_CS_TEST_CH3C_SHAPE_X }
 Channel sounding channel sequence shape. More...
enum  bt_conn_le_cs_procedure_done_status { BT_CONN_LE_CS_PROCEDURE_COMPLETE = BT_HCI_LE_CS_PROCEDURE_DONE_STATUS_COMPLETE , BT_CONN_LE_CS_PROCEDURE_INCOMPLETE = BT_HCI_LE_CS_PROCEDURE_DONE_STATUS_PARTIAL , BT_CONN_LE_CS_PROCEDURE_ABORTED = BT_HCI_LE_CS_PROCEDURE_DONE_STATUS_ABORTED }
 Procedure done status. More...
enum  bt_conn_le_cs_subevent_done_status { BT_CONN_LE_CS_SUBEVENT_COMPLETE = BT_HCI_LE_CS_SUBEVENT_DONE_STATUS_COMPLETE , BT_CONN_LE_CS_SUBEVENT_ABORTED = BT_HCI_LE_CS_SUBEVENT_DONE_STATUS_ABORTED }
 Subevent done status. More...
enum  bt_conn_le_cs_procedure_abort_reason {
  BT_CONN_LE_CS_PROCEDURE_NOT_ABORTED = BT_HCI_LE_CS_PROCEDURE_ABORT_REASON_NO_ABORT , BT_CONN_LE_CS_PROCEDURE_ABORT_REQUESTED , BT_CONN_LE_CS_PROCEDURE_ABORT_TOO_FEW_CHANNELS , BT_CONN_LE_CS_PROCEDURE_ABORT_CHMAP_INSTANT_PASSED ,
  BT_CONN_LE_CS_PROCEDURE_ABORT_UNSPECIFIED = BT_HCI_LE_CS_PROCEDURE_ABORT_REASON_UNSPECIFIED
}
 Procedure abort reason. More...
enum  bt_conn_le_cs_subevent_abort_reason {
  BT_CONN_LE_CS_SUBEVENT_NOT_ABORTED = BT_HCI_LE_CS_SUBEVENT_ABORT_REASON_NO_ABORT , BT_CONN_LE_CS_SUBEVENT_ABORT_REQUESTED , BT_CONN_LE_CS_SUBEVENT_ABORT_NO_CS_SYNC , BT_CONN_LE_CS_SUBEVENT_ABORT_SCHED_CONFLICT ,
  BT_CONN_LE_CS_SUBEVENT_ABORT_UNSPECIFIED = BT_HCI_LE_CS_SUBEVENT_ABORT_REASON_UNSPECIFIED
}
 Subevent abort reason. More...
enum  { BT_CONN_ROLE_CENTRAL = 0 , BT_CONN_ROLE_PERIPHERAL = 1 }
enum  bt_conn_state { BT_CONN_STATE_DISCONNECTED , BT_CONN_STATE_CONNECTING , BT_CONN_STATE_CONNECTED , BT_CONN_STATE_DISCONNECTING }
enum  bt_security_t {
  BT_SECURITY_L0 , BT_SECURITY_L1 , BT_SECURITY_L2 , BT_SECURITY_L3 ,
  BT_SECURITY_L4 , BT_SECURITY_FORCE_PAIR = BIT(7)
}
 Security level. More...
enum  bt_security_flag { BT_SECURITY_FLAG_SC = BIT(0) , BT_SECURITY_FLAG_OOB = BIT(1) }
 Security Info Flags. More...
enum  bt_conn_le_tx_power_phy {
  BT_CONN_LE_TX_POWER_PHY_NONE , BT_CONN_LE_TX_POWER_PHY_1M , BT_CONN_LE_TX_POWER_PHY_2M , BT_CONN_LE_TX_POWER_PHY_CODED_S8 ,
  BT_CONN_LE_TX_POWER_PHY_CODED_S2
}
enum  bt_conn_le_path_loss_zone { BT_CONN_LE_PATH_LOSS_ZONE_ENTERED_LOW , BT_CONN_LE_PATH_LOSS_ZONE_ENTERED_MIDDLE , BT_CONN_LE_PATH_LOSS_ZONE_ENTERED_HIGH , BT_CONN_LE_PATH_LOSS_ZONE_UNAVAILABLE }
 Path Loss zone that has been entered. More...
enum  bt_conn_auth_keypress {
  BT_CONN_AUTH_KEYPRESS_ENTRY_STARTED = 0x00 , BT_CONN_AUTH_KEYPRESS_DIGIT_ENTERED = 0x01 , BT_CONN_AUTH_KEYPRESS_DIGIT_ERASED = 0x02 , BT_CONN_AUTH_KEYPRESS_CLEARED = 0x03 ,
  BT_CONN_AUTH_KEYPRESS_ENTRY_COMPLETED = 0x04
}
 Passkey Keypress Notification type. More...
enum  { BT_CONN_LE_OPT_NONE = 0 , BT_CONN_LE_OPT_CODED = BIT(0) , BT_CONN_LE_OPT_NO_1M = BIT(1) }
enum  bt_security_err {
  BT_SECURITY_ERR_SUCCESS , BT_SECURITY_ERR_AUTH_FAIL , BT_SECURITY_ERR_PIN_OR_KEY_MISSING , BT_SECURITY_ERR_OOB_NOT_AVAILABLE ,
  BT_SECURITY_ERR_AUTH_REQUIREMENT , BT_SECURITY_ERR_PAIR_NOT_SUPPORTED , BT_SECURITY_ERR_PAIR_NOT_ALLOWED , BT_SECURITY_ERR_INVALID_PARAM ,
  BT_SECURITY_ERR_KEY_REJECTED , BT_SECURITY_ERR_UNSPECIFIED
}
enum  bt_conn_le_cs_procedure_enable_state { BT_CONN_LE_CS_PROCEDURES_DISABLED = BT_HCI_OP_LE_CS_PROCEDURES_DISABLED , BT_CONN_LE_CS_PROCEDURES_ENABLED = BT_HCI_OP_LE_CS_PROCEDURES_ENABLED }
enum  bt_conn_le_cs_tone_antenna_config_selection {
  BT_LE_CS_TONE_ANTENNA_CONFIGURATION_A1_B1 = BT_HCI_OP_LE_CS_ACI_0 , BT_LE_CS_TONE_ANTENNA_CONFIGURATION_A2_B1 = BT_HCI_OP_LE_CS_ACI_1 , BT_LE_CS_TONE_ANTENNA_CONFIGURATION_A3_B1 = BT_HCI_OP_LE_CS_ACI_2 , BT_LE_CS_TONE_ANTENNA_CONFIGURATION_A4_B1 = BT_HCI_OP_LE_CS_ACI_3 ,
  BT_LE_CS_TONE_ANTENNA_CONFIGURATION_A1_B2 = BT_HCI_OP_LE_CS_ACI_4 , BT_LE_CS_TONE_ANTENNA_CONFIGURATION_A1_B3 = BT_HCI_OP_LE_CS_ACI_5 , BT_LE_CS_TONE_ANTENNA_CONFIGURATION_A1_B4 = BT_HCI_OP_LE_CS_ACI_6 , BT_LE_CS_TONE_ANTENNA_CONFIGURATION_A2_B2 = BT_HCI_OP_LE_CS_ACI_7
}
 CS Test Tone Antenna Config Selection. More...
enum  { bt_conn_oob_info::BT_CONN_OOB_LE_LEGACY , bt_conn_oob_info::BT_CONN_OOB_LE_SC }
 Type of OOB pairing method. More...
enum  { bt_conn_oob_info::BT_CONN_OOB_LOCAL_ONLY , bt_conn_oob_info::BT_CONN_OOB_REMOTE_ONLY , bt_conn_oob_info::BT_CONN_OOB_BOTH_PEERS , bt_conn_oob_info::BT_CONN_OOB_NO_DATA }
 OOB data configuration. More...

Functions

struct bt_conn * bt_conn_ref (struct bt_conn *conn)
 Increment a connection's reference count.
void bt_conn_unref (struct bt_conn *conn)
 Decrement a connection's reference count.
static struct bt_conn * bt_conn_take (struct bt_conn **orig)
 Take ownership of a connection pointer, setting the original to NULL.
void bt_conn_drop (struct bt_conn **orig)
 Drop a connection reference and clear the pointer.
void bt_conn_foreach (enum bt_conn_type type, void(*func)(struct bt_conn *conn, void *data), void *data)
 Iterate through all bt_conn objects.
struct bt_conn * bt_conn_lookup_addr_le (uint8_t id, const bt_addr_le_t *peer)
 Look up an existing connection by address.
const bt_addr_le_t * bt_conn_get_dst (const struct bt_conn *conn)
 Get destination (peer) address of a connection.
uint8_t bt_conn_index (const struct bt_conn *conn)
 Get array index of a connection.
int bt_conn_get_info (const struct bt_conn *conn, struct bt_conn_info *info)
 Get connection info.
bool bt_conn_is_type (const struct bt_conn *conn, enum bt_conn_type type)
 Function to determine the type of a connection.
int bt_conn_get_remote_info (const struct bt_conn *conn, struct bt_conn_remote_info *remote_info)
 Get connection info for the remote device.
int bt_conn_le_get_tx_power_level (struct bt_conn *conn, struct bt_conn_le_tx_power *tx_power_level)
 Get connection transmit power level.
int bt_conn_le_enhanced_get_tx_power_level (struct bt_conn *conn, struct bt_conn_le_tx_power *tx_power)
 Get local enhanced connection transmit power level.
int bt_conn_le_get_remote_tx_power_level (struct bt_conn *conn, enum bt_conn_le_tx_power_phy phy)
 Get remote (peer) transmit power level.
int bt_conn_le_set_tx_power_report_enable (struct bt_conn *conn, bool local_enable, bool remote_enable)
 Enable transmit power reporting.
int bt_conn_le_set_path_loss_mon_param (struct bt_conn *conn, const struct bt_conn_le_path_loss_reporting_param *param)
 Set Path Loss Monitoring Parameters.
int bt_conn_le_set_path_loss_mon_enable (struct bt_conn *conn, bool enable)
 Enable or Disable Path Loss Monitoring.
int bt_conn_le_subrate_set_defaults (const struct bt_conn_le_subrate_param *params)
 Set Default Connection Subrating Parameters.
int bt_conn_le_subrate_request (struct bt_conn *conn, const struct bt_conn_le_subrate_param *params)
 Request New Subrating Parameters.
int bt_conn_le_read_min_conn_interval_groups (struct bt_conn_le_min_conn_interval_info *info)
 Read Minimum Supported Connection Interval Groups.
int bt_conn_le_read_min_conn_interval (uint16_t *min_interval_us)
 Read Minimum Supported Connection Interval.
int bt_conn_le_conn_rate_set_defaults (const struct bt_conn_le_conn_rate_param *params)
 Set Default Connection Rate Parameters.
int bt_conn_le_conn_rate_request (struct bt_conn *conn, const struct bt_conn_le_conn_rate_param *params)
 Request New Connection Rate Parameters.
int bt_conn_le_read_all_remote_features (struct bt_conn *conn, uint8_t pages_requested)
 Read remote feature pages.
int bt_conn_le_frame_space_update (struct bt_conn *conn, const struct bt_conn_le_frame_space_update_param *params)
 Update frame space.
int bt_conn_le_param_update (struct bt_conn *conn, const struct bt_le_conn_param *param)
 Update the connection parameters.
int bt_conn_le_data_len_update (struct bt_conn *conn, const struct bt_conn_le_data_len_param *param)
 Update the connection transmit data length parameters.
int bt_conn_le_phy_update (struct bt_conn *conn, const struct bt_conn_le_phy_param *param)
 Update the connection PHY parameters.
int bt_conn_le_set_default_phy (uint8_t pref_tx_phy, uint8_t pref_rx_phy)
 Update the default PHY parameters to be used for all subsequent connections over the LE transport.
int bt_conn_disconnect (struct bt_conn *conn, uint8_t reason)
 Disconnect from a remote device or cancel pending connection.
int bt_conn_le_create (const bt_addr_le_t *peer, const struct bt_conn_le_create_param *create_param, const struct bt_le_conn_param *conn_param, struct bt_conn **conn)
 Initiate an LE connection to a remote device.
int bt_conn_le_create_synced (const struct bt_le_ext_adv *adv, const struct bt_conn_le_create_synced_param *synced_param, const struct bt_le_conn_param *conn_param, struct bt_conn **conn)
 Create a connection to a synced device.
int bt_conn_le_create_auto (const struct bt_conn_le_create_param *create_param, const struct bt_le_conn_param *conn_param)
 Automatically connect to remote devices in the filter accept list.
int bt_conn_create_auto_stop (void)
 Stop automatic connect creation.
int bt_conn_set_security (struct bt_conn *conn, bt_security_t sec)
 Set security level for a connection.
bt_security_t bt_conn_get_security (const struct bt_conn *conn)
 Get security level for a connection.
uint8_t bt_conn_enc_key_size (const struct bt_conn *conn)
 Get encryption key size.
int bt_conn_cb_register (struct bt_conn_cb *cb)
 Register connection callbacks.
int bt_conn_cb_unregister (struct bt_conn_cb *cb)
 Unregister connection callbacks.
static const char * bt_security_err_to_str (enum bt_security_err err)
 Converts a security error to string.
void bt_set_bondable (bool enable)
 Enable/disable bonding.
bool bt_get_bondable (void)
 Get bonding flag.
int bt_conn_set_bondable (struct bt_conn *conn, bool enable)
 Set/clear the bonding flag for a given connection.
void bt_le_oob_set_sc_flag (bool enable)
 Allow/disallow remote LE SC OOB data to be used for pairing.
void bt_le_oob_set_legacy_flag (bool enable)
 Allow/disallow remote legacy OOB data to be used for pairing.
int bt_le_oob_set_legacy_tk (struct bt_conn *conn, const uint8_t *tk)
 Set OOB Temporary Key to be used for pairing.
int bt_le_oob_set_sc_data (struct bt_conn *conn, const struct bt_le_oob_sc_data *oobd_local, const struct bt_le_oob_sc_data *oobd_remote)
 Set OOB data during LE Secure Connections (SC) pairing procedure.
int bt_le_oob_get_sc_data (struct bt_conn *conn, const struct bt_le_oob_sc_data **oobd_local, const struct bt_le_oob_sc_data **oobd_remote)
 Get OOB data used for LE Secure Connections (SC) pairing procedure.

Variables

uint16_t bt_le_conn_param::interval_min
uint16_t bt_le_conn_param::interval_max
uint16_t bt_le_conn_param::latency
uint16_t bt_le_conn_param::timeout
uint8_t bt_conn_le_phy_info::tx_phy
uint8_t bt_conn_le_phy_info::rx_phy
 Connection transmit PHY.
uint16_t bt_conn_le_phy_param::options
 Connection PHY options.
uint8_t bt_conn_le_phy_param::pref_tx_phy
 Bitmask of preferred transmit PHYs.
uint8_t bt_conn_le_phy_param::pref_rx_phy
 Bitmask of preferred receive PHYs.
uint16_t bt_conn_le_data_len_info::tx_max_len
 Maximum Link Layer transmission payload size in bytes.
uint16_t bt_conn_le_data_len_info::tx_max_time
 Maximum Link Layer transmission payload time in us.
uint16_t bt_conn_le_data_len_info::rx_max_len
 Maximum Link Layer reception payload size in bytes.
uint16_t bt_conn_le_data_len_info::rx_max_time
 Maximum Link Layer reception payload time in us.
uint16_t bt_conn_le_data_len_param::tx_max_len
 Maximum Link Layer transmission payload size in bytes.
uint16_t bt_conn_le_data_len_param::tx_max_time
 Maximum Link Layer transmission payload time in us.
uint16_t bt_conn_le_subrate_param::subrate_min
 Minimum subrate factor.
uint16_t bt_conn_le_subrate_param::subrate_max
 Maximum subrate factor.
uint16_t bt_conn_le_subrate_param::max_latency
 Maximum Peripheral latency in units of subrated connection intervals.
uint16_t bt_conn_le_subrate_param::continuation_number
 Minimum number of underlying connection events to remain active after a packet containing a Link Layer PDU with a non-zero Length field is sent or received.
uint16_t bt_conn_le_subrate_param::supervision_timeout
 Connection Supervision timeout (N * 10 ms).
uint16_t bt_conn_le_subrating_info::factor
 Connection subrate factor.
uint16_t bt_conn_le_subrating_info::continuation_number
 Number of underlying connection events to remain active after a packet containing a Link Layer PDU with a non-zero Length field is sent or received.
uint8_t bt_conn_le_subrate_changed::status
 HCI Status from LE Subrate Changed event.
uint16_t bt_conn_le_subrate_changed::factor
 Connection subrate factor.
uint16_t bt_conn_le_subrate_changed::continuation_number
 Number of underlying connection events to remain active after a packet containing a Link Layer PDU with a non-zero Length field is sent or received.
uint16_t bt_conn_le_subrate_changed::peripheral_latency
 Peripheral latency in units of subrated connection intervals.
uint16_t bt_conn_le_subrate_changed::supervision_timeout
 Connection Supervision timeout (N * 10 ms).
uint16_t bt_conn_le_min_conn_interval_group::min_125us
 Lower bound of group interval range.
uint16_t bt_conn_le_min_conn_interval_group::max_125us
 Upper bound of group interval range.
uint16_t bt_conn_le_min_conn_interval_group::stride_125us
 Increment between consecutive supported intervals.
uint16_t bt_conn_le_min_conn_interval_info::min_supported_conn_interval_us
 Minimum supported connection interval.
uint8_t bt_conn_le_min_conn_interval_info::num_groups
 Number of interval groups.
struct bt_conn_le_min_conn_interval_group bt_conn_le_min_conn_interval_info::groups [41]
 Array of supported connection interval groups.
uint16_t bt_conn_le_conn_rate_param::interval_min_125us
 Minimum connection interval.
uint16_t bt_conn_le_conn_rate_param::interval_max_125us
 Maximum connection interval.
uint16_t bt_conn_le_conn_rate_param::subrate_min
 Minimum subrate factor.
uint16_t bt_conn_le_conn_rate_param::subrate_max
 Maximum subrate factor.
uint16_t bt_conn_le_conn_rate_param::max_latency
 Maximum Peripheral latency.
uint16_t bt_conn_le_conn_rate_param::continuation_number
 Minimum number of underlying connection events to remain active after a packet containing a Link Layer PDU with a non-zero Length field is sent or received.
uint16_t bt_conn_le_conn_rate_param::supervision_timeout_10ms
 Connection Supervision timeout.
uint16_t bt_conn_le_conn_rate_param::min_ce_len_125us
 Minimum length of connection event.
uint16_t bt_conn_le_conn_rate_param::max_ce_len_125us
 Maximum length of connection event.
uint32_t bt_conn_le_conn_rate_changed::interval_us
 Connection interval.
uint16_t bt_conn_le_conn_rate_changed::subrate_factor
 Connection subrate factor.
uint16_t bt_conn_le_conn_rate_changed::peripheral_latency
 Peripheral latency.
uint16_t bt_conn_le_conn_rate_changed::continuation_number
 Number of underlying connection events to remain active after a packet containing a Link Layer PDU with a non-zero Length field is sent or received.
uint16_t bt_conn_le_conn_rate_changed::supervision_timeout_10ms
 Connection Supervision timeout.
uint8_t bt_conn_le_read_all_remote_feat_complete::status
 HCI Status from LE Read All Remote Features Complete event.
uint8_t bt_conn_le_read_all_remote_feat_complete::max_remote_page
 Number of pages supported by remote device.
uint8_t bt_conn_le_read_all_remote_feat_complete::max_valid_page
 Number of pages fetched from remote device.
const uint8_t * bt_conn_le_read_all_remote_feat_complete::features
 Pointer to array of size 248, with feature bits of remote supported features.
uint8_t bt_conn_le_frame_space_update_param::phys
 Phy mask of the PHYs to be updated.
uint16_t bt_conn_le_frame_space_update_param::spacing_types
 Spacing types mask of the spacing types to be updated.
uint16_t bt_conn_le_frame_space_update_param::frame_space_min
 Minimum frame space in microseconds.
uint16_t bt_conn_le_frame_space_update_param::frame_space_max
 Maximum frame space in microseconds.
uint8_t bt_conn_le_frame_space_updated::status
 HCI Status from LE Frame Space Update Complete event.
enum bt_conn_le_frame_space_update_initiator bt_conn_le_frame_space_updated::initiator
 Initiator of the frame space update.
uint16_t bt_conn_le_frame_space_updated::frame_space
 Updated frame space in microseconds.
uint8_t bt_conn_le_frame_space_updated::phys
 Phy mask of the PHYs updated.
uint16_t bt_conn_le_frame_space_updated::spacing_types
 Spacing types mask of the spacing types updated.
uint8_t bt_conn_le_cs_capabilities::num_config_supported
 Number of CS configurations.
uint16_t bt_conn_le_cs_capabilities::max_consecutive_procedures_supported
 Maximum number of consecutive CS procedures.
uint8_t bt_conn_le_cs_capabilities::num_antennas_supported
 Number of antennas.
uint8_t bt_conn_le_cs_capabilities::max_antenna_paths_supported
 Maximum number of antenna paths.
bool bt_conn_le_cs_capabilities::initiator_supported
 Initiator role.
bool bt_conn_le_cs_capabilities::reflector_supported
 Reflector role.
bool bt_conn_le_cs_capabilities::mode_3_supported
 Mode-3.
enum bt_conn_le_cs_capability_rtt_aa_only bt_conn_le_cs_capabilities::rtt_aa_only_precision
 RTT AA-Only.
enum bt_conn_le_cs_capability_rtt_sounding bt_conn_le_cs_capabilities::rtt_sounding_precision
 RTT Sounding.
enum bt_conn_le_cs_capability_rtt_random_payload bt_conn_le_cs_capabilities::rtt_random_payload_precision
 RTT Random Payload.
uint8_t bt_conn_le_cs_capabilities::rtt_aa_only_n
 Number of CS steps needed to achieve the accuracy requirements for RTT AA Only.
uint8_t bt_conn_le_cs_capabilities::rtt_sounding_n
 Number of CS steps needed to achieve the accuracy requirements for RTT Sounding.
uint8_t bt_conn_le_cs_capabilities::rtt_random_payload_n
 Number of CS steps needed to achieve the accuracy requirements for RTT Random Payload.
bool bt_conn_le_cs_capabilities::phase_based_nadm_sounding_supported
 Phase-based normalized attack detector metric when a CS_SYNC with sounding sequence is received.
bool bt_conn_le_cs_capabilities::phase_based_nadm_random_supported
 Phase-based normalized attack detector metric when a CS_SYNC with random sequence is received.
bool bt_conn_le_cs_capabilities::cs_sync_2m_phy_supported
 CS_SYNC LE 2M PHY.
bool bt_conn_le_cs_capabilities::cs_sync_2m_2bt_phy_supported
 CS_SYNC LE 2M 2BT PHY.
bool bt_conn_le_cs_capabilities::cs_without_fae_supported
 Subfeature: CS with no Frequency Actuation Error.
bool bt_conn_le_cs_capabilities::chsel_alg_3c_supported
 Subfeature: Channel Selection Algorithm #3c.
bool bt_conn_le_cs_capabilities::pbr_from_rtt_sounding_seq_supported
 Subfeature: Phase-based Ranging from RTT sounding sequence.
bool bt_conn_le_cs_capabilities::cs_ipt_reflector
 Subfeature: IPT in the CS reflector.
uint16_t bt_conn_le_cs_capabilities::t_ip1_times_supported
 Optional T_IP1 time durations during CS steps.
uint16_t bt_conn_le_cs_capabilities::t_ip2_times_supported
 Optional T_IP2 time durations during CS steps.
uint16_t bt_conn_le_cs_capabilities::t_fcs_times_supported
 Optional T_FCS time durations during CS steps.
uint16_t bt_conn_le_cs_capabilities::t_pm_times_supported
 Optional T_PM time durations during CS steps.
uint8_t bt_conn_le_cs_capabilities::t_sw_time
 Time in microseconds for the antenna switch period of the CS tones.
uint8_t bt_conn_le_cs_capabilities::tx_snr_capability
 Supported SNR levels used in RTT packets.
uint16_t bt_conn_le_cs_capabilities::t_ip2_ipt_times_supported
 Supported T_IP2_IPT time durations during CS steps.
uint8_t bt_conn_le_cs_capabilities::t_sw_ipt_time_supported
 Supported time in microseconds for the antenna switch period of the CS tones during IPT.
int8_t * bt_conn_le_cs_fae_table::remote_fae_table
uint8_t bt_conn_le_cs_config::id
 CS configuration ID.
enum bt_conn_le_cs_mode bt_conn_le_cs_config::mode
 CS main and sub mode.
uint8_t bt_conn_le_cs_config::min_main_mode_steps
 Minimum number of CS main mode steps to be executed before a submode step is executed.
uint8_t bt_conn_le_cs_config::max_main_mode_steps
 Maximum number of CS main mode steps to be executed before a submode step is executed.
uint8_t bt_conn_le_cs_config::main_mode_repetition
 Number of main mode steps taken from the end of the last CS subevent to be repeated at the beginning of the current CS subevent directly after the last mode-0 step of that event.
uint8_t bt_conn_le_cs_config::mode_0_steps
 Number of CS mode-0 steps to be included at the beginning of each CS subevent.
enum bt_conn_le_cs_role bt_conn_le_cs_config::role
 CS role.
enum bt_conn_le_cs_rtt_type bt_conn_le_cs_config::rtt_type
 RTT type.
enum bt_conn_le_cs_sync_phy bt_conn_le_cs_config::cs_sync_phy
 CS Sync PHY.
uint8_t bt_conn_le_cs_config::channel_map_repetition
 The number of times the Channel_Map field will be cycled through for non-mode-0 steps within a CS procedure.
enum bt_conn_le_cs_chsel_type bt_conn_le_cs_config::channel_selection_type
 Channel selection type.
enum bt_conn_le_cs_ch3c_shape bt_conn_le_cs_config::ch3c_shape
 User-specified channel sequence shape.
uint8_t bt_conn_le_cs_config::ch3c_jump
 Number of channels skipped in each rising and falling sequence.
uint8_t bt_conn_le_cs_config::cs_enhancements_1
 CS enhancements 1 Bit 0 - IPT is enabled in the CS reflector.
uint8_t bt_conn_le_cs_config::t_ip1_time_us
 Interlude time in microseconds between the RTT packets.
uint8_t bt_conn_le_cs_config::t_ip2_time_us
 Interlude time in microseconds between the CS tones.
uint8_t bt_conn_le_cs_config::t_fcs_time_us
 Time in microseconds for frequency changes.
uint8_t bt_conn_le_cs_config::t_pm_time_us
 Time in microseconds for the phase measurement period of the CS tones.
uint8_t bt_conn_le_cs_config::channel_map [10]
 Channel map used for CS procedure Channels n = 0, 1, 23, 24, 25, 77, and 78 are not allowed and shall be set to zero.
uint8_t   bt_conn_le_cs_subevent_result::config_id 
 CS configuration identifier. More...
uint16_t   bt_conn_le_cs_subevent_result::start_acl_conn_event 
 Starting ACL connection event counter. More...
uint16_t   bt_conn_le_cs_subevent_result::procedure_counter 
 CS procedure count associated with these results. More...
uint16_t   bt_conn_le_cs_subevent_result::frequency_compensation 
 Frequency compensation value in units of 0.01 ppm. More...
int8_t   bt_conn_le_cs_subevent_result::reference_power_level 
 Reference power level in dBm. More...
enum bt_conn_le_cs_procedure_done_status   bt_conn_le_cs_subevent_result::procedure_done_status 
 Procedure status. More...
enum bt_conn_le_cs_subevent_done_status   bt_conn_le_cs_subevent_result::subevent_done_status 
 Subevent status. More...
enum bt_conn_le_cs_procedure_abort_reason   bt_conn_le_cs_subevent_result::procedure_abort_reason 
 Abort reason. More...
enum bt_conn_le_cs_subevent_abort_reason   bt_conn_le_cs_subevent_result::subevent_abort_reason 
 Abort reason. More...
uint8_t   bt_conn_le_cs_subevent_result::num_antenna_paths 
 Number of antenna paths used during the phase measurement stage. More...
uint8_t   bt_conn_le_cs_subevent_result::num_steps_reported 
 Number of CS steps in the subevent. More...
uint8_t   bt_conn_le_cs_subevent_result::abort_step 
 Step number, on which the subevent was aborted if subevent_done_status is BT_CONN_LE_CS_SUBEVENT_COMPLETE then abort_step will be unused and set to 255. More...
struct { 
   uint8_t   bt_conn_le_cs_subevent_result::config_id 
 CS configuration identifier. More...
   uint16_t   bt_conn_le_cs_subevent_result::start_acl_conn_event 
 Starting ACL connection event counter. More...
   uint16_t   bt_conn_le_cs_subevent_result::procedure_counter 
 CS procedure count associated with these results. More...
   uint16_t   bt_conn_le_cs_subevent_result::frequency_compensation 
 Frequency compensation value in units of 0.01 ppm. More...
   int8_t   bt_conn_le_cs_subevent_result::reference_power_level 
 Reference power level in dBm. More...
   enum bt_conn_le_cs_procedure_done_status   bt_conn_le_cs_subevent_result::procedure_done_status 
 Procedure status. More...
   enum bt_conn_le_cs_subevent_done_status   bt_conn_le_cs_subevent_result::subevent_done_status 
 Subevent status. More...
   enum bt_conn_le_cs_procedure_abort_reason   bt_conn_le_cs_subevent_result::procedure_abort_reason 
 Abort reason. More...
   enum bt_conn_le_cs_subevent_abort_reason   bt_conn_le_cs_subevent_result::subevent_abort_reason 
 Abort reason. More...
   uint8_t   bt_conn_le_cs_subevent_result::num_antenna_paths 
 Number of antenna paths used during the phase measurement stage. More...
   uint8_t   bt_conn_le_cs_subevent_result::num_steps_reported 
 Number of CS steps in the subevent. More...
   uint8_t   bt_conn_le_cs_subevent_result::abort_step 
 Step number, on which the subevent was aborted if subevent_done_status is BT_CONN_LE_CS_SUBEVENT_COMPLETE then abort_step will be unused and set to 255. More...
} bt_conn_le_cs_subevent_result::header
struct net_buf_simple * bt_conn_le_cs_subevent_result::step_data_buf
 Pointer to buffer containing step data.
const bt_addr_le_t * bt_conn_le_info::src
 Source (Local) Identity Address.
const bt_addr_le_t * bt_conn_le_info::dst
 Destination (Remote) Identity Address or remote Resolvable Private Address (RPA) before identity has been resolved.
const bt_addr_le_t * bt_conn_le_info::local
 Local device address used during connection setup.
const bt_addr_le_t * bt_conn_le_info::remote
 Remote device address used during connection setup.
uint32_t bt_conn_le_info::interval_us
 Connection interval in microseconds.
uint16_t   bt_conn_le_info::interval 
 Connection interval in units of 1.25 ms. More...
union { 
   uint16_t   bt_conn_le_info::interval 
 Connection interval in units of 1.25 ms. More...
}; 
uint16_t bt_conn_le_info::latency
 Connection peripheral latency.
uint16_t bt_conn_le_info::timeout
 Connection supervision timeout.
const struct bt_conn_le_phy_info * bt_conn_le_info::phy
 Connection PHY info.
const struct bt_conn_le_data_len_info * bt_conn_le_info::data_len
 Connection maximum single fragment parameters.
const struct bt_conn_le_subrating_info * bt_conn_le_info::subrate
 Connection subrating parameters.
const bt_addr_t * bt_conn_br_info::dst
 Destination (Remote) BR/EDR address.
uint8_t bt_conn_sco_info::link_type
 SCO link type.
uint8_t bt_conn_sco_info::air_mode
 SCO air mode (codec type).
bt_security_t bt_security_info::level
 Security Level.
uint8_t bt_security_info::enc_key_size
 Encryption Key Size.
enum bt_security_flag bt_security_info::flags
 Flags.
enum bt_conn_type bt_conn_info::type
 Connection Type.
uint8_t bt_conn_info::role
 Connection Role.
uint8_t bt_conn_info::id
 Which local identity the connection was created with.
struct bt_conn_le_info   bt_conn_info::le 
 LE Connection specific Info. More...
struct bt_conn_br_info   bt_conn_info::br 
 BR/EDR Connection specific Info. More...
struct bt_conn_sco_info   bt_conn_info::sco 
 SCO Connection specific Info. More...
union { 
   struct bt_conn_le_info   bt_conn_info::le 
 LE Connection specific Info. More...
   struct bt_conn_br_info   bt_conn_info::br 
 BR/EDR Connection specific Info. More...
   struct bt_conn_sco_info   bt_conn_info::sco 
 SCO Connection specific Info. More...
}; 
 Connection Type specific Info.
enum bt_conn_state bt_conn_info::state
 Connection state.
struct bt_security_info bt_conn_info::security
 Security specific info.
const uint8_t * bt_conn_le_remote_info::features
 Remote LE feature set (bitmask).
const uint8_t * bt_conn_br_remote_info::features
 Remote feature set (pages of bitmasks).
uint8_t bt_conn_br_remote_info::num_pages
 Number of pages in the remote feature set.
uint8_t bt_conn_remote_info::type
 Connection Type.
uint8_t bt_conn_remote_info::version
 Remote Link Layer version.
uint16_t bt_conn_remote_info::manufacturer
 Remote manufacturer identifier.
uint16_t bt_conn_remote_info::subversion
 Per-manufacturer unique revision.
struct bt_conn_le_remote_info   bt_conn_remote_info::le 
 LE connection remote info. More...
struct bt_conn_br_remote_info   bt_conn_remote_info::br 
 BR/EDR connection remote info. More...
union { 
   struct bt_conn_le_remote_info   bt_conn_remote_info::le 
 LE connection remote info. More...
   struct bt_conn_br_remote_info   bt_conn_remote_info::br 
 BR/EDR connection remote info. More...
}; 
uint8_t bt_conn_le_tx_power::phy
 Input: 1M, 2M, Coded S2 or Coded S8.
int8_t bt_conn_le_tx_power::current_level
 Output: current transmit power level in dBm.
int8_t bt_conn_le_tx_power::max_level
 Output: maximum transmit power level in dBm.
uint8_t bt_conn_le_tx_power_report::reason
 Reason for Transmit power reporting, as documented in Core Spec.
enum bt_conn_le_tx_power_phy bt_conn_le_tx_power_report::phy
 Phy of Transmit power reporting.
int8_t bt_conn_le_tx_power_report::tx_power_level
 Transmit power level.
uint8_t bt_conn_le_tx_power_report::tx_power_level_flag
 Bit 0: Transmit power level is at minimum level.
int8_t bt_conn_le_tx_power_report::delta
 Change in transmit power level.
enum bt_conn_le_path_loss_zone bt_conn_le_path_loss_threshold_report::zone
 Path Loss zone as documented in Core Spec.
uint8_t bt_conn_le_path_loss_threshold_report::path_loss
 Current path loss (dB).
uint8_t bt_conn_le_path_loss_reporting_param::high_threshold
 High threshold for the path loss (dB).
uint8_t bt_conn_le_path_loss_reporting_param::high_hysteresis
 Hysteresis value for the high threshold (dB).
uint8_t bt_conn_le_path_loss_reporting_param::low_threshold
 Low threshold for the path loss (dB).
uint8_t bt_conn_le_path_loss_reporting_param::low_hysteresis
 Hysteresis value for the low threshold (dB).
uint16_t bt_conn_le_path_loss_reporting_param::min_time_spent
 Minimum time in number of connection events to be observed once the path loss crosses the threshold before an event is generated.
uint32_t bt_conn_le_create_param::options
 Bit-field of create connection options.
uint16_t bt_conn_le_create_param::interval
 Scan interval (N * 0.625 ms).
uint16_t bt_conn_le_create_param::window
 Scan window (N * 0.625 ms).
uint16_t bt_conn_le_create_param::interval_coded
 Scan interval LE Coded PHY (N * 0.625 MS).
uint16_t bt_conn_le_create_param::window_coded
 Scan window LE Coded PHY (N * 0.625 MS).
uint16_t bt_conn_le_create_param::timeout
 Connection initiation timeout (N * 10 MS).
const bt_addr_le_t * bt_conn_le_create_synced_param::peer
 Remote address.
uint8_t bt_conn_le_create_synced_param::subevent
 The subevent where the connection will be initiated.
uint8_t bt_conn_le_cs_procedure_enable_complete::config_id
enum bt_conn_le_cs_procedure_enable_state bt_conn_le_cs_procedure_enable_complete::state
enum bt_conn_le_cs_tone_antenna_config_selection bt_conn_le_cs_procedure_enable_complete::tone_antenna_config_selection
int8_t bt_conn_le_cs_procedure_enable_complete::selected_tx_power
uint32_t bt_conn_le_cs_procedure_enable_complete::subevent_len
uint8_t bt_conn_le_cs_procedure_enable_complete::subevents_per_event
uint16_t bt_conn_le_cs_procedure_enable_complete::subevent_interval
uint16_t bt_conn_le_cs_procedure_enable_complete::event_interval
uint16_t bt_conn_le_cs_procedure_enable_complete::procedure_interval
uint16_t bt_conn_le_cs_procedure_enable_complete::procedure_count
uint16_t bt_conn_le_cs_procedure_enable_complete::max_procedure_len
void(* bt_conn_br_cb::mode_changed )(struct bt_conn *conn, uint8_t mode, uint16_t interval)
 A BR/EDR connection mode has changed.
void(* bt_conn_br_cb::role_changed )(struct bt_conn *conn, uint8_t status)
 A BR/EDR connection role has changed.
void(* bt_conn_br_cb::packet_type_changed )(struct bt_conn *conn, uint8_t status, uint16_t packet_type)
 The packet type of the BR/EDR connection has changed.
void(* bt_conn_cb::connected )(struct bt_conn *conn, uint8_t err)
 A new connection has been established.
void(* bt_conn_cb::disconnected )(struct bt_conn *conn, uint8_t reason)
 A connection has been disconnected.
void(* bt_conn_cb::recycled )(void)
 A connection object has been returned to the pool.
bool(* bt_conn_cb::le_param_req )(struct bt_conn *conn, struct bt_le_conn_param *param)
 LE connection parameter update request.
void(* bt_conn_cb::le_param_updated )(struct bt_conn *conn, uint16_t interval, uint16_t latency, uint16_t timeout)
 The parameters for an LE connection have been updated.
void(* bt_conn_cb::le_param_update_rejected )(struct bt_conn *conn, uint8_t hci_err)
 LE connection parameter update was rejected by the peer.
void(* bt_conn_cb::identity_resolved )(struct bt_conn *conn, const bt_addr_le_t *rpa, const bt_addr_le_t *identity)
 Remote Identity Address has been resolved.
void(* bt_conn_cb::security_changed )(struct bt_conn *conn, bt_security_t level, enum bt_security_err err)
 The security level of a connection has changed.
void(* bt_conn_cb::remote_info_available )(struct bt_conn *conn, struct bt_conn_remote_info *remote_info)
 Remote information procedures has completed.
struct bt_conn_br_cb bt_conn_cb::br
 BR/EDR specific callbacks.
void(* bt_conn_cb::le_phy_updated )(struct bt_conn *conn, struct bt_conn_le_phy_info *param)
 The PHY of the connection has changed.
void(* bt_conn_cb::le_data_len_updated )(struct bt_conn *conn, struct bt_conn_le_data_len_info *info)
 The data length parameters of the connection has changed.
void(* bt_conn_cb::cte_report_cb )(struct bt_conn *conn, const struct bt_df_conn_iq_samples_report *iq_report)
 Callback for IQ samples report collected when sampling CTE received by data channel PDU.
void(* bt_conn_cb::tx_power_report )(struct bt_conn *conn, const struct bt_conn_le_tx_power_report *report)
 LE Read Remote Transmit Power Level procedure has completed or LE Transmit Power Reporting event.
void(* bt_conn_cb::path_loss_threshold_report )(struct bt_conn *conn, const struct bt_conn_le_path_loss_threshold_report *report)
 LE Path Loss Threshold event.
void(* bt_conn_cb::subrate_changed )(struct bt_conn *conn, const struct bt_conn_le_subrate_changed *params)
 LE Subrate Changed event.
void(* bt_conn_cb::conn_rate_changed )(struct bt_conn *conn, uint8_t status, const struct bt_conn_le_conn_rate_changed *params)
 LE Connection Rate Changed event.
void(* bt_conn_cb::read_all_remote_feat_complete )(struct bt_conn *conn, const struct bt_conn_le_read_all_remote_feat_complete *params)
 Read all remote features complete event.
void(* bt_conn_cb::frame_space_updated )(struct bt_conn *conn, const struct bt_conn_le_frame_space_updated *params)
 Frame Space Update Complete event.
void(* bt_conn_cb::le_cs_read_remote_capabilities_complete )(struct bt_conn *conn, uint8_t status, struct bt_conn_le_cs_capabilities *params)
 LE CS Read Remote Supported Capabilities Complete event.
void(* bt_conn_cb::le_cs_read_remote_fae_table_complete )(struct bt_conn *conn, uint8_t status, struct bt_conn_le_cs_fae_table *params)
 LE CS Read Remote FAE Table Complete event.
void(* bt_conn_cb::le_cs_config_complete )(struct bt_conn *conn, uint8_t status, struct bt_conn_le_cs_config *config)
 LE CS Config created.
void(* bt_conn_cb::le_cs_config_removed )(struct bt_conn *conn, uint8_t config_id)
 LE CS Config removed.
void(* bt_conn_cb::le_cs_subevent_data_available )(struct bt_conn *conn, struct bt_conn_le_cs_subevent_result *result)
 Subevent Results from a CS procedure are available.
void(* bt_conn_cb::le_cs_security_enable_complete )(struct bt_conn *conn, uint8_t status)
 LE CS Security Enabled.
void(* bt_conn_cb::le_cs_procedure_enable_complete )(struct bt_conn *conn, uint8_t status, struct bt_conn_le_cs_procedure_enable_complete *params)
 LE CS Procedure Enabled.
enum bt_conn_oob_info:: { ... }  bt_conn_oob_info::type
 Type of OOB pairing method.
enum bt_conn_oob_info:: { ... }    bt_conn_oob_info::oob_config 
 OOB data configuration. More...
struct { 
enum  { BT_CONN_OOB_LOCAL_ONLY , BT_CONN_OOB_REMOTE_ONLY , BT_CONN_OOB_BOTH_PEERS , BT_CONN_OOB_NO_DATA }
 OOB data configuration. More...
      bt_conn_oob_info::BT_CONN_OOB_LOCAL_ONLY 
 Local OOB data requested. More...
      bt_conn_oob_info::BT_CONN_OOB_REMOTE_ONLY 
 Remote OOB data requested. More...
      bt_conn_oob_info::BT_CONN_OOB_BOTH_PEERS 
 Both local and remote OOB data requested. More...
      bt_conn_oob_info::BT_CONN_OOB_NO_DATA 
 No OOB data requested. More...
   enum bt_conn_oob_info:: { ... }    bt_conn_oob_info::oob_config 
 OOB data configuration. More...
}   bt_conn_oob_info::lesc
 LE Secure Connections OOB pairing parameters. More...
union { 
   struct { 
enum  { BT_CONN_OOB_LOCAL_ONLY , BT_CONN_OOB_REMOTE_ONLY , BT_CONN_OOB_BOTH_PEERS , BT_CONN_OOB_NO_DATA }
 OOB data configuration. More...
         bt_conn_oob_info::BT_CONN_OOB_LOCAL_ONLY 
 Local OOB data requested. More...
         bt_conn_oob_info::BT_CONN_OOB_REMOTE_ONLY 
 Remote OOB data requested. More...
         bt_conn_oob_info::BT_CONN_OOB_BOTH_PEERS 
 Both local and remote OOB data requested. More...
         bt_conn_oob_info::BT_CONN_OOB_NO_DATA 
 No OOB data requested. More...
      enum bt_conn_oob_info:: { ... }    bt_conn_oob_info::oob_config 
 OOB data configuration. More...
   }   bt_conn_oob_info::lesc
 LE Secure Connections OOB pairing parameters. More...
}; 
uint8_t bt_conn_pairing_feat::io_capability
 IO Capability, Core Spec.
uint8_t bt_conn_pairing_feat::oob_data_flag
 OOB data flag, Core Spec.
uint8_t bt_conn_pairing_feat::auth_req
 AuthReq, Core Spec.
uint8_t bt_conn_pairing_feat::max_enc_key_size
 Maximum Encryption Key Size, Core Spec.
uint8_t bt_conn_pairing_feat::init_key_dist
 Initiator Key Distribution/Generation, Core Spec.
uint8_t bt_conn_pairing_feat::resp_key_dist
 Responder Key Distribution/Generation, Core Spec.
enum bt_security_err(* bt_conn_auth_cb::pairing_accept )(struct bt_conn *conn, const struct bt_conn_pairing_feat *const feat)
 Query to proceed incoming pairing or not.
void(* bt_conn_auth_cb::passkey_display )(struct bt_conn *conn, unsigned int passkey)
 Display a passkey to the user.
void(* bt_conn_auth_cb::passkey_display_keypress )(struct bt_conn *conn, enum bt_conn_auth_keypress type)
 Receive Passkey Keypress Notification during pairing.
void(* bt_conn_auth_cb::passkey_entry )(struct bt_conn *conn)
 Request the user to enter a passkey.
void(* bt_conn_auth_cb::passkey_confirm )(struct bt_conn *conn, unsigned int passkey)
 Request the user to confirm a passkey.
void(* bt_conn_auth_cb::oob_data_request )(struct bt_conn *conn, struct bt_conn_oob_info *info)
 Request the user to provide Out of Band (OOB) data.
void(* bt_conn_auth_cb::cancel )(struct bt_conn *conn)
 Cancel the ongoing user request.
void(* bt_conn_auth_cb::pairing_confirm )(struct bt_conn *conn)
 Request confirmation for an incoming pairing.
void(* bt_conn_auth_cb::pincode_entry )(struct bt_conn *conn, bool highsec)
 Request the user to enter a passkey.
uint32_t(* bt_conn_auth_cb::app_passkey )(struct bt_conn *conn)
 Allow the application to provide a passkey for pairing.

Detailed Description

Connection management.

Since
1.0
Version
1.0.1

Macro Definition Documentation

◆ BT_CONN_CB_DEFINE

#define BT_CONN_CB_DEFINE ( _name)

#include <conn.h>

Value:
_CONCAT(bt_conn_cb_, \
_name))
#define STRUCT_SECTION_ITERABLE(struct_type, varname)
Defines a new element for an iterable section.
Definition iterable_sections.h:244
Connection callback structure.
Definition conn.h:2243

Register a callback structure for connection events.

Parameters
_nameName of callback structure.

◆ bt_conn_dst_str

#define bt_conn_dst_str ( _conn)

#include <conn.h>

Value:
bt_conn_dst_tmp_str(_conn).str

Get a string pointer to a connection destination (peer) address.

Parameters
_connPointer to the connection object.
Returns
A string pointer which is only valid until the end of the full expression. In practice this means that this is primarily useful as an input parameter to printk/printf or logging calls.

◆ BT_CONN_INTERVAL_TO_MS

#define BT_CONN_INTERVAL_TO_MS ( interval)

#include <conn.h>

Value:
((interval) * 5U / 4U)

Convert connection interval to milliseconds.

Multiply by 1.25 to get milliseconds.

Note that this may be inaccurate, as something like 7.5 ms cannot be accurately presented with integers.

◆ BT_CONN_INTERVAL_TO_US

#define BT_CONN_INTERVAL_TO_US ( interval)

#include <conn.h>

Value:
((interval) * 1250U)

Convert connection interval to microseconds.

Multiply by 1250 to get microseconds.

◆ BT_CONN_LE_CREATE_CONN

#define BT_CONN_LE_CREATE_CONN

#include <conn.h>

Value:
#define BT_CONN_LE_CREATE_PARAM(_options, _interval, _window)
Helper to declare create connection parameters inline.
Definition conn.h:1882
@ BT_CONN_LE_OPT_NONE
Convenience value when no options are specified.
Definition conn.h:1796
#define BT_GAP_SCAN_FAST_INTERVAL
Recommended maximum scan interval for fast scanning.
Definition gap.h:46

Default LE create connection parameters.

Scan continuously by setting scan interval equal to scan window.

◆ BT_CONN_LE_CREATE_CONN_AUTO

#define BT_CONN_LE_CREATE_CONN_AUTO

#include <conn.h>

Value:
#define BT_GAP_SCAN_FAST_WINDOW
Recommended scan window for fast scanning.
Definition gap.h:48

Default LE create connection using filter accept list parameters.

Scan window: 30 ms. Scan interval: 60 ms.

◆ BT_CONN_LE_CREATE_PARAM

#define BT_CONN_LE_CREATE_PARAM ( _options,
_interval,
_window )

#include <conn.h>

Value:
((struct bt_conn_le_create_param[]) { \
BT_CONN_LE_CREATE_PARAM_INIT(_options, _interval, _window) \
})
Definition conn.h:1813

Helper to declare create connection parameters inline.

Parameters
_optionsCreate connection options.
_intervalCreate connection scan interval (N * 0.625 ms).
_windowCreate connection scan window (N * 0.625 ms).

◆ BT_CONN_LE_CREATE_PARAM_INIT

#define BT_CONN_LE_CREATE_PARAM_INIT ( _options,
_interval,
_window )

#include <conn.h>

Value:
{ \
.options = (_options), \
.interval = (_interval), \
.window = (_window), \
.interval_coded = 0, \
.window_coded = 0, \
.timeout = 0, \
}

Initialize create connection parameters.

Parameters
_optionsCreate connection options.
_intervalCreate connection scan interval (N * 0.625 ms).
_windowCreate connection scan window (N * 0.625 ms).

◆ BT_CONN_LE_CS_MODE_MAIN_MODE_PART

#define BT_CONN_LE_CS_MODE_MAIN_MODE_PART ( x)

#include <conn.h>

Value:
((x) & 0x3)

Extract main mode part from bt_conn_le_cs_mode.

Parameters
xbt_conn_le_cs_mode value
Return values
1Matches BT_HCI_OP_LE_CS_MAIN_MODE_1 (0x01)
2Matches BT_HCI_OP_LE_CS_MAIN_MODE_2 (0x02)
3Matches BT_HCI_OP_LE_CS_MAIN_MODE_3 (0x03)
Note
Returned values match the HCI main mode values.

◆ BT_CONN_LE_CS_MODE_SUB_MODE_PART

#define BT_CONN_LE_CS_MODE_SUB_MODE_PART ( x)

#include <conn.h>

Value:
(((x) >> 4) & 0x3)

Extract sub-mode part from bt_conn_le_cs_mode.

Parameters
xbt_conn_le_cs_mode value
Return values
0Internal encoding for BT_HCI_OP_LE_CS_SUB_MODE_UNUSED (0xFF)
1Matches BT_HCI_OP_LE_CS_SUB_MODE_1 (0x01)
2Matches BT_HCI_OP_LE_CS_SUB_MODE_2 (0x02)
3Matches BT_HCI_OP_LE_CS_SUB_MODE_3 (0x03)
Note
The value 0 encodes HCI 0xFF. This allows bt_conn_le_cs_mode to fit in one byte. To obtain the HCI sub-mode value, use (sub_mode == 0 ? 0xFF : sub_mode), where sub_mode is the value returned by this macro.

◆ BT_CONN_LE_DATA_LEN_PARAM

#define BT_CONN_LE_DATA_LEN_PARAM ( _tx_max_len,
_tx_max_time )

#include <conn.h>

Value:
BT_CONN_LE_DATA_LEN_PARAM_INIT(_tx_max_len, _tx_max_time) \
})
Connection data length parameters for LE connections.
Definition conn.h:172

Helper to declare transmit data length parameters inline.

Parameters
_tx_max_lenMaximum Link Layer transmission payload size in bytes.
_tx_max_timeMaximum Link Layer transmission payload time in us.

◆ BT_CONN_LE_DATA_LEN_PARAM_INIT

#define BT_CONN_LE_DATA_LEN_PARAM_INIT ( _tx_max_len,
_tx_max_time )

#include <conn.h>

Value:
{ \
.tx_max_len = (_tx_max_len), \
.tx_max_time = (_tx_max_time), \
}

Initialize transmit data length parameters.

Parameters
_tx_max_lenMaximum Link Layer transmission payload size in bytes.
_tx_max_timeMaximum Link Layer transmission payload time in us.

◆ BT_CONN_LE_FRAME_SPACE_MAX

#define BT_CONN_LE_FRAME_SPACE_MAX   (10000U)

#include <conn.h>

Maximum frame space in microseconds.

As defined in Bluetooth Core Specification, Vol 4, Part E, Section 7.8.151.

◆ BT_CONN_LE_FRAME_SPACE_TYPES_MASK_ACL

#define BT_CONN_LE_FRAME_SPACE_TYPES_MASK_ACL

#include <conn.h>

Value:
#define BT_HCI_LE_FRAME_SPACE_UPDATE_SPACING_TYPE_IFS_ACL_CP_MASK
Definition hci_types.h:3123
#define BT_HCI_LE_FRAME_SPACE_UPDATE_SPACING_TYPE_IFS_ACL_PC_MASK
Definition hci_types.h:3124
#define BT_HCI_LE_FRAME_SPACE_UPDATE_SPACING_TYPE_MCES_MASK
Definition hci_types.h:3125

◆ BT_CONN_LE_FRAME_SPACE_TYPES_MASK_ACL_IFS

◆ BT_CONN_LE_FRAME_SPACE_TYPES_MASK_CIS

#define BT_CONN_LE_FRAME_SPACE_TYPES_MASK_CIS

#include <conn.h>

Value:
#define BT_HCI_LE_FRAME_SPACE_UPDATE_SPACING_TYPE_MSS_CIS_MASK
Definition hci_types.h:3127
#define BT_HCI_LE_FRAME_SPACE_UPDATE_SPACING_TYPE_IFS_CIS_MASK
Definition hci_types.h:3126

◆ BT_CONN_LE_MAX_CONN_INTERVAL_GROUPS

#define BT_CONN_LE_MAX_CONN_INTERVAL_GROUPS   41

#include <conn.h>

Maximum Connection Interval Groups possible.

The practical maximum is 41 groups based on HCI event size constraints: (HCI event max size - cmd_complete overhead - response fields) / sizeof(group) (255 - 4 - 3) / 6 = 41 groups max

◆ BT_CONN_LE_PHY_PARAM

#define BT_CONN_LE_PHY_PARAM ( _pref_tx_phy,
_pref_rx_phy )

#include <conn.h>

Value:
((struct bt_conn_le_phy_param []) { \
BT_CONN_LE_PHY_PARAM_INIT(_pref_tx_phy, _pref_rx_phy) \
})
Preferred PHY parameters for LE connections.
Definition conn.h:111

Helper to declare PHY parameters inline.

Parameters
_pref_tx_phyBitmask of preferred transmit PHYs.
_pref_rx_phyBitmask of preferred receive PHYs.

◆ BT_CONN_LE_PHY_PARAM_1M

#define BT_CONN_LE_PHY_PARAM_1M

#include <conn.h>

Value:
#define BT_CONN_LE_PHY_PARAM(_pref_tx_phy, _pref_rx_phy)
Helper to declare PHY parameters inline.
Definition conn.h:134
@ BT_GAP_LE_PHY_1M
LE 1M PHY.
Definition gap.h:94

Only LE 1M PHY.

◆ BT_CONN_LE_PHY_PARAM_2M

#define BT_CONN_LE_PHY_PARAM_2M

#include <conn.h>

Value:
@ BT_GAP_LE_PHY_2M
LE 2M PHY.
Definition gap.h:96

Only LE 2M PHY.

◆ BT_CONN_LE_PHY_PARAM_ALL

#define BT_CONN_LE_PHY_PARAM_ALL

#include <conn.h>

Value:
@ BT_GAP_LE_PHY_CODED
LE Coded PHY, coding scheme not specified.
Definition gap.h:98

All LE PHYs.

◆ BT_CONN_LE_PHY_PARAM_CODED

#define BT_CONN_LE_PHY_PARAM_CODED

#include <conn.h>

Value:

Only LE Coded PHY.

◆ BT_CONN_LE_PHY_PARAM_INIT

#define BT_CONN_LE_PHY_PARAM_INIT ( _pref_tx_phy,
_pref_rx_phy )

#include <conn.h>

Value:
{ \
.pref_tx_phy = (_pref_tx_phy), \
.pref_rx_phy = (_pref_rx_phy), \
}
@ BT_CONN_LE_PHY_OPT_NONE
Convenience value when no options are specified.
Definition conn.h:101

Initialize PHY parameters.

Parameters
_pref_tx_phyBitmask of preferred transmit PHYs.
_pref_rx_phyBitmask of preferred receive PHYs.

◆ BT_CONN_PARAM_REJECT_ERR_L2CAP_CPUP

#define BT_CONN_PARAM_REJECT_ERR_L2CAP_CPUP   0xFF

#include <conn.h>

Synthetic error value for an L2CAP Connection Parameter Update Procedure (CPUP) rejection.

Passed as the hci_err argument to bt_conn_cb::le_param_update_rejected when the remote peer does not support the HCI Connection Parameter Request (CPR) procedure and the L2CAP CPUP fallback is rejected instead. This is a host-internal sentinel; it is not a real HCI error code.

◆ BT_CONN_SCI_INTERVAL_TO_US

#define BT_CONN_SCI_INTERVAL_TO_US ( _interval)

#include <conn.h>

Value:
#define BT_HCI_LE_SCI_INTERVAL_UNIT_US
Definition hci_types.h:3148

Convert shorter connection interval to microseconds.

Multiply by 125 to get microseconds.

◆ BT_LE_CONN_PARAM

#define BT_LE_CONN_PARAM ( int_min,
int_max,
lat,
to )

#include <conn.h>

Value:
((struct bt_le_conn_param[]) { \
BT_LE_CONN_PARAM_INIT(int_min, int_max, lat, to) \
})
Connection parameters for LE connections.
Definition conn.h:49

Helper to declare connection parameters inline.

Parameters
int_minMinimum Connection Interval (N * 1.25 ms)
int_maxMaximum Connection Interval (N * 1.25 ms)
latConnection Latency
toSupervision Timeout (N * 10 ms)

◆ BT_LE_CONN_PARAM_DEFAULT

#define BT_LE_CONN_PARAM_DEFAULT

#include <conn.h>

Value:
#define BT_LE_CONN_PARAM(int_min, int_max, lat, to)
Helper to declare connection parameters inline.
Definition conn.h:78
#define BT_GAP_MS_TO_CONN_TIMEOUT(_timeout)
Convert milliseconds to connection supervision timeout units (10 ms).
Definition gap.h:376
#define BT_GAP_INIT_CONN_INT_MAX
Recommended maximum initial connection interval.
Definition gap.h:84
#define BT_GAP_INIT_CONN_INT_MIN
Recommended minimum initial connection interval.
Definition gap.h:82

Default LE connection parameters: Connection Interval: 30-50 ms Latency: 0 Timeout: 4 s.

◆ BT_LE_CONN_PARAM_INIT

#define BT_LE_CONN_PARAM_INIT ( int_min,
int_max,
lat,
to )

#include <conn.h>

Value:
{ \
.interval_min = (int_min), \
.interval_max = (int_max), \
.latency = (lat), \
.timeout = (to), \
}

Initialize connection parameters.

Parameters
int_minMinimum Connection Interval (N * 1.25 ms)
int_maxMaximum Connection Interval (N * 1.25 ms)
latConnection Latency
toSupervision Timeout (N * 10 ms)

◆ BT_LE_DATA_LEN_PARAM_DEFAULT

#define BT_LE_DATA_LEN_PARAM_DEFAULT

#include <conn.h>

Value:
#define BT_CONN_LE_DATA_LEN_PARAM(_tx_max_len, _tx_max_time)
Helper to declare transmit data length parameters inline.
Definition conn.h:195
#define BT_GAP_DATA_TIME_DEFAULT
Default data time.
Definition gap.h:168
#define BT_GAP_DATA_LEN_DEFAULT
Default data length.
Definition gap.h:163

Default LE data length parameters.

◆ BT_LE_DATA_LEN_PARAM_MAX

#define BT_LE_DATA_LEN_PARAM_MAX

#include <conn.h>

Value:
#define BT_GAP_DATA_TIME_MAX
Maximum data time.
Definition gap.h:170
#define BT_GAP_DATA_LEN_MAX
Maximum data length.
Definition gap.h:165

Maximum LE data length parameters.

◆ BT_PASSKEY_RAND

#define BT_PASSKEY_RAND   0xffffffff

#include <conn.h>

Special passkey value that can be used to generate a random passkey when using the app_passkey callback from bt_conn_auth_cb.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

OOB data configuration.

Enumerator
BT_CONN_OOB_LOCAL_ONLY 

Local OOB data requested.

BT_CONN_OOB_REMOTE_ONLY 

Remote OOB data requested.

BT_CONN_OOB_BOTH_PEERS 

Both local and remote OOB data requested.

BT_CONN_OOB_NO_DATA 

No OOB data requested.

◆ anonymous enum

anonymous enum

Type of OOB pairing method.

Enumerator
BT_CONN_OOB_LE_LEGACY 

LE legacy pairing.

BT_CONN_OOB_LE_SC 

LE SC pairing.

◆ anonymous enum

anonymous enum

#include <conn.h>

Connection PHY options.

Enumerator
BT_CONN_LE_PHY_OPT_NONE 

Convenience value when no options are specified.

BT_CONN_LE_PHY_OPT_CODED_S2 

LE Coded using S=2 coding preferred when transmitting.

BT_CONN_LE_PHY_OPT_CODED_S8 

LE Coded using S=8 coding preferred when transmitting.

◆ anonymous enum

anonymous enum

#include <conn.h>

Enumerator
BT_CONN_ROLE_CENTRAL 
BT_CONN_ROLE_PERIPHERAL 

◆ anonymous enum

anonymous enum

#include <conn.h>

Enumerator
BT_CONN_LE_OPT_NONE 

Convenience value when no options are specified.

BT_CONN_LE_OPT_CODED 

Enable LE Coded PHY.

Enable scanning on the LE Coded PHY.

BT_CONN_LE_OPT_NO_1M 

Disable LE 1M PHY.

Disable scanning on the LE 1M PHY.

Note
Requires BT_CONN_LE_OPT_CODED.

◆ bt_conn_auth_keypress

#include <conn.h>

Passkey Keypress Notification type.

The numeric values are the same as in the Core specification for Pairing Keypress Notification PDU.

Enumerator
BT_CONN_AUTH_KEYPRESS_ENTRY_STARTED 
BT_CONN_AUTH_KEYPRESS_DIGIT_ENTERED 
BT_CONN_AUTH_KEYPRESS_DIGIT_ERASED 
BT_CONN_AUTH_KEYPRESS_CLEARED 
BT_CONN_AUTH_KEYPRESS_ENTRY_COMPLETED 

◆ bt_conn_le_cs_capability_rtt_aa_only

#include <conn.h>

Supported AA-Only RTT precision.

Enumerator
BT_CONN_LE_CS_RTT_AA_ONLY_NOT_SUPP 

AA-Only RTT variant is not supported.

BT_CONN_LE_CS_RTT_AA_ONLY_10NS 

10ns time-of-flight accuracy.

BT_CONN_LE_CS_RTT_AA_ONLY_150NS 

150ns time-of-flight accuracy.

◆ bt_conn_le_cs_capability_rtt_random_payload

#include <conn.h>

Supported Random Payload RTT precision.

Enumerator
BT_CONN_LE_CS_RTT_RANDOM_PAYLOAD_NOT_SUPP 

Random Payload RTT variant is not supported.

BT_CONN_LE_CS_RTT_RANDOM_PAYLOAD_10NS 

10ns time-of-flight accuracy.

BT_CONN_LE_CS_RTT_RANDOM_PAYLOAD_150NS 

150ns time-of-flight accuracy.

◆ bt_conn_le_cs_capability_rtt_sounding

#include <conn.h>

Supported Sounding Sequence RTT precision.

Enumerator
BT_CONN_LE_CS_RTT_SOUNDING_NOT_SUPP 

Sounding Sequence RTT variant is not supported.

BT_CONN_LE_CS_RTT_SOUNDING_10NS 

10ns time-of-flight accuracy.

BT_CONN_LE_CS_RTT_SOUNDING_150NS 

150ns time-of-flight accuracy.

◆ bt_conn_le_cs_ch3c_shape

#include <conn.h>

Channel sounding channel sequence shape.

Enumerator
BT_CONN_LE_CS_CH3C_SHAPE_HAT 

Use Hat shape for user-specified channel sequence.

BT_CONN_LE_CS_CH3C_SHAPE_X 

Use X shape for user-specified channel sequence.

◆ bt_conn_le_cs_chsel_type

#include <conn.h>

Channel sounding channel selection type.

Enumerator
BT_CONN_LE_CS_CHSEL_TYPE_3B 

Use Channel Selection Algorithm #3b for non-mode-0 CS steps.

BT_CONN_LE_CS_CHSEL_TYPE_3C 

Use Channel Selection Algorithm #3c for non-mode-0 CS steps.

◆ bt_conn_le_cs_mode

#include <conn.h>

Channel sounding mode (main and sub-mode).

Represents the combination of Channel Sounding (CS) main mode and sub-mode.

Note
The underlying numeric values are an internal encoding and are not stable API. Do not assume a direct concatenation of HCI values when inspecting the raw enum value.
See also
BT_CONN_LE_CS_MODE_MAIN_MODE_PART
BT_CONN_LE_CS_MODE_SUB_MODE_PART
Enumerator
BT_CONN_LE_CS_MAIN_MODE_1_NO_SUB_MODE 

Main mode 1 (RTT), sub-mode: unused.

BT_CONN_LE_CS_MAIN_MODE_2_NO_SUB_MODE 

Main mode 2 (PBR), sub-mode: unused.

BT_CONN_LE_CS_MAIN_MODE_3_NO_SUB_MODE 

Main mode 3 (RTT and PBR), sub-mode: unused.

BT_CONN_LE_CS_MAIN_MODE_2_SUB_MODE_1 

Main mode 2 (PBR), sub-mode 1 (RTT).

BT_CONN_LE_CS_MAIN_MODE_2_SUB_MODE_3 

Main mode 2 (PBR), sub-mode 3 (RTT and PBR).

BT_CONN_LE_CS_MAIN_MODE_3_SUB_MODE_2 

Main mode 3 (RTT and PBR), sub-mode 2 (PBR).

◆ bt_conn_le_cs_procedure_abort_reason

#include <conn.h>

Procedure abort reason.

Enumerator
BT_CONN_LE_CS_PROCEDURE_NOT_ABORTED 
BT_CONN_LE_CS_PROCEDURE_ABORT_REQUESTED 
BT_CONN_LE_CS_PROCEDURE_ABORT_TOO_FEW_CHANNELS 
BT_CONN_LE_CS_PROCEDURE_ABORT_CHMAP_INSTANT_PASSED 
BT_CONN_LE_CS_PROCEDURE_ABORT_UNSPECIFIED 

◆ bt_conn_le_cs_procedure_done_status

#include <conn.h>

Procedure done status.

Enumerator
BT_CONN_LE_CS_PROCEDURE_COMPLETE 
BT_CONN_LE_CS_PROCEDURE_INCOMPLETE 
BT_CONN_LE_CS_PROCEDURE_ABORTED 

◆ bt_conn_le_cs_procedure_enable_state

#include <conn.h>

Enumerator
BT_CONN_LE_CS_PROCEDURES_DISABLED 
BT_CONN_LE_CS_PROCEDURES_ENABLED 

◆ bt_conn_le_cs_role

#include <conn.h>

Channel sounding role.

Enumerator
BT_CONN_LE_CS_ROLE_INITIATOR 

CS initiator role.

BT_CONN_LE_CS_ROLE_REFLECTOR 

CS reflector role.

◆ bt_conn_le_cs_rtt_type

#include <conn.h>

Channel sounding RTT type.

Enumerator
BT_CONN_LE_CS_RTT_TYPE_AA_ONLY 

RTT AA only.

BT_CONN_LE_CS_RTT_TYPE_32_BIT_SOUNDING 

RTT with 32-bit sounding sequence.

BT_CONN_LE_CS_RTT_TYPE_96_BIT_SOUNDING 

RTT with 96-bit sounding sequence.

BT_CONN_LE_CS_RTT_TYPE_32_BIT_RANDOM 

RTT with 32-bit random sequence.

BT_CONN_LE_CS_RTT_TYPE_64_BIT_RANDOM 

RTT with 64-bit random sequence.

BT_CONN_LE_CS_RTT_TYPE_96_BIT_RANDOM 

RTT with 96-bit random sequence.

BT_CONN_LE_CS_RTT_TYPE_128_BIT_RANDOM 

RTT with 128-bit random sequence.

◆ bt_conn_le_cs_subevent_abort_reason

#include <conn.h>

Subevent abort reason.

Enumerator
BT_CONN_LE_CS_SUBEVENT_NOT_ABORTED 
BT_CONN_LE_CS_SUBEVENT_ABORT_REQUESTED 
BT_CONN_LE_CS_SUBEVENT_ABORT_NO_CS_SYNC 
BT_CONN_LE_CS_SUBEVENT_ABORT_SCHED_CONFLICT 
BT_CONN_LE_CS_SUBEVENT_ABORT_UNSPECIFIED 

◆ bt_conn_le_cs_subevent_done_status

#include <conn.h>

Subevent done status.

Enumerator
BT_CONN_LE_CS_SUBEVENT_COMPLETE 
BT_CONN_LE_CS_SUBEVENT_ABORTED 

◆ bt_conn_le_cs_sync_phy

#include <conn.h>

Channel sounding PHY used for CS sync.

Enumerator
BT_CONN_LE_CS_SYNC_1M_PHY 

LE 1M PHY.

BT_CONN_LE_CS_SYNC_2M_PHY 

LE 2M PHY.

BT_CONN_LE_CS_SYNC_2M_2BT_PHY 

LE 2M 2BT PHY.

◆ bt_conn_le_cs_tone_antenna_config_selection

#include <conn.h>

CS Test Tone Antenna Config Selection.

See Bluetooth Core Specification, Vol 6, Part A, Section 5.3 and Bluetooth Core Specification, Vol 6, Part H, Section 4.7

These enum values are indices in the following table, where N_AP is the maximum number of antenna paths (in the range [1, 4]).

+-----------—+----------—+--------------------—+--------------------—+-----—+ | Config Index | Total Paths | Initiator: # Antennas | Reflector: # Antennas | Config | +-----------—+----------—+--------------------—+--------------------—+-----—+ | 0 | 1 | 1 | 1 | 1:1 | | 1 | 2 | 2 | 1 | N_AP:1 | | 2 | 3 | 3 | 1 | N_AP:1 | | 3 | 4 | 4 | 1 | N_AP:1 | | 4 | 2 | 1 | 2 | 1:N_AP | | 5 | 3 | 1 | 3 | 1:N_AP | | 6 | 4 | 1 | 4 | 1:N_AP | | 7 | 4 | 2 | 2 | 2:2 | +-----------—+----------—+--------------------—+--------------------—+-----—+

There are therefore four groups of possible antenna configurations:

  • 1:1 configuration, where both Initiator and Reflector support 1 antenna each
  • 1:N_AP configuration, where Initiator supports 1 antenna, Reflector supports N_AP antennas, and N_AP is a value in the range [2, 4]
  • N_AP:1 configuration, where Initiator supports N_AP antennas, Reflector supports 1 antenna, and N_AP is a value in the range [2, 4]
  • 2:2 configuration, where both Initiator and Reflector support 2 antennas and N_AP = 4
Enumerator
BT_LE_CS_TONE_ANTENNA_CONFIGURATION_A1_B1 

Initiator (dev A): 1 antenna, Reflector (dev B): 1 antenna.

BT_LE_CS_TONE_ANTENNA_CONFIGURATION_A2_B1 

Initiator (dev A): 2 antennas, Reflector (dev B): 1 antenna.

BT_LE_CS_TONE_ANTENNA_CONFIGURATION_A3_B1 

Initiator (dev A): 3 antennas, Reflector (dev B): 1 antenna.

BT_LE_CS_TONE_ANTENNA_CONFIGURATION_A4_B1 

Initiator (dev A): 4 antennas, Reflector (dev B): 1 antenna.

BT_LE_CS_TONE_ANTENNA_CONFIGURATION_A1_B2 

Initiator (dev A): 1 antenna, Reflector (dev B): 2 antennas.

BT_LE_CS_TONE_ANTENNA_CONFIGURATION_A1_B3 

Initiator (dev A): 1 antenna, Reflector (dev B): 3 antennas.

BT_LE_CS_TONE_ANTENNA_CONFIGURATION_A1_B4 

Initiator (dev A): 1 antenna, Reflector (dev B): 4 antennas.

BT_LE_CS_TONE_ANTENNA_CONFIGURATION_A2_B2 

Initiator (dev A): 2 antennas, Reflector (dev B): 2 antennas.

◆ bt_conn_le_frame_space_update_initiator

#include <conn.h>

Frame space update initiator.

Enumerator
BT_CONN_LE_FRAME_SPACE_UPDATE_INITIATOR_LOCAL_HOST 

Initiated by local host.

BT_CONN_LE_FRAME_SPACE_UPDATE_INITIATOR_LOCAL_CONTROLLER 

Initiated by local controller.

BT_CONN_LE_FRAME_SPACE_UPDATE_INITIATOR_PEER 

Initiated by peer.

◆ bt_conn_le_path_loss_zone

#include <conn.h>

Path Loss zone that has been entered.

The path loss zone that has been entered in the most recent LE Path Loss Monitoring Threshold Change event as documented in Core Spec. Version 5.4 Vol.4, Part E, 7.7.65.32.

Note
BT_CONN_LE_PATH_LOSS_ZONE_UNAVAILABLE has been added to notify when path loss becomes unavailable.
Enumerator
BT_CONN_LE_PATH_LOSS_ZONE_ENTERED_LOW 

Low path loss zone entered.

BT_CONN_LE_PATH_LOSS_ZONE_ENTERED_MIDDLE 

Middle path loss zone entered.

BT_CONN_LE_PATH_LOSS_ZONE_ENTERED_HIGH 

High path loss zone entered.

BT_CONN_LE_PATH_LOSS_ZONE_UNAVAILABLE 

Path loss has become unavailable.

◆ bt_conn_le_tx_power_phy

#include <conn.h>

Enumerator
BT_CONN_LE_TX_POWER_PHY_NONE 

Convenience macro for when no PHY is set.

BT_CONN_LE_TX_POWER_PHY_1M 

LE 1M PHY.

BT_CONN_LE_TX_POWER_PHY_2M 

LE 2M PHY.

BT_CONN_LE_TX_POWER_PHY_CODED_S8 

LE Coded PHY using S=8 coding.

BT_CONN_LE_TX_POWER_PHY_CODED_S2 

LE Coded PHY using S=2 coding.

◆ bt_conn_state

#include <conn.h>

Enumerator
BT_CONN_STATE_DISCONNECTED 

Channel disconnected.

BT_CONN_STATE_CONNECTING 

Channel in connecting state.

BT_CONN_STATE_CONNECTED 

Channel connected and ready for upper layer traffic on it.

BT_CONN_STATE_DISCONNECTING 

Channel in disconnecting state.

◆ bt_conn_type

#include <conn.h>

Connection Type.

Enumerator
BT_CONN_TYPE_LE 

LE Connection Type.

BT_CONN_TYPE_BR 

BR/EDR Connection Type.

BT_CONN_TYPE_SCO 

SCO Connection Type.

BT_CONN_TYPE_ISO 

ISO Connection Type.

BT_CONN_TYPE_ALL 

All Connection Type.

◆ bt_security_err

#include <conn.h>

Enumerator
BT_SECURITY_ERR_SUCCESS 

Security procedure successful.

BT_SECURITY_ERR_AUTH_FAIL 

Authentication failed.

BT_SECURITY_ERR_PIN_OR_KEY_MISSING 

PIN or encryption key is missing.

BT_SECURITY_ERR_OOB_NOT_AVAILABLE 

OOB data is not available.

BT_SECURITY_ERR_AUTH_REQUIREMENT 

The requested security level could not be reached.

BT_SECURITY_ERR_PAIR_NOT_SUPPORTED 

Pairing is not supported.

BT_SECURITY_ERR_PAIR_NOT_ALLOWED 

Pairing is not allowed.

BT_SECURITY_ERR_INVALID_PARAM 

Invalid parameters.

BT_SECURITY_ERR_KEY_REJECTED 

Distributed Key Rejected.

BT_SECURITY_ERR_UNSPECIFIED 

Pairing failed but the exact reason could not be specified.

◆ bt_security_flag

#include <conn.h>

Security Info Flags.

Enumerator
BT_SECURITY_FLAG_SC 

Paired with Secure Connections.

BT_SECURITY_FLAG_OOB 

Paired with Out of Band method.

◆ bt_security_t

#include <conn.h>

Security level.

Enumerator
BT_SECURITY_L0 

Level 0: Only for BR/EDR special cases, like SDP.

BT_SECURITY_L1 

Level 1: No encryption and no authentication.

BT_SECURITY_L2 

Level 2: Encryption and no authentication (no MITM).

BT_SECURITY_L3 

Level 3: Encryption and authentication (MITM).

BT_SECURITY_L4 

Level 4: Authenticated Secure Connections and 128-bit key.

BT_SECURITY_FORCE_PAIR 

Bit to force new pairing procedure, bit-wise OR with requested security level.

Function Documentation

◆ bt_conn_cb_register()

int bt_conn_cb_register ( struct bt_conn_cb * cb)

#include <conn.h>

Register connection callbacks.

Register callbacks to monitor the state of connections.

Parameters
cbCallback struct. Must point to memory that remains valid.
Return values
0Success.
-EEXISTif cb was already registered.

◆ bt_conn_cb_unregister()

int bt_conn_cb_unregister ( struct bt_conn_cb * cb)

#include <conn.h>

Unregister connection callbacks.

Unregister the state of connections callbacks.

Parameters
cbCallback struct point to memory that remains valid.
Return values
0Success
-EINVALIf cb is NULL
-ENOENTif cb was not registered

◆ bt_conn_create_auto_stop()

int bt_conn_create_auto_stop ( void )

#include <conn.h>

Stop automatic connect creation.

Returns
Zero on success or (negative) error code on failure.

◆ bt_conn_disconnect()

int bt_conn_disconnect ( struct bt_conn * conn,
uint8_t reason )

#include <conn.h>

Disconnect from a remote device or cancel pending connection.

Disconnect an active connection with the specified reason code or cancel pending outgoing connection.

The disconnect reason for a normal disconnect should be: BT_HCI_ERR_REMOTE_USER_TERM_CONN.

The following disconnect reasons are accepted:

Parameters
connConnection to disconnect.
reasonReason code for the disconnection.
Returns
Zero on success or (negative) error code on failure.

◆ bt_conn_drop()

void bt_conn_drop ( struct bt_conn ** orig)

#include <conn.h>

Drop a connection reference and clear the pointer.

This performs an atomic exchange on orig, setting it to NULL and unreferencing the previous value if it was not NULL.

Parameters
origPointer to the connection pointer to drop (must not be NULL). On return, *orig is set to NULL.

◆ bt_conn_enc_key_size()

uint8_t bt_conn_enc_key_size ( const struct bt_conn * conn)

#include <conn.h>

Get encryption key size.

This function gets encryption key size. If there is no security (encryption) enabled 0 will be returned.

Parameters
connBT_CONN_TYPE_LE or BT_CONN_TYPE_BR connection object.
Returns
Encryption key size.
0 conn is not a valid BT_CONN_TYPE_LE or BT_CONN_TYPE_BR connection.

◆ bt_conn_foreach()

void bt_conn_foreach ( enum bt_conn_type type,
void(* func )(struct bt_conn *conn, void *data),
void * data )

#include <conn.h>

Iterate through all bt_conn objects.

Iterates through all bt_conn objects that are alive in the Host allocator.

To find established connections, combine this with bt_conn_get_info. Check that bt_conn_info::state is BT_CONN_STATE_CONNECTED.

Thread safety: This API is thread safe, but it does not guarantee a sequentially-consistent view for objects allocated during the current invocation of this API. E.g. If preempted while allocations A then B then C happen then results may include A and C but miss B.

Parameters
typeConnection Type
funcFunction to call for each connection.
dataData to pass to the callback function.

◆ bt_conn_get_dst()

const bt_addr_le_t * bt_conn_get_dst ( const struct bt_conn * conn)

#include <conn.h>

Get destination (peer) address of a connection.

Parameters
connConnection object.
Returns
Destination address if conn is a valid BT_CONN_TYPE_LE connection

◆ bt_conn_get_info()

int bt_conn_get_info ( const struct bt_conn * conn,
struct bt_conn_info * info )

#include <conn.h>

Get connection info.

Parameters
connConnection object.
infoConnection info object.
Returns
Zero on success or (negative) error code on failure.

◆ bt_conn_get_remote_info()

int bt_conn_get_remote_info ( const struct bt_conn * conn,
struct bt_conn_remote_info * remote_info )

#include <conn.h>

Get connection info for the remote device.

Parameters
connBT_CONN_TYPE_LE or BT_CONN_TYPE_BR connection object.
remote_infoConnection remote info object.
Note
In order to retrieve the remote version (version, manufacturer and subversion)
CONFIG_BT_REMOTE_VERSION 
must be enabled
The remote information is exchanged directly after the connection has been established. The application can be notified about when the remote information is available through the remote_info_available callback.
Returns
Zero on success or (negative) error code on failure.
-EBUSY The remote information is not yet available.
-EINVAL conn is not a valid BT_CONN_TYPE_LE or BT_CONN_TYPE_BR connection.

◆ bt_conn_get_security()

bt_security_t bt_conn_get_security ( const struct bt_conn * conn)

#include <conn.h>

Get security level for a connection.

Parameters
connBT_CONN_TYPE_LE or BT_CONN_TYPE_BR connection object.
Returns
Connection security level if
CONFIG_BT_SMP 
or
CONFIG_BT_CLASSIC 
is enabled, else BT_SECURITY_L1
BT_SECURITY_L0 conn is not a valid BT_CONN_TYPE_LE or BT_CONN_TYPE_BR connection.

◆ bt_conn_index()

uint8_t bt_conn_index ( const struct bt_conn * conn)

#include <conn.h>

Get array index of a connection.

This function is used to map bt_conn to index of an array of connections. The array has CONFIG_BT_MAX_CONN elements.

Parameters
connConnection object.
Returns
Index of the connection object. The range of the returned value is 0..CONFIG_BT_MAX_CONN-1

◆ bt_conn_is_type()

bool bt_conn_is_type ( const struct bt_conn * conn,
enum bt_conn_type type )

#include <conn.h>

Function to determine the type of a connection.

Parameters
connThe connection object
typeThe types to check against. It is possible to supply multiple types, e.g. BT_CONN_TYPE_LE | BT_CONN_TYPE_SCO.
Return values
trueconn is of type type
falseconn is either NULL or not of type type

◆ bt_conn_le_conn_rate_request()

int bt_conn_le_conn_rate_request ( struct bt_conn * conn,
const struct bt_conn_le_conn_rate_param * params )

#include <conn.h>

Request New Connection Rate Parameters.

Request a change to the connection parameters of a connection. This includes Subrate parameters. This allows changing the connection interval to below the Baseline ConnInterval Values (BCV) and with finer granularity, if supported.

Valid intervals of the local and peer controller should be known. See bt_conn_le_read_min_conn_interval_groups

Attention
Available only when the following Kconfig option is enabled:
CONFIG_BT_SHORTER_CONNECTION_INTERVALS 
.
Parameters
connBT_CONN_TYPE_LE connection object.
paramsConnection rate parameters.
Returns
Zero on success or (negative) error code on failure.
-EINVAL conn is not a valid BT_CONN_TYPE_LE connection.

◆ bt_conn_le_conn_rate_set_defaults()

int bt_conn_le_conn_rate_set_defaults ( const struct bt_conn_le_conn_rate_param * params)

#include <conn.h>

Set Default Connection Rate Parameters.

Configure the range of Connection Rate values that this device will accept from a Peripheral initiating a Connection Rate Update procedure.

The configured bounds:

  • Apply only to connections established after this call.
  • Are overridden on a given connection by any bt_conn_le_conn_rate_request on that connection.
Attention
Available only when the following Kconfig options are enabled:
CONFIG_BT_SHORTER_CONNECTION_INTERVALS 
,
CONFIG_BT_CENTRAL 
.
Parameters
paramsConnection rate parameters.
Returns
Zero on success or (negative) error code on failure.

◆ bt_conn_le_create()

int bt_conn_le_create ( const bt_addr_le_t * peer,
const struct bt_conn_le_create_param * create_param,
const struct bt_le_conn_param * conn_param,
struct bt_conn ** conn )

#include <conn.h>

Initiate an LE connection to a remote device.

Allows initiate new LE link to remote peer using its address.

The caller gets a new reference to the connection object which must be released with bt_conn_unref() once done using the object. If

CONFIG_BT_CONN_CHECK_NULL_BEFORE_CREATE 

is enabled, this function will return -EINVAL if dereferenced conn is not NULL.

This uses the General Connection Establishment procedure.

The application must disable explicit scanning before initiating a new LE connection if

CONFIG_BT_SCAN_AND_INITIATE_IN_PARALLEL 

is not enabled.

Parameters
[in]peerRemote address.
[in]create_paramCreate connection parameters.
[in]conn_paramInitial connection parameters.
[out]connValid connection object on success.
Returns
Zero on success or (negative) error code on failure.

◆ bt_conn_le_create_auto()

int bt_conn_le_create_auto ( const struct bt_conn_le_create_param * create_param,
const struct bt_le_conn_param * conn_param )

#include <conn.h>

Automatically connect to remote devices in the filter accept list.

This uses the Auto Connection Establishment procedure. The procedure will continue until a single connection is established or the procedure is stopped through bt_conn_create_auto_stop. To establish connections to all devices in the filter accept list the procedure should be started again in the connected callback after a new connection has been established.

Parameters
create_paramCreate connection parameters
conn_paramInitial connection parameters.
Returns
Zero on success or (negative) error code on failure.
-ENOMEM No free connection object available.

◆ bt_conn_le_create_synced()

int bt_conn_le_create_synced ( const struct bt_le_ext_adv * adv,
const struct bt_conn_le_create_synced_param * synced_param,
const struct bt_le_conn_param * conn_param,
struct bt_conn ** conn )

#include <conn.h>

Create a connection to a synced device.

Initiate a connection to a synced device from a Periodic Advertising with Responses (PAwR) train.

The caller gets a new reference to the connection object which must be released with bt_conn_unref() once done using the object. If

CONFIG_BT_CONN_CHECK_NULL_BEFORE_CREATE 

is enabled, this function will return -EINVAL if dereferenced conn is not NULL.

This uses the Periodic Advertising Connection Procedure.

Parameters
[in]advThe adverting set the PAwR advertiser belongs to.
[in]synced_paramCreate connection parameters.
[in]conn_paramInitial connection parameters.
[out]connValid connection object on success.
Returns
Zero on success or (negative) error code on failure.

◆ bt_conn_le_data_len_update()

int bt_conn_le_data_len_update ( struct bt_conn * conn,
const struct bt_conn_le_data_len_param * param )

#include <conn.h>

Update the connection transmit data length parameters.

Parameters
connBT_CONN_TYPE_LE connection object.
paramUpdated data length parameters.
Returns
Zero on success or (negative) error code on failure.
-EINVAL conn is not a valid BT_CONN_TYPE_LE connection.

◆ bt_conn_le_enhanced_get_tx_power_level()

int bt_conn_le_enhanced_get_tx_power_level ( struct bt_conn * conn,
struct bt_conn_le_tx_power * tx_power )

#include <conn.h>

Get local enhanced connection transmit power level.

Parameters
connBT_CONN_TYPE_LE connection object.
tx_powerTransmit power level descriptor.
Returns
Zero on success or (negative) error code on failure.
Return values
-ENOBUFSHCI command buffer is not available.
Returns
-EINVAL conn is not a valid BT_CONN_TYPE_LE connection.

◆ bt_conn_le_frame_space_update()

int bt_conn_le_frame_space_update ( struct bt_conn * conn,
const struct bt_conn_le_frame_space_update_param * params )

#include <conn.h>

Update frame space.

Request a change to the frame space parameters of a connection. This function will trigger the frame_space_updated callback when the procedure is completed.

Attention
Available only when the following Kconfig option is enabled:
CONFIG_BT_FRAME_SPACE_UPDATE 
..
Parameters
connBT_CONN_TYPE_LE connection object.
paramsFrame Space Update parameters.
Returns
Zero on success or (negative) error code on failure.
-EINVAL conn is not a valid BT_CONN_TYPE_LE connection.

◆ bt_conn_le_get_remote_tx_power_level()

int bt_conn_le_get_remote_tx_power_level ( struct bt_conn * conn,
enum bt_conn_le_tx_power_phy phy )

#include <conn.h>

Get remote (peer) transmit power level.

Parameters
connBT_CONN_TYPE_LE connection object.
phyPHY information.
Returns
Zero on success or (negative) error code on failure.
Return values
-ENOBUFSHCI command buffer is not available.
Returns
-EINVAL conn is not a valid BT_CONN_TYPE_LE connection.

◆ bt_conn_le_get_tx_power_level()

int bt_conn_le_get_tx_power_level ( struct bt_conn * conn,
struct bt_conn_le_tx_power * tx_power_level )

#include <conn.h>

Get connection transmit power level.

Parameters
connBT_CONN_TYPE_LE connection object.
tx_power_levelTransmit power level descriptor.
Returns
Zero on success or (negative) error code on failure.
-ENOBUFS HCI command buffer is not available.
-EINVAL conn is not a valid BT_CONN_TYPE_LE connection.

◆ bt_conn_le_param_update()

int bt_conn_le_param_update ( struct bt_conn * conn,
const struct bt_le_conn_param * param )

#include <conn.h>

Update the connection parameters.

If the local device is in the peripheral role then updating the connection parameters will be delayed. This delay can be configured by through the

CONFIG_BT_CONN_PARAM_UPDATE_TIMEOUT 

option.

Parameters
connBT_CONN_TYPE_LE connection object.
paramUpdated connection parameters.
Returns
Zero on success or (negative) error code on failure.
-EINVAL conn is not a valid BT_CONN_TYPE_LE connection.

◆ bt_conn_le_phy_update()

int bt_conn_le_phy_update ( struct bt_conn * conn,
const struct bt_conn_le_phy_param * param )

#include <conn.h>

Update the connection PHY parameters.

Update the preferred transmit and receive PHYs of the connection. Use BT_GAP_LE_PHY_NONE to indicate no preference.

Parameters
connBT_CONN_TYPE_LE connection object.
paramUpdated connection parameters.
Returns
Zero on success or (negative) error code on failure.
-EINVAL conn is not a valid BT_CONN_TYPE_LE connection.

◆ bt_conn_le_read_all_remote_features()

int bt_conn_le_read_all_remote_features ( struct bt_conn * conn,
uint8_t pages_requested )

#include <conn.h>

Read remote feature pages.

Request remote feature pages, from 0 up to pages_requested or the number of pages supported by the peer. There is a maximum of 10 pages. This function will trigger the read_all_remote_feat_complete callback when the procedure is completed.

Attention
Available only when the following Kconfig option is enabled:
CONFIG_BT_LE_EXTENDED_FEAT_SET 
.
Parameters
connBT_CONN_TYPE_LE connection object.
pages_requestedNumber of feature pages to be requested from peer. There is a maximum of 10 pages.
Returns
Zero on success or (negative) error code on failure.
-EINVAL conn is not a valid BT_CONN_TYPE_LE connection.

◆ bt_conn_le_read_min_conn_interval()

int bt_conn_le_read_min_conn_interval ( uint16_t * min_interval_us)

#include <conn.h>

Read Minimum Supported Connection Interval.

Read the minimum supported connection interval from the local controller.

See also
bt_conn_le_read_min_conn_interval_groups if groups are needed.
Attention
Available only when the following Kconfig option is enabled:
CONFIG_BT_SHORTER_CONNECTION_INTERVALS 
.
Parameters
min_interval_usPointer to variable to receive the minimum connection interval in microseconds.
Returns
Zero on success or (negative) error code on failure.

◆ bt_conn_le_read_min_conn_interval_groups()

int bt_conn_le_read_min_conn_interval_groups ( struct bt_conn_le_min_conn_interval_info * info)

#include <conn.h>

Read Minimum Supported Connection Interval Groups.

Read the minimum supported connection interval and supported interval groups from the local controller. This information describes what the local controller supports.

See also
bt_conn_le_read_min_conn_interval if only bt_conn_le_min_conn_interval_info::min_supported_conn_interval_us is needed.
Attention
Available only when the following Kconfig option is enabled:
CONFIG_BT_SHORTER_CONNECTION_INTERVALS 
.
Parameters
infoPointer to structure to receive the minimum connection interval information.
Returns
Zero on success or (negative) error code on failure.

◆ bt_conn_le_set_default_phy()

int bt_conn_le_set_default_phy ( uint8_t pref_tx_phy,
uint8_t pref_rx_phy )

#include <conn.h>

Update the default PHY parameters to be used for all subsequent connections over the LE transport.

Update the preferred transmit and receive PHYs of LE transport. Use BT_GAP_LE_PHY_NONE to indicate no preference. For possible PHY values see bt_gap_le_phy.

Parameters
pref_tx_phyPreferred transmitter phy parameters.
pref_rx_phyPreferred receiver phy parameters.
Returns
Zero on success or (negative) error code on failure.

◆ bt_conn_le_set_path_loss_mon_enable()

int bt_conn_le_set_path_loss_mon_enable ( struct bt_conn * conn,
bool enable )

#include <conn.h>

Enable or Disable Path Loss Monitoring.

Enable or disable Path Loss Monitoring, which will decide whether Path Loss Threshold events are sent from the controller to the host.

Note
To use this API
CONFIG_BT_PATH_LOSS_MONITORING 
must be set.
Parameters
connBT_CONN_TYPE_LE connection object.
enableEnable/disable path loss reporting.
Returns
Zero on success or (negative) error code on failure.
-EINVAL conn is not a valid BT_CONN_TYPE_LE connection.

◆ bt_conn_le_set_path_loss_mon_param()

int bt_conn_le_set_path_loss_mon_param ( struct bt_conn * conn,
const struct bt_conn_le_path_loss_reporting_param * param )

#include <conn.h>

Set Path Loss Monitoring Parameters.

Change the configuration for path loss threshold change events for a given conn handle.

Note
To use this API
CONFIG_BT_PATH_LOSS_MONITORING 
must be set.
Parameters
connBT_CONN_TYPE_LE connection object.
paramPath Loss Monitoring parameters
Returns
Zero on success or (negative) error code on failure.
-EINVAL conn is not a valid BT_CONN_TYPE_LE connection.

◆ bt_conn_le_set_tx_power_report_enable()

int bt_conn_le_set_tx_power_report_enable ( struct bt_conn * conn,
bool local_enable,
bool remote_enable )

#include <conn.h>

Enable transmit power reporting.

Parameters
connBT_CONN_TYPE_LE connection object.
local_enableEnable/disable reporting for local.
remote_enableEnable/disable reporting for remote.
Returns
Zero on success or (negative) error code on failure.
Return values
-ENOBUFSHCI command buffer is not available.
Returns
-EINVAL conn is not a valid BT_CONN_TYPE_LE connection.

◆ bt_conn_le_subrate_request()

int bt_conn_le_subrate_request ( struct bt_conn * conn,
const struct bt_conn_le_subrate_param * params )

#include <conn.h>

Request New Subrating Parameters.

Request a change to the subrating parameters of a connection.

Note
To use this API
CONFIG_BT_SUBRATING 
must be set.
Parameters
connBT_CONN_TYPE_LE connection object.
paramsSubrating parameters.
Returns
Zero on success or (negative) error code on failure.
-EINVAL conn is not a valid BT_CONN_TYPE_LE connection.

◆ bt_conn_le_subrate_set_defaults()

int bt_conn_le_subrate_set_defaults ( const struct bt_conn_le_subrate_param * params)

#include <conn.h>

Set Default Connection Subrating Parameters.

Change the default subrating parameters for all future ACL connections where the local device is the central. This command does not affect any existing connection. Parameters set for specific connection will always have precedence.

Note
To use this API
CONFIG_BT_SUBRATING 
and
CONFIG_BT_CENTRAL 
must be set.
Parameters
paramsSubrating parameters.
Returns
Zero on success or (negative) error code on failure.

◆ bt_conn_lookup_addr_le()

struct bt_conn * bt_conn_lookup_addr_le ( uint8_t id,
const bt_addr_le_t * peer )

#include <conn.h>

Look up an existing connection by address.

Look up an existing connection based on the remote address.

The caller gets a new reference to the connection object which must be released with bt_conn_unref() once done using the object.

Parameters
idLocal identity (in most cases BT_ID_DEFAULT).
peerRemote address.
Returns
Connection object or NULL if not found.

◆ bt_conn_ref()

struct bt_conn * bt_conn_ref ( struct bt_conn * conn)

#include <conn.h>

Increment a connection's reference count.

Increment the reference count of a connection object.

Note
Will return NULL if the reference count is zero.
Parameters
connConnection object.
Returns
Connection object with incremented reference count, or NULL if the reference count is zero.

◆ bt_conn_set_bondable()

int bt_conn_set_bondable ( struct bt_conn * conn,
bool enable )

#include <conn.h>

Set/clear the bonding flag for a given connection.

Set/clear the Bonding flag in the Authentication Requirements of SMP Pairing Request/Response data for a given connection.

The bonding flag for a given connection cannot be set/cleared if security procedures in the SMP module have already started. This function can be called only once per connection.

If the bonding flag is not set/cleared for a given connection, the value will depend on global configuration which is set using bt_set_bondable. The default value of the global configuration is defined using CONFIG_BT_BONDABLE Kconfig option.

Parameters
connBT_CONN_TYPE_LE or BT_CONN_TYPE_BR connection object.
enableValue allowing/disallowing to be bondable.
Return values
0Success
-EALREADYAlready in the requested state
Returns
-EINVAL conn is not a valid BT_CONN_TYPE_LE or BT_CONN_TYPE_BR connection
-EINVAL conn is a valid BT_CONN_TYPE_LE but could not get SMP context

◆ bt_conn_set_security()

int bt_conn_set_security ( struct bt_conn * conn,
bt_security_t sec )

#include <conn.h>

Set security level for a connection.

This function enable security (encryption) for a connection. If the device has bond information for the peer with sufficiently strong key encryption will be enabled. If the connection is already encrypted with sufficiently strong key this function does nothing.

If the device has no bond information for the peer and is not already paired then the pairing procedure will be initiated. Note that sec has no effect on the security level selected for the pairing process. The selection is instead controlled by the values of the registered bt_conn_auth_cb. If the device has bond information or is already paired and the keys are too weak then the pairing procedure will be initiated.

This function may return an error if the required level of security defined using sec is not possible to achieve due to local or remote device limitation (e.g., input output capabilities), or if the maximum number of paired devices has been reached.

This function may return an error if the pairing procedure has already been initiated by the local device or the peer device.

Note
When
CONFIG_BT_SMP_SC_ONLY 
is enabled then the security level will always be level 4.
When
CONFIG_BT_SMP_OOB_LEGACY_PAIR_ONLY 
is enabled then the security level will always be level 3.
When BT_SECURITY_FORCE_PAIR within sec is enabled then the pairing procedure will always be initiated.
Parameters
connBT_CONN_TYPE_LE or BT_CONN_TYPE_BR connection object.
secRequested minimum security level.
Returns
0 on success or negative error
-EINVAL conn is not a valid BT_CONN_TYPE_LE or BT_CONN_TYPE_BR connection.
-EALREADY A Security Request is already in flight (one sent by the peripheral has not yet been answered). It is left as-is and the security level it carries is not changed.

◆ bt_conn_take()

struct bt_conn * bt_conn_take ( struct bt_conn ** orig)
inlinestatic

#include <conn.h>

Take ownership of a connection pointer, setting the original to NULL.

This performs an atomic exchange on orig, setting it to NULL and returning the previous value. The reference count is not modified; the reference held by orig is transferred to the caller, who must eventually release it with bt_conn_unref().

Parameters
origPointer to the connection pointer to transfer (must not be NULL). On return, *orig is set to NULL.
Returns
The connection originally pointed to by orig, which may be NULL.

◆ bt_conn_unref()

void bt_conn_unref ( struct bt_conn * conn)

#include <conn.h>

Decrement a connection's reference count.

Decrement the reference count of a connection object. Unless the pointer variable is immediately going out of scope, it's recommended to use bt_conn_drop instead, which will also set the pointer to NULL to prevent accidental reuse.

Parameters
connConnection object.

◆ bt_get_bondable()

bool bt_get_bondable ( void )

#include <conn.h>

Get bonding flag.

Get current bonding flag. The initial value of this flag depends on

CONFIG_BT_BONDABLE 

Kconfig setting. The Bonding flag can be updated using bt_set_bondable().

Returns
Current bonding flag.

◆ bt_le_oob_get_sc_data()

int bt_le_oob_get_sc_data ( struct bt_conn * conn,
const struct bt_le_oob_sc_data ** oobd_local,
const struct bt_le_oob_sc_data ** oobd_remote )

#include <conn.h>

Get OOB data used for LE Secure Connections (SC) pairing procedure.

This function allows to get OOB data during the LE SC pairing procedure that were set by the bt_le_oob_set_sc_data() API.

Note
The OOB data will only be available as long as the connection object associated with it is valid.
Parameters
connBT_CONN_TYPE_LE connection object.
oobd_localLocal OOB data or NULL if not set
oobd_remoteRemote OOB data or NULL if not set
Returns
Zero on success or error code otherwise, positive in case of protocol error or negative (POSIX) in case of stack internal error.
-EINVAL conn is not a valid BT_CONN_TYPE_LE connection.

◆ bt_le_oob_set_legacy_flag()

void bt_le_oob_set_legacy_flag ( bool enable)

#include <conn.h>

Allow/disallow remote legacy OOB data to be used for pairing.

Set/clear the OOB data flag for legacy SMP Pairing Request/Response data.

Parameters
enableValue allowing/disallowing remote legacy OOB data.

◆ bt_le_oob_set_legacy_tk()

int bt_le_oob_set_legacy_tk ( struct bt_conn * conn,
const uint8_t * tk )

#include <conn.h>

Set OOB Temporary Key to be used for pairing.

This function allows to set OOB data for the LE legacy pairing procedure. The function should only be called in response to the oob_data_request() callback provided that the legacy method is user pairing.

Parameters
connBT_CONN_TYPE_LE connection object.
tkPointer to 16 byte long TK array. The TK value should be generated randomly for each new pairing process.
Return values
0Success
Returns
-EINVAL conn is not a valid BT_CONN_TYPE_LE connection.
-EINVAL tk is NULL.

◆ bt_le_oob_set_sc_data()

int bt_le_oob_set_sc_data ( struct bt_conn * conn,
const struct bt_le_oob_sc_data * oobd_local,
const struct bt_le_oob_sc_data * oobd_remote )

#include <conn.h>

Set OOB data during LE Secure Connections (SC) pairing procedure.

This function allows to set OOB data during the LE SC pairing procedure. The function should only be called in response to the oob_data_request() callback provided that LE SC method is used for pairing.

The user should submit OOB data according to the information received in the callback. This may yield three different configurations: with only local OOB data present, with only remote OOB data present or with both local and remote OOB data present.

Parameters
connBT_CONN_TYPE_LE connection object.
oobd_localLocal OOB data or NULL if not present
oobd_remoteRemote OOB data or NULL if not present
Returns
Zero on success or error code otherwise, positive in case of protocol error or negative (POSIX) in case of stack internal error.
-EINVAL conn is not a valid BT_CONN_TYPE_LE connection.

◆ bt_le_oob_set_sc_flag()

void bt_le_oob_set_sc_flag ( bool enable)

#include <conn.h>

Allow/disallow remote LE SC OOB data to be used for pairing.

Set/clear the OOB data flag for LE SC SMP Pairing Request/Response data.

Parameters
enableValue allowing/disallowing remote LE SC OOB data.

◆ bt_security_err_to_str()

const char * bt_security_err_to_str ( enum bt_security_err err)
inlinestatic

#include <conn.h>

Converts a security error to string.

Returns
The string representation of the security error code. If
CONFIG_BT_SECURITY_ERR_TO_STR 
is not enabled, this just returns the empty string

◆ bt_set_bondable()

void bt_set_bondable ( bool enable)

#include <conn.h>

Enable/disable bonding.

Set/clear the Bonding flag in the Authentication Requirements of SMP Pairing Request/Response data. The initial value of this flag depends on BT_BONDABLE Kconfig setting. For the vast majority of applications calling this function shouldn't be needed.

Parameters
enableValue allowing/disallowing to be bondable.

Variable Documentation

◆ [union]

union { ... } bt_conn_remote_info

◆ [union]

union { ... } bt_conn_le_info

◆ [union]

union { ... } bt_conn_info

Connection Type specific Info.

◆ [union]

union { ... } bt_conn_oob_info

◆ [] [1/2]

uint8_t { ... } ::abort_step

Step number, on which the subevent was aborted if subevent_done_status is BT_CONN_LE_CS_SUBEVENT_COMPLETE then abort_step will be unused and set to 255.

◆ abort_step [2/2]

uint8_t bt_conn_le_cs_subevent_result::abort_step

Step number, on which the subevent was aborted if subevent_done_status is BT_CONN_LE_CS_SUBEVENT_COMPLETE then abort_step will be unused and set to 255.

◆ air_mode

uint8_t bt_conn_sco_info::air_mode

SCO air mode (codec type).

◆ app_passkey

uint32_t(* bt_conn_auth_cb::app_passkey) (struct bt_conn *conn)

Allow the application to provide a passkey for pairing.

If implemented, this callback allows the application to provide passkeys for pairing. The valid range of passkeys is 0 - 999999. The application shall return the passkey for pairing, or BT_PASSKEY_RAND to generate a random passkey. This callback is invoked only for the Passkey Entry method as defined in Core Specification Vol. 3, Part H. Which device in the pairing is showing the passkey depends on the IO capabilities of the device; see Table 2.8 of the Bluetooth Core Specification V6.0, Vol. 3, Part H for more details. For the purposes of this table, the device gains the "display" capability when this callback is non-NULL. This is irrespective of whether the callback returns a specified key or BT_PASSKEY_RAND.

Note
When using this callback, it is the responsibility of the application to use random and unique keys.
Parameters
connConnection where pairing is currently active.
Returns
Passkey for pairing, or BT_PASSKEY_RAND for the Host to generate a random passkey.

◆ auth_req

uint8_t bt_conn_pairing_feat::auth_req

AuthReq, Core Spec.

Vol 3, Part H, 3.5.1, Fig. 3.3

◆ br [1/5]

struct bt_conn_br_cb bt_conn_cb::br

BR/EDR specific callbacks.

◆ [] [2/5]

struct bt_conn_br_info { ... } ::br

BR/EDR Connection specific Info.

◆ br [3/5]

struct bt_conn_br_info bt_conn_info::br

BR/EDR Connection specific Info.

◆ [] [4/5]

struct bt_conn_br_remote_info { ... } ::br

BR/EDR connection remote info.

◆ br [5/5]

struct bt_conn_br_remote_info bt_conn_remote_info::br

BR/EDR connection remote info.

◆ cancel

void(* bt_conn_auth_cb::cancel) (struct bt_conn *conn)

Cancel the ongoing user request.

This callback will be called to notify the application that it should cancel any previous user request (passkey display, entry or confirmation).

This may be set to NULL, but must always be provided whenever the passkey_display, passkey_entry passkey_confirm or pairing_confirm callback has been provided.

Parameters
connConnection where pairing is currently active.

◆ ch3c_jump

uint8_t bt_conn_le_cs_config::ch3c_jump

Number of channels skipped in each rising and falling sequence.

◆ ch3c_shape

enum bt_conn_le_cs_ch3c_shape bt_conn_le_cs_config::ch3c_shape

User-specified channel sequence shape.

◆ channel_map

uint8_t bt_conn_le_cs_config::channel_map[10]

Channel map used for CS procedure Channels n = 0, 1, 23, 24, 25, 77, and 78 are not allowed and shall be set to zero.

Channel 79 is reserved for future use and shall be set to zero. At least 15 channels shall be enabled.

◆ channel_map_repetition

uint8_t bt_conn_le_cs_config::channel_map_repetition

The number of times the Channel_Map field will be cycled through for non-mode-0 steps within a CS procedure.

◆ channel_selection_type

enum bt_conn_le_cs_chsel_type bt_conn_le_cs_config::channel_selection_type

Channel selection type.

◆ chsel_alg_3c_supported

bool bt_conn_le_cs_capabilities::chsel_alg_3c_supported

Subfeature: Channel Selection Algorithm #3c.

◆ config_id [1/3]

uint8_t bt_conn_le_cs_procedure_enable_complete::config_id

◆ [] [2/3]

uint8_t { ... } ::config_id

CS configuration identifier.

Range: 0 to 3

If these results were generated by a CS Test, this value will be set to 0 and has no meaning.

◆ config_id [3/3]

uint8_t bt_conn_le_cs_subevent_result::config_id

CS configuration identifier.

Range: 0 to 3

If these results were generated by a CS Test, this value will be set to 0 and has no meaning.

◆ conn_rate_changed

void(* bt_conn_cb::conn_rate_changed) (struct bt_conn *conn, uint8_t status, const struct bt_conn_le_conn_rate_changed *params)

LE Connection Rate Changed event.

This callback notifies the application that the connection rate parameters (including both connection interval and subrating) of the connection may have changed.

Parameters
connConnection object.
statusHCI Status from LE Connection Rate Change event. Possible Status codes:
  • Success (0x00)
  • Unknown Connection Identifier (0x02)
  • Command Disallowed (0x0C)
  • Unsupported Feature or Parameter Value (0x11)
  • Invalid HCI Command Parameters (0x12)
  • Unsupported Remote Feature (0x1A)
  • Unsupported LL Parameter Value (0x20)
paramsNew connection rate parameters. The connection rate parameters will be NULL if status is not BT_HCI_ERR_SUCCESS.

◆ connected

void(* bt_conn_cb::connected) (struct bt_conn *conn, uint8_t err)

A new connection has been established.

This callback notifies the application of a new connection. In case the err parameter is non-zero it means that the connection establishment failed.

Note
If the connection was established from an advertising set then the advertising set cannot be restarted directly from this callback. Instead use the connected callback of the advertising set.
Parameters
connNew connection object.
errHCI error. Zero for success, non-zero otherwise.

err can mean either of the following:

◆ continuation_number [1/5]

uint16_t bt_conn_le_conn_rate_changed::continuation_number

Number of underlying connection events to remain active after a packet containing a Link Layer PDU with a non-zero Length field is sent or received.

Range: BT_HCI_LE_CONTINUATION_NUM_MIN - BT_HCI_LE_CONTINUATION_NUM_MAX

◆ continuation_number [2/5]

uint16_t bt_conn_le_conn_rate_param::continuation_number

Minimum number of underlying connection events to remain active after a packet containing a Link Layer PDU with a non-zero Length field is sent or received.

Range: BT_HCI_LE_CONTINUATION_NUM_MIN - BT_HCI_LE_CONTINUATION_NUM_MAX

◆ continuation_number [3/5]

uint16_t bt_conn_le_subrate_changed::continuation_number

Number of underlying connection events to remain active after a packet containing a Link Layer PDU with a non-zero Length field is sent or received.

◆ continuation_number [4/5]

uint16_t bt_conn_le_subrate_param::continuation_number

Minimum number of underlying connection events to remain active after a packet containing a Link Layer PDU with a non-zero Length field is sent or received.

◆ continuation_number [5/5]

uint16_t bt_conn_le_subrating_info::continuation_number

Number of underlying connection events to remain active after a packet containing a Link Layer PDU with a non-zero Length field is sent or received.

◆ cs_enhancements_1

uint8_t bt_conn_le_cs_config::cs_enhancements_1

CS enhancements 1 Bit 0 - IPT is enabled in the CS reflector.

All other bits are reserved and shall be set to 0.

◆ cs_ipt_reflector

bool bt_conn_le_cs_capabilities::cs_ipt_reflector

Subfeature: IPT in the CS reflector.

◆ cs_sync_2m_2bt_phy_supported

bool bt_conn_le_cs_capabilities::cs_sync_2m_2bt_phy_supported

CS_SYNC LE 2M 2BT PHY.

◆ cs_sync_2m_phy_supported

bool bt_conn_le_cs_capabilities::cs_sync_2m_phy_supported

CS_SYNC LE 2M PHY.

◆ cs_sync_phy

enum bt_conn_le_cs_sync_phy bt_conn_le_cs_config::cs_sync_phy

CS Sync PHY.

◆ cs_without_fae_supported

bool bt_conn_le_cs_capabilities::cs_without_fae_supported

Subfeature: CS with no Frequency Actuation Error.

◆ cte_report_cb

void(* bt_conn_cb::cte_report_cb) (struct bt_conn *conn, const struct bt_df_conn_iq_samples_report *iq_report)

Callback for IQ samples report collected when sampling CTE received by data channel PDU.

Parameters
connThe connection object.
iq_reportReport data for collected IQ samples.

◆ current_level

int8_t bt_conn_le_tx_power::current_level

Output: current transmit power level in dBm.

Range depends on which HCI command is used:

  • -30 to +20 when phy is 0 (HCI_Read_Transmit_Power_Level)
  • -127 to +20 when phy is non-zero (HCI_LE_Enhanced_Read_Transmit_Power_Level)

◆ data_len

const struct bt_conn_le_data_len_info* bt_conn_le_info::data_len

Connection maximum single fragment parameters.

◆ delta

int8_t bt_conn_le_tx_power_report::delta

Change in transmit power level.

  • 0xXX - Change in transmit power level (positive indicates increased power, negative indicates decreased power, zero indicates unchanged) Units: dB
  • 0x7F - Change is not available or is out of range.

◆ disconnected

void(* bt_conn_cb::disconnected) (struct bt_conn *conn, uint8_t reason)

A connection has been disconnected.

This callback notifies the application that a connection has been disconnected.

When this callback is called the stack still has one reference to the connection object. If the application in this callback tries to start either a connectable advertiser or create a new connection this might fail because there are no free connection objects available. To avoid this issue, it's recommended to rely instead on bt_conn_cb::recycled which notifies the application when a connection object has actually been freed.

Parameters
connConnection object.
reasonBT_HCI_ERR_* reason for the disconnection.

◆ dst [1/2]

const bt_addr_t* bt_conn_br_info::dst

Destination (Remote) BR/EDR address.

◆ dst [2/2]

const bt_addr_le_t* bt_conn_le_info::dst

Destination (Remote) Identity Address or remote Resolvable Private Address (RPA) before identity has been resolved.

◆ enc_key_size

uint8_t bt_security_info::enc_key_size

Encryption Key Size.

◆ event_interval

uint16_t bt_conn_le_cs_procedure_enable_complete::event_interval

◆ factor [1/2]

uint16_t bt_conn_le_subrate_changed::factor

Connection subrate factor.

◆ factor [2/2]

uint16_t bt_conn_le_subrating_info::factor

Connection subrate factor.

◆ features [1/3]

const uint8_t* bt_conn_br_remote_info::features

Remote feature set (pages of bitmasks).

◆ features [2/3]

const uint8_t* bt_conn_le_read_all_remote_feat_complete::features

Pointer to array of size 248, with feature bits of remote supported features.

Page 0 being 8 bytes, with the following 10 pages of 24 bytes. Refer to BT_LE_FEAT_BIT_* for values. Refer to the BT_FEAT_LE_* macros for value comparison. See Bluetooth Core Specification, Vol 6, Part B, Section 4.6.

◆ features [3/3]

const uint8_t* bt_conn_le_remote_info::features

Remote LE feature set (bitmask).

◆ flags

enum bt_security_flag bt_security_info::flags

Flags.

◆ frame_space

uint16_t bt_conn_le_frame_space_updated::frame_space

Updated frame space in microseconds.

◆ frame_space_max

uint16_t bt_conn_le_frame_space_update_param::frame_space_max

Maximum frame space in microseconds.

Bluetooth Core Specification, Vol 4, Part E, Section 7.8.151 allows for a range of frame space from 0 to 10000 microseconds. The actual supported frame space values will be dependent on the controller's capabilities.

◆ frame_space_min

uint16_t bt_conn_le_frame_space_update_param::frame_space_min

Minimum frame space in microseconds.

Bluetooth Core Specification, Vol 4, Part E, Section 7.8.151 allows for a range of frame space from 0 to 10000 microseconds. The actual supported frame space values will be dependent on the controller's capabilities.

◆ frame_space_updated

void(* bt_conn_cb::frame_space_updated) (struct bt_conn *conn, const struct bt_conn_le_frame_space_updated *params)

Frame Space Update Complete event.

This callback notifies the application that the frame space of the connection may have changed. The frame space update parameters will be invalid if status is not BT_HCI_ERR_SUCCESS.

This callback can be triggered by calling bt_conn_le_frame_space_update, by the procedure running autonomously in the controller or by the peer.

Parameters
connConnection object.
paramsNew frame space update parameters.

◆ [] [1/2]

uint16_t { ... } ::frequency_compensation

Frequency compensation value in units of 0.01 ppm.

This is a 15-bit signed integer in the range [-100, 100] ppm.

A value of BT_HCI_LE_CS_SUBEVENT_RESULT_FREQ_COMPENSATION_NOT_AVAILABLE indicates that the role is not the initiator, or that the frequency compensation value is unavailable.

◆ frequency_compensation [2/2]

uint16_t bt_conn_le_cs_subevent_result::frequency_compensation

Frequency compensation value in units of 0.01 ppm.

This is a 15-bit signed integer in the range [-100, 100] ppm.

A value of BT_HCI_LE_CS_SUBEVENT_RESULT_FREQ_COMPENSATION_NOT_AVAILABLE indicates that the role is not the initiator, or that the frequency compensation value is unavailable.

◆ groups

struct bt_conn_le_min_conn_interval_group bt_conn_le_min_conn_interval_info::groups[41]

Array of supported connection interval groups.

Multiple groups allow representing non-contiguous or differently-strided ranges.

◆ [struct]

struct { ... } bt_conn_le_cs_subevent_result::header

◆ high_hysteresis

uint8_t bt_conn_le_path_loss_reporting_param::high_hysteresis

Hysteresis value for the high threshold (dB).

◆ high_threshold

uint8_t bt_conn_le_path_loss_reporting_param::high_threshold

High threshold for the path loss (dB).

◆ id [1/2]

uint8_t bt_conn_info::id

Which local identity the connection was created with.

◆ id [2/2]

uint8_t bt_conn_le_cs_config::id

CS configuration ID.

◆ identity_resolved

void(* bt_conn_cb::identity_resolved) (struct bt_conn *conn, const bt_addr_le_t *rpa, const bt_addr_le_t *identity)

Remote Identity Address has been resolved.

This callback notifies the application that a remote Identity Address has been resolved

Parameters
connConnection object.
rpaResolvable Private Address.
identityIdentity Address.

◆ init_key_dist

uint8_t bt_conn_pairing_feat::init_key_dist

Initiator Key Distribution/Generation, Core Spec.

Vol 3, Part H, 3.6.1, Fig. 3.11

◆ initiator

enum bt_conn_le_frame_space_update_initiator bt_conn_le_frame_space_updated::initiator

Initiator of the frame space update.

◆ initiator_supported

bool bt_conn_le_cs_capabilities::initiator_supported

Initiator role.

◆ interval [1/3]

uint16_t bt_conn_le_create_param::interval

Scan interval (N * 0.625 ms).

Note
When
CONFIG_BT_SCAN_AND_INITIATE_IN_PARALLEL 
is enabled and the application wants to scan and connect in parallel, the Bluetooth Controller may require the scan interval used for scanning and connection establishment to be equal to obtain the best performance.

◆ [] [2/3]

uint16_t { ... } ::interval

Connection interval in units of 1.25 ms.

Deprecated
Use bt_conn_le_info::interval_us instead

◆ interval [3/3]

uint16_t bt_conn_le_info::interval

Connection interval in units of 1.25 ms.

Deprecated
Use bt_conn_le_info::interval_us instead

◆ interval_coded

uint16_t bt_conn_le_create_param::interval_coded

Scan interval LE Coded PHY (N * 0.625 MS).

Set zero to use same as LE 1M PHY scan interval

◆ interval_max

uint16_t bt_le_conn_param::interval_max

◆ interval_max_125us

uint16_t bt_conn_le_conn_rate_param::interval_max_125us

Maximum connection interval.

Unit: 125 microseconds

Range: BT_HCI_LE_SCI_INTERVAL_MIN_125US - BT_HCI_LE_SCI_INTERVAL_MAX_125US

◆ interval_min

uint16_t bt_le_conn_param::interval_min

◆ interval_min_125us

uint16_t bt_conn_le_conn_rate_param::interval_min_125us

Minimum connection interval.

Unit: 125 microseconds

Range: BT_HCI_LE_SCI_INTERVAL_MIN_125US - BT_HCI_LE_SCI_INTERVAL_MAX_125US

◆ interval_us [1/2]

uint32_t bt_conn_le_conn_rate_changed::interval_us

Connection interval.

Unit: microseconds

Range: BT_HCI_LE_SCI_INTERVAL_MIN_US - BT_HCI_LE_SCI_INTERVAL_MAX_US

◆ interval_us [2/2]

uint32_t bt_conn_le_info::interval_us

Connection interval in microseconds.

◆ io_capability

uint8_t bt_conn_pairing_feat::io_capability

IO Capability, Core Spec.

Vol 3, Part H, 3.5.1, Table 3.4

◆ latency [1/2]

uint16_t bt_conn_le_info::latency

Connection peripheral latency.

◆ latency [2/2]

uint16_t bt_le_conn_param::latency

◆ [] [1/4]

struct bt_conn_le_info { ... } ::le

LE Connection specific Info.

◆ le [2/4]

struct bt_conn_le_info bt_conn_info::le

LE Connection specific Info.

◆ [] [3/4]

struct bt_conn_le_remote_info { ... } ::le

LE connection remote info.

◆ le [4/4]

struct bt_conn_le_remote_info bt_conn_remote_info::le

LE connection remote info.

◆ le_cs_config_complete

void(* bt_conn_cb::le_cs_config_complete) (struct bt_conn *conn, uint8_t status, struct bt_conn_le_cs_config *config)

LE CS Config created.

This callback notifies the application that a Channel Sounding Configuration procedure has completed.

If status is BT_HCI_ERR_SUCCESS, a new CS config is created.

Parameters
connConnection object.
statusHCI status of complete event.
configPointer to CS configuration on success or NULL otherwise.

◆ le_cs_config_removed

void(* bt_conn_cb::le_cs_config_removed) (struct bt_conn *conn, uint8_t config_id)

LE CS Config removed.

This callback notifies the application that a Channel Sounding Configuration procedure has completed and a CS config is removed

Parameters
connConnection object.
config_idID of the CS configuration that was removed.

◆ le_cs_procedure_enable_complete

void(* bt_conn_cb::le_cs_procedure_enable_complete) (struct bt_conn *conn, uint8_t status, struct bt_conn_le_cs_procedure_enable_complete *params)

LE CS Procedure Enabled.

This callback notifies the application that a Channel Sounding Procedure Enable procedure has completed.

If status is BT_HCI_ERR_SUCCESS, CS procedure is enabled.

Parameters
connConnection object.
statusHCI status.
paramsPointer to CS Procedure Enable parameters on success or NULL otherwise.

◆ le_cs_read_remote_capabilities_complete

void(* bt_conn_cb::le_cs_read_remote_capabilities_complete) (struct bt_conn *conn, uint8_t status, struct bt_conn_le_cs_capabilities *params)

LE CS Read Remote Supported Capabilities Complete event.

This callback notifies the application that a Channel Sounding Capabilities Exchange procedure has completed.

If status is BT_HCI_ERR_SUCCESS, the remote channel sounding capabilities have been received from the peer.

Parameters
connConnection object.
statusHCI status of complete event.
paramsPointer to CS Capabilities on success or NULL otherwise.

◆ le_cs_read_remote_fae_table_complete

void(* bt_conn_cb::le_cs_read_remote_fae_table_complete) (struct bt_conn *conn, uint8_t status, struct bt_conn_le_cs_fae_table *params)

LE CS Read Remote FAE Table Complete event.

This callback notifies the application that a Channel Sounding Mode-0 FAE Table Request procedure has completed.

If status is BT_HCI_ERR_SUCCESS, the remote mode-0 FAE Table has been received from the peer.

Parameters
connConnection object.
statusHCI status of complete event.
paramsPointer to FAE Table on success or NULL otherwise.

◆ le_cs_security_enable_complete

void(* bt_conn_cb::le_cs_security_enable_complete) (struct bt_conn *conn, uint8_t status)

LE CS Security Enabled.

This callback notifies the application that a Channel Sounding Security Enable procedure has completed.

If status is BT_HCI_ERR_SUCCESS, CS Security is enabled.

Parameters
connConnection object.
statusHCI status of complete event.

◆ le_cs_subevent_data_available

void(* bt_conn_cb::le_cs_subevent_data_available) (struct bt_conn *conn, struct bt_conn_le_cs_subevent_result *result)

Subevent Results from a CS procedure are available.

This callback notifies the user that CS subevent results are available for the given connection object.

Parameters
connConnection objects.
resultSubevent results

◆ le_data_len_updated

void(* bt_conn_cb::le_data_len_updated) (struct bt_conn *conn, struct bt_conn_le_data_len_info *info)

The data length parameters of the connection has changed.

This callback notifies the application that the maximum Link Layer payload length or transmission time has changed.

Parameters
connConnection object.
infoConnection data length information.

◆ le_param_req

bool(* bt_conn_cb::le_param_req) (struct bt_conn *conn, struct bt_le_conn_param *param)

LE connection parameter update request.

This callback notifies the application that a remote device is requesting to update the connection parameters. The application accepts the parameters by returning true, or rejects them by returning false. Before accepting, the application may also adjust the parameters to better suit its needs.

It is recommended for an application to have just one of these callbacks for simplicity. However, if an application registers multiple it needs to manage the potentially different requirements for each callback. Each callback gets the parameters as returned by previous callbacks, i.e. they are not necessarily the same ones as the remote originally sent.

If the application does not have this callback then the default is to accept the parameters.

Parameters
connConnection object.
paramProposed connection parameters.
Returns
true to accept the parameters, or false to reject them.

◆ le_param_update_rejected

void(* bt_conn_cb::le_param_update_rejected) (struct bt_conn *conn, uint8_t hci_err)

LE connection parameter update was rejected by the peer.

This callback notifies the application that a connection parameter update request initiated by bt_conn_le_param_update was rejected by the peer.

Note
Only called for explicit HCI rejections and L2CAP Connection Parameter Update Procedure (CPUP) rejections. Mutually exclusive with le_param_updated for the same event. If the remote does not support the Connection Parameter Request (CPR) procedure and the L2CAP fallback is rejected, hci_err will be BT_CONN_PARAM_REJECT_ERR_L2CAP_CPUP.
Parameters
connConnection object.
hci_errHCI error code (BT_HCI_ERR_*) for CPR rejection, or BT_CONN_PARAM_REJECT_ERR_L2CAP_CPUP for L2CAP fallback rejection.

◆ le_param_updated

void(* bt_conn_cb::le_param_updated) (struct bt_conn *conn, uint16_t interval, uint16_t latency, uint16_t timeout)

The parameters for an LE connection have been updated.

This callback notifies the application that the connection parameters for an LE connection have been updated.

Parameters
connConnection object.
intervalConnection interval.
latencyConnection latency.
timeoutConnection supervision timeout.

◆ le_phy_updated

void(* bt_conn_cb::le_phy_updated) (struct bt_conn *conn, struct bt_conn_le_phy_info *param)

The PHY of the connection has changed.

This callback notifies the application that the PHY of the connection has changed.

Parameters
connConnection object.
paramConnection LE PHY information.

◆ [struct] [1/2]

struct { ... } bt_conn_oob_info::lesc

LE Secure Connections OOB pairing parameters.

◆ [struct] [2/2]

struct { ... } bt_conn_oob_info::lesc

LE Secure Connections OOB pairing parameters.

◆ level

bt_security_t bt_security_info::level

Security Level.

◆ link_type

uint8_t bt_conn_sco_info::link_type

SCO link type.

◆ local

const bt_addr_le_t* bt_conn_le_info::local

Local device address used during connection setup.

◆ low_hysteresis

uint8_t bt_conn_le_path_loss_reporting_param::low_hysteresis

Hysteresis value for the low threshold (dB).

◆ low_threshold

uint8_t bt_conn_le_path_loss_reporting_param::low_threshold

Low threshold for the path loss (dB).

◆ main_mode_repetition

uint8_t bt_conn_le_cs_config::main_mode_repetition

Number of main mode steps taken from the end of the last CS subevent to be repeated at the beginning of the current CS subevent directly after the last mode-0 step of that event.

◆ manufacturer

uint16_t bt_conn_remote_info::manufacturer

Remote manufacturer identifier.

◆ max_125us

uint16_t bt_conn_le_min_conn_interval_group::max_125us

Upper bound of group interval range.

Unit: 125 microseconds

Range: BT_HCI_LE_SCI_INTERVAL_MIN_125US - BT_HCI_LE_SCI_INTERVAL_MAX_125US

◆ max_antenna_paths_supported

uint8_t bt_conn_le_cs_capabilities::max_antenna_paths_supported

Maximum number of antenna paths.

◆ max_ce_len_125us

uint16_t bt_conn_le_conn_rate_param::max_ce_len_125us

Maximum length of connection event.

Unit: 125 microseconds

Range: BT_HCI_LE_SCI_CE_LEN_MIN_125US - BT_HCI_LE_SCI_CE_LEN_MAX_125US

◆ max_consecutive_procedures_supported

uint16_t bt_conn_le_cs_capabilities::max_consecutive_procedures_supported

Maximum number of consecutive CS procedures.

When set to zero, indicates support for both fixed and indefinite numbers of CS procedures before termination.

◆ max_enc_key_size

uint8_t bt_conn_pairing_feat::max_enc_key_size

Maximum Encryption Key Size, Core Spec.

Vol 3, Part H, 3.5.1

◆ max_latency [1/2]

uint16_t bt_conn_le_conn_rate_param::max_latency

Maximum Peripheral latency.

Unit: subrated connection intervals bt_conn_le_conn_rate_changed::subrate_factor

Range: BT_HCI_LE_PERIPHERAL_LATENCY_MIN - BT_HCI_LE_PERIPHERAL_LATENCY_MAX

◆ max_latency [2/2]

uint16_t bt_conn_le_subrate_param::max_latency

Maximum Peripheral latency in units of subrated connection intervals.

◆ max_level

int8_t bt_conn_le_tx_power::max_level

Output: maximum transmit power level in dBm.

Range depends on which HCI command is used:

  • -30 to +20 when phy is 0 (HCI_Read_Transmit_Power_Level)
  • -127 to +20 when phy is non-zero (HCI_LE_Enhanced_Read_Transmit_Power_Level)

◆ max_main_mode_steps

uint8_t bt_conn_le_cs_config::max_main_mode_steps

Maximum number of CS main mode steps to be executed before a submode step is executed.

◆ max_procedure_len

uint16_t bt_conn_le_cs_procedure_enable_complete::max_procedure_len

◆ max_remote_page

uint8_t bt_conn_le_read_all_remote_feat_complete::max_remote_page

Number of pages supported by remote device.

◆ max_valid_page

uint8_t bt_conn_le_read_all_remote_feat_complete::max_valid_page

Number of pages fetched from remote device.

◆ min_125us

uint16_t bt_conn_le_min_conn_interval_group::min_125us

Lower bound of group interval range.

Unit: 125 microseconds

Range: BT_HCI_LE_SCI_INTERVAL_MIN_125US - BT_HCI_LE_SCI_INTERVAL_MAX_125US

◆ min_ce_len_125us

uint16_t bt_conn_le_conn_rate_param::min_ce_len_125us

Minimum length of connection event.

Unit: 125 microseconds

Range: BT_HCI_LE_SCI_CE_LEN_MIN_125US - BT_HCI_LE_SCI_CE_LEN_MAX_125US

◆ min_main_mode_steps

uint8_t bt_conn_le_cs_config::min_main_mode_steps

Minimum number of CS main mode steps to be executed before a submode step is executed.

◆ min_supported_conn_interval_us

uint16_t bt_conn_le_min_conn_interval_info::min_supported_conn_interval_us

Minimum supported connection interval.

Unit: microseconds

Range: BT_HCI_LE_MIN_SUPP_CONN_INT_MIN_US - BT_HCI_LE_MIN_SUPP_CONN_INT_MAX_US

◆ min_time_spent

uint16_t bt_conn_le_path_loss_reporting_param::min_time_spent

Minimum time in number of connection events to be observed once the path loss crosses the threshold before an event is generated.

◆ mode

enum bt_conn_le_cs_mode bt_conn_le_cs_config::mode

CS main and sub mode.

◆ mode_0_steps

uint8_t bt_conn_le_cs_config::mode_0_steps

Number of CS mode-0 steps to be included at the beginning of each CS subevent.

◆ mode_3_supported

bool bt_conn_le_cs_capabilities::mode_3_supported

Mode-3.

◆ mode_changed

void(* bt_conn_br_cb::mode_changed) (struct bt_conn *conn, uint8_t mode, uint16_t interval)

A BR/EDR connection mode has changed.

This callback notifies the application that the sniff mode has changed.

Parameters
connConnection object.
modeActive/Sniff mode.
intervalSniff interval.

◆ [] [1/2]

uint8_t { ... } ::num_antenna_paths

Number of antenna paths used during the phase measurement stage.

◆ num_antenna_paths [2/2]

uint8_t bt_conn_le_cs_subevent_result::num_antenna_paths

Number of antenna paths used during the phase measurement stage.

◆ num_antennas_supported

uint8_t bt_conn_le_cs_capabilities::num_antennas_supported

Number of antennas.

◆ num_config_supported

uint8_t bt_conn_le_cs_capabilities::num_config_supported

Number of CS configurations.

◆ num_groups

uint8_t bt_conn_le_min_conn_interval_info::num_groups

Number of interval groups.

Range: 0 - BT_CONN_LE_MAX_CONN_INTERVAL_GROUPS

If zero, the controller only supports Rounded ConnInterval Values (RCV).

◆ num_pages

uint8_t bt_conn_br_remote_info::num_pages

Number of pages in the remote feature set.

◆ [] [1/2]

uint8_t { ... } ::num_steps_reported

Number of CS steps in the subevent.

◆ num_steps_reported [2/2]

uint8_t bt_conn_le_cs_subevent_result::num_steps_reported

Number of CS steps in the subevent.

◆ [] [1/2]

OOB data configuration.

◆ [] [2/2]

enum { ... } bt_conn_oob_info::oob_config

OOB data configuration.

◆ oob_data_flag

uint8_t bt_conn_pairing_feat::oob_data_flag

OOB data flag, Core Spec.

Vol 3, Part H, 3.5.1, Table 3.5

◆ oob_data_request

void(* bt_conn_auth_cb::oob_data_request) (struct bt_conn *conn, struct bt_conn_oob_info *info)

Request the user to provide Out of Band (OOB) data.

When called the user is expected to provide OOB data. The required data are indicated by the information structure.

For LE Secure Connections OOB pairing, the user should provide local OOB data, remote OOB data or both depending on their availability. Their value should be given to the stack using the bt_le_oob_set_sc_data() API.

This callback must be set to non-NULL in order to support OOB pairing.

Parameters
connConnection where pairing is currently active.
infoOOB pairing information.

◆ options [1/2]

uint32_t bt_conn_le_create_param::options

Bit-field of create connection options.

◆ options [2/2]

uint16_t bt_conn_le_phy_param::options

Connection PHY options.

◆ packet_type_changed

void(* bt_conn_br_cb::packet_type_changed) (struct bt_conn *conn, uint8_t status, uint16_t packet_type)

The packet type of the BR/EDR connection has changed.

This callback notifies the application that the connection packet type change procedure has completed.

Parameters
connConnection object.
statusHCI status of the event.
packet_typeNew packet type bitmask.

◆ pairing_accept

enum bt_security_err(* bt_conn_auth_cb::pairing_accept) (struct bt_conn *conn, const struct bt_conn_pairing_feat *const feat)

Query to proceed incoming pairing or not.

On any incoming pairing req/rsp this callback will be called for the application to decide whether to allow for the pairing to continue.

The pairing info received from the peer is passed to assist making the decision.

As this callback is synchronous the application should return a response value immediately. Otherwise it may affect the timing during pairing. Hence, this information should not be conveyed to the user to take action.

The remaining callbacks are not affected by this, but do notice that other callbacks can be called during the pairing. Eg. if pairing_confirm is registered both will be called for Just-Works pairings.

This callback may be unregistered in which case pairing continues as if the Kconfig flag was not set.

For BR/EDR Secure Simple Pairing (SSP), this callback is called when receiving the BT_HCI_EVT_IO_CAPA_REQ hci event. The feat is NULL here.

Parameters
connConnection where pairing is initiated.
featPairing req/resp info. It is NULL in BR/EDR SSP.

◆ pairing_confirm

void(* bt_conn_auth_cb::pairing_confirm) (struct bt_conn *conn)

Request confirmation for an incoming pairing.

This callback will be called to confirm an incoming pairing request where none of the other user callbacks is applicable.

If the user decides to accept the pairing the bt_conn_auth_pairing_confirm() API should be called. If the user decides to reject the pairing the bt_conn_auth_cancel() API should be called.

This callback may be set to NULL, which means that the local device lacks the ability to confirm a pairing request. If set to non-NULL the cancel callback must also be provided, since this is the only way the application can find out that it should stop requesting the user to confirm a pairing request.

Parameters
connConnection where pairing is currently active.

◆ passkey_confirm

void(* bt_conn_auth_cb::passkey_confirm) (struct bt_conn *conn, unsigned int passkey)

Request the user to confirm a passkey.

When called the user is expected to confirm that the given passkey is also shown on the peer device.. The passkey will be in the range of 0 - 999999, and should be zero-padded to always be six digits (e.g. 37 would be shown as 000037).

Once the user has confirmed the passkey to match, the bt_conn_auth_passkey_confirm() API should be called. If the user concluded that the passkey doesn't match the bt_conn_auth_cancel() API should be called.

This callback may be set to NULL, which means that the local device lacks the ability to confirm a passkey. If set to non-NULL the cancel callback must also be provided, since this is the only way the application can find out that it should stop requesting the user to confirm a passkey.

Parameters
connConnection where pairing is currently active.
passkeyPasskey to be confirmed.

◆ passkey_display

void(* bt_conn_auth_cb::passkey_display) (struct bt_conn *conn, unsigned int passkey)

Display a passkey to the user.

When called the application is expected to display the given passkey to the user, with the expectation that the passkey will then be entered on the peer device. The passkey will be in the range of 0 - 999999, and is expected to be padded with zeroes so that six digits are always shown. E.g. the value 37 should be shown as 000037.

This callback may be set to NULL, which means that the local device lacks the ability do display a passkey. If set to non-NULL the cancel callback must also be provided, since this is the only way the application can find out that it should stop displaying the passkey.

Parameters
connConnection where pairing is currently active.
passkeyPasskey to show to the user.

◆ passkey_display_keypress

void(* bt_conn_auth_cb::passkey_display_keypress) (struct bt_conn *conn, enum bt_conn_auth_keypress type)

Receive Passkey Keypress Notification during pairing.

This allows the remote device to use the local device to give users feedback on the progress of entering the passkey over there. This is useful when the remote device itself has no display suitable for showing the progress.

The handler of this callback is expected to keep track of the number of digits entered and show a password-field-like feedback to the user.

This callback is only relevant while the local side does Passkey Display.

The event type is verified to be in range of the enum. No other sanitization has been done. The remote could send a large number of events of any type in any order.

Parameters
connThe related connection.
typeType of event. Verified in range of the enum.

◆ passkey_entry

void(* bt_conn_auth_cb::passkey_entry) (struct bt_conn *conn)

Request the user to enter a passkey.

When called the user is expected to enter a passkey. The passkey must be in the range of 0 - 999999, and should be expected to be zero-padded, as that's how the peer device will typically be showing it (e.g. 37 would be shown as 000037).

Once the user has entered the passkey its value should be given to the stack using the bt_conn_auth_passkey_entry() API.

This callback may be set to NULL, which means that the local device lacks the ability to enter a passkey. If set to non-NULL the cancel callback must also be provided, since this is the only way the application can find out that it should stop requesting the user to enter a passkey.

Parameters
connConnection where pairing is currently active.

◆ path_loss

uint8_t bt_conn_le_path_loss_threshold_report::path_loss

Current path loss (dB).

◆ path_loss_threshold_report

void(* bt_conn_cb::path_loss_threshold_report) (struct bt_conn *conn, const struct bt_conn_le_path_loss_threshold_report *report)

LE Path Loss Threshold event.

This callback notifies the application that there has been a path loss threshold crossing or reporting the initial path loss threshold zone after using bt_conn_le_set_path_loss_mon_enable.

Parameters
connConnection object.
reportPath loss threshold report.

◆ pbr_from_rtt_sounding_seq_supported

bool bt_conn_le_cs_capabilities::pbr_from_rtt_sounding_seq_supported

Subfeature: Phase-based Ranging from RTT sounding sequence.

◆ peer

const bt_addr_le_t* bt_conn_le_create_synced_param::peer

Remote address.

The peer must be synchronized to the PAwR train.

◆ peripheral_latency [1/2]

uint16_t bt_conn_le_conn_rate_changed::peripheral_latency

◆ peripheral_latency [2/2]

uint16_t bt_conn_le_subrate_changed::peripheral_latency

Peripheral latency in units of subrated connection intervals.

◆ phase_based_nadm_random_supported

bool bt_conn_le_cs_capabilities::phase_based_nadm_random_supported

Phase-based normalized attack detector metric when a CS_SYNC with random sequence is received.

◆ phase_based_nadm_sounding_supported

bool bt_conn_le_cs_capabilities::phase_based_nadm_sounding_supported

Phase-based normalized attack detector metric when a CS_SYNC with sounding sequence is received.

◆ phy [1/3]

const struct bt_conn_le_phy_info* bt_conn_le_info::phy

Connection PHY info.

◆ phy [2/3]

uint8_t bt_conn_le_tx_power::phy

Input: 1M, 2M, Coded S2 or Coded S8.

◆ phy [3/3]

enum bt_conn_le_tx_power_phy bt_conn_le_tx_power_report::phy

Phy of Transmit power reporting.

◆ phys [1/2]

uint8_t bt_conn_le_frame_space_update_param::phys

Phy mask of the PHYs to be updated.

Refer to BT_HCI_LE_FRAME_SPACE_UPDATE_PHY_* for values.

◆ phys [2/2]

uint8_t bt_conn_le_frame_space_updated::phys

Phy mask of the PHYs updated.

Refer to BT_HCI_LE_FRAME_SPACE_UPDATE_PHY_* for values.

◆ pincode_entry

void(* bt_conn_auth_cb::pincode_entry) (struct bt_conn *conn, bool highsec)

Request the user to enter a passkey.

This callback will be called for a BR/EDR (Bluetooth Classic) connection where pairing is being performed. Once called the user is expected to enter a PIN code with a length between 1 and 16 digits. If the highsec parameter is set to true the PIN code must be 16 digits long.

Once entered, the PIN code should be given to the stack using the bt_conn_auth_pincode_entry() API.

This callback may be set to NULL, however in that case pairing over BR/EDR will not be possible. If provided, the cancel callback must be provided as well.

Parameters
connConnection where pairing is currently active.
highsectrue if 16 digit PIN is required.

◆ pref_rx_phy

uint8_t bt_conn_le_phy_param::pref_rx_phy

Bitmask of preferred receive PHYs.

◆ pref_tx_phy

uint8_t bt_conn_le_phy_param::pref_tx_phy

Bitmask of preferred transmit PHYs.

◆ [] [1/2]

enum bt_conn_le_cs_procedure_abort_reason { ... } ::procedure_abort_reason

Abort reason.

If the procedure status is BT_CONN_LE_CS_PROCEDURE_ABORTED, this field will specify the reason for the abortion.

◆ procedure_abort_reason [2/2]

enum bt_conn_le_cs_procedure_abort_reason bt_conn_le_cs_subevent_result::procedure_abort_reason

Abort reason.

If the procedure status is BT_CONN_LE_CS_PROCEDURE_ABORTED, this field will specify the reason for the abortion.

◆ procedure_count

uint16_t bt_conn_le_cs_procedure_enable_complete::procedure_count

◆ [] [1/2]

uint16_t { ... } ::procedure_counter

CS procedure count associated with these results.

This is the CS procedure count since the completion of the Channel Sounding Security Start procedure.

◆ procedure_counter [2/2]

uint16_t bt_conn_le_cs_subevent_result::procedure_counter

CS procedure count associated with these results.

This is the CS procedure count since the completion of the Channel Sounding Security Start procedure.

◆ [] [1/2]

enum bt_conn_le_cs_procedure_done_status { ... } ::procedure_done_status

Procedure status.

◆ procedure_done_status [2/2]

enum bt_conn_le_cs_procedure_done_status bt_conn_le_cs_subevent_result::procedure_done_status

Procedure status.

◆ procedure_interval

uint16_t bt_conn_le_cs_procedure_enable_complete::procedure_interval

◆ read_all_remote_feat_complete

void(* bt_conn_cb::read_all_remote_feat_complete) (struct bt_conn *conn, const struct bt_conn_le_read_all_remote_feat_complete *params)

Read all remote features complete event.

This callback notifies the application that a 'read all remote features' procedure of the connection is completed. The other params will not be populated if status is not BT_HCI_ERR_SUCCESS.

This callback can be triggered by calling bt_conn_le_read_all_remote_features or by the procedure running autonomously in the controller.

Parameters
connConnection object.
paramsRemote features.

◆ reason

uint8_t bt_conn_le_tx_power_report::reason

Reason for Transmit power reporting, as documented in Core Spec.

Version 5.4 Vol. 4, Part E, 7.7.65.33.

◆ recycled

void(* bt_conn_cb::recycled) (void)

A connection object has been returned to the pool.

This callback notifies the application that it might be able to allocate a connection object. No guarantee, first come, first serve. Only connections that are configurable by

CONFIG_BT_MAX_CONN 

trigger this callback, i.e. connections of type BT_CONN_TYPE_LE or BT_CONN_TYPE_BR.

The maximum number of simultaneous connections is configured by

CONFIG_BT_MAX_CONN 

.

This is the event to listen for to start a new connection or connectable advertiser, both when the intention is to start it after the system is completely finished with an earlier connection, and when the application wants to start a connection for any reason but failed and is waiting for the right time to retry.

◆ [] [1/2]

int8_t { ... } ::reference_power_level

Reference power level in dBm.

Range: -127 to 20

A value of BT_HCI_LE_CS_REF_POWER_LEVEL_UNAVAILABLE indicates that the reference power level was not available during a subevent.

◆ reference_power_level [2/2]

int8_t bt_conn_le_cs_subevent_result::reference_power_level

Reference power level in dBm.

Range: -127 to 20

A value of BT_HCI_LE_CS_REF_POWER_LEVEL_UNAVAILABLE indicates that the reference power level was not available during a subevent.

◆ reflector_supported

bool bt_conn_le_cs_capabilities::reflector_supported

Reflector role.

◆ remote

const bt_addr_le_t* bt_conn_le_info::remote

Remote device address used during connection setup.

◆ remote_fae_table

int8_t* bt_conn_le_cs_fae_table::remote_fae_table

◆ remote_info_available

void(* bt_conn_cb::remote_info_available) (struct bt_conn *conn, struct bt_conn_remote_info *remote_info)

Remote information procedures has completed.

This callback notifies the application that the remote information has been retrieved from the remote peer.

Parameters
connConnection object.
remote_infoConnection information of remote device.

◆ resp_key_dist

uint8_t bt_conn_pairing_feat::resp_key_dist

Responder Key Distribution/Generation, Core Spec.

Vol 3, Part H 3.6.1, Fig. 3.11

◆ role [1/2]

uint8_t bt_conn_info::role

Connection Role.

◆ role [2/2]

enum bt_conn_le_cs_role bt_conn_le_cs_config::role

CS role.

◆ role_changed

void(* bt_conn_br_cb::role_changed) (struct bt_conn *conn, uint8_t status)

A BR/EDR connection role has changed.

This callback notifies the application that the BR/EDR role switch procedure has completed.

Parameters
connConnection object.
statusHCI status of role change event.

◆ rtt_aa_only_n

uint8_t bt_conn_le_cs_capabilities::rtt_aa_only_n

Number of CS steps needed to achieve the accuracy requirements for RTT AA Only.

Set to 0 if RTT AA Only isn't supported.

◆ rtt_aa_only_precision

enum bt_conn_le_cs_capability_rtt_aa_only bt_conn_le_cs_capabilities::rtt_aa_only_precision

RTT AA-Only.

◆ rtt_random_payload_n

uint8_t bt_conn_le_cs_capabilities::rtt_random_payload_n

Number of CS steps needed to achieve the accuracy requirements for RTT Random Payload.

Set to 0 if RTT Random Payload isn't supported.

◆ rtt_random_payload_precision

enum bt_conn_le_cs_capability_rtt_random_payload bt_conn_le_cs_capabilities::rtt_random_payload_precision

RTT Random Payload.

◆ rtt_sounding_n

uint8_t bt_conn_le_cs_capabilities::rtt_sounding_n

Number of CS steps needed to achieve the accuracy requirements for RTT Sounding.

Set to 0 if RTT Sounding isn't supported

◆ rtt_sounding_precision

enum bt_conn_le_cs_capability_rtt_sounding bt_conn_le_cs_capabilities::rtt_sounding_precision

RTT Sounding.

◆ rtt_type

enum bt_conn_le_cs_rtt_type bt_conn_le_cs_config::rtt_type

RTT type.

◆ rx_max_len

uint16_t bt_conn_le_data_len_info::rx_max_len

Maximum Link Layer reception payload size in bytes.

◆ rx_max_time

uint16_t bt_conn_le_data_len_info::rx_max_time

Maximum Link Layer reception payload time in us.

◆ rx_phy

uint8_t bt_conn_le_phy_info::rx_phy

Connection transmit PHY.

◆ [] [1/2]

struct bt_conn_sco_info { ... } ::sco

SCO Connection specific Info.

◆ sco [2/2]

struct bt_conn_sco_info bt_conn_info::sco

SCO Connection specific Info.

◆ security

struct bt_security_info bt_conn_info::security

Security specific info.

◆ security_changed

void(* bt_conn_cb::security_changed) (struct bt_conn *conn, bt_security_t level, enum bt_security_err err)

The security level of a connection has changed.

This callback notifies the application that the security of a connection has changed.

The security level of the connection can either have been increased or remain unchanged. An increased security level means that the pairing procedure has been performed or the bond information from a previous connection has been applied. If the security level remains unchanged this means that the encryption key has been refreshed for the connection.

Parameters
connConnection object.
levelNew security level of the connection.
errSecurity error. Zero for success, non-zero otherwise.

◆ selected_tx_power

int8_t bt_conn_le_cs_procedure_enable_complete::selected_tx_power

◆ spacing_types [1/2]

uint16_t bt_conn_le_frame_space_update_param::spacing_types

Spacing types mask of the spacing types to be updated.

Refer to BT_HCI_LE_FRAME_SPACE_UPDATE_SPACING_TYPE_* and BT_CONN_LE_FRAME_SPACE_TYPES_MASK_* for values.

◆ spacing_types [2/2]

uint16_t bt_conn_le_frame_space_updated::spacing_types

Spacing types mask of the spacing types updated.

Refer to BT_HCI_LE_FRAME_SPACE_UPDATE_SPACING_TYPE_* and BT_CONN_LE_FRAME_SPACE_TYPES_MASK_* for values.

◆ src

const bt_addr_le_t* bt_conn_le_info::src

Source (Local) Identity Address.

◆ [] [1/2]

uint16_t { ... } ::start_acl_conn_event

Starting ACL connection event counter.

If these results were generated by a CS Test, this value will be set to 0 and has no meaning.

◆ start_acl_conn_event [2/2]

uint16_t bt_conn_le_cs_subevent_result::start_acl_conn_event

Starting ACL connection event counter.

If these results were generated by a CS Test, this value will be set to 0 and has no meaning.

◆ state [1/2]

enum bt_conn_state bt_conn_info::state

Connection state.

◆ state [2/2]

enum bt_conn_le_cs_procedure_enable_state bt_conn_le_cs_procedure_enable_complete::state

◆ status [1/3]

uint8_t bt_conn_le_frame_space_updated::status

HCI Status from LE Frame Space Update Complete event.

The remaining parameters will be invalid if status is not BT_HCI_ERR_SUCCESS.

◆ status [2/3]

uint8_t bt_conn_le_read_all_remote_feat_complete::status

HCI Status from LE Read All Remote Features Complete event.

The remaining parameters will be unchanged if status is not BT_HCI_ERR_SUCCESS.

◆ status [3/3]

uint8_t bt_conn_le_subrate_changed::status

HCI Status from LE Subrate Changed event.

The remaining parameters will be unchanged if status is not BT_HCI_ERR_SUCCESS.

◆ step_data_buf

struct net_buf_simple* bt_conn_le_cs_subevent_result::step_data_buf

Pointer to buffer containing step data.

NULL if num_steps_reported is 0.

◆ stride_125us

uint16_t bt_conn_le_min_conn_interval_group::stride_125us

Increment between consecutive supported intervals.

Unit: 125 microseconds

Range: BT_HCI_LE_SCI_STRIDE_MIN_125US - BT_HCI_LE_SCI_INTERVAL_MAX_125US

◆ subevent

uint8_t bt_conn_le_create_synced_param::subevent

The subevent where the connection will be initiated.

◆ [] [1/2]

enum bt_conn_le_cs_subevent_abort_reason { ... } ::subevent_abort_reason

Abort reason.

If the subevent status is BT_CONN_LE_CS_SUBEVENT_ABORTED, this field will specify the reason for the abortion.

◆ subevent_abort_reason [2/2]

enum bt_conn_le_cs_subevent_abort_reason bt_conn_le_cs_subevent_result::subevent_abort_reason

Abort reason.

If the subevent status is BT_CONN_LE_CS_SUBEVENT_ABORTED, this field will specify the reason for the abortion.

◆ [] [1/2]

enum bt_conn_le_cs_subevent_done_status { ... } ::subevent_done_status

Subevent status.

For aborted subevents, this will be set to BT_CONN_LE_CS_SUBEVENT_ABORTED and abort_step will contain the step number on which the subevent was aborted. Consider the following example:

subevent_done_status = BT_CONN_LE_CS_SUBEVENT_ABORTED num_steps_reported = 160 abort_step = 100

this would mean that steps from 0 to 99 are complete and steps from 100 to 159 are aborted.

◆ subevent_done_status [2/2]

enum bt_conn_le_cs_subevent_done_status bt_conn_le_cs_subevent_result::subevent_done_status

Subevent status.

For aborted subevents, this will be set to BT_CONN_LE_CS_SUBEVENT_ABORTED and abort_step will contain the step number on which the subevent was aborted. Consider the following example:

subevent_done_status = BT_CONN_LE_CS_SUBEVENT_ABORTED num_steps_reported = 160 abort_step = 100

this would mean that steps from 0 to 99 are complete and steps from 100 to 159 are aborted.

◆ subevent_interval

uint16_t bt_conn_le_cs_procedure_enable_complete::subevent_interval

◆ subevent_len

uint32_t bt_conn_le_cs_procedure_enable_complete::subevent_len

◆ subevents_per_event

uint8_t bt_conn_le_cs_procedure_enable_complete::subevents_per_event

◆ subrate

const struct bt_conn_le_subrating_info* bt_conn_le_info::subrate

Connection subrating parameters.

◆ subrate_changed

void(* bt_conn_cb::subrate_changed) (struct bt_conn *conn, const struct bt_conn_le_subrate_changed *params)

LE Subrate Changed event.

This callback notifies the application that the subrating parameters of the connection may have changed. The connection subrating parameters will be unchanged if status is not BT_HCI_ERR_SUCCESS.

Parameters
connConnection object.
paramsNew subrating parameters.

◆ subrate_factor

uint16_t bt_conn_le_conn_rate_changed::subrate_factor

Connection subrate factor.

Range: BT_HCI_LE_SUBRATE_FACTOR_MIN - BT_HCI_LE_SUBRATE_FACTOR_MAX

◆ subrate_max [1/2]

uint16_t bt_conn_le_conn_rate_param::subrate_max

◆ subrate_max [2/2]

uint16_t bt_conn_le_subrate_param::subrate_max

Maximum subrate factor.

◆ subrate_min [1/2]

uint16_t bt_conn_le_conn_rate_param::subrate_min

◆ subrate_min [2/2]

uint16_t bt_conn_le_subrate_param::subrate_min

Minimum subrate factor.

◆ subversion

uint16_t bt_conn_remote_info::subversion

Per-manufacturer unique revision.

◆ supervision_timeout [1/2]

uint16_t bt_conn_le_subrate_changed::supervision_timeout

Connection Supervision timeout (N * 10 ms).

◆ supervision_timeout [2/2]

uint16_t bt_conn_le_subrate_param::supervision_timeout

Connection Supervision timeout (N * 10 ms).

If using bt_conn_le_subrate_set_defaults, this is the maximum supervision timeout allowed in requests by a peripheral.

◆ supervision_timeout_10ms [1/2]

uint16_t bt_conn_le_conn_rate_changed::supervision_timeout_10ms

Connection Supervision timeout.

Unit: 10 milliseconds

Range: BT_HCI_LE_SUPERVISION_TIMEOUT_MIN - BT_HCI_LE_SUPERVISION_TIMEOUT_MAX

◆ supervision_timeout_10ms [2/2]

uint16_t bt_conn_le_conn_rate_param::supervision_timeout_10ms

Connection Supervision timeout.

Unit: 10 milliseconds

Range: BT_HCI_LE_SUPERVISION_TIMEOUT_MIN - BT_HCI_LE_SUPERVISION_TIMEOUT_MAX

◆ t_fcs_time_us

uint8_t bt_conn_le_cs_config::t_fcs_time_us

Time in microseconds for frequency changes.

◆ t_fcs_times_supported

uint16_t bt_conn_le_cs_capabilities::t_fcs_times_supported

Optional T_FCS time durations during CS steps.

  • Bit 0: 15 us
  • Bit 1: 20 us
  • Bit 2: 30 us
  • Bit 3: 40 us
  • Bit 4: 50 us
  • Bit 5: 60 us
  • Bit 6: 80 us
  • Bit 7: 100 us
  • Bit 8: 120 us

◆ t_ip1_time_us

uint8_t bt_conn_le_cs_config::t_ip1_time_us

Interlude time in microseconds between the RTT packets.

◆ t_ip1_times_supported

uint16_t bt_conn_le_cs_capabilities::t_ip1_times_supported

Optional T_IP1 time durations during CS steps.

  • Bit 0: 10 us
  • Bit 1: 20 us
  • Bit 2: 30 us
  • Bit 3: 40 us
  • Bit 4: 50 us
  • Bit 5: 60 us
  • Bit 6: 80 us

◆ t_ip2_ipt_times_supported

uint16_t bt_conn_le_cs_capabilities::t_ip2_ipt_times_supported

Supported T_IP2_IPT time durations during CS steps.

  • Bit 0: 10 us
  • Bit 1: 20 us
  • Bit 2: 30 us
  • Bit 3: 40 us
  • Bit 4: 50 us
  • Bit 5: 60 us
  • Bit 6: 80 us

◆ t_ip2_time_us

uint8_t bt_conn_le_cs_config::t_ip2_time_us

Interlude time in microseconds between the CS tones.

◆ t_ip2_times_supported

uint16_t bt_conn_le_cs_capabilities::t_ip2_times_supported

Optional T_IP2 time durations during CS steps.

  • Bit 0: 10 us
  • Bit 1: 20 us
  • Bit 2: 30 us
  • Bit 3: 40 us
  • Bit 4: 50 us
  • Bit 5: 60 us
  • Bit 6: 80 us

◆ t_pm_time_us

uint8_t bt_conn_le_cs_config::t_pm_time_us

Time in microseconds for the phase measurement period of the CS tones.

◆ t_pm_times_supported

uint16_t bt_conn_le_cs_capabilities::t_pm_times_supported

Optional T_PM time durations during CS steps.

  • Bit 0: 10 us
  • Bit 1: 20 us

◆ t_sw_ipt_time_supported

uint8_t bt_conn_le_cs_capabilities::t_sw_ipt_time_supported

Supported time in microseconds for the antenna switch period of the CS tones during IPT.

0x00, 0x01, 0x02, 0x04, or 0x0A - Time in microseconds for the antenna switch period of the CS tones

◆ t_sw_time

uint8_t bt_conn_le_cs_capabilities::t_sw_time

Time in microseconds for the antenna switch period of the CS tones.

◆ timeout [1/3]

uint16_t bt_conn_le_create_param::timeout

Connection initiation timeout (N * 10 MS).

Set zero to use the default

CONFIG_BT_CREATE_CONN_TIMEOUT 

timeout.

Note
Unused in bt_conn_le_create_auto

◆ timeout [2/3]

uint16_t bt_conn_le_info::timeout

Connection supervision timeout.

◆ timeout [3/3]

uint16_t bt_le_conn_param::timeout

◆ tone_antenna_config_selection

enum bt_conn_le_cs_tone_antenna_config_selection bt_conn_le_cs_procedure_enable_complete::tone_antenna_config_selection

◆ tx_max_len [1/2]

uint16_t bt_conn_le_data_len_info::tx_max_len

Maximum Link Layer transmission payload size in bytes.

◆ tx_max_len [2/2]

uint16_t bt_conn_le_data_len_param::tx_max_len

Maximum Link Layer transmission payload size in bytes.

◆ tx_max_time [1/2]

uint16_t bt_conn_le_data_len_info::tx_max_time

Maximum Link Layer transmission payload time in us.

◆ tx_max_time [2/2]

uint16_t bt_conn_le_data_len_param::tx_max_time

Maximum Link Layer transmission payload time in us.

◆ tx_phy

uint8_t bt_conn_le_phy_info::tx_phy

◆ tx_power_level

int8_t bt_conn_le_tx_power_report::tx_power_level

Transmit power level.

  • 0xXX - Transmit power level
    • Range: -127 to 20
    • Units: dBm
  • 0x7E - Remote device is not managing power levels on this PHY.
  • 0x7F - Transmit power level is not available

◆ tx_power_level_flag

uint8_t bt_conn_le_tx_power_report::tx_power_level_flag

Bit 0: Transmit power level is at minimum level.

Bit 1: Transmit power level is at maximum level.

◆ tx_power_report

void(* bt_conn_cb::tx_power_report) (struct bt_conn *conn, const struct bt_conn_le_tx_power_report *report)

LE Read Remote Transmit Power Level procedure has completed or LE Transmit Power Reporting event.

This callback notifies the application that either the remote transmit power level has been read from the peer or transmit power level has changed for the local or remote controller when transmit power reporting is enabled for the respective side using bt_conn_le_set_tx_power_report_enable.

Parameters
connConnection object.
reportTransmit power report.

◆ tx_snr_capability

uint8_t bt_conn_le_cs_capabilities::tx_snr_capability

Supported SNR levels used in RTT packets.

  • Bit 0: 18dB
  • Bit 1: 21dB
  • Bit 2: 24dB
  • Bit 3: 27dB
  • Bit 4: 30dB

◆ type [1/3]

enum bt_conn_type bt_conn_info::type

Connection Type.

◆ [] [2/3]

enum { ... } bt_conn_oob_info::type

Type of OOB pairing method.

◆ type [3/3]

uint8_t bt_conn_remote_info::type

Connection Type.

◆ version

uint8_t bt_conn_remote_info::version

Remote Link Layer version.

◆ window

uint16_t bt_conn_le_create_param::window

Scan window (N * 0.625 ms).

Note
When
CONFIG_BT_SCAN_AND_INITIATE_IN_PARALLEL 
is enabled and the application wants to scan and connect in parallel, the Bluetooth Controller may require the scan window used for scanning and connection establishment to be equal to obtain the best performance.

◆ window_coded

uint16_t bt_conn_le_create_param::window_coded

Scan window LE Coded PHY (N * 0.625 MS).

Set zero to use same as LE 1M PHY scan window.

◆ zone

enum bt_conn_le_path_loss_zone bt_conn_le_path_loss_threshold_report::zone

Path Loss zone as documented in Core Spec.

Version 5.4 Vol.4, Part E, 7.7.65.32.