Go to the documentation of this file.
55 #ifndef __BLE_GAPC_H__
56 #define __BLE_GAPC_H__
68 #define GAP_CHNL_MAP_LEN 0x05
69 #define GAP_FEATS_LEN 0x08
70 #define GAP_ADDR_LEN 0x06
71 #define GAP_INVALID_CONN_INDEX 0xFF
75 #define BLE_GAP_ADDR_TYPE_PUBLIC 0x00
76 #define BLE_GAP_ADDR_TYPE_RANDOM_STATIC 0x01
81 #define PHY_OPT_NO_CODING 0x00
82 #define PHY_OPT_S2_CODING 0x01
83 #define PHY_OPT_S8_CODING 0x02
534 void (*app_gap_phy_update_cb)(uint8_t conn_idx, uint8_t status,
const gap_le_phy_ind_t *p_phy);
558 void (*app_gap_adv_start_cb)(uint8_t inst_idx, uint8_t status);
579 void (*app_gap_scan_req_ind_cb)(uint8_t inst_idx,
const gap_bdaddr_t *p_scanner_addr);
589 void (*app_gap_adv_data_update_cb)(uint8_t inst_idx, uint8_t status);
602 void (*app_gap_scan_start_cb)(uint8_t status);
642 void (*app_gap_stop_sync_cb)(uint8_t inst_idx, uint8_t status);
651 void (*app_gap_sync_lost_cb)(uint8_t inst_idx);
666 void (*app_gap_connect_cb)(uint8_t conn_idx, uint8_t status,
const gap_conn_cmp_t *p_conn_param);
677 void (*app_gap_disconnect_cb)(uint8_t conn_idx, uint8_t status, uint8_t reason);
686 void (*app_gap_connect_cancel_cb)(uint8_t status);
694 void (*app_gap_auto_connection_timeout_cb)(void);
719 void (*app_gap_connection_update_cb)(uint8_t conn_idx, uint8_t status,
const gap_conn_update_cmp_t *p_conn_param_update_info);
729 void (*app_gap_connection_update_req_cb)(uint8_t conn_idx,
const gap_conn_param_t *p_conn_param_update_req);
762 void (*app_gap_le_pkt_size_info_cb)(uint8_t conn_idx, uint8_t status,
const gap_le_pkt_size_ind_t *p_supported_data_length_size);
uint16_t suppted_max_rx_octets
Definition: ble_gapc.h:244
uint8_t nb_adv_sets
Definition: ble_gapc.h:262
@ GAP_HCI_AUTHENTICATION_FAILURE
Definition: ble_gapc.h:176
The struct of device version.
Definition: ble_gapc.h:194
@ GAP_HCI_REMOTE_DEV_TERMINATION_DUE_TO_LOW_RESOURCES
Definition: ble_gapc.h:178
@ GAP_LL_ROLE_SLAVE
Definition: ble_gapc.h:139
gap_peer_info_t peer_info
Definition: ble_gapc.h:467
uint16_t suppted_max_tx_time
Definition: ble_gapc.h:242
Peer version info.
Definition: ble_gapc.h:423
The Structure for BLE Connection Arrangement.
Definition: ble_gapc.h:481
LE peer info.
Definition: ble_gapc.h:458
#define __ARRAY_EMPTY
Definition: gr55xx_sys_cfg.h:57
Suggested default data length info.
Definition: ble_gapc.h:252
gap_addr_t gap_addr
Definition: ble_gapc.h:213
uint16_t suggted_max_tx_octets
Definition: ble_gapc.h:253
#define GAP_CHNL_MAP_LEN
Definition: ble_gapc.h:68
uint16_t conhdl
Definition: ble_gapc.h:379
uint16_t conn_idx
Definition: ble_gapc.h:482
uint8_t phy_prim
Definition: ble_gapc.h:326
uint8_t phy
Definition: ble_gapc.h:309
@ GAP_REPORT_TYPE_ADV_EXT
Definition: ble_gapc.h:111
uint8_t hci_ver
Definition: ble_gapc.h:195
@ GAP_LL_ROLE_MASTER
Definition: ble_gapc.h:138
uint16_t lmp_subvers
Definition: ble_gapc.h:425
@ GAP_OPCODE_PER_ADV_LIST_SET
Definition: ble_gapc.h:149
uint8_t lmp_vers
Definition: ble_gapc.h:426
uint16_t length
Definition: ble_gapc.h:331
gap_get_peer_info_op_t
The operation code used to get peer device info.
Definition: ble_gapc.h:103
uint8_t lmp_ver
Definition: ble_gapc.h:196
Get peer info operation struct.
Definition: ble_gapc.h:465
Supported data length size Indication.
Definition: ble_gapc.h:472
uint16_t rx_path_comp
Definition: ble_gapc.h:275
gap_bdaddr_t bd_addr
Definition: ble_gapc.h:313
uint8_t phy_second
Definition: ble_gapc.h:327
Max data length info struct.
Definition: ble_gapc.h:239
gap_psm_manager_op_id_t
Operation code used for LEPSM manager.
Definition: ble_gapc.h:166
@ GAP_GET_PEER_FEATURES
Definition: ble_gapc.h:105
gap_bdaddr_t direct_addr
Definition: ble_gapc.h:323
gap_bdaddr_t broadcaster_addr
Definition: ble_gapc.h:322
gap_adv_report_type_t
Advertising report type.
Definition: ble_gapc.h:110
@ GAP_REPORT_TYPE_SCAN_RSP_EXT
Definition: ble_gapc.h:113
The info of connecting operation.
Definition: ble_gapc.h:416
int8_t rssi
Definition: ble_gapc.h:325
uint8_t op_code
Definition: ble_gapc.h:302
Channel map structure.
Definition: ble_gapc.h:392
Name of peer device indication.
Definition: ble_gapc.h:337
@ GAP_HCI_REMOTE_USER_TERMINATED_CONNECTION
Definition: ble_gapc.h:177
uint16_t length
Definition: ble_gapc.h:268
uint16_t latency
Definition: ble_gapc.h:348
@ GAP_OPCODE_WHITELIST_SET
Definition: ble_gapc.h:148
uint8_t rx_phy
Definition: ble_gapc.h:401
@ GAP_HCI_REMOTE_DEV_TERMINATION_DUE_TO_POWER_OFF
Definition: ble_gapc.h:179
void(* app_ble_init_cmp_cb_t)(void)
BLE initialization completed callback function for application.
Definition: ble_gapc.h:496
@ GAP_HCI_UNSUPPORTED_REMOTE_FEATURE
Definition: ble_gapc.h:180
@ GAP_OPCODE_LEPSM_REGISTER
Definition: ble_gapc.h:167
uint16_t max_tx_octets
Definition: ble_gapc.h:473
uint16_t ble_gap_conn_info_get(uint8_t conn_idx, gap_get_conn_info_op_t opcode)
Get the information of the connection.
LE features info.
Definition: ble_gapc.h:431
uint8_t adv_info
Definition: ble_gapc.h:321
uint16_t sup_timeout
Definition: ble_gapc.h:349
@ GAP_REPORT_INFO_SCAN_ADV_BIT
Definition: ble_gapc.h:123
uint8_t clk_accuracy
Definition: ble_gapc.h:383
uint8_t single_tx
Definition: ble_gapc.h:492
uint16_t ble_gap_latency_set(uint8_t conn_idx, uint16_t latency)
Set connection's Latency.
uint16_t period_adv_intv
Definition: ble_gapc.h:329
gap_addr_t peer_addr
Definition: ble_gapc.h:338
uint16_t intv
Definition: ble_gapc.h:310
Define the chip configuration.
uint8_t peer_addr_type
Definition: ble_gapc.h:385
uint16_t host_subver
Definition: ble_gapc.h:200
The struct of broadcast address with broadcast type.
Definition: ble_gapc.h:212
int8_t tx_pwr
Definition: ble_gapc.h:324
uint16_t interval_min
Definition: ble_gapc.h:366
uint8_t adv_sid
Definition: ble_gapc.h:328
Sync established indication.
Definition: ble_gapc.h:308
@ GAP_GET_CON_CHANNEL_MAP
Definition: ble_gapc.h:96
@ GAP_GET_PEER_VERSION
Definition: ble_gapc.h:104
@ GAP_REPORT_TYPE_SCAN_RSP_LEG
Definition: ble_gapc.h:114
Connection complete info.
Definition: ble_gapc.h:378
uint8_t opcode
Definition: ble_gapc.h:466
uint16_t ble_gap_phy_update(uint8_t conn_idx, uint8_t tx_phys, uint8_t rx_phys, uint8_t phy_opt)
Set the PHY preferences for the connection identified by the connection index.
@ GAP_OPCODE_LEPSM_UNREGISTER
Definition: ble_gapc.h:168
int8_t max_tx_pwr
Definition: ble_gapc.h:234
The gap callback function struct.
Definition: ble_gapc.h:500
int8_t rssi
Definition: ble_gapc.h:407
@ GAP_STOPPED_REASON_CONN_EST
Definition: ble_gapc.h:132
TX power info struct.
Definition: ble_gapc.h:232
gap_adv_report_info_t
Advertising report information.
Definition: ble_gapc.h:120
Connection info.
Definition: ble_gapc.h:406
File that contains error codes.
uint16_t compid
Definition: ble_gapc.h:424
uint32_t interval
Definition: ble_gapc.h:483
Get broadcast address struct.
Definition: ble_gapc.h:219
Set preference slave event duration.
Definition: ble_gapc.h:490
uint16_t duration
Definition: ble_gapc.h:491
uint16_t max_tx_time
Definition: ble_gapc.h:474
uint8_t operation
Definition: ble_gapc.h:295
@ GAP_GET_PHY
Definition: ble_gapc.h:97
uint16_t tx_path_comp
Definition: ble_gapc.h:274
gap_addr_t peer_addr
Definition: ble_gapc.h:386
gap_chnl_map_t chnl_map
Definition: ble_gapc.h:408
@ GAP_GET_CON_RSSI
Definition: ble_gapc.h:95
uint16_t ble_gap_conn_param_update(uint8_t conn_idx, const gap_conn_update_param_t *p_conn_param)
Change the Link Layer connection parameters of a connection.
gap_sugg_dflt_data_len_t sugg_dflt_data_len
Definition: ble_gapc.h:284
gap_conn_info_t info
Definition: ble_gapc.h:418
uint8_t per_sync_idx
Definition: ble_gapc.h:330
gap_nb_adv_sets_t nb_adv_sets
Definition: ble_gapc.h:286
gap_dev_adv_tx_power_t adv_tx_power
Definition: ble_gapc.h:283
RF path compensation values info.
Definition: ble_gapc.h:273
gap_dev_tx_power_t dev_tx_power
Definition: ble_gapc.h:288
uint16_t interval_max
Definition: ble_gapc.h:368
TX power info struct.
Definition: ble_gapc.h:226
gap_dev_version_ind_t dev_version
Definition: ble_gapc.h:281
uint16_t max_rx_time
Definition: ble_gapc.h:476
uint16_t con_latency
Definition: ble_gapc.h:381
uint8_t addr_type
Definition: ble_gapc.h:339
uint8_t opcode
Definition: ble_gapc.h:417
@ GAP_REPORT_INFO_CONN_ADV_BIT
Definition: ble_gapc.h:122
uint16_t max_rx_octets
Definition: ble_gapc.h:475
Read resolvable address info struct.
Definition: ble_gapc.h:301
uint16_t ble_gap_con_plan_consult(uint8_t *p_act_num, gap_con_plan_tag_t **p_conn_plan_arr)
Consult BLE connection activity plan situation function.
gap_get_conn_info_op_t
The operation code used to get connection info.
Definition: ble_gapc.h:94
@ GAP_REPORT_INFO_DIR_ADV_BIT
Definition: ble_gapc.h:124
#define GAP_FEATS_LEN
Definition: ble_gapc.h:69
gap_dev_rf_path_comp_ind_t dev_rf_path_comp
Definition: ble_gapc.h:289
@ GAP_OPCODE_PRIVACY_MODE_SET
Definition: ble_gapc.h:150
gap_le_phy_ind_t phy
Definition: ble_gapc.h:409
uint16_t ble_gap_data_length_update(uint8_t conn_idx, uint16_t tx_octects, uint16_t tx_time)
The suggested maximum transmission packet size and maximum packet transmission time to be used for a ...
uint16_t sync_hdl
Definition: ble_gapc.h:314
The struct of address.
Definition: ble_gapc.h:206
uint16_t con_interval
Definition: ble_gapc.h:380
gap_bdaddr_t bd_addr
Definition: ble_gapc.h:221
@ GAP_HCI_CONN_INTERVAL_UNACCEPTABLE
Definition: ble_gapc.h:182
gap_rslv_addr_read_op_id_t
Operation code used to read resolvable address.
Definition: ble_gapc.h:157
uint16_t suppted_max_tx_octets
Definition: ble_gapc.h:240
uint16_t hci_subver
Definition: ble_gapc.h:198
PHY info.
Definition: ble_gapc.h:399
gap_dev_info_t dev_info
Definition: ble_gapc.h:296
uint16_t sup_to
Definition: ble_gapc.h:382
uint16_t manuf_name
Definition: ble_gapc.h:201
uint8_t chan_sel_algo
Definition: ble_gapc.h:410
uint16_t sup_timeout
Definition: ble_gapc.h:360
Get device info operation struct.
Definition: ble_gapc.h:294
uint16_t ble_gap_disconnect_with_reason(uint8_t conn_idx, gap_disconn_reason_t reason)
Terminate an existing connection with a specified reason.
@ GAP_STOPPED_REASON_TIMEOUT
Definition: ble_gapc.h:130
#define GAP_ADDR_LEN
Definition: ble_gapc.h:70
gap_disconn_reason_t
The specified reason for terminating a connection.
Definition: ble_gapc.h:175
uint16_t lmp_subver
Definition: ble_gapc.h:199
uint32_t offset
Definition: ble_gapc.h:484
Connection parameter used to update connection parameters.
Definition: ble_gapc.h:346
gap_max_adv_data_len_ind_t max_adv_data_len
Definition: ble_gapc.h:287
gap_peer_features_ind_t peer_features
Definition: ble_gapc.h:460
uint16_t ble_gap_disconnect(uint8_t conn_idx)
Terminate an existing connection.
uint8_t index
Definition: ble_gapc.h:220
The parameter of connection.
Definition: ble_gapc.h:354
uint32_t duration
Definition: ble_gapc.h:485
gap_ll_role_type_t
Device role of LL layer type.
Definition: ble_gapc.h:137
@ GAP_OPCODE_LOCAL_RSLV_ADDR_READ
Definition: ble_gapc.h:158
@ GAP_REPORT_TYPE_PER_ADV
Definition: ble_gapc.h:115
Device info.
Definition: ble_gapc.h:280
uint16_t interval
Definition: ble_gapc.h:347
uint8_t tx_phy
Definition: ble_gapc.h:400
gap_stopped_reason_t
Stop reason code.
Definition: ble_gapc.h:129
int8_t min_tx_pwr
Definition: ble_gapc.h:233
uint16_t suppted_max_rx_time
Definition: ble_gapc.h:246
gap_addr_t gap_addr
Definition: ble_gapc.h:303
gap_ll_role_type_t ll_role
Definition: ble_gapc.h:387
uint16_t ble_gap_conn_param_update_reply(uint8_t conn_idx, bool accept)
Connection param update reply to peer device.
APP receives the extended advertising report indication info struct.
Definition: ble_gapc.h:319
uint16_t suggted_max_tx_time
Definition: ble_gapc.h:255
uint8_t adv_type
Definition: ble_gapc.h:320
uint8_t addr_type
Definition: ble_gapc.h:214
@ GAP_GET_CHAN_SEL_ALGO
Definition: ble_gapc.h:98
The parameter of update connection.
Definition: ble_gapc.h:365
Number of available advertising sets info.
Definition: ble_gapc.h:261
gap_max_data_len_t max_data_len
Definition: ble_gapc.h:285
gap_get_bd_addr_t get_bd_addr
Definition: ble_gapc.h:282
@ GAP_HCI_PAIRING_WITH_UNIT_KEY_UNSUPPORTED
Definition: ble_gapc.h:181
int8_t power_lvl
Definition: ble_gapc.h:227
@ GAP_REPORT_INFO_COMPLETE_BIT
Definition: ble_gapc.h:121
Maximum advertising data length info.
Definition: ble_gapc.h:267
uint16_t ce_len
Definition: ble_gapc.h:372
@ GAP_STOPPED_REASON_ON_USER
Definition: ble_gapc.h:131
uint16_t slave_latency
Definition: ble_gapc.h:370
uint16_t interval_min
Definition: ble_gapc.h:355
uint8_t clk_acc
Definition: ble_gapc.h:312
uint8_t adv_sid
Definition: ble_gapc.h:311
uint16_t slave_latency
Definition: ble_gapc.h:359
@ GAP_REPORT_TYPE_ADV_LEG
Definition: ble_gapc.h:112
uint8_t host_ver
Definition: ble_gapc.h:197
uint16_t interval_max
Definition: ble_gapc.h:357
uint16_t ble_gap_peer_info_get(uint8_t conn_idx, gap_get_peer_info_op_t opcode)
Get the information of the peer device.
gap_peer_version_ind_t peer_version
Definition: ble_gapc.h:459
gap_param_set_op_id_t
Operation code used to set param(s).
Definition: ble_gapc.h:146
uint8_t name_len
Definition: ble_gapc.h:340
@ GAP_OPCODE_CHNL_MAP_SET
Definition: ble_gapc.h:147
uint16_t sup_timeout
Definition: ble_gapc.h:371
@ GAP_OPCODE_PEER_RSLV_ADDR_READ
Definition: ble_gapc.h:159