S115 SoftDevice for nRF54L15/nRF54L10/nRF54L05 API documentation 10.0.0
Loading...
Searching...
No Matches
ble_gap.h
1/*
2 * Copyright (c) Nordic Semiconductor ASA
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without modification,
6 * are permitted provided that the following conditions are met:
7 *
8 * 1. Redistributions of source code must retain the above copyright notice, this
9 * list of conditions and the following disclaimer.
10 *
11 * 2. Redistributions in binary form, except as embedded into a Nordic
12 * Semiconductor ASA integrated circuit in a product or a software update for
13 * such product, must reproduce the above copyright notice, this list of
14 * conditions and the following disclaimer in the documentation and/or other
15 * materials provided with the distribution.
16 *
17 * 3. Neither the name of Nordic Semiconductor ASA nor the names of its
18 * contributors may be used to endorse or promote products derived from this
19 * software without specific prior written permission.
20 *
21 * 4. This software, with or without modification, must only be used with a
22 * Nordic Semiconductor ASA integrated circuit.
23 *
24 * 5. Any software provided in binary form under this license must not be reverse
25 * engineered, decompiled, modified and/or disassembled.
26 *
27 * THIS SOFTWARE IS PROVIDED BY NORDIC SEMICONDUCTOR ASA "AS IS" AND ANY EXPRESS
28 * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
29 * OF MERCHANTABILITY, NONINFRINGEMENT, AND FITNESS FOR A PARTICULAR PURPOSE ARE
30 * DISCLAIMED. IN NO EVENT SHALL NORDIC SEMICONDUCTOR ASA OR CONTRIBUTORS BE
31 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
32 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
33 * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
34 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
35 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
36 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
37 */
38
45#ifndef BLE_GAP_H__
46#define BLE_GAP_H__
47
48#include <stdint.h>
49#include "nrf_svc.h"
50#include "nrf_error.h"
51#include "ble_hci.h"
52#include "ble_ranges.h"
53#include "ble_types.h"
54#include "ble_err.h"
55
56#ifdef __cplusplus
57extern "C" {
58#endif
59
66{
101};
102
128
139
153
161
162
170#define BLE_ERROR_GAP_UUID_LIST_MISMATCH (NRF_GAP_ERR_BASE + 0x000)
171#define BLE_ERROR_GAP_DISCOVERABLE_WITH_WHITELIST (NRF_GAP_ERR_BASE + 0x001)
172#define BLE_ERROR_GAP_INVALID_BLE_ADDR (NRF_GAP_ERR_BASE + 0x002)
173#define BLE_ERROR_GAP_WHITELIST_IN_USE (NRF_GAP_ERR_BASE + 0x003)
174#define BLE_ERROR_GAP_DEVICE_IDENTITIES_IN_USE (NRF_GAP_ERR_BASE + 0x004)
175#define BLE_ERROR_GAP_DEVICE_IDENTITIES_DUPLICATE (NRF_GAP_ERR_BASE + 0x005)
176#define BLE_ERROR_GAP_ZERO_IRK_NOT_ALLOWED (NRF_GAP_ERR_BASE + 0x006)
182#define BLE_GAP_ROLE_INVALID 0x0
183#define BLE_GAP_ROLE_PERIPH 0x1
189#define BLE_GAP_TIMEOUT_SRC_CONN 0x02
190#define BLE_GAP_TIMEOUT_SRC_AUTH_PAYLOAD 0x03
196#define BLE_GAP_ADDR_TYPE_PUBLIC 0x00
197#define BLE_GAP_ADDR_TYPE_RANDOM_STATIC 0x01
198#define BLE_GAP_ADDR_TYPE_RANDOM_PRIVATE_RESOLVABLE 0x02
199#define BLE_GAP_ADDR_TYPE_RANDOM_PRIVATE_NON_RESOLVABLE 0x03
204#define BLE_GAP_DEFAULT_PRIVATE_ADDR_CYCLE_INTERVAL_S (900) /* 15 minutes. */
206#define BLE_GAP_MAX_PRIVATE_ADDR_CYCLE_INTERVAL_S (41400) /* 11 hours 30 minutes. */
207
208
210#define BLE_GAP_ADDR_LEN (6)
211
214#define BLE_GAP_PRIVACY_MODE_OFF 0x00
215#define BLE_GAP_PRIVACY_MODE_DEVICE_PRIVACY 0x01
216#define BLE_GAP_PRIVACY_MODE_NETWORK_PRIVACY 0x02
222#define BLE_GAP_POWER_LEVEL_INVALID 127
223
225#define BLE_GAP_ADV_SET_HANDLE_NOT_SET (0xFF)
226
228#define BLE_GAP_ADV_SET_COUNT_DEFAULT (1)
229
231#define BLE_GAP_ADV_SET_COUNT_MAX (1)
232
235#define BLE_GAP_ADV_SET_DATA_SIZE_MAX (31)
240#define BLE_GAP_ADV_REPORT_SET_ID_NOT_AVAILABLE 0xFF
241
244#define BLE_GAP_EVT_ADV_SET_TERMINATED_REASON_TIMEOUT 0x01
245#define BLE_GAP_EVT_ADV_SET_TERMINATED_REASON_LIMIT_REACHED 0x02
251#define BLE_GAP_AD_TYPE_FLAGS 0x01
252#define BLE_GAP_AD_TYPE_16BIT_SERVICE_UUID_MORE_AVAILABLE 0x02
253#define BLE_GAP_AD_TYPE_16BIT_SERVICE_UUID_COMPLETE 0x03
254#define BLE_GAP_AD_TYPE_32BIT_SERVICE_UUID_MORE_AVAILABLE 0x04
255#define BLE_GAP_AD_TYPE_32BIT_SERVICE_UUID_COMPLETE 0x05
256#define BLE_GAP_AD_TYPE_128BIT_SERVICE_UUID_MORE_AVAILABLE 0x06
257#define BLE_GAP_AD_TYPE_128BIT_SERVICE_UUID_COMPLETE 0x07
258#define BLE_GAP_AD_TYPE_SHORT_LOCAL_NAME 0x08
259#define BLE_GAP_AD_TYPE_COMPLETE_LOCAL_NAME 0x09
260#define BLE_GAP_AD_TYPE_TX_POWER_LEVEL 0x0A
261#define BLE_GAP_AD_TYPE_CLASS_OF_DEVICE 0x0D
262#define BLE_GAP_AD_TYPE_SIMPLE_PAIRING_HASH_C 0x0E
263#define BLE_GAP_AD_TYPE_SIMPLE_PAIRING_RANDOMIZER_R 0x0F
264#define BLE_GAP_AD_TYPE_SECURITY_MANAGER_TK_VALUE 0x10
265#define BLE_GAP_AD_TYPE_SECURITY_MANAGER_OOB_FLAGS 0x11
266#define BLE_GAP_AD_TYPE_SLAVE_CONNECTION_INTERVAL_RANGE 0x12
267#define BLE_GAP_AD_TYPE_SOLICITED_SERVICE_UUIDS_16BIT 0x14
268#define BLE_GAP_AD_TYPE_SOLICITED_SERVICE_UUIDS_128BIT 0x15
269#define BLE_GAP_AD_TYPE_SERVICE_DATA 0x16
270#define BLE_GAP_AD_TYPE_PUBLIC_TARGET_ADDRESS 0x17
271#define BLE_GAP_AD_TYPE_RANDOM_TARGET_ADDRESS 0x18
272#define BLE_GAP_AD_TYPE_APPEARANCE 0x19
273#define BLE_GAP_AD_TYPE_ADVERTISING_INTERVAL 0x1A
274#define BLE_GAP_AD_TYPE_LE_BLUETOOTH_DEVICE_ADDRESS 0x1B
275#define BLE_GAP_AD_TYPE_LE_ROLE 0x1C
276#define BLE_GAP_AD_TYPE_SIMPLE_PAIRING_HASH_C256 0x1D
277#define BLE_GAP_AD_TYPE_SIMPLE_PAIRING_RANDOMIZER_R256 0x1E
278#define BLE_GAP_AD_TYPE_SERVICE_DATA_32BIT_UUID 0x20
279#define BLE_GAP_AD_TYPE_SERVICE_DATA_128BIT_UUID 0x21
280#define BLE_GAP_AD_TYPE_LESC_CONFIRMATION_VALUE 0x22
281#define BLE_GAP_AD_TYPE_LESC_RANDOM_VALUE 0x23
282#define BLE_GAP_AD_TYPE_URI 0x24
283#define BLE_GAP_AD_TYPE_3D_INFORMATION_DATA 0x3D
284#define BLE_GAP_AD_TYPE_MANUFACTURER_SPECIFIC_DATA 0xFF
290#define BLE_GAP_ADV_FLAG_LE_LIMITED_DISC_MODE (0x01)
291#define BLE_GAP_ADV_FLAG_LE_GENERAL_DISC_MODE (0x02)
292#define BLE_GAP_ADV_FLAG_BR_EDR_NOT_SUPPORTED (0x04)
293#define BLE_GAP_ADV_FLAG_LE_BR_EDR_CONTROLLER (0x08)
294#define BLE_GAP_ADV_FLAG_LE_BR_EDR_HOST (0x10)
295#define BLE_GAP_ADV_FLAGS_LE_ONLY_LIMITED_DISC_MODE (BLE_GAP_ADV_FLAG_LE_LIMITED_DISC_MODE | BLE_GAP_ADV_FLAG_BR_EDR_NOT_SUPPORTED)
296#define BLE_GAP_ADV_FLAGS_LE_ONLY_GENERAL_DISC_MODE (BLE_GAP_ADV_FLAG_LE_GENERAL_DISC_MODE | BLE_GAP_ADV_FLAG_BR_EDR_NOT_SUPPORTED)
302#define BLE_GAP_ADV_INTERVAL_MIN 0x000020
303#define BLE_GAP_ADV_INTERVAL_MAX 0xFFFFFF
317#define BLE_GAP_ADV_TYPE_CONNECTABLE_SCANNABLE_UNDIRECTED 0x01
319#define BLE_GAP_ADV_TYPE_CONNECTABLE_NONSCANNABLE_DIRECTED_HIGH_DUTY_CYCLE 0x02
327#define BLE_GAP_ADV_TYPE_CONNECTABLE_NONSCANNABLE_DIRECTED 0x03
330#define BLE_GAP_ADV_TYPE_NONCONNECTABLE_SCANNABLE_UNDIRECTED 0x04
332#define BLE_GAP_ADV_TYPE_NONCONNECTABLE_NONSCANNABLE_UNDIRECTED 0x05
338#define BLE_GAP_ADV_FP_ANY 0x00
339#define BLE_GAP_ADV_FP_FILTER_SCANREQ 0x01
340#define BLE_GAP_ADV_FP_FILTER_CONNREQ 0x02
341#define BLE_GAP_ADV_FP_FILTER_BOTH 0x03
347#define BLE_GAP_ADV_TIMEOUT_HIGH_DUTY_MAX (128)
348#define BLE_GAP_ADV_TIMEOUT_LIMITED_MAX (18000)
349#define BLE_GAP_ADV_TIMEOUT_GENERAL_UNLIMITED (0)
355#define BLE_GAP_IO_CAPS_DISPLAY_ONLY 0x00
356#define BLE_GAP_IO_CAPS_DISPLAY_YESNO 0x01
357#define BLE_GAP_IO_CAPS_KEYBOARD_ONLY 0x02
358#define BLE_GAP_IO_CAPS_NONE 0x03
359#define BLE_GAP_IO_CAPS_KEYBOARD_DISPLAY 0x04
365#define BLE_GAP_AUTH_KEY_TYPE_NONE 0x00
366#define BLE_GAP_AUTH_KEY_TYPE_PASSKEY 0x01
367#define BLE_GAP_AUTH_KEY_TYPE_OOB 0x02
373#define BLE_GAP_KP_NOT_TYPE_PASSKEY_START 0x00
374#define BLE_GAP_KP_NOT_TYPE_PASSKEY_DIGIT_IN 0x01
375#define BLE_GAP_KP_NOT_TYPE_PASSKEY_DIGIT_OUT 0x02
376#define BLE_GAP_KP_NOT_TYPE_PASSKEY_CLEAR 0x03
377#define BLE_GAP_KP_NOT_TYPE_PASSKEY_END 0x04
383#define BLE_GAP_SEC_STATUS_SUCCESS 0x00
384#define BLE_GAP_SEC_STATUS_PASSKEY_ENTRY_FAILED 0x01
385#define BLE_GAP_SEC_STATUS_OOB_NOT_AVAILABLE 0x02
386#define BLE_GAP_SEC_STATUS_AUTH_REQ 0x03
387#define BLE_GAP_SEC_STATUS_CONFIRM_VALUE 0x04
388#define BLE_GAP_SEC_STATUS_PAIRING_NOT_SUPP 0x05
389#define BLE_GAP_SEC_STATUS_ENC_KEY_SIZE 0x06
390#define BLE_GAP_SEC_STATUS_SMP_CMD_UNSUPPORTED 0x07
391#define BLE_GAP_SEC_STATUS_UNSPECIFIED 0x08
392#define BLE_GAP_SEC_STATUS_REPEATED_ATTEMPTS 0x09
393#define BLE_GAP_SEC_STATUS_INVALID_PARAMS 0x0A
394#define BLE_GAP_SEC_STATUS_DHKEY_FAILURE 0x0B
395#define BLE_GAP_SEC_STATUS_NUM_COMP_FAILURE 0x0C
396#define BLE_GAP_SEC_STATUS_BR_EDR_IN_PROG 0x0D
397#define BLE_GAP_SEC_STATUS_X_TRANS_KEY_DISALLOWED 0x0E
398#define BLE_GAP_SEC_STATUS_KEY_REJECTED 0x0F
399#define BLE_GAP_SEC_STATUS_BUSY 0x10
400#define BLE_GAP_SEC_STATUS_TIMEOUT 0x81
401#define BLE_GAP_SEC_STATUS_PDU_INVALID 0x82
407#define BLE_GAP_SEC_STATUS_SOURCE_LOCAL 0x00
408#define BLE_GAP_SEC_STATUS_SOURCE_REMOTE 0x01
415#define BLE_GAP_CONN_INTVL_MS_TO_UNITS(CI_MS) ((uint16_t)((CI_MS) / 1.25))
422#define BLE_GAP_CP_MIN_CONN_INTVL_NONE 0xFFFF
423#define BLE_GAP_CP_MIN_CONN_INTVL_MIN 0x0006
424#define BLE_GAP_CP_MIN_CONN_INTVL_MAX 0x0C80
425#define BLE_GAP_CP_MAX_CONN_INTVL_NONE 0xFFFF
426#define BLE_GAP_CP_MAX_CONN_INTVL_MIN 0x0006
427#define BLE_GAP_CP_MAX_CONN_INTVL_MAX 0x0C80
428#define BLE_GAP_CP_SLAVE_LATENCY_MAX 0x01F3
429#define BLE_GAP_CP_CONN_SUP_TIMEOUT_NONE 0xFFFF
430#define BLE_GAP_CP_CONN_SUP_TIMEOUT_MIN 0x000A
431#define BLE_GAP_CP_CONN_SUP_TIMEOUT_MAX 0x0C80
436#define BLE_GAP_DEVNAME_DEFAULT "nRF5x"
437#define BLE_GAP_DEVNAME_DEFAULT_LEN 31
438#define BLE_GAP_DEVNAME_MAX_LEN 248
442#define BLE_GAP_RSSI_UNAVAILABLE 127
443
445#define BLE_GAP_RSSI_THRESHOLD_INVALID 0xFF
446
449#define BLE_GAP_PHY_AUTO 0x00
450#define BLE_GAP_PHY_1MBPS 0x01
451#define BLE_GAP_PHY_2MBPS 0x02
452#define BLE_GAP_PHY_CODED 0x04
453#define BLE_GAP_PHY_NOT_SET 0xFF
456#define BLE_GAP_PHYS_SUPPORTED (BLE_GAP_PHY_1MBPS | BLE_GAP_PHY_2MBPS)
465#define BLE_GAP_CONN_SEC_MODE_SET_NO_ACCESS(ptr) do {(ptr)->sm = 0; (ptr)->lv = 0;} while(0)
467#define BLE_GAP_CONN_SEC_MODE_SET_OPEN(ptr) do {(ptr)->sm = 1; (ptr)->lv = 1;} while(0)
469#define BLE_GAP_CONN_SEC_MODE_SET_ENC_NO_MITM(ptr) do {(ptr)->sm = 1; (ptr)->lv = 2;} while(0)
471#define BLE_GAP_CONN_SEC_MODE_SET_ENC_WITH_MITM(ptr) do {(ptr)->sm = 1; (ptr)->lv = 3;} while(0)
473#define BLE_GAP_CONN_SEC_MODE_SET_LESC_ENC_WITH_MITM(ptr) do {(ptr)->sm = 1; (ptr)->lv = 4;} while(0)
478#define BLE_GAP_SEC_RAND_LEN 8
479
480
482#define BLE_GAP_SEC_KEY_LEN 16
483
484
486#define BLE_GAP_LESC_P256_PK_LEN 64
487
488
490#define BLE_GAP_LESC_DHKEY_LEN 32
491
492
494#define BLE_GAP_PASSKEY_LEN 6
495
496
498#define BLE_GAP_WHITELIST_ADDR_MAX_COUNT (8)
499
500
502#define BLE_GAP_DEVICE_IDENTITIES_MAX_COUNT (8)
503
504
506#define BLE_GAP_CONN_COUNT_DEFAULT (1)
507
508
516#define BLE_GAP_EVENT_LENGTH_MIN (2)
517#define BLE_GAP_EVENT_LENGTH_1MBPS_PHY_MIN (2)
518#define BLE_GAP_EVENT_LENGTH_2MBPS_PHY_MIN (1)
519#define BLE_GAP_EVENT_LENGTH_DEFAULT (3)
525#define BLE_GAP_ROLE_COUNT_PERIPH_DEFAULT (1)
526#define BLE_GAP_ROLE_COUNT_COMBINED_MAX (20)
530#define BLE_GAP_DATA_LENGTH_AUTO 0
531
534#define BLE_GAP_AUTH_PAYLOAD_TIMEOUT_MAX (48000)
535#define BLE_GAP_AUTH_PAYLOAD_TIMEOUT_MIN (1)
540#define BLE_GAP_SEC_MODE 0x00
548#define BLE_GAP_CHAR_INCL_CONFIG_INCLUDE (0)
549#define BLE_GAP_CHAR_INCL_CONFIG_EXCLUDE_WITH_SPACE (1)
555#define BLE_GAP_CHAR_INCL_CONFIG_EXCLUDE_WITHOUT_SPACE (2)
563#define BLE_GAP_PPCP_INCL_CONFIG_DEFAULT (BLE_GAP_CHAR_INCL_CONFIG_INCLUDE)
564#define BLE_GAP_CAR_INCL_CONFIG_DEFAULT (BLE_GAP_CHAR_INCL_CONFIG_INCLUDE)
569#define BLE_GAP_SLAVE_LATENCY_ENABLE (0)
572#define BLE_GAP_SLAVE_LATENCY_DISABLE (1)
575#define BLE_GAP_SLAVE_LATENCY_WAIT_FOR_ACK (2)
585typedef struct
586{
587 uint8_t type;
588 uint8_t anonymous : 1;
589 uint8_t include_tx_power : 1;
591
592
594typedef struct
595{
596 uint8_t addr_id_peer : 1;
602 uint8_t addr_type : 7;
603 uint8_t addr[BLE_GAP_ADDR_LEN];
605
606
618typedef struct
619{
622 uint16_t slave_latency;
625
634typedef struct
635{
636 uint8_t sm : 4;
637 uint8_t lv : 4;
640
641
648
650typedef struct
651{
652 uint8_t irk[BLE_GAP_SEC_KEY_LEN];
654
655
661typedef uint8_t ble_gap_ch_mask_t[5];
662
663
719
733
759
760
769typedef struct
770{
771 uint8_t tx_phys;
772 uint8_t rx_phys;
774
776typedef struct
777{
778 uint8_t enc : 1;
779 uint8_t id : 1;
781
782
784typedef struct
785{
786 uint8_t bond : 1;
787 uint8_t mitm : 1;
788 uint8_t lesc : 1;
789 uint8_t keypress : 1;
790 uint8_t io_caps : 3;
791 uint8_t oob : 1;
796 uint8_t min_key_size;
797 uint8_t max_key_size;
801
802
804typedef struct
805{
806 uint8_t ltk[BLE_GAP_SEC_KEY_LEN];
807 uint8_t lesc : 1;
808 uint8_t auth : 1;
809 uint8_t ltk_len : 6;
811
812
814typedef struct
815{
816 uint16_t ediv;
817 uint8_t rand[BLE_GAP_SEC_RAND_LEN];
819
820
822typedef struct
823{
826
827
829typedef struct
830{
833
834
842
843
854
855
857typedef struct
858{
859 uint8_t reason;
861
862
868
874
876typedef struct
877{
878 uint8_t status;
879 uint8_t tx_phy;
880 uint8_t rx_phy;
882
888
889
898
900typedef struct
901{
902 uint8_t passkey[BLE_GAP_PASSKEY_LEN];
903 uint8_t match_request : 1;
907
909typedef struct
910{
911 uint8_t kp_not;
913
914
916typedef struct
917{
918 uint8_t key_type;
920
928
929
933typedef struct
934{
935 uint8_t lv1 : 1;
936 uint8_t lv2 : 1;
937 uint8_t lv3 : 1;
938 uint8_t lv4 : 1;
940
941
948
949
956
957
966
967
974
975
977typedef struct
978{
979 uint16_t max_tx_octets;
980 uint16_t max_rx_octets;
981 uint16_t max_tx_time_us;
982 uint16_t max_rx_time_us;
984
985
993
994
1006
1007
1013
1014
1016typedef struct
1017{
1018 uint8_t src;
1020
1021
1023typedef struct
1024{
1025 int8_t rssi;
1027 uint8_t ch_index;
1029
1039
1049
1055
1062
1063
1091
1092
1101typedef struct
1102{
1103 uint8_t conn_count;
1105 uint16_t event_length;
1112
1113
1127typedef struct
1128{
1132
1133
1170
1171
1173typedef struct
1174{
1175 uint8_t include_cfg;
1179
1180
1182typedef struct
1183{
1184 uint8_t include_cfg;
1187
1198
1199
1224typedef struct
1225{
1226 uint16_t conn_handle;
1227 uint8_t ch_map[5];
1229
1230
1243typedef struct
1244{
1245 uint16_t conn_handle;
1246 uint8_t disable;
1248
1249
1270typedef struct
1271{
1272 uint8_t const * p_passkey;
1274
1275
1300
1309
1343
1344
1356
1357
1374SVCALL(SD_BLE_GAP_ADV_ADDR_GET, uint32_t, sd_ble_gap_adv_addr_get(uint8_t adv_handle, ble_gap_addr_t *p_addr));
1375
1376
1395SVCALL(SD_BLE_GAP_WHITELIST_SET, uint32_t, sd_ble_gap_whitelist_set(ble_gap_addr_t const * const * pp_wl_addrs, uint8_t len));
1396
1397
1424SVCALL(SD_BLE_GAP_DEVICE_IDENTITIES_SET, uint32_t, sd_ble_gap_device_identities_set(ble_gap_id_key_t const * const * pp_id_keys, ble_gap_irk_t const * const * pp_local_irks, uint8_t len));
1425
1426
1448
1449
1462
1463
1506SVCALL(SD_BLE_GAP_ADV_SET_CONFIGURE, uint32_t, sd_ble_gap_adv_set_configure(uint8_t *p_adv_handle, ble_gap_adv_data_t const *p_adv_data, ble_gap_adv_params_t const *p_adv_params));
1507
1508
1551SVCALL(SD_BLE_GAP_ADV_START, uint32_t, sd_ble_gap_adv_start(uint8_t adv_handle, uint8_t conn_cfg_tag));
1552
1553
1566SVCALL(SD_BLE_GAP_ADV_STOP, uint32_t, sd_ble_gap_adv_stop(uint8_t adv_handle));
1567
1568
1598SVCALL(SD_BLE_GAP_CONN_PARAM_UPDATE, uint32_t, sd_ble_gap_conn_param_update(uint16_t conn_handle, ble_gap_conn_params_t const *p_conn_params));
1599
1600
1622SVCALL(SD_BLE_GAP_DISCONNECT, uint32_t, sd_ble_gap_disconnect(uint16_t conn_handle, uint8_t hci_status_code));
1623
1624
1647SVCALL(SD_BLE_GAP_TX_POWER_SET, uint32_t, sd_ble_gap_tx_power_set(uint8_t role, uint16_t handle, int8_t tx_power));
1648
1649
1657SVCALL(SD_BLE_GAP_APPEARANCE_SET, uint32_t, sd_ble_gap_appearance_set(uint16_t appearance));
1658
1659
1667SVCALL(SD_BLE_GAP_APPEARANCE_GET, uint32_t, sd_ble_gap_appearance_get(uint16_t *p_appearance));
1668
1669
1680SVCALL(SD_BLE_GAP_PPCP_SET, uint32_t, sd_ble_gap_ppcp_set(ble_gap_conn_params_t const *p_conn_params));
1681
1682
1693
1694
1710SVCALL(SD_BLE_GAP_DEVICE_NAME_SET, uint32_t, sd_ble_gap_device_name_set(ble_gap_conn_sec_mode_t const *p_write_perm, uint8_t const *p_dev_name, uint16_t len));
1711
1712
1727SVCALL(SD_BLE_GAP_DEVICE_NAME_GET, uint32_t, sd_ble_gap_device_name_get(uint8_t *p_dev_name, uint16_t *p_len));
1728
1729
1765SVCALL(SD_BLE_GAP_AUTHENTICATE, uint32_t, sd_ble_gap_authenticate(uint16_t conn_handle, ble_gap_sec_params_t const *p_sec_params));
1766
1767
1813SVCALL(SD_BLE_GAP_SEC_PARAMS_REPLY, uint32_t, sd_ble_gap_sec_params_reply(uint16_t conn_handle, uint8_t sec_status, ble_gap_sec_params_t const *p_sec_params, ble_gap_sec_keyset_t const *p_sec_keyset));
1814
1815
1844SVCALL(SD_BLE_GAP_AUTH_KEY_REPLY, uint32_t, sd_ble_gap_auth_key_reply(uint16_t conn_handle, uint8_t key_type, uint8_t const *p_key));
1845
1846
1882SVCALL(SD_BLE_GAP_LESC_DHKEY_REPLY, uint32_t, sd_ble_gap_lesc_dhkey_reply(uint16_t conn_handle, uint8_t sec_status, ble_gap_lesc_dhkey_t const *p_dhkey));
1883
1884
1903SVCALL(SD_BLE_GAP_KEYPRESS_NOTIFY, uint32_t, sd_ble_gap_keypress_notify(uint16_t conn_handle, uint8_t kp_not));
1904
1905
1923SVCALL(SD_BLE_GAP_LESC_OOB_DATA_GET, uint32_t, sd_ble_gap_lesc_oob_data_get(uint16_t conn_handle, ble_gap_lesc_p256_pk_t const *p_pk_own, ble_gap_lesc_oob_data_t *p_oobd_own));
1924
1925
1954SVCALL(SD_BLE_GAP_LESC_OOB_DATA_SET, uint32_t, sd_ble_gap_lesc_oob_data_set(uint16_t conn_handle, ble_gap_lesc_oob_data_t const *p_oobd_own, ble_gap_lesc_oob_data_t const *p_oobd_peer));
1955
1956
1976SVCALL(SD_BLE_GAP_SEC_INFO_REPLY, uint32_t, sd_ble_gap_sec_info_reply(uint16_t conn_handle, ble_gap_enc_info_t const *p_enc_info));
1977
1978
1988SVCALL(SD_BLE_GAP_CONN_SEC_GET, uint32_t, sd_ble_gap_conn_sec_get(uint16_t conn_handle, ble_gap_conn_sec_t *p_conn_sec));
1989
1990
2041SVCALL(SD_BLE_GAP_PHY_UPDATE, uint32_t, sd_ble_gap_phy_update(uint16_t conn_handle, ble_gap_phys_t const *p_gap_phys));
2042
2043
2078SVCALL(SD_BLE_GAP_DATA_LENGTH_UPDATE, uint32_t, sd_ble_gap_data_length_update(uint16_t conn_handle, ble_gap_data_length_params_t const *p_dl_params, ble_gap_data_length_limitation_t *p_dl_limitation));
2079
2080
2102SVCALL(SD_BLE_GAP_NEXT_CONN_EVT_COUNTER_GET, uint32_t, sd_ble_gap_next_conn_evt_counter_get(uint16_t conn_handle, uint16_t * p_counter));
2103
2104
2128SVCALL(SD_BLE_GAP_RSSI_START, uint32_t, sd_ble_gap_rssi_start(uint16_t conn_handle, uint8_t threshold_dbm, uint8_t skip_count));
2129
2130
2147SVCALL(SD_BLE_GAP_RSSI_STOP, uint32_t, sd_ble_gap_rssi_stop(uint16_t conn_handle));
2148
2149
2168SVCALL(SD_BLE_GAP_RSSI_GET, uint32_t, sd_ble_gap_rssi_get(uint16_t conn_handle, int8_t *p_rssi, uint8_t *p_ch_index));
2169
2170
2173#ifdef __cplusplus
2174}
2175#endif
2176#endif // BLE_GAP_H__
2177
#define BLE_GAP_PASSKEY_LEN
GAP Passkey Length.
Definition ble_gap.h:494
#define BLE_GAP_LESC_DHKEY_LEN
GAP LE Secure Connections Elliptic Curve Diffie-Hellman DHKey Length.
Definition ble_gap.h:490
#define BLE_GAP_ADDR_LEN
BLE address length.
Definition ble_gap.h:210
#define BLE_GAP_SEC_RAND_LEN
GAP Security Random Number Length.
Definition ble_gap.h:478
#define BLE_GAP_LESC_P256_PK_LEN
GAP LE Secure Connections Elliptic Curve Diffie-Hellman P-256 Public Key Length.
Definition ble_gap.h:486
#define BLE_GAP_SEC_KEY_LEN
GAP Security Key Length.
Definition ble_gap.h:482
BLE_GAP_OPTS
GAP Option IDs. IDs that uniquely identify a GAP option.
Definition ble_gap.h:133
@ BLE_GAP_OPT_SLAVE_LATENCY_DISABLE
Definition ble_gap.h:137
@ BLE_GAP_OPT_AUTH_PAYLOAD_TIMEOUT
Definition ble_gap.h:136
@ BLE_GAP_OPT_CH_MAP
Definition ble_gap.h:134
@ BLE_GAP_OPT_PASSKEY
Definition ble_gap.h:135
BLE_GAP_CFGS
GAP Configuration IDs.
Definition ble_gap.h:145
@ BLE_GAP_CFG_DEVICE_NAME
Definition ble_gap.h:147
@ BLE_GAP_CFG_PPCP_INCL_CONFIG
Definition ble_gap.h:148
@ BLE_GAP_CFG_ROLE_COUNT
Definition ble_gap.h:146
@ BLE_GAP_CFG_CAR_INCL_CONFIG
Definition ble_gap.h:150
BLE_GAP_TX_POWER_ROLES
GAP TX Power roles.
Definition ble_gap.h:157
@ BLE_GAP_TX_POWER_ROLE_ADV
Definition ble_gap.h:158
@ BLE_GAP_TX_POWER_ROLE_CONN
Definition ble_gap.h:159
BLE_GAP_EVTS
GAP Event IDs. IDs that uniquely identify an event coming from the stack to the application.
Definition ble_gap.h:107
@ BLE_GAP_EVT_DISCONNECTED
Definition ble_gap.h:109
@ BLE_GAP_EVT_LESC_DHKEY_REQUEST
Definition ble_gap.h:116
@ BLE_GAP_EVT_ADV_SET_TERMINATED
Definition ble_gap.h:126
@ BLE_GAP_EVT_CONN_SEC_UPDATE
Definition ble_gap.h:118
@ BLE_GAP_EVT_RSSI_CHANGED
Definition ble_gap.h:120
@ BLE_GAP_EVT_TIMEOUT
Definition ble_gap.h:119
@ BLE_GAP_EVT_AUTH_KEY_REQUEST
Definition ble_gap.h:115
@ BLE_GAP_EVT_SEC_PARAMS_REQUEST
Definition ble_gap.h:111
@ BLE_GAP_EVT_DATA_LENGTH_UPDATE_REQUEST
Definition ble_gap.h:124
@ BLE_GAP_EVT_PHY_UPDATE_REQUEST
Definition ble_gap.h:122
@ BLE_GAP_EVT_AUTH_STATUS
Definition ble_gap.h:117
@ BLE_GAP_EVT_CONN_PARAM_UPDATE
Definition ble_gap.h:110
@ BLE_GAP_EVT_CONNECTED
Definition ble_gap.h:108
@ BLE_GAP_EVT_DATA_LENGTH_UPDATE
Definition ble_gap.h:125
@ BLE_GAP_EVT_PHY_UPDATE
Definition ble_gap.h:123
@ BLE_GAP_EVT_SCAN_REQ_REPORT
Definition ble_gap.h:121
@ BLE_GAP_EVT_PASSKEY_DISPLAY
Definition ble_gap.h:113
@ BLE_GAP_EVT_SEC_INFO_REQUEST
Definition ble_gap.h:112
@ BLE_GAP_EVT_KEY_PRESSED
Definition ble_gap.h:114
BLE_GAP_SVCS
GAP API SVC numbers.
Definition ble_gap.h:66
@ SD_BLE_GAP_PRIVACY_SET
Definition ble_gap.h:72
@ SD_BLE_GAP_ADV_SET_CONFIGURE
Definition ble_gap.h:74
@ SD_BLE_GAP_RSSI_START
Definition ble_gap.h:99
@ SD_BLE_GAP_KEYPRESS_NOTIFY
Definition ble_gap.h:90
@ SD_BLE_GAP_RSSI_STOP
Definition ble_gap.h:100
@ SD_BLE_GAP_ADV_START
Definition ble_gap.h:75
@ SD_BLE_GAP_LESC_OOB_DATA_GET
Definition ble_gap.h:91
@ SD_BLE_GAP_PPCP_SET
Definition ble_gap.h:82
@ SD_BLE_GAP_LESC_DHKEY_REPLY
Definition ble_gap.h:89
@ SD_BLE_GAP_PRIVACY_GET
Definition ble_gap.h:73
@ SD_BLE_GAP_ADDR_GET
Definition ble_gap.h:68
@ SD_BLE_GAP_ADV_STOP
Definition ble_gap.h:76
@ SD_BLE_GAP_DISCONNECT
Definition ble_gap.h:78
@ SD_BLE_GAP_APPEARANCE_GET
Definition ble_gap.h:81
@ SD_BLE_GAP_APPEARANCE_SET
Definition ble_gap.h:80
@ SD_BLE_GAP_DEVICE_NAME_GET
Definition ble_gap.h:85
@ SD_BLE_GAP_CONN_PARAM_UPDATE
Definition ble_gap.h:77
@ SD_BLE_GAP_PHY_UPDATE
Definition ble_gap.h:95
@ SD_BLE_GAP_AUTHENTICATE
Definition ble_gap.h:86
@ SD_BLE_GAP_DATA_LENGTH_UPDATE
Definition ble_gap.h:96
@ SD_BLE_GAP_NEXT_CONN_EVT_COUNTER_GET
Definition ble_gap.h:97
@ SD_BLE_GAP_RSSI_GET
Definition ble_gap.h:98
@ SD_BLE_GAP_ADV_ADDR_GET
Definition ble_gap.h:69
@ SD_BLE_GAP_WHITELIST_SET
Definition ble_gap.h:70
@ SD_BLE_GAP_SEC_INFO_REPLY
Definition ble_gap.h:93
@ SD_BLE_GAP_SEC_PARAMS_REPLY
Definition ble_gap.h:87
@ SD_BLE_GAP_DEVICE_NAME_SET
Definition ble_gap.h:84
@ SD_BLE_GAP_CONN_SEC_GET
Definition ble_gap.h:94
@ SD_BLE_GAP_LESC_OOB_DATA_SET
Definition ble_gap.h:92
@ SD_BLE_GAP_PPCP_GET
Definition ble_gap.h:83
@ SD_BLE_GAP_AUTH_KEY_REPLY
Definition ble_gap.h:88
@ SD_BLE_GAP_DEVICE_IDENTITIES_SET
Definition ble_gap.h:71
@ SD_BLE_GAP_TX_POWER_SET
Definition ble_gap.h:79
@ SD_BLE_GAP_ADDR_SET
Definition ble_gap.h:67
uint32_t sd_ble_gap_auth_key_reply(uint16_t conn_handle, uint8_t key_type, uint8_t const *p_key)
Reply with an authentication key.
uint32_t sd_ble_gap_conn_sec_get(uint16_t conn_handle, ble_gap_conn_sec_t *p_conn_sec)
Get the current connection security.
uint32_t sd_ble_gap_addr_get(ble_gap_addr_t *p_addr)
Get local Bluetooth identity address.
uint32_t sd_ble_gap_device_identities_set(ble_gap_id_key_t const *const *pp_id_keys, ble_gap_irk_t const *const *pp_local_irks, uint8_t len)
Set device identity list.
uint32_t sd_ble_gap_privacy_set(ble_gap_privacy_params_t const *p_privacy_params)
Set privacy settings.
uint32_t sd_ble_gap_lesc_dhkey_reply(uint16_t conn_handle, uint8_t sec_status, ble_gap_lesc_dhkey_t const *p_dhkey)
Reply with an LE Secure connections DHKey.
uint32_t sd_ble_gap_disconnect(uint16_t conn_handle, uint8_t hci_status_code)
Disconnect (GAP Link Termination).
uint32_t sd_ble_gap_appearance_get(uint16_t *p_appearance)
Get GAP Appearance value.
uint32_t sd_ble_gap_adv_addr_get(uint8_t adv_handle, ble_gap_addr_t *p_addr)
Get the Bluetooth device address used by the advertiser.
uint32_t sd_ble_gap_lesc_oob_data_get(uint16_t conn_handle, ble_gap_lesc_p256_pk_t const *p_pk_own, ble_gap_lesc_oob_data_t *p_oobd_own)
Generate a set of OOB data to send to a peer out of band.
uint32_t sd_ble_gap_authenticate(uint16_t conn_handle, ble_gap_sec_params_t const *p_sec_params)
Initiate the GAP Authentication procedure.
uint32_t sd_ble_gap_rssi_get(uint16_t conn_handle, int8_t *p_rssi, uint8_t *p_ch_index)
Get the received signal strength for the last connection event.
uint32_t sd_ble_gap_rssi_stop(uint16_t conn_handle)
Stop reporting the received signal strength.
uint32_t sd_ble_gap_lesc_oob_data_set(uint16_t conn_handle, ble_gap_lesc_oob_data_t const *p_oobd_own, ble_gap_lesc_oob_data_t const *p_oobd_peer)
Provide the OOB data sent/received out of band.
uint32_t sd_ble_gap_device_name_get(uint8_t *p_dev_name, uint16_t *p_len)
Get GAP device name.
uint32_t sd_ble_gap_adv_stop(uint8_t adv_handle)
Stop advertising (GAP Discoverable, Connectable modes, Broadcast Procedure).
uint32_t sd_ble_gap_adv_start(uint8_t adv_handle, uint8_t conn_cfg_tag)
Start advertising (GAP Discoverable, Connectable modes, Broadcast Procedure).
uint32_t sd_ble_gap_sec_params_reply(uint16_t conn_handle, uint8_t sec_status, ble_gap_sec_params_t const *p_sec_params, ble_gap_sec_keyset_t const *p_sec_keyset)
Reply with GAP security parameters.
uint32_t sd_ble_gap_keypress_notify(uint16_t conn_handle, uint8_t kp_not)
Notify the peer of a local keypress.
uint32_t sd_ble_gap_ppcp_set(ble_gap_conn_params_t const *p_conn_params)
Set GAP Peripheral Preferred Connection Parameters.
uint32_t sd_ble_gap_privacy_get(ble_gap_privacy_params_t *p_privacy_params)
Get privacy settings.
uint32_t sd_ble_gap_adv_set_configure(uint8_t *p_adv_handle, ble_gap_adv_data_t const *p_adv_data, ble_gap_adv_params_t const *p_adv_params)
Configure an advertising set. Set, clear or update advertising and scan response data.
uint32_t sd_ble_gap_next_conn_evt_counter_get(uint16_t conn_handle, uint16_t *p_counter)
Obtain the next connection event counter value.
uint32_t sd_ble_gap_ppcp_get(ble_gap_conn_params_t *p_conn_params)
Get GAP Peripheral Preferred Connection Parameters.
uint32_t sd_ble_gap_phy_update(uint16_t conn_handle, ble_gap_phys_t const *p_gap_phys)
Initiate or respond to a PHY Update Procedure.
uint32_t sd_ble_gap_rssi_start(uint16_t conn_handle, uint8_t threshold_dbm, uint8_t skip_count)
Start reporting the received signal strength to the application.
uint32_t sd_ble_gap_data_length_update(uint16_t conn_handle, ble_gap_data_length_params_t const *p_dl_params, ble_gap_data_length_limitation_t *p_dl_limitation)
Initiate or respond to a Data Length Update Procedure.
uint32_t sd_ble_gap_whitelist_set(ble_gap_addr_t const *const *pp_wl_addrs, uint8_t len)
Set the active whitelist in the SoftDevice.
uint32_t sd_ble_gap_sec_info_reply(uint16_t conn_handle, ble_gap_enc_info_t const *p_enc_info)
Reply with GAP security information.
uint32_t sd_ble_gap_tx_power_set(uint8_t role, uint16_t handle, int8_t tx_power)
Set the radio's transmit power.
uint32_t sd_ble_gap_appearance_set(uint16_t appearance)
Set GAP Appearance value.
uint32_t sd_ble_gap_device_name_set(ble_gap_conn_sec_mode_t const *p_write_perm, uint8_t const *p_dev_name, uint16_t len)
Set GAP device name.
uint32_t sd_ble_gap_addr_set(ble_gap_addr_t const *p_addr)
Set the local Bluetooth identity address.
uint32_t sd_ble_gap_conn_param_update(uint16_t conn_handle, ble_gap_conn_params_t const *p_conn_params)
Update connection parameters.
uint8_t ble_gap_ch_mask_t[5]
Channel mask (40 bits). Every channel is represented with a bit positioned as per channel index defin...
Definition ble_gap.h:661
#define BLE_GAP_OPT_BASE
Definition ble_ranges.h:101
#define BLE_GAP_EVT_BASE
Definition ble_ranges.h:85
#define BLE_GAP_CFG_BASE
Definition ble_ranges.h:123
#define BLE_GAP_SVC_BASE
Definition ble_ranges.h:69
Data structure.
Definition ble_types.h:200
uint8_t addr_id_peer
Definition ble_gap.h:596
uint8_t addr_type
Definition ble_gap.h:602
Bluetooth Low Energy address.
Definition ble_gap.h:595
ble_data_t scan_rsp_data
Definition ble_gap.h:728
ble_data_t adv_data
Definition ble_gap.h:724
GAP advertising data buffers.
Definition ble_gap.h:723
ble_gap_addr_t const * p_peer_addr
Definition ble_gap.h:668
uint16_t duration
Definition ble_gap.h:684
ble_gap_ch_mask_t channel_mask
Definition ble_gap.h:697
uint8_t scan_req_notification
Definition ble_gap.h:712
uint8_t set_id
Definition ble_gap.h:711
uint8_t filter_policy
Definition ble_gap.h:699
uint32_t interval
Definition ble_gap.h:680
uint8_t primary_phy
Definition ble_gap.h:700
uint8_t secondary_phy
Definition ble_gap.h:710
ble_gap_adv_properties_t properties
Definition ble_gap.h:667
uint8_t max_adv_evts
Definition ble_gap.h:689
GAP advertising parameters.
Definition ble_gap.h:666
uint8_t type
Definition ble_gap.h:587
uint8_t anonymous
Definition ble_gap.h:588
uint8_t include_tx_power
Definition ble_gap.h:589
Advertising event properties.
Definition ble_gap.h:586
uint8_t include_cfg
Definition ble_gap.h:1184
Central Address Resolution include configuration parameters, set with sd_ble_cfg_set.
Definition ble_gap.h:1183
uint8_t vloc
Definition ble_gap.h:1165
ble_gap_conn_sec_mode_t write_perm
Definition ble_gap.h:1164
uint8_t * p_value
Definition ble_gap.h:1166
uint16_t current_len
Definition ble_gap.h:1167
uint16_t max_len
Definition ble_gap.h:1168
Device name and its properties, set with sd_ble_cfg_set.
Definition ble_gap.h:1163
uint8_t include_cfg
Definition ble_gap.h:1175
Peripheral Preferred Connection Parameters include configuration parameters, set with sd_ble_cfg_set.
Definition ble_gap.h:1174
uint8_t adv_set_count
Definition ble_gap.h:1129
uint8_t periph_role_count
Definition ble_gap.h:1130
Configuration of maximum concurrent connections in the different connected roles, set with sd_ble_cfg...
Definition ble_gap.h:1128
uint8_t conn_count
Definition ble_gap.h:1103
uint16_t event_length
Definition ble_gap.h:1105
BLE GAP connection configuration parameters, set with sd_ble_cfg_set.
Definition ble_gap.h:1102
uint16_t min_conn_interval
Definition ble_gap.h:620
uint16_t slave_latency
Definition ble_gap.h:622
uint16_t conn_sup_timeout
Definition ble_gap.h:623
uint16_t max_conn_interval
Definition ble_gap.h:621
GAP connection parameters.
Definition ble_gap.h:619
uint8_t lv
Definition ble_gap.h:637
uint8_t sm
Definition ble_gap.h:636
GAP connection security modes.
Definition ble_gap.h:635
uint8_t encr_key_size
Definition ble_gap.h:646
ble_gap_conn_sec_mode_t sec_mode
Definition ble_gap.h:645
GAP connection security status.
Definition ble_gap.h:644
uint16_t tx_payload_limited_octets
Definition ble_gap.h:989
uint16_t rx_payload_limited_octets
Definition ble_gap.h:990
uint16_t tx_rx_time_limited_us
Definition ble_gap.h:991
Data Length Update Procedure local limitation.
Definition ble_gap.h:988
uint16_t max_tx_time_us
Definition ble_gap.h:981
uint16_t max_rx_octets
Definition ble_gap.h:980
uint16_t max_tx_octets
Definition ble_gap.h:979
uint16_t max_rx_time_us
Definition ble_gap.h:982
Data Length Update Procedure parameters.
Definition ble_gap.h:978
uint8_t auth
Definition ble_gap.h:808
uint8_t ltk_len
Definition ble_gap.h:809
uint8_t lesc
Definition ble_gap.h:807
GAP Encryption Information.
Definition ble_gap.h:805
ble_gap_enc_info_t enc_info
Definition ble_gap.h:945
ble_gap_master_id_t master_id
Definition ble_gap.h:946
Encryption Key.
Definition ble_gap.h:944
uint8_t reason
Definition ble_gap.h:1033
uint8_t num_completed_adv_events
Definition ble_gap.h:1036
uint8_t adv_handle
Definition ble_gap.h:1035
Event structure for BLE_GAP_EVT_ADV_SET_TERMINATED.
Definition ble_gap.h:1032
uint8_t key_type
Definition ble_gap.h:918
Event structure for BLE_GAP_EVT_AUTH_KEY_REQUEST.
Definition ble_gap.h:917
ble_gap_sec_kdist_t kdist_own
Definition ble_gap.h:1003
ble_gap_sec_kdist_t kdist_peer
Definition ble_gap.h:1004
uint8_t bonded
Definition ble_gap.h:1000
ble_gap_sec_levels_t sm1_levels
Definition ble_gap.h:1002
uint8_t auth_status
Definition ble_gap.h:998
uint8_t error_src
Definition ble_gap.h:999
uint8_t lesc
Definition ble_gap.h:1001
Event structure for BLE_GAP_EVT_AUTH_STATUS.
Definition ble_gap.h:997
ble_gap_conn_params_t conn_params
Definition ble_gap.h:866
Event structure for BLE_GAP_EVT_CONN_PARAM_UPDATE.
Definition ble_gap.h:865
ble_gap_conn_sec_t conn_sec
Definition ble_gap.h:1011
Event structure for BLE_GAP_EVT_CONN_SEC_UPDATE.
Definition ble_gap.h:1010
ble_gap_conn_params_t conn_params
Definition ble_gap.h:850
ble_gap_addr_t peer_addr
Definition ble_gap.h:847
uint8_t role
Definition ble_gap.h:849
uint8_t adv_handle
Definition ble_gap.h:851
Event structure for BLE_GAP_EVT_CONNECTED.
Definition ble_gap.h:846
ble_gap_data_length_params_t peer_params
Definition ble_gap.h:1053
Event structure for BLE_GAP_EVT_DATA_LENGTH_UPDATE_REQUEST.
Definition ble_gap.h:1052
ble_gap_data_length_params_t effective_params
Definition ble_gap.h:1060
Event structure for BLE_GAP_EVT_DATA_LENGTH_UPDATE.
Definition ble_gap.h:1059
uint8_t reason
Definition ble_gap.h:859
Event structure for BLE_GAP_EVT_DISCONNECTED.
Definition ble_gap.h:858
uint8_t kp_not
Definition ble_gap.h:911
Event structure for BLE_GAP_EVT_KEY_PRESSED.
Definition ble_gap.h:910
uint8_t oobd_req
Definition ble_gap.h:926
ble_gap_lesc_p256_pk_t * p_pk_peer
Definition ble_gap.h:924
Event structure for BLE_GAP_EVT_LESC_DHKEY_REQUEST.
Definition ble_gap.h:923
uint8_t match_request
Definition ble_gap.h:903
Event structure for BLE_GAP_EVT_PASSKEY_DISPLAY.
Definition ble_gap.h:901
ble_gap_phys_t peer_preferred_phys
Definition ble_gap.h:872
Event structure for BLE_GAP_EVT_PHY_UPDATE_REQUEST.
Definition ble_gap.h:871
uint8_t status
Definition ble_gap.h:878
uint8_t rx_phy
Definition ble_gap.h:880
uint8_t tx_phy
Definition ble_gap.h:879
Event Structure for BLE_GAP_EVT_PHY_UPDATE.
Definition ble_gap.h:877
uint8_t ch_index
Definition ble_gap.h:1027
int8_t rssi
Definition ble_gap.h:1025
Event structure for BLE_GAP_EVT_RSSI_CHANGED.
Definition ble_gap.h:1024
ble_gap_addr_t peer_addr
Definition ble_gap.h:1046
uint8_t adv_handle
Definition ble_gap.h:1043
int8_t rssi
Definition ble_gap.h:1044
Event structure for BLE_GAP_EVT_SCAN_REQ_REPORT.
Definition ble_gap.h:1042
ble_gap_addr_t peer_addr
Definition ble_gap.h:893
uint8_t id_info
Definition ble_gap.h:896
ble_gap_master_id_t master_id
Definition ble_gap.h:894
uint8_t enc_info
Definition ble_gap.h:895
Event structure for BLE_GAP_EVT_SEC_INFO_REQUEST.
Definition ble_gap.h:892
ble_gap_sec_params_t peer_params
Definition ble_gap.h:886
Event structure for BLE_GAP_EVT_SEC_PARAMS_REQUEST.
Definition ble_gap.h:885
ble_gap_evt_data_length_update_t data_length_update
Definition ble_gap.h:1088
ble_gap_evt_adv_set_terminated_t adv_set_terminated
Definition ble_gap.h:1083
ble_gap_evt_phy_update_request_t phy_update_request
Definition ble_gap.h:1085
ble_gap_evt_disconnected_t disconnected
Definition ble_gap.h:1071
uint16_t conn_handle
Definition ble_gap.h:1067
ble_gap_evt_passkey_display_t passkey_display
Definition ble_gap.h:1075
ble_gap_evt_rssi_changed_t rssi_changed
Definition ble_gap.h:1082
ble_gap_evt_sec_info_request_t sec_info_request
Definition ble_gap.h:1074
ble_gap_evt_sec_params_request_t sec_params_request
Definition ble_gap.h:1073
ble_gap_evt_auth_key_request_t auth_key_request
Definition ble_gap.h:1077
ble_gap_evt_data_length_update_request_t data_length_update_request
Definition ble_gap.h:1087
ble_gap_evt_conn_sec_update_t conn_sec_update
Definition ble_gap.h:1080
ble_gap_evt_auth_status_t auth_status
Definition ble_gap.h:1079
ble_gap_evt_conn_param_update_t conn_param_update
Definition ble_gap.h:1072
ble_gap_evt_key_pressed_t key_pressed
Definition ble_gap.h:1076
ble_gap_evt_phy_update_t phy_update
Definition ble_gap.h:1086
ble_gap_evt_lesc_dhkey_request_t lesc_dhkey_request
Definition ble_gap.h:1078
ble_gap_evt_timeout_t timeout
Definition ble_gap.h:1081
ble_gap_evt_connected_t connected
Definition ble_gap.h:1070
ble_gap_evt_scan_req_report_t scan_req_report
Definition ble_gap.h:1084
GAP event structure.
Definition ble_gap.h:1066
uint8_t src
Definition ble_gap.h:1018
Event structure for BLE_GAP_EVT_TIMEOUT.
Definition ble_gap.h:1017
ble_gap_addr_t id_addr_info
Definition ble_gap.h:954
ble_gap_irk_t id_info
Definition ble_gap.h:953
Identity Key.
Definition ble_gap.h:952
Identity Resolving Key.
Definition ble_gap.h:651
GAP LE Secure Connections DHKey.
Definition ble_gap.h:830
ble_gap_addr_t addr
Definition ble_gap.h:838
GAP LE Secure Connections OOB data.
Definition ble_gap.h:837
GAP LE Secure Connections P-256 Public Key.
Definition ble_gap.h:823
uint16_t ediv
Definition ble_gap.h:816
GAP Master Identification.
Definition ble_gap.h:815
uint16_t conn_handle
Definition ble_gap.h:1297
uint16_t auth_payload_timeout
Definition ble_gap.h:1298
Authenticated payload timeout option.
Definition ble_gap.h:1296
uint16_t conn_handle
Definition ble_gap.h:1226
Channel Map option.
Definition ble_gap.h:1225
uint8_t const * p_passkey
Definition ble_gap.h:1272
Passkey Option.
Definition ble_gap.h:1271
uint8_t disable
Definition ble_gap.h:1246
uint16_t conn_handle
Definition ble_gap.h:1245
Disable slave latency.
Definition ble_gap.h:1244
uint8_t tx_phys
Definition ble_gap.h:771
uint8_t rx_phys
Definition ble_gap.h:772
PHY preferences for TX and RX.
Definition ble_gap.h:770
ble_gap_irk_t * p_device_irk
Definition ble_gap.h:756
uint8_t private_addr_type
Definition ble_gap.h:754
uint8_t privacy_mode
Definition ble_gap.h:753
uint16_t private_addr_cycle_s
Definition ble_gap.h:755
Privacy.
Definition ble_gap.h:752
uint8_t id
Definition ble_gap.h:779
uint8_t enc
Definition ble_gap.h:778
Keys that can be exchanged during a bonding procedure.
Definition ble_gap.h:777
ble_gap_enc_key_t * p_enc_key
Definition ble_gap.h:961
ble_gap_id_key_t * p_id_key
Definition ble_gap.h:962
ble_gap_lesc_p256_pk_t * p_pk
Definition ble_gap.h:963
Security Keys.
Definition ble_gap.h:960
ble_gap_sec_keys_t keys_peer
Definition ble_gap.h:972
ble_gap_sec_keys_t keys_own
Definition ble_gap.h:971
Security key set for both local and peer keys.
Definition ble_gap.h:970
uint8_t lv2
Definition ble_gap.h:936
uint8_t lv4
Definition ble_gap.h:938
uint8_t lv3
Definition ble_gap.h:937
uint8_t lv1
Definition ble_gap.h:935
Security levels supported.
Definition ble_gap.h:934
uint8_t io_caps
Definition ble_gap.h:790
uint8_t lesc
Definition ble_gap.h:788
uint8_t max_key_size
Definition ble_gap.h:797
uint8_t min_key_size
Definition ble_gap.h:796
uint8_t oob
Definition ble_gap.h:791
ble_gap_sec_kdist_t kdist_peer
Definition ble_gap.h:799
uint8_t mitm
Definition ble_gap.h:787
uint8_t keypress
Definition ble_gap.h:789
uint8_t bond
Definition ble_gap.h:786
ble_gap_sec_kdist_t kdist_own
Definition ble_gap.h:798
GAP security parameters.
Definition ble_gap.h:785
ble_gap_cfg_car_incl_cfg_t car_include_cfg
Definition ble_gap.h:1195
ble_gap_cfg_device_name_t device_name_cfg
Definition ble_gap.h:1192
ble_gap_cfg_role_count_t role_count_cfg
Definition ble_gap.h:1191
ble_gap_cfg_ppcp_incl_cfg_t ppcp_include_cfg
Definition ble_gap.h:1193
Configuration structure for GAP configurations.
Definition ble_gap.h:1190
ble_gap_opt_auth_payload_timeout_t auth_payload_timeout
Definition ble_gap.h:1306
ble_gap_opt_ch_map_t ch_map
Definition ble_gap.h:1304
ble_gap_opt_slave_latency_disable_t slave_latency_disable
Definition ble_gap.h:1307
ble_gap_opt_passkey_t passkey
Definition ble_gap.h:1305
Option structure for GAP options.
Definition ble_gap.h:1303