GapBondMgr Extension Vendor Specific API¶
GapBondMgr Extension Commands¶
GAPBondMgr_SetParameter¶
- Opcode:
0xFE36
- Command Description:
Set a bond manager parameter
Command Parameters
- paramID:
Parameter to Set
- Size:
2 byte(s)
- Default:
0x400
- Range:
Value
Description
0x400
GAPBOND_PAIRING_MODE
0x402
GAPBOND_MITM_PROTECTION
0x403
GAPBOND_IO_CAPABILITIES
0x404
GAPBOND_OOB_ENABLED
0x405
GAPBOND_OOB_DATA
0x406
GAPBOND_BONDING_ENABLED
0x407
GAPBOND_KEY_DIST_LIST
0x408
GAPBOND_DEFAULT_PASSCODE
0x409
GAPBOND_ERASE_ALLBONDS
0x40A
GAPBOND_AUTO_FAIL_PAIRING
0x40B
GAPBOND_AUTO_FAIL_REASON
0x40C
GAPBOND_KEYSIZE
0x40D
GAPBOND_AUTO_SYNC_WL
0x40F
GAPBOND_BOND_FAIL_ACTION
0x410
GAPBOND_ERASE_SINGLEBOND
0x411
GAPBOND_SECURE_CONNECTION
0x412
GAPBOND_ECCKEY_REGEN_POLICY
0x413
GAPBOND_GAPBOND_ECC_KEYS
0x416
GAPBOND_ALLOW_DEBUG_KEYS
0x418
GAPBOND_LRU_BOND_REPLACEMENT
0x41A
GAPBOND_ERASE_LOCAL_INFO
0x41B
GAPBOND_AUTHEN_PAIRING_ONLY
0x41C
GAPBOND_SAME_IRK_OPTION
- paramDataLen:
Size of parameter value
- Condition:
( paramID == 0x400)
- Size:
1 byte(s)
- Value:
1
- GAPBOND_PAIRING_MODE:
Whether to allow pairing, and if so, whether to initiate pairing.
- Condition:
( paramID == 0x400)
- Size:
1 byte(s)
- Default:
0x00
- Range:
Value
Description
0x00
GAPBOND_PAIRING_MODE_NO_PAIRING
0x01
GAPBOND_PAIRING_MODE_WAIT_FOR_REQ
0x02
GAPBOND_PAIRING_MODE_INITIATE
- paramDataLen:
Size of parameter value
- Condition:
( paramID == 0x402)
- Size:
1 byte(s)
- Value:
1
- GAPBOND_MITM_PROTECTION:
Whether to use authenticated pairing
- Condition:
( paramID == 0x402)
- Size:
1 byte(s)
- Default:
0x01
- Range:
Value
Description
False
True
- paramDataLen:
Size of parameter value
- Condition:
( paramID == 0x403)
- Size:
1 byte(s)
- Value:
1
- GAPBOND_IO_CAPABILITIES:
The I/O capabilities of the local device
- Condition:
( paramID == 0x403)
- Size:
1 byte(s)
- Default:
0x00
- Range:
Value
Description
0x00
GAPBOND_IO_CAP_DISPLAY_ONLY
0x01
GAPBOND_IO_CAP_DISPLAY_YES_NO
0x02
GAPBOND_IO_CAP_KEYBOARD_ONLY
0x03
GAPBOND_IO_CAP_NO_INPUT_NO_OUTPUT
0x04
GAPBOND_IO_CAP_KEYBOARD_DISPLAY
- paramDataLen:
Size of parameter value
- Condition:
( paramID == 0x404)
- Size:
1 byte(s)
- Value:
1
- GAPBOND_OOB_ENABLED:
Whether to use OOB for pairing
- Condition:
( paramID == 0x404)
- Size:
1 byte(s)
- Default:
0x00
- Range:
Value
Description
False
True
- paramDataLen:
Size of parameter value
- Condition:
( paramID == 0x405)
- Size:
1 byte(s)
- Value:
16
- GAPBOND_OOB_DATA:
OOB data to use for pairing
- Condition:
( paramID == 0x405)
- Size:
16 byte(s)
- Default:
“00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00”
- Range:
Any 16 byte value.
- paramDataLen:
Size of parameter value
- Condition:
( paramID == 0x406)
- Size:
1 byte(s)
- Value:
1
- GAPBOND_BONDING_ENABLED:
Whether to bond after pairing
- Condition:
( paramID == 0x406)
- Size:
1 byte(s)
- Default:
0x00
- Range:
Value
Description
False
True
- paramDataLen:
Size of parameter value
- Condition:
( paramID == 0x407)
- Size:
1 byte(s)
- Value:
1
- GAPBOND_KEY_DIST_LIST:
Key distribution list for pairing
- Condition:
( paramID == 0x407)
- Size:
1 byte(s)
- Default:
0x63
- Range:
Value
Description
0x01
GAPBOND_KEYDIST_SENCKEY
0x02
GAPBOND_KEYDIST_SIDKEY
0x04
GAPBOND_KEYDIST_SSIGN
0x08
GAPBOND_KEYDIST_SLINK
0x10
GAPBOND_KEYDIST_MENCKEY
0x20
GAPBOND_KEYDIST_MIDKEY
0x40
GAPBOND_KEYDIST_MSIGN
0x80
GAPBOND_KEYDIST_MLINK
- paramDataLen:
Size of parameter value
- Condition:
( paramID == 0x408)
- Size:
1 byte(s)
- Value:
4
- GAPBOND_DEFAULT_PASSCODE:
Default passcode to use for authenticated pairing
- Condition:
( paramID == 0x408)
- Size:
4 byte(s)
- Default:
0x00000000
- Range:
Any 6 digit string
- paramDataLen:
Size of parameter value
- Condition:
( paramID == 0x409)
- Size:
1 byte(s)
- Value:
0
- GAPBOND_ERASE_ALLBONDS:
Erase all bonds from SNV and remove all bonded devices
- Condition:
( paramID == 0x409)
- Size:
0 byte(s)
- Default:
N/A
- Range:
N/A
- paramDataLen:
Size of parameter value
- Condition:
( paramID == 0x40A)
- Size:
1 byte(s)
- Value:
1
- GAPBOND_AUTO_FAIL_PAIRING:
For test mode only
- Condition:
( paramID == 0x40A)
- Size:
1 byte(s)
- Default:
For test mode only
- Range:
Value
Description
False
True
- paramDataLen:
Size of parameter value
- Condition:
( paramID == 0x40B)
- Size:
1 byte(s)
- Value:
1
- GAPBOND_AUTO_FAIL_REASON:
For test mode only
- Condition:
( paramID == 0x40B)
- Size:
1 byte(s)
- Default:
For test mode only
- Range:
For test mode only
- paramDataLen:
Size of parameter value
- Condition:
( paramID == 0x40C)
- Size:
1 byte(s)
- Value:
1
- GAPBOND_KEYSIZE:
Key Size used in pairing
- Condition:
( paramID == 0x40C)
- Size:
1 byte(s)
- Default:
8
- Range:
7-16
- paramDataLen:
Size of parameter value
- Condition:
( paramID == 0x40D)
- Size:
1 byte(s)
- Value:
1
- GAPBOND_AUTO_SYNC_WL:
- Condition:
( paramID == 0x40D)
- Size:
1 byte(s)
- Default:
0x00
- Range:
Value
Description
False
True
- paramDataLen:
Size of parameter value
- Condition:
( paramID == 0x40F)
- Size:
1 byte(s)
- Value:
1
- GAPBOND_BOND_FAIL_ACTION:
The action that the device takes after an unsuccessful bonding attempt
- Condition:
( paramID == 0x40F)
- Size:
1 byte(s)
- Default:
0x02
- Range:
Value
Description
0x00
GAPBOND_FAIL_NO_ACTION
0x01
GAPBOND_FAIL_INITIATE_PAIRING
0x02
GAPBOND_FAIL_TERMINATE_LINK
0x03
GAPBOND_FAIL_TERMINATE_ERASE_BONDS
- paramDataLen:
Size of parameter value
- Condition:
( paramID == 0x410)
- Size:
1 byte(s)
- Value:
7
- GAPBOND_ERASE_SINGLEBOND:
- Condition:
( paramID == 0x410)
- Size:
7 byte(s)
- Default:
“00:00:00:00:00:00:00”
- Range:
A 7-byte array where the first byte is the address type and the next 6 are the device address.
- paramDataLen:
Size of parameter value
- Condition:
( paramID == 0x411)
- Size:
1 byte(s)
- Value:
1
- GAPBOND_SECURE_CONNECTION:
Define Secure Connections Usage during Pairing
- Condition:
( paramID == 0x411)
- Size:
1 byte(s)
- Default:
0x01
- Range:
Value
Description
0x00
GAPBOND_SECURE_CONNECTION_NONE
0x01
GAPBOND_SECURE_CONNECTION_ALLOW
0x02
GAPBOND_SECURE_CONNECTION_ONLY
- paramDataLen:
Size of parameter value
- Condition:
( paramID == 0x412)
- Size:
1 byte(s)
- Value:
1
- GAPBOND_ECCKEY_REGEN_POLICY:
- Condition:
( paramID == 0x412)
- Size:
1 byte(s)
- Default:
2
- Range:
0 - 256
- paramDataLen:
Size of parameter value
- Condition:
( paramID == 0x413)
- Size:
1 byte(s)
- Value:
96
- GAPBOND_ECC_KEYS:
The private and public keys to use for Secure Connections pairing. 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. By default, the keys are generated using GAPBOND_ECCKEY_REGEN_POLICY
- Condition:
( paramID == 0x413)
- Size:
96 byte(s)
- Default:
“BD:1A:3C:CD:A6:B8:99:58:99:B7:40:EB:7B:60:FF:4A:50:3F:10:D2:E3:B3:C9:74:38:5F:C5:A3:D4:F6:49:3F:E6:9D:35:0E:48:01:03:CC:DB:FD:F4:AC:11:91:F4:EF:B9:A5:F9:E9:A7:83:2C:5E:2C:BE:97:F2:D2:03:B0:20:8B:D2:89:15:D0:8E:1C:74:24:30:ED:8F:C2:45:63:76:5C:15:52:5A:BF:9A:32:63:6D:EB:2A:65:49:9C:80:DC”
- Range:
Any 96 byte value
- paramDataLen:
Size of parameter value
- Condition:
( paramID == 0x416)
- Size:
1 byte(s)
- Value:
1
- GAPBOND_ALLOW_DEBUG_KEYS:
Only applicable for Secure Connections. Allows the application to specify wether reject or allow debug keys receiving as peer’s public keys to use in pairing. By default, it is allowed
- Condition:
( paramID == 0x416)
- Size:
1 byte(s)
- Default:
True
- Range:
Value
Description
False
True
- paramDataLen:
Size of parameter value
- Condition:
( paramID == 0x418)
- Size:
1 byte(s)
- Value:
1
- GAPBOND_LRU_BOND_REPLACEMENT:
Enable / Disable LRU Bond Replacement Scheme. 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 devices bond is deleted to make room.
- Condition:
( paramID == 0x418)
- Size:
1 byte(s)
- Default:
0x00
- Range:
Value
Description
False
True
- paramDataLen:
Size of parameter value
- Condition:
( paramID == 0x41A)
- Size:
1 byte(s)
- Value:
0
- GAPBOND_ERASE_LOCAL_INFO:
Erase all local information
- Condition:
( paramID == 0x41A)
- Size:
0 byte(s)
- Default:
N/A
- Range:
N/A
- paramDataLen:
Size of parameter value
- Condition:
( paramID == 0x41B)
- Size:
1 byte(s)
- Value:
1
- GAPBOND_AUTHEN_PAIRING_ONLY:
Whether to enforce authenticated pairing
- Condition:
( paramID == 0x41B)
- Size:
1 byte(s)
- Default:
0x00
- Range:
Value
Description
False
True
- paramDataLen:
Size of parameter value
- Condition:
( paramID == 0x41C)
- Size:
1 byte(s)
- Value:
1
- GAPBOND_SAME_IRK_OPTION:
The action that the device takes after receiving an IRK that already exists in the resolving list but with different Identity address
- Condition:
( paramID == 0x41C)
- Size:
1 byte(s)
- Default:
0x00
- Range:
Value
Description
0x00
GAPBOND_SAME_IRK_UPDATE_BOND_REC
0x01
GAPBOND_SAME_IRK_TERMINATE_LINK
Events Generated
When this command is received, the host will send the CommandStatus Event.
GAPBondMgr_GetParameter¶
- Opcode:
0xFE37
- Command Description:
Send this command to read a GAP Bond parameter.
Command Parameters
- paramID:
Parameter to get
- Size:
2 byte(s)
- Default:
0x400
- Range:
Value
Description
0x400
GAPBOND_PAIRING_MODE
0x402
GAPBOND_MITM_PROTECTION
0x403
GAPBOND_IO_CAPABILITIES
0x404
GAPBOND_OOB_ENABLED
0x405
GAPBOND_OOB_DATA
0x406
GAPBOND_BONDING_ENABLED
0x407
GAPBOND_KEY_DIST_LIST
0x408
GAPBOND_DEFAULT_PASSCODE
0x40A
GAPBOND_AUTO_FAIL_PAIRING
0x40B
GAPBOND_AUTO_FAIL_REASON
0x40C
GAPBOND_KEYSIZE
0x40D
GAPBOND_AUTO_SYNC_WL
0x40E
GAPBOND_BOND_COUNT
0x40F
GAPBOND_BOND_FAIL_ACTION
0x411
GAPBOND_SECURE_CONNECTION
0x413
GAPBOND_GAPBOND_ECC_KEYS
0x416
GAPBOND_ALLOW_DEBUG_KEYS
0x418
GAPBOND_LRU_BOND_REPLACEMENT
0x41B
GAPBOND_AUTHEN_PAIRING_ONLY
0x41C
GAPBOND_SAME_IRK_OPTION
Events Generated
When this command is received, the host will send the CommandStatus Event.
Additional Command Status Return Parameters
- length:
- Size:
1 byte(s)
- Range:
- paramId:
- Condition:
( length>0)
- Size:
2 byte(s)
- Range:
Value
Description
0x400
GAPBOND_PAIRING_MODE
0x402
GAPBOND_MITM_PROTECTION
0x403
GAPBOND_IO_CAPABILITIES
0x404
GAPBOND_OOB_ENABLED
0x405
GAPBOND_OOB_DATA
0x406
GAPBOND_BONDING_ENABLED
0x407
GAPBOND_KEY_DIST_LIST
0x408
GAPBOND_DEFAULT_PASSCODE
0x40A
GAPBOND_AUTO_FAIL_PAIRING
0x40B
GAPBOND_AUTO_FAIL_REASON
0x40C
GAPBOND_KEYSIZE
0x40D
GAPBOND_AUTO_SYNC_WL
0x40E
GAPBOND_BOND_COUNT
0x40F
GAPBOND_BOND_FAIL_ACTION
0x411
GAPBOND_SECURE_CONNECTION
0x413
GAPBOND_GAPBOND_ECC_KEYS
0x416
GAPBOND_ALLOW_DEBUG_KEYS
0x418
GAPBOND_LRU_BOND_REPLACEMENT
0x41B
GAPBOND_AUTHEN_PAIRING_ONLY
0x41C
GAPBOND_SAME_IRK_OPTION
- GAPBOND_PAIRING_MODE:
- Condition:
( length>0 paramId==0x400)
- Size:
1 byte(s)
- Range:
Value
Description
0x00
GAPBOND_PAIRING_MODE_NO_PAIRING
0x01
GAPBOND_PAIRING_MODE_WAIT_FOR_REQ
0x02
GAPBOND_PAIRING_MODE_INITIATE
- GAPBOND_MITM_PROTECTION:
- Condition:
( length>0 paramId==0x402)
- Size:
1 byte(s)
- Range:
Value
Description
False
True
- GAPBOND_IO_CAPABILITIES:
- Condition:
( length>0 paramId==0x403)
- Size:
1 byte(s)
- Range:
Value
Description
0x00
GAPBOND_IO_CAP_DISPLAY_ONLY
0x01
GAPBOND_IO_CAP_DISPLAY_YES_NO
0x02
GAPBOND_IO_CAP_KEYBOARD_ONLY
0x03
GAPBOND_IO_CAP_NO_INPUT_NO_OUTPUT
0x04
GAPBOND_IO_CAP_KEYBOARD_DISPLAY
- GAPBOND_OOB_ENABLED:
- Condition:
( length>0 paramId==0x404)
- Size:
1 byte(s)
- Range:
Value
Description
False
True
- GAPBOND_OOB_DATA:
- Condition:
( length>0 paramId==0x405)
- Size:
16 byte(s)
- Range:
- GAPBOND_BONDING_ENABLED:
- Condition:
( length>0 paramId==0x406)
- Size:
1 byte(s)
- Range:
Value
Description
False
True
- GAPBOND_KEY_DIST_LIST:
- Condition:
( length>0 paramId==0x407)
- Size:
1 byte(s)
- Range:
Value
Description
0x01
GAPBOND_KEYDIST_SENCKEY
0x02
GAPBOND_KEYDIST_SIDKEY
0x04
GAPBOND_KEYDIST_SSIGN
0x08
GAPBOND_KEYDIST_SLINK
0x10
GAPBOND_KEYDIST_MENCKEY
0x20
GAPBOND_KEYDIST_MIDKEY
0x40
GAPBOND_KEYDIST_MSIGN
0x80
GAPBOND_KEYDIST_MLINK
- GAPBOND_DEFAULT_PASSCODE:
- Condition:
( length>0 paramId==0x408)
- Size:
4 byte(s)
- Range:
- GAPBOND_AUTO_FAIL_PAIRING:
- Condition:
( length>0 paramId==0x40A)
- Size:
1 byte(s)
- Range:
Value
Description
False
True
- GAPBOND_AUTO_FAIL_REASON:
- Condition:
( length>0 paramId==0x40B)
- Size:
1 byte(s)
- Range:
- GAPBOND_KEYSIZE:
- Condition:
( length>0 paramId==0x40C)
- Size:
1 byte(s)
- Range:
- GAPBOND_AUTO_SYNC_WL:
- Condition:
( length>0 paramId==0x40D)
- Size:
1 byte(s)
- Range:
Value
Description
False
True
- GAPBOND_BOND_COUNT:
- Condition:
( length>0 paramId==0x40E)
- Size:
1 byte(s)
- Range:
- GAPBOND_BOND_FAIL_ACTION:
- Condition:
( length>0 paramId==0x40F)
- Size:
1 byte(s)
- Range:
Value
Description
0x00
GAPBOND_FAIL_NO_ACTION
0x01
GAPBOND_FAIL_INITIATE_PAIRING
0x02
GAPBOND_FAIL_TERMINATE_LINK
0x03
GAPBOND_FAIL_TERMINATE_ERASE_BONDS
- GAPBOND_SECURE_CONNECTION:
- Condition:
( length>0 paramId==0x411)
- Size:
1 byte(s)
- Range:
Value
Description
0x00
GAPBOND_SECURE_CONNECTION_NONE
0x01
GAPBOND_SECURE_CONNECTION_ALLOW
0x02
GAPBOND_SECURE_CONNECTION_ONLY
- GAPBOND_ECCKEY_REGEN_POLICY:
- Condition:
( length>0 paramId==0x412)
- Size:
1 byte(s)
- Range:
- GAPBOND_GAPBOND_ECC_KEYS:
- Condition:
( length>0 paramId==0x413)
- Size:
96 byte(s)
- Range:
- GAPBOND_ALLOW_DEBUG_KEYS:
- Condition:
( length>0 paramId==0x416)
- Size:
1 byte(s)
- Range:
Value
Description
False
True
- GAPBOND_LRU_BOND_REPLACEMENT:
- Condition:
( length>0 paramId==0x418)
- Size:
1 byte(s)
- Range:
Value
Description
False
True
- GAPBOND_AUTHEN_PAIRING_ONLY:
- Condition:
( length>0 paramId==0x41B)
- Size:
1 byte(s)
- Range:
Value
Description
False
True
- GAPBOND_SAME_IRK_OPTION:
- Condition:
( length>0 paramId==0x41C)
- Size:
1 byte(s)
- Range:
Value
Description
False
True
GAPBondMgr_ServiceChangeInd¶
- Opcode:
0xFE38
- Command Description:
Set/clear the service change indication in a bond record.
Command Parameters
- connectionHandle:
Used to Identify the Connection
- Size:
2 byte(s)
- Default:
0
- Range:
0 - 0xFFFD or 0xFFFF for all bonded devices in the database
- setParam:
“Yes” to set the Service Change indication in the bond record, “No” to clear the indication.
- Size:
1 byte(s)
- Default:
1
- Range:
Value
Description
0x00
No
0x01
Yes
Events Generated
When this command is received, the host will send the CommandStatus Event.
GAPBondMgr_Pair¶
- Opcode:
0xFE48
- Command Description:
This API can be used to initiate pairing in cases where it is not started automatically by the gapbondmgr or to re-pair after the initial pairing has occurred if, for example, the pairing requirements have changed.
Command Parameters
- connectionHandle:
Connection handle of existing link to start pairing.
- Size:
2 byte(s)
- Default:
0
- Range:
0x0000 to 0xFFFD
Events Generated
When this command is received, the host will send the CommandStatus Event.
GAPBondMgr_FindAddr¶
- Opcode:
0xFE49
- Command Description:
Search for an address in the bonding table. If the address is a random private resolvable address, attempt to resolve the random address against all IRK’s in bonding table.
Command Parameters
- address:
The address to search for
- Size:
6 byte(s)
- Default:
“AA:AA:AA:AA:AA:AA”
- Range:
Any 6-byte address
- addrType:
The device’s identity address type (Public or Random ID).
- Size:
1 byte(s)
- Default:
0x00
- Range:
Value
Description
0x00
PEER_ADDRTYPE_PUBLIC_OR_PUBLIC_ID
0x01
PEER_ADDRTYPE_RANDOM_OR_RANDOM_ID
Events Generated
When this command is received, the host will send the CommandStatus Event.
Additional Command Status Return Parameters
- length:
- Size:
1 byte(s)
- Range:
- bondIdx:
Index used to identity bond in bond table.
- Condition:
( StatStatus==0x00)
- Size:
1 byte(s)
- Range:
- identityAddressType:
Resolved address type if found and successfully resolved.
- Condition:
( StatStatus==0x00)
- Size:
1 byte(s)
- Range:
Value
Description
0x00
ADDRTYPE_PUBLIC
0x01
ADDRTYPE_RANDOM
0x02
ADDRTYPE_PUBLIC_ID
0x03
ADDRTYPE_RANDOM_ID
0xFE
ADDRTYPE_RANDOM_NR
0xFF
ADDRTYPE_NONE
- identityAddress:
Resolved address if found and successfully resolved.
- Condition:
( StatStatus==0x00)
- Size:
6 byte(s)
- Range:
GAPBondMgr_PasscodeRsp¶
- Opcode:
0xFE4A
- Command Description:
Respond to a passcode request.
Command Parameters
- connectionHandle:
Connection handle of existing link to start pairing.
- Size:
2 byte(s)
- Default:
0
- Range:
0x0000 to 0xFFFD
- status:
Pairing Failed Message reason field.
- Size:
1 byte(s)
- Default:
0
- Range:
Value
Description
0x00
SUCCESS
0x01
SMP_PAIRING_FAILED_PASSKEY_ENTRY_FAILED
0x02
SMP_PAIRING_FAILED_OOB_NOT_AVAIL
0x03
SMP_PAIRING_FAILED_AUTH_REQ
0x04
SMP_PAIRING_FAILED_CONFIRM_VALUE
0x05
SMP_PAIRING_FAILED_NOT_SUPPORTED
0x06
SMP_PAIRING_FAILED_ENC_KEY_SIZE
0x07
SMP_PAIRING_FAILED_CMD_NOT_SUPPORTED
0x08
SMP_PAIRING_FAILED_UNSPECIFIED
0x09
SMP_PAIRING_FAILED_REPEATED_ATTEMPTS
0x0A
SMP_PAIRING_FAILED_INVALID_PARAMETERS
0x0B
SMP_PAIRING_FAILED_DHKEY_CHECK_FAILED
0x0C
SMP_PAIRING_FAILED_NUM_COMPARISON_FAILED
0x0D
SMP_PAIRING_FAILED_BREDR_PAIR_IN_PROGRESS
0x0E
SMP_PAIRING_FAILED_CT_KEYDER_NOT_ALLOWED
0x0F
Command Disallowed
0x11
Unsupported Feature Or Parameter Value
0x12
Invalid HCI Command Parameters
0x17
bleTimeout
- Passcode:
Passcode to use for pairing
- Size:
4 byte(s)
- Default:
0x123456
- Range:
A 6-digit passcode.
Events Generated
When this command is received, the host will send the CommandStatus Event.
SM_RegisterTask¶
- Opcode:
0xFE39
- Command Description:
Register Application task with the SM.
Events Generated
When this command is received, the host will send the CommandStatus Event.
SM_GetEccKeys¶
- Opcode:
0xFE3A
- Command Description:
Request ECC keys to be generated by BLE Stack. SM_RegisterTask must be called prior to using this command.
Events Generated
When this command is received, the host will send the CommandStatus Event.
SM_GetDHKey¶
- Opcode:
0xFE3B
- Command Description:
Request a Diffie-Hellman Key is generated by the BLE Stack. SM_RegisterTask must be called prior to using this command.
Command Parameters
- PrivateKey:
ECC Private Key
- Size:
32 byte(s)
- Default:
“00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00”
- Range:
Any 32 byte value
- PublicKey1:
Local device’s public key X-coordinate.
- Size:
32 byte(s)
- Default:
“00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00”
- Range:
Any 32 byte value
- PublicKey2:
Remote device’s public key X-coordinate.
- Size:
32 byte(s)
- Default:
“00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00”
- Range:
Any 32 byte value
Events Generated
When this command is received, the host will send the CommandStatus Event.
SM_GetScConfirmOob¶
- Opcode:
0xFE3C
- Command Description:
Request a SC Confrim value for the OOB Pairing protocol is generated by the BLE Stack. SM_RegisterTask must be called prior to using this command.
Command Parameters
- PublicKey:
Local device’s public key X-coordinate
- Size:
32 byte(s)
- Default:
“00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00”
- Range:
Any 32 byte value
- oob:
Local out of bands to send to a remote device
- Size:
16 byte(s)
- Default:
“00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00”
- Range:
Any 16 byte value
Events Generated
When this command is received, the host will send the CommandStatus Event.
GAPBondMgr_SCGetLocalOOBParameters¶
- Opcode:
0xFE4C
- Command Description:
Request a SC Confrim value for the OOB Pairing protocol is generated by the BLE Stack. SM_RegisterTask must be called prior to using this command.
Events Generated
When this command is received, the host will send the CommandStatus Event.
Additional Command Status Return Parameters
- length:
- Size:
1 byte(s)
- Range:
- confirm:
- Condition:
( StatStatus==0x00)
- Size:
16 byte(s)
- Range:
- random:
- Condition:
( StatStatus==0x00)
- Size:
16 byte(s)
- Range:
GAPBondMgr_SCSetRemoteOOBParameters¶
- Opcode:
0xFE4D
- Command Description:
Command to set remote’s OOB parameters
Command Parameters
- confirm:
Remote’s confirm value.
- Size:
16 byte(s)
- Default:
“00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00”
- Range:
Any 16 byte value
- random:
Remote’s random number.
- Size:
16 byte(s)
- Default:
“00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00”
- Range:
Any 16 byte value
- OOBDataFlag:
OOB Authentication data from remote device present.
- Size:
1 byte(s)
- Default:
“00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00”
- Range:
Any 16 byte value
Events Generated
When this command is received, the host will send the CommandStatus Event.
GAP_SetPrivacyMode¶
- Opcode:
0xFE3D
- Command Description:
Set the privacy mode for a remote device
Command Parameters
- addrType:
Configure the device’s identity address type.
- Size:
1 byte(s)
- Default:
0x00
- Range:
Value
Description
0x00
PEER_ADDRTYPE_PUBLIC_OR_PUBLIC_ID
0x01
PEER_ADDRTYPE_RANDOM_OR_RANDOM_ID
- Addr:
Address of remote device
- Size:
6 byte(s)
- Default:
“00:00:00:00:00:00”
- Range:
Any 6 byte value.
- mode:
Privacy mode to use with the remote device.
- Size:
1 byte(s)
- Default:
0x00
- Range:
Value
Description
0
Network Privacy Mode
1
Device Privacy Mode
Events Generated
The host will send the CommandStatus Event to indicate the privacy mode has been set.