S145 SoftDevice for nRF54LS05 API documentation 10.0.0
Loading...
Searching...
No Matches

◆ 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 )

#include <ble_gap.h>

Set device identity list.

Note
Only one device identity list can be used at a time and the list is shared between the BLE roles. The device identity list cannot be set if a BLE role is using the list.
Parameters
[in]pp_id_keysPointer to an array of peer identity addresses and peer IRKs, if NULL the device identity list will be cleared.
[in]pp_local_irksPointer to an array of local IRKs. Each entry in the array maps to the entry in pp_id_keys at the same index. To fill in the list with the currently set device IRK for all peers, set to NULL.
[in]lenLength of the device identity list, maximum BLE_GAP_DEVICE_IDENTITIES_MAX_COUNT.
Relevant Message Sequence Charts
Private Advertising
Directed Advertising
Peripheral Connection Establishment with Private Peer
Private Scanning
Scan Private Devices
Central Connection Establishment with Private Peer
Return values
NRF_SUCCESSThe device identity list successfully set/cleared.
NRF_ERROR_INVALID_ADDRThe device identity list (or one of its entries) provided is invalid. This code may be returned if the local IRK list also has an invalid entry.
BLE_ERROR_GAP_DEVICE_IDENTITIES_IN_USEThe device identity list is in use and cannot be set or cleared.
BLE_ERROR_GAP_DEVICE_IDENTITIES_DUPLICATEThe device identity list contains multiple entries with the same identity address.
BLE_ERROR_GAP_INVALID_BLE_ADDRInvalid address type is supplied.
BLE_ERROR_GAP_ZERO_IRK_NOT_ALLOWEDAn all zeroes IRK is supplied while in BLE_GAP_PRIVACY_MODE_NETWORK_PRIVACY mode.
NRF_ERROR_DATA_SIZEThe given device identity list size invalid (zero or too large); this can only return when pp_id_keys is not NULL.