TI BLE-Stack for Bluetooth API Documentation  3.03.00.00
Macros
GAP Bond Manager Parameters

Macros

#define GAPBOND_AUTO_SYNC_WL   0x40D
 Synchronize the whitelist with bonded devices (Read/Write) More...
 
#define GAPBOND_BOND_COUNT   0x40E
 Gets the total number of bonds stored in NV (Read-only) More...
 
#define GAPBOND_BOND_FAIL_ACTION   0x40F
 The action that the device takes after an unsuccessful bonding attempt (Write-only) More...
 
#define GAPBOND_BONDING_ENABLED   0x406
 Whether to request bonding during pairing (Read/Write) More...
 
#define GAPBOND_DEFAULT_PASSCODE   0x408
 This parameter is only used by the Host Test app Application (network processor) The Id of this parameter is used to store the password locally. the GAP Bond manager is not storing any default password anymore, everytime a password is needed, pfnPasscodeCB_t will be call. More...
 
#define GAPBOND_ECC_KEYS   0x413
 The private and public keys to use for Secure Connections pairing (Read/Write) More...
 
#define GAPBOND_ECCKEY_REGEN_POLICY   0x412
 ECC Key Regeneration Policy (Read/Write) More...
 
#define GAPBOND_ERASE_ALLBONDS   0x409
 Erase all bonds from SNV and remove all bonded devices (Write) More...
 
#define GAPBOND_ERASE_SINGLEBOND   0x410
 Erase a single bonded device (Write-only) More...
 
#define GAPBOND_INITIATE_WAIT   0x401
 The amount of time (in ms) to wait for a pairing request before sending the slave initiate request (Read/Write) More...
 
#define GAPBOND_IO_CAPABILITIES   0x403
 The I/O capabilities of the local device (Read/Write) More...
 
#define GAPBOND_KEY_DIST_LIST   0x407
 Key distribution list for pairing (Read/Write) More...
 
#define GAPBOND_KEYSIZE   0x40C
 Key Size used in pairing. (Read/Write) More...
 
#define GAPBOND_LOCAL_OOB_SC_DATA   0x417
 Local OOB Secure Connections Data (Read/Write) More...
 
#define GAPBOND_LOCAL_OOB_SC_ENABLED   0x416
 Validate Local OOB Secure Connections Data (Read/Write) More...
 
#define GAPBOND_LRU_BOND_REPLACEMENT   0x418
 Enable / Disable LRU Bond Replacement Scheme (Read/Write) More...
 
#define GAPBOND_MITM_PROTECTION   0x402
 Whether to use authenticated pairing (Read/Write) More...
 
#define GAPBOND_OOB_DATA   0x405
 OOB data to use for pairing (Read/Write) More...
 
#define GAPBOND_OOB_ENABLED   0x404
 Whether to use OOB for pairing (Read/Write) More...
 
#define GAPBOND_PAIRING_MODE   0x400
 Whether to allow pairing, and if so, whether to initiate pairing. (Read/Write) More...
 
#define GAPBOND_REMOTE_OOB_SC_DATA   0x415
 Remote OOB Secure Connections Data (Read/Write) More...
 
#define GAPBOND_REMOTE_OOB_SC_ENABLED   0x414
 Validate Remote OOB Secure Connections Data (Read/Write) More...
 
#define GAPBOND_SECURE_CONNECTION   0x411
 Define Secure Connections Usage during Pairing (Read/Write) More...
 

Detailed Description

Parameters set via GAPBondMgr_SetParameter

Macro Definition Documentation

§ GAPBOND_AUTO_SYNC_WL

#define GAPBOND_AUTO_SYNC_WL   0x40D

Synchronize the whitelist with bonded devices (Read/Write)

If TRUE, the whitelist will first be cleared. Then, each unique address stored by bonds in SNV will be synched with the whitelist indefinitely or until this is set to FALSE

size: uint8_t

default: FALSE

range: TRUE (sync) or FALSE (don't sync)

§ GAPBOND_BOND_COUNT

#define GAPBOND_BOND_COUNT   0x40E

Gets the total number of bonds stored in NV (Read-only)

size: uint8_t

range: 0 - 255

§ GAPBOND_BOND_FAIL_ACTION

#define GAPBOND_BOND_FAIL_ACTION   0x40F

The action that the device takes after an unsuccessful bonding attempt (Write-only)

size: uint8_t

default: GAPBOND_FAIL_TERMINATE_LINK

range: Bonding Failure Actions

§ GAPBOND_BONDING_ENABLED

#define GAPBOND_BONDING_ENABLED   0x406

Whether to request bonding during pairing (Read/Write)

size: uint8_t

default: FALSE

range: TRUE (request) or FALSE (do not request)

§ GAPBOND_DEFAULT_PASSCODE

#define GAPBOND_DEFAULT_PASSCODE   0x408

This parameter is only used by the Host Test app Application (network processor) The Id of this parameter is used to store the password locally. the GAP Bond manager is not storing any default password anymore, everytime a password is needed, pfnPasscodeCB_t will be call.

Note
an embedded application MUST used pfnPasscodeCB_t

size: uint32_t

default: 0

range: 0 - 999999

§ GAPBOND_ECC_KEYS

#define GAPBOND_ECC_KEYS   0x413

The private and public keys to use for Secure Connections pairing (Read/Write)

Only applicable for Secure Connections. Allows the application to specify the private and public keys to use pairing. When this is set, the keys are used indefinitely even if a regeneration policy was set with GAPBOND_ECCKEY_REGEN_POLICY. To make the Bond Manager stop using these keys, pass a 1 byte value of 0x00. These keys are stored in RAM and are not retained in non-volatile memory. These keys can be defined by the application, or the application can request them using the SM_GetEccKeys command.

size: gapBondEccKeys_t

default: by default, the keys are generated using GAPBOND_ECCKEY_REGEN_POLICY

range: A valid gapBondEccKeys_t structure
0x00: previously passed keys will no longer be used

§ GAPBOND_ECCKEY_REGEN_POLICY

#define GAPBOND_ECCKEY_REGEN_POLICY   0x412

ECC Key Regeneration Policy (Read/Write)

Only applicable for Secure Connections. Define reuse of the private and public ECC keys for multiple pairings.The default is to always regenerate the keys upon each new pairing. This parameter has no effect when the application specifies the keys using the GAPBOND_ECC_KEYS parameter. The behavior is that upon each pairing the number of recycles remaining is decremented by 1, but if the pairing fails the count is decremented by 3. The specification recommends that this value be set to no higher than 10 to avoid an attacker from learning too much about a private key before it is regenerated.

size: uint8_t

default: 2

range: 0 - 256

§ GAPBOND_ERASE_ALLBONDS

#define GAPBOND_ERASE_ALLBONDS   0x409

Erase all bonds from SNV and remove all bonded devices (Write)

Note
The erase won't happen until there are no active connections.

§ GAPBOND_ERASE_SINGLEBOND

#define GAPBOND_ERASE_SINGLEBOND   0x410

Erase a single bonded device (Write-only)

Note
The erase won't happen until there are no active connections.

size: uint8_t[9]

range: A nine-byte array where the first byte is the Address Types and the next 8 are the device address.

§ GAPBOND_INITIATE_WAIT

#define GAPBOND_INITIATE_WAIT   0x401

The amount of time (in ms) to wait for a pairing request before sending the slave initiate request (Read/Write)

size: uint16_t

default: 0 - 65535

range: 1000

§ GAPBOND_IO_CAPABILITIES

#define GAPBOND_IO_CAPABILITIES   0x403

The I/O capabilities of the local device (Read/Write)

size: uint8_t

default: GAPBOND_IO_CAP_DISPLAY_ONLY

range: GAP Bond Manager I/O Capabilities

§ GAPBOND_KEY_DIST_LIST

#define GAPBOND_KEY_DIST_LIST   0x407

Key distribution list for pairing (Read/Write)

Multiple values can be used via bitwise ORing

size: uint8_t

default: GAPBOND_KEYDIST_SENCKEY | GAPBOND_KEYDIST_SIDKEY | GAPBOND_KEYDIST_MIDKEY | GAPBOND_KEYDIST_MSIGN

range: GAP Bond Manager Key Distribution

§ GAPBOND_KEYSIZE

#define GAPBOND_KEYSIZE   0x40C

Key Size used in pairing. (Read/Write)

size: uint8_t

default: 16

range: TGAP_SM_MIN_KEY_LEN - TGAP_SM_MAX_KEY_LEN

§ GAPBOND_LOCAL_OOB_SC_DATA

#define GAPBOND_LOCAL_OOB_SC_DATA   0x417

Local OOB Secure Connections Data (Read/Write)

Passes Secure Connections data to the bond manager that was sent to the remote device. This is only the 16 bytes of byte OOB data, which is needed to complete pairing. Only applicable for Secure Connections.

size: uint8_t[16]

default: all 0x00's

range: 0x00000000000000000000000000000000 - 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF

§ GAPBOND_LOCAL_OOB_SC_ENABLED

#define GAPBOND_LOCAL_OOB_SC_ENABLED   0x416

Validate Local OOB Secure Connections Data (Read/Write)

Indicates to the Bond Manager that the local device has valid OOB data it has attempted to send to the remote device, and that the local OOB data supplied to the Bond Manager by the GAPBOND_LOCAL_OOB_SC_DATA parameter is valid. This is needed to determine if the OOB protocol is expected to be used for Secure Connections. Only one device needs to have received OOB data for OOB pairing to be used in Secure Connections. Only applicable for Secure Connections.

size: uint8_t

default: FALSE

range: TRUE (OOB data is valid) or FALSE (OOB data is not valid)

§ GAPBOND_LRU_BOND_REPLACEMENT

#define GAPBOND_LRU_BOND_REPLACEMENT   0x418

Enable / Disable LRU Bond Replacement Scheme (Read/Write)

Whether to enable the least recently used bond scheme so that, when a newly bonded device is added and all the entries are full, the least recently used device’s bond is deleted to make room.

size: uint8_t

default: FALSE

range: TRUE (enable) or FALSE (disable)

§ GAPBOND_MITM_PROTECTION

#define GAPBOND_MITM_PROTECTION   0x402

Whether to use authenticated pairing (Read/Write)

size: uint8_t

default: TRUE

range: TRUE (use) or FALSE (do not use)

§ GAPBOND_OOB_DATA

#define GAPBOND_OOB_DATA   0x405

OOB data to use for pairing (Read/Write)

size: uint8_t[16]

default: 0x00000000000000000000000000000000 -

range: 0x00000000000000000000000000000000 - 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF

§ GAPBOND_OOB_ENABLED

#define GAPBOND_OOB_ENABLED   0x404

Whether to use OOB for pairing (Read/Write)

size: uint8_t

default: FALSE

range: TRUE (use) or FALSE (do not use)

§ GAPBOND_PAIRING_MODE

#define GAPBOND_PAIRING_MODE   0x400

Whether to allow pairing, and if so, whether to initiate pairing. (Read/Write)

size: uint8_t

default: GAPBOND_PAIRING_MODE_WAIT_FOR_REQ

range: GAP Bond Manager Pairing Modes

§ GAPBOND_REMOTE_OOB_SC_DATA

#define GAPBOND_REMOTE_OOB_SC_DATA   0x415

Remote OOB Secure Connections Data (Read/Write)

Used to pass OOB Secure Connections data to the bond manager that has been received from a remote device. This data is not only the 16 bytes of OOB data, but also the 32-byte ECC Public Key X-Coordinate of the remote device (that it must use when pairing) and a 16-byte confirmation value computed using the said public key, OOB data is used as input to the SM_F4 function. This data can be invalidated by writing 0x00 to the GAPBOND_REMOTE_OOB_SC_ENABLED parameter. Only applicable for Secure Connections.

size: gapBondOobSC_t

default: all 0x00's

range: A valid gapBondOobSC_t structure

§ GAPBOND_REMOTE_OOB_SC_ENABLED

#define GAPBOND_REMOTE_OOB_SC_ENABLED   0x414

Validate Remote OOB Secure Connections Data (Read/Write)

Indicate to the Bond Manager that any Secure Connections OOB data that has been received from a remote device, which has been supplied to the Bond Manager by the GAPBOND_REMOTE_OOB_SC_DATA parameter, is valid. Only applicable for Secure Connections

size: uint8_t

default: FALSE

range: TRUE (OOB data is valid) or FALSE (OOB data is not valid)

§ GAPBOND_SECURE_CONNECTION

#define GAPBOND_SECURE_CONNECTION   0x411

Define Secure Connections Usage during Pairing (Read/Write)

size: uint8_t

default: GAPBOND_SECURE_CONNECTION_ALLOW

range: GAP Bond Manager Secure Connections options

© Copyright 1995-2019, Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy policy | Terms of use | Terms of sale