| S130 SoftDevice v2.0.1 |

Choose documentation: | nRF5 SDK | S130 SoftDevice API | S132 SoftDevice API | S212 SoftDevice API | S332 SoftDevice API

All Data Structures Functions Variables Typedefs Enumerations Enumerator Groups Pages
Data Fields
ble_gap_opt_privacy_t Struct Reference
Structures

Custom Privacy Option. More...

`#include <ble_gap.h>`

## Data Fields
ble_gap_irk_t * | p_irk
uint16_t | interval_s

## Detailed Description

Custom Privacy Option.

       This structure is used with both @ref sd_ble_opt_set (as input) and with
       @ref sd_ble_opt_get (as output).

       Structure containing:
       - A pointer to an IRK to set (if input), or a place to store a read IRK (if output).
       - A private address refresh cycle.

Note
  The specified address cycle interval is used when the address cycle mode is BLE_GAP_ADDR_CYCLE_MODE_AUTO. If 0 is given, the address will not be automatically refreshed at all. The default interval is BLE_GAP_DEFAULT_PRIVATE_ADDR_CYCLE_INTERVAL_S.
  If the current address cycle mode is BLE_GAP_ADDR_CYCLE_MODE_AUTO, the address will immediately be refreshed when a custom privacy option is set. A new address can be generated manually by calling sd_ble_gap_address_set with the same type again.
  If the IRK is updated, the new IRK becomes the one to be distributed in all bonding procedures performed after sd_ble_opt_set returns.

Return values

  NRF_SUCCESS | Set or read successfully.
  NRF_ERROR_INVALID_ADDR | The pointer to IRK storage is invalid.

## Field Documentation

uint16_t ble_gap_opt_privacy_t::interval_s

When input: Custom private address cycle interval in seconds. When output: The current private address cycle interval.

ble_gap_irk_t* ble_gap_opt_privacy_t::p_irk

When input: Pointer to custom IRK, or NULL to use/reset to the device's default IRK. When output: Pointer to where the current IRK is to be stored, or NULL to not read out the IRK.