TI BLE Stack API Documentation  2.03.08
Functions
GAP Bond Manager API Functions

Functions

bStatus_t GAPBondMgr_SetParameter (uint16 param, uint8 len, void *pValue)
 Set a GAP Bond Manager parameter. More...
 
bStatus_t GAPBondMgr_GetParameter (uint16 param, void *pValue)
 Get a GAP Bond Manager parameter. More...
 
bStatus_t GAPBondMgr_LinkEst (uint8 addrType, uint8 *pDevAddr, uint16 connHandle, uint8 role)
 Notify the Bond Manager that a connection has been made. More...
 
void GAPBondMgr_LinkTerm (uint16 connHandle)
 Notify the Bond Manager that a connection has been terminated. More...
 
void GAPBondMgr_SlaveReqSecurity (uint16 connHandle, uint8 authReq)
 
uint8 GAPBondMgr_ResolveAddr (uint8 addrType, uint8 *pDevAddr, uint8 *pResolvedAddr)
 Resolve an address from bonding information. More...
 
bStatus_t GAPBondMgr_ServiceChangeInd (uint16 connectionHandle, uint8 setParam)
 Set/clear the service change indication in a bond record. More...
 
bStatus_t GAPBondMgr_UpdateCharCfg (uint16 connectionHandle, uint16 attrHandle, uint16 value)
 Update the Characteristic Configuration in a bond record. More...
 
void GAPBondMgr_Register (gapBondCBs_t *pCB)
 Register callback functions with the bond manager. More...
 
bStatus_t GAPBondMgr_PasscodeRsp (uint16 connectionHandle, uint8 status, uint32 passcode)
 Respond to a passcode request. More...
 
bStatus_t GAPBondMgr_ReadCentAddrResChar (uint16 connectionHandle)
 Send Read By Type Request to get value attribute of Central Address Resolution characteristic. Value determines if peer supports Enhanced Privacy. Bond record will automatically be updated based on peer response. More...
 
uint8 GAPBondMgr_SupportsEnhancedPriv (uint8 *pPeerIdAddr)
 Determine if peer device supports enhanced privacy by checking the Enhanced Privacy state flag of the bond record that corresponds to the peer's identity address. More...
 
uint8 GAPBondMgr_ProcessGAPMsg (gapEventHdr_t *pMsg)
 This is a bypass mechanism to allow the bond manager to process GAP messages. More...
 
uint8 GAPBondMgr_CheckNVLen (uint8 id, uint8 len)
 This function will check the length of a Bond Manager NV Item. More...
 
bStatus_t GAPBondMgr_syncResolvingList (void)
 This function will add all device address and IRK pairs from bond records to the Controller. Used with PRIVACY_1_2_CFG. More...
 

Detailed Description

Function Documentation

§ GAPBondMgr_CheckNVLen()

uint8 GAPBondMgr_CheckNVLen ( uint8  id,
uint8  len 
)

This function will check the length of a Bond Manager NV Item.

Parameters
id- NV ID.
len- lengths in bytes of item.
Returns
SUCCESS or FAILURE

§ GAPBondMgr_GetParameter()

bStatus_t GAPBondMgr_GetParameter ( uint16  param,
void *  pValue 
)

Get a GAP Bond Manager parameter.

NOTE: You can call this function with a GAP Parameter ID and it will get a GAP Parameter. GAP Parameters are defined in (gap.h). Also, the "pValue" field must point to a "uint16".

Parameters
param- Profile parameter ID: GAP Bond Manager Parameters
pValue- pointer to location to get the value. This is dependent on the parameter ID and WILL be cast to the appropriate data type (example: data type of uint16 will be cast to uint16 pointer).
Returns
SUCCESS or INVALIDPARAMETER (invalid paramID)

§ GAPBondMgr_LinkEst()

bStatus_t GAPBondMgr_LinkEst ( uint8  addrType,
uint8 *  pDevAddr,
uint16  connHandle,
uint8  role 
)

Notify the Bond Manager that a connection has been made.

NOTE: The GAP Peripheral/Central Role profile will call this function, if they are included in the project.

Parameters
addrType- device's address type. Reference ADDRTYPE_DEFINES in gap.h
pDevAddr- device's address
connHandle- connection handle
role- master or slave role. Reference GAP_PROFILE_ROLE_DEFINES in gap.h
Returns
SUCCESS, otherwise failure

§ GAPBondMgr_LinkTerm()

void GAPBondMgr_LinkTerm ( uint16  connHandle)

Notify the Bond Manager that a connection has been terminated.

NOTE: The GAP Peripheral/Central Role profile will call this function, if they are included in the project.

Parameters
connHandle- connection handle
Returns
none

§ GAPBondMgr_PasscodeRsp()

bStatus_t GAPBondMgr_PasscodeRsp ( uint16  connectionHandle,
uint8  status,
uint32  passcode 
)

Respond to a passcode request.

Parameters
connectionHandle- connection handle of the connected device or 0xFFFF if all devices in database.
status- SUCCESS if passcode is available, otherwise see Pairing failure status values.
passcode- integer value containing the passcode.
Returns
SUCCESS - bond record found and changed,
bleIncorrectMode - Link not found.

§ GAPBondMgr_ProcessGAPMsg()

uint8 GAPBondMgr_ProcessGAPMsg ( gapEventHdr_t pMsg)

This is a bypass mechanism to allow the bond manager to process GAP messages.

NOTE: This is an advanced feature and shouldn't be called unless the normal GAP Bond Manager task ID registration is overridden.

Parameters
pMsg- GAP event message
Returns
TRUE if safe to deallocate incoming GAP message, FALSE otherwise.

§ GAPBondMgr_ReadCentAddrResChar()

bStatus_t GAPBondMgr_ReadCentAddrResChar ( uint16  connectionHandle)

Send Read By Type Request to get value attribute of Central Address Resolution characteristic. Value determines if peer supports Enhanced Privacy. Bond record will automatically be updated based on peer response.

Parameters
connectionHandle- connection handle of the connected device
Returns
SUCCESS: Request was sent successfully.
INVALIDPARAMETER: Invalid connection handle or request field.
MSG_BUFFER_NOT_AVAIL: No HCI buffer is available.
bleNotConnected: Connection is down.
blePending: A response is pending with this server.
bleMemAllocError: Memory allocation error occurred.
bleTimeout: Previous transaction timed out.

§ GAPBondMgr_Register()

void GAPBondMgr_Register ( gapBondCBs_t pCB)

Register callback functions with the bond manager.

NOTE: There is no need to register a passcode callback function if the passcode will be handled with the GAPBOND_DEFAULT_PASSCODE parameter.

Parameters
pCB- pointer to callback function structure.
Returns
none

§ GAPBondMgr_ResolveAddr()

uint8 GAPBondMgr_ResolveAddr ( uint8  addrType,
uint8 *  pDevAddr,
uint8 *  pResolvedAddr 
)

Resolve an address from bonding information.

Parameters
addrType- peer's address type. Reference ADDRTYPE_DEFINES in gap.h
pDevAddr- peer's address
pResolvedAddr- pointer to buffer to put the resolved address
Returns
bonding index (0 - (GAP_BONDINGS_MAX-1) if found, GAP_BONDINGS_MAX if not found

§ GAPBondMgr_ServiceChangeInd()

bStatus_t GAPBondMgr_ServiceChangeInd ( uint16  connectionHandle,
uint8  setParam 
)

Set/clear the service change indication in a bond record.

Parameters
connectionHandle- connection handle of the connected device or 0xFFFF if all devices in database.
setParam- TRUE to set the service change indication, FALSE to clear it.
Returns
SUCCESS - bond record found and changed,
bleNoResources - bond record not found (for 0xFFFF connectionHandle),
bleNotConnected - connection not found - connectionHandle is invalid (for non-0xFFFF connectionHandle).

§ GAPBondMgr_SetParameter()

bStatus_t GAPBondMgr_SetParameter ( uint16  param,
uint8  len,
void *  pValue 
)

Set a GAP Bond Manager parameter.

NOTE: You can call this function with a GAP Parameter ID and it will set the GAP Parameter. GAP Parameters are defined in (gap.h). Also, the "len" field must be set to the size of a "uint16" and the "pValue" field must point to a "uint16".

Parameters
param- Profile parameter ID: GAP Bond Manager Parameters
len- length of data to write
pValue- pointer to data to write. This is dependent on the parameter ID and WILL be cast to the appropriate data type (example: data type of uint16 will be cast to uint16 pointer).
Returns
SUCCESS or INVALIDPARAMETER (invalid paramID)

§ GAPBondMgr_SupportsEnhancedPriv()

uint8 GAPBondMgr_SupportsEnhancedPriv ( uint8 *  pPeerIdAddr)

Determine if peer device supports enhanced privacy by checking the Enhanced Privacy state flag of the bond record that corresponds to the peer's identity address.

Parameters
pPeerIdAddr- peer identity address
Returns
TRUE: Peer supports enhanced privacy.
FALSE: Peer does not support enhanced privacy.

§ GAPBondMgr_syncResolvingList()

bStatus_t GAPBondMgr_syncResolvingList ( void  )

This function will add all device address and IRK pairs from bond records to the Controller. Used with PRIVACY_1_2_CFG.

Parameters
none
Returns
SUCCESS or FAILURE

§ GAPBondMgr_UpdateCharCfg()

bStatus_t GAPBondMgr_UpdateCharCfg ( uint16  connectionHandle,
uint16  attrHandle,
uint16  value 
)

Update the Characteristic Configuration in a bond record.

Parameters
connectionHandle- connection handle of the connected device or 0xFFFF if all devices in database.
attrHandle- attribute handle.
value- characteristic configuration value.
Returns
SUCCESS - bond record found and changed,
bleNoResources - bond record not found (for 0xFFFF connectionHandle),
bleNotConnected - connection not found - connectionHandle is invalid (for non-0xFFFF connectionHandle).