TI BLE-Stack for Bluetooth 4.2 API Documentation
3.01.00.07
|
This module implements the Host Controller Interface. For a detailed usage section describing how to send these commands and receive events, see the HCI Section of the User's Guide. More...
Modules | |
HCI Constants | |
HCI Events | |
HCI Function Maps | |
Files | |
file | hci.h |
HCI layer interface. | |
file | hci_tl.h |
Types, constants, external functions etc. for the BLE HCI Transport Layer. | |
Macros | |
#define | HCI_ASSERT(condition) HAL_ASSERT(condition) |
HCI Assert. | |
Functions | |
hciStatus_t | HCI_DisconnectCmd (uint16 connHandle, uint8 reason) |
Terminate a connection. More... | |
hciStatus_t | HCI_EXT_AdvEventNoticeCmd (uint8 taskID, uint16 taskEvent) |
Advertising Event Notice Command. More... | |
hciStatus_t | HCI_EXT_BuildRevisionCmd (uint8 mode, uint16 userRevNum) |
Set a user revision number or read the build revision number. More... | |
hciStatus_t | HCI_EXT_ConnEventNoticeCmd (uint16 connHandle, uint8 taskID, uint16 taskEvent) |
Connection Event Notice Command. More... | |
hciStatus_t | HCI_EXT_DecryptCmd (uint8 *key, uint8 *encText) |
Decrypt encrypted data using AES128. More... | |
hciStatus_t | HCI_EXT_DisconnectImmedCmd (uint16 connHandle) |
Disconnect the connection immediately. More... | |
hciStatus_t | HCI_EXT_EnablePTMCmd (void) |
Enable Production Test Mode. More... | |
hciStatus_t | HCI_EXT_EndModemTestCmd (void) |
Shutdown a modem test. More... | |
hciStatus_t | HCI_EXT_GetActiveConnInfoCmd (uint8 connId, hciActiveConnInfo_t *activeConnInfo) |
This API is used to get connection related information required to follow the target connection with a BLE conneciton monitor. More... | |
hciStatus_t | HCI_EXT_GetConnInfoCmd (uint8 *numAllocConns, uint8 *numActiveConns, hciConnInfo_t *activeConnInfo) |
Get Connection Info. More... | |
hciStatus_t | HCI_EXT_ModemHopTestTxCmd (void) |
Start Modem Hop Tx Test. More... | |
hciStatus_t | HCI_EXT_ModemTestRxCmd (uint8 rxChan) |
Start Modem Hop RX Test. More... | |
hciStatus_t | HCI_EXT_ModemTestTxCmd (uint8 cwMode, uint8 txChan) |
Start Modem TX Test. More... | |
hciStatus_t | HCI_EXT_NumComplPktsLimitCmd (uint8 limit, uint8 flushOnEvt) |
Set the Number of Completed Packets Limit. More... | |
hciStatus_t | HCI_EXT_OnePktPerEvtCmd (uint8 control) |
Set whether a connection will be limited to one packet per event. More... | |
hciStatus_t | HCI_EXT_PacketErrorRateCmd (uint16 connHandle, uint8 command) |
Packet Error Rate Command. More... | |
hciStatus_t | HCI_EXT_PERbyChanCmd (uint16 connHandle, perByChan_t *perByChan) |
Packet Error Rate by Channel Command. More... | |
hciStatus_t | HCI_EXT_ResetSystemCmd (uint8 mode) |
Issue a soft or hard system reset. More... | |
hciStatus_t | HCI_EXT_SaveFreqTuneCmd (void) |
Save the frequency tuning value to non-volatile memory. More... | |
hciStatus_t | HCI_EXT_ScanEventNoticeCmd (uint8 taskID, uint16 taskEvent) |
Scan Event Notice Command. More... | |
hciStatus_t | HCI_EXT_ScanReqRptCmd (uint8 mode) |
Enable/disable Scan Request Reports. More... | |
hciStatus_t | HCI_EXT_SetBDADDRCmd (uint8 *bdAddr) |
Set this device's BLE address (BDADDR). More... | |
hciStatus_t | HCI_EXT_SetFastTxResponseTimeCmd (uint8 control) |
Set Fast TX Response Time. More... | |
hciStatus_t | HCI_EXT_SetFreqTuneCmd (uint8 step) |
Set Frequency Tuning. More... | |
hciStatus_t | HCI_EXT_SetLocalSupportedFeaturesCmd (uint8 *localFeatures) |
Write this device's supported features. More... | |
hciStatus_t | HCI_EXT_SetMaxDataLenCmd (uint16 txOctets, uint16 txTime, uint16 rxOctets, uint16 rxTime) |
Set the maximum Rx and Tx Octets (in bytes) and Time (in us). More... | |
hciStatus_t | HCI_EXT_SetMaxDtmTxPowerCmd (uint8 txPower) |
Set the maximum transmit output power for DTM. More... | |
hciStatus_t | HCI_EXT_SetRxGainCmd (uint8 rxGain) |
Set the receiver gain. More... | |
hciStatus_t | HCI_EXT_SetSCACmd (uint16 scaInPPM) |
Set this device's Sleep Clock Accuracy. More... | |
hciStatus_t | HCI_EXT_SetTxPowerCmd (uint8 txPower) |
Set the transmit power. More... | |
void | HCI_ExtTaskRegister (uint8 taskID) |
HCI vendor specific registration for Host extended commands. More... | |
void | HCI_GAPTaskRegister (uint8 taskID) |
HCI vendor specific registration for Host GAP. More... | |
hciStatus_t | HCI_HostNumCompletedPktCmd (uint8 numHandles, uint16 *connHandles, uint16 *numCompletedPkts) |
Set the number of HCI daata packets completed per connection handle. More... | |
void | HCI_L2CAPTaskRegister (uint8 taskID) |
HCI vendor specific registration for Host L2CAP. More... | |
hciStatus_t | HCI_LE_AddDeviceToResolvingListCmd (uint8 peerIdAddrType, uint8 *peerIdAddr, uint8 *peerIRK, uint8 *localIRK) |
Add a device to the resolving list. More... | |
hciStatus_t | HCI_LE_AddWhiteListCmd (uint8 addrType, uint8 *devAddr) |
Add a white list entry. More... | |
hciStatus_t | HCI_LE_ClearResolvingListCmd (void) |
Remove all devices from the whitelist. More... | |
hciStatus_t | HCI_LE_ClearWhiteListCmd (void) |
Clear the white list. More... | |
hciStatus_t | HCI_LE_ConnUpdateCmd (uint16 connHandle, uint16 connIntervalMin, uint16 connIntervalMax, uint16 connLatency, uint16 connTimeout, uint16 minLen, uint16 maxLen) |
Update the connection parameters. More... | |
hciStatus_t | HCI_LE_CreateConnCancelCmd (void) |
Cancel connection. More... | |
hciStatus_t | HCI_LE_CreateConnCmd (uint16 scanInterval, uint16 scanWindow, uint8 initFilterPolicy, uint8 addrTypePeer, uint8 *peerAddr, uint8 ownAddrType, uint16 connIntervalMin, uint16 connIntervalMax, uint16 connLatency, uint16 connTimeout, uint16 minLen, uint16 maxLen) |
Create a connection. More... | |
hciStatus_t | HCI_LE_EncryptCmd (uint8 *key, uint8 *plainText) |
Perform an encryption using AES128. More... | |
hciStatus_t | HCI_LE_GenerateDHKeyCmd (uint8 *publicKey) |
Generate Diffie-Hellman Key. More... | |
hciStatus_t | HCI_LE_LtkReqNegReplyCmd (uint16 connHandle) |
Send a negative LTK reply to the Controller. More... | |
hciStatus_t | HCI_LE_LtkReqReplyCmd (uint16 connHandle, uint8 *ltk) |
Send a positive LTK reply to the controller. More... | |
hciStatus_t | HCI_LE_RandCmd (void) |
Generate a random number. More... | |
hciStatus_t | HCI_LE_ReadAdvChanTxPowerCmd (void) |
Read transmit power when Advertising. More... | |
hciStatus_t | HCI_LE_ReadBufSizeCmd (void) |
Determine the maximum ACL data packet size allowed by the Controller. More... | |
hciStatus_t | HCI_LE_ReadChannelMapCmd (uint16 connHandle) |
Read a connection's data channel map. More... | |
hciStatus_t | HCI_LE_ReadLocalP256PublicKeyCmd (void) |
Read local P-256 Public Key. More... | |
hciStatus_t | HCI_LE_ReadLocalResolvableAddressCmd (uint8 localIdAddrType, uint8 *localIdAddr) |
Read Local Resolvable Private Address. More... | |
hciStatus_t | HCI_LE_ReadLocalSupportedFeaturesCmd (void) |
Read the LE locally supported features. More... | |
hciStatus_t | HCI_LE_ReadMaxDataLenCmd (void) |
Read max data length. More... | |
hciStatus_t | HCI_LE_ReadPeerResolvableAddressCmd (uint8 peerIdAddrType, uint8 *peerIdAddr) |
Read the Peer Resolvable Address. More... | |
hciStatus_t | HCI_LE_ReadRemoteUsedFeaturesCmd (uint16 connHandle) |
Read the remote device's used features. More... | |
hciStatus_t | HCI_LE_ReadResolvingListSizeCmd (void) |
Read Resolving List Size. More... | |
hciStatus_t | HCI_LE_ReadSuggestedDefaultDataLenCmd (void) |
Read Suggested Default Data Length. More... | |
hciStatus_t | HCI_LE_ReadSupportedStatesCmd (void) |
TRead the Controller's supported states. More... | |
hciStatus_t | HCI_LE_ReadWhiteListSizeCmd (void) |
Read the white list. More... | |
hciStatus_t | HCI_LE_ReceiverTestCmd (uint8 rxChan) |
Start the receiver Direct Test Mode test. More... | |
hciStatus_t | HCI_LE_RemoteConnParamReqNegReplyCmd (uint16 connHandle, uint8 reason) |
Negatively reply to the Conneciton Parameter Update Request. More... | |
hciStatus_t | HCI_LE_RemoteConnParamReqReplyCmd (uint16 connHandle, uint16 connIntervalMin, uint16 connIntervalMax, uint16 connLatency, uint16 connTimeout, uint16 minLen, uint16 maxLen) |
Positively reply to the Conneciton Parameter Update Request. More... | |
hciStatus_t | HCI_LE_RemoveDeviceFromResolvingListCmd (uint8 peerIdAddrType, uint8 *peerIdAddr) |
Remove a device from the whitelist. More... | |
hciStatus_t | HCI_LE_RemoveWhiteListCmd (uint8 addrType, uint8 *devAddr) |
Remove a white list entry. More... | |
hciStatus_t | HCI_LE_SetAddressResolutionEnableCmd (uint8 addrResolutionEnable) |
Disable / Enable Address Resolution. More... | |
hciStatus_t | HCI_LE_SetAdvDataCmd (uint8 dataLen, uint8 *pData) |
Set the Advertising data. More... | |
hciStatus_t | HCI_LE_SetAdvEnableCmd (uint8 advEnable) |
Turn Advertising on or off. More... | |
hciStatus_t | HCI_LE_SetAdvParamCmd (uint16 advIntervalMin, uint16 advIntervalMax, uint8 advType, uint8 ownAddrType, uint8 directAddrType, uint8 *directAddr, uint8 advChannelMap, uint8 advFilterPolicy) |
Set the Advertising parameters. More... | |
hciStatus_t | HCI_LE_SetDataLenCmd (uint16 connHandle, uint16 txOctets, uint16 txTime) |
Set Data Length. More... | |
hciStatus_t | HCI_LE_SetEventMaskCmd (uint8 *pEventMask) |
Set the HCI LE event mask. More... | |
hciStatus_t | HCI_LE_SetHostChanClassificationCmd (uint8 *chanMap) |
Update the current data channel map. More... | |
hciStatus_t | HCI_LE_SetRandomAddressCmd (uint8 *pRandAddr) |
Set this device's Random address. More... | |
hciStatus_t | HCI_LE_SetResolvablePrivateAddressTimeoutCmd (uint16 rpaTimeout) |
Set Resolvable Private Address Timeout. More... | |
hciStatus_t | HCI_LE_SetScanEnableCmd (uint8 scanEnable, uint8 filterDuplicates) |
Turn Scanning on or off. More... | |
hciStatus_t | HCI_LE_SetScanParamCmd (uint8 scanType, uint16 scanInterval, uint16 scanWindow, uint8 ownAddrType, uint8 filterPolicy) |
Set the Scan parameters. More... | |
hciStatus_t | HCI_LE_SetScanRspDataCmd (uint8 dataLen, uint8 *pData) |
Set the Advertising Scan Response data. More... | |
hciStatus_t | HCI_LE_StartEncyptCmd (uint16 connHandle, uint8 *random, uint8 *encDiv, uint8 *ltk) |
Start encryption in a connection. More... | |
hciStatus_t | HCI_LE_TestEndCmd (void) |
End the Direct Test Mode test. More... | |
hciStatus_t | HCI_LE_TransmitterTestCmd (uint8 txChan, uint8 dataLen, uint8 pktPayload) |
This LE API is used to start the transmit Direct Test Mode test. More... | |
hciStatus_t | HCI_LE_WriteSuggestedDefaultDataLenCmd (uint16 txOctets, uint16 txTime) |
Write Suggested Default Data Length. More... | |
hciStatus_t | HCI_ReadAuthPayloadTimeoutCmd (uint16 connHandle, uint16 *aptoValue) |
Read the connection's Authenticated Payload Timeout value. More... | |
hciStatus_t | HCI_ReadBDADDRCmd (void) |
Read this device's BLE address (BDADDR). More... | |
hciStatus_t | HCI_ReadLocalSupportedCommandsCmd (void) |
Read the locally supported commands. More... | |
hciStatus_t | HCI_ReadLocalSupportedFeaturesCmd (void) |
Read the locally supported features. More... | |
hciStatus_t | HCI_ReadLocalVersionInfoCmd (void) |
Read the local version information. More... | |
hciStatus_t | HCI_ReadRemoteVersionInfoCmd (uint16 connHandle) |
Request version information from the remote device in a connection. More... | |
hciStatus_t | HCI_ReadRssiCmd (uint16 connHandle) |
Read RSSI of last packet. More... | |
hciStatus_t | HCI_ReadTransmitPowerLevelCmd (uint16 connHandle, uint8 txPwrType) |
Read the transmit power level. More... | |
hciStatus_t | HCI_ResetCmd (void) |
Reset the Link Layer. More... | |
hciStatus_t | HCI_SendDataPkt (uint16 connHandle, uint8 pbFlag, uint16 pktLen, uint8 *pData) |
Send an ACL data packet over a connection. More... | |
hciStatus_t | HCI_SetEventMaskCmd (uint8 *pMask) |
Set the HCI event mask. More... | |
hciStatus_t | HCI_SetEventMaskPage2Cmd (uint8 *pMask) |
Set the HCI event mask page 2. More... | |
void | HCI_SMPTaskRegister (uint8 taskID) |
HCI vendor specific registration for Host SMP. More... | |
void | HCI_TestAppTaskRegister (uint8 taskID) |
HCI vendor specific registration for HCI Test Application. More... | |
uint8 | HCI_ValidConnTimeParams (uint16 connIntervalMin, uint16 connIntervalMax, uint16 connLatency, uint16 connTimeout) |
Checks that the connection time parameter ranges are valid. More... | |
hciStatus_t | HCI_WriteAuthPayloadTimeoutCmd (uint16 connHandle, uint16 aptoValue) |
Used to write the connection's Authenticated Payload Timeout value. More... | |
This module implements the Host Controller Interface. For a detailed usage section describing how to send these commands and receive events, see the HCI Section of the User's Guide.
hciStatus_t HCI_DisconnectCmd | ( | uint16 | connHandle, |
uint8 | reason | ||
) |
Terminate a connection.
connHandle | - Connection handle. |
reason | - Disconnect Reasons |
hciStatus_t HCI_EXT_AdvEventNoticeCmd | ( | uint8 | taskID, |
uint16 | taskEvent | ||
) |
Advertising Event Notice Command.
Enable or disable a notification to the specified task using the specified task event whenever an advertising event ends. A non-zero taskEvent value is taken to be "enable", while a zero valued taskEvent is taken to be "disable".
taskID | - User's task ID. |
taskEvent | - User's task event. |
hciStatus_t HCI_EXT_BuildRevisionCmd | ( | uint8 | mode, |
uint16 | userRevNum | ||
) |
Set a user revision number or read the build revision number.
This command allows the embedded user code to set their own 16-bit revision number or read the build revision number of the Bluetooth low energy stack library software. The default value of the revision number is zero. When you update a Bluetooth low energy project by adding your own code, use this API to set your own revision number. When called with mode set to HCI_EXT_SET_USER_REVISION, the stack saves this value. No event is returned from this API when used this way.
mode | - Set User Revision Command |
userRevNum | - user defined reviison number |
hciStatus_t HCI_EXT_ConnEventNoticeCmd | ( | uint16 | connHandle, |
uint8 | taskID, | ||
uint16 | taskEvent | ||
) |
Connection Event Notice Command.
For a given connection handle, enable or disable a notification to the specified task using the specified task event whenever a Connection event ends. A non-zero taskEvent value is taken to be "enable", while a zero valued taskEvent taken to be "disable".
connHandle | - The HCI connection ID for connection event notice. |
taskID | - User's task ID. |
taskEvent | - User's task event. |
hciStatus_t HCI_EXT_DecryptCmd | ( | uint8 * | key, |
uint8 * | encText | ||
) |
Decrypt encrypted data using AES128.
key | - Pointer to 16 byte encryption key. The most significant octet of the data corresponds to key[0] using the notation specified in FIPS 197. |
encText | - Pointer to 16 byte encrypted data. The most significant octet of the key corresponds to key[0] using the notation specified in FIPS 197. |
hciStatus_t HCI_EXT_DisconnectImmedCmd | ( | uint16 | connHandle | ) |
Disconnect the connection immediately.
This command is used to disconnect a connection immediately. This command can be useful for when a connection needs to be ended without the latency associated with the normal BLE Controller Terminate control procedure.
connHandle | - Connection handle. |
hciStatus_t HCI_EXT_EnablePTMCmd | ( | void | ) |
Enable Production Test Mode.
This command is used to enable Production Test Mode (PTM). This mode is used by the customer during assembly of their product to allow limited access to the BLE Controller for testing and configuration. This command is only available when the BLE Controller is built without external access to the Controller (i.e. when no transport interface such as RS232 is permitted). This mode will remain enabled until the device is reset. Please see the related application note for additional details.
hciStatus_t HCI_EXT_EndModemTestCmd | ( | void | ) |
Shutdown a modem test.
hciStatus_t HCI_EXT_GetActiveConnInfoCmd | ( | uint8 | connId, |
hciActiveConnInfo_t * | activeConnInfo | ||
) |
This API is used to get connection related information required to follow the target connection with a BLE conneciton monitor.
input parameters
connId | - Connection id of an active BLE connection. |
activeConnInfo | - Pointer for active connection information that is needed to track BLE connection. Note: If not NULL it is the users responsibility to allocate memory for this pointer based on sizeof(hciActiveConnInfo_t) and also to free it when done. |
output parameters
activeConnInfo | - Pointer for active connection information that is needed to track BLE connection. |
hciStatus_t HCI_EXT_GetConnInfoCmd | ( | uint8 * | numAllocConns, |
uint8 * | numActiveConns, | ||
hciConnInfo_t * | activeConnInfo | ||
) |
Get Connection Info.
This API is used to get connection related information, which includes the number of allocated connections, the number of active connections, and for each active connection, the connection ID, the connection role (Master or Slave), the peer address and peer address type. The number of allocated connections is based on a default build value that can be changed using MAX_NUM_BLE_CONNS. The number of active connections refers to active BLE connections.
numAllocConns | - Pointer for number of build time connections. |
numActiveConns | - Pointer for number of active BLE connections. |
activeConnInfo | - Pointer for active connection information. |
numAllocConns | - Number of build time connections allowed. |
numActiveConns | - Number of active BLE connections. |
activeConnInfo | - Active connection information. |
hciStatus_t HCI_EXT_ModemHopTestTxCmd | ( | void | ) |
Start Modem Hop Tx Test.
Start a continuous transmitter direct test mode test using a modulated carrier wave and transmitting a 37 byte packet of Pseudo-Random 9-bit data. A packet is transmitted on a different frequency (linearly stepping through all RF channels 0..39) every 625us. Use HCI_EXT_EndModemTestCmd command to end the test.
hciStatus_t HCI_EXT_ModemTestRxCmd | ( | uint8 | rxChan | ) |
Start Modem Hop RX Test.
Start a continuous receiver modem test using a modulated carrier wave tone, at the frequency that corresponds to the specific RF channel. Any received data is discarded. Receiver gain may be adjusted using the HCI_EXT_SetRxGainCmd. RSSI may be read during this test by using the HCI_ReadRssiCmd. Use HCI_EXT_EndModemTestCmd command to end the test.
rxChan | - Receiver RF channel k=0..39, where BLE F=2402+(k*2MHz). |
hciStatus_t HCI_EXT_ModemTestTxCmd | ( | uint8 | cwMode, |
uint8 | txChan | ||
) |
Start Modem TX Test.
Start a continuous transmitter modem test, using either a modulated or unmodulated carrier wave tone, at the frequency that corresponds to the specified RF channel. Use HCI_EXT_EndModemTestCmd command to end the test.
cwMode | - TX Modulation |
txChan | - Transmit RF channel k=0..39, where BLE F=2402+(k*2MHz). |
hciStatus_t HCI_EXT_NumComplPktsLimitCmd | ( | uint8 | limit, |
uint8 | flushOnEvt | ||
) |
Set the Number of Completed Packets Limit.
This command is used to set the limit on the minimum number of complete packets before a Number of Completed Packets event is returned by the Controller. If the limit is not reached by the end of a connection event, then the ed hciEvt_NumCompletedPkt_t event will be returned (if non-zero) based on the flushOnEvt flag. The limit can be set from one to HCI_MAX_NUM_CMD_BUFFERS (see HCI_LE_ReadBufSizeCmd). The default limit is 1; the default flushOnEvt flag is FALSE.
limit | - From 1 to HCI_MAX_NUM_CMD_BUFFERS. |
flushOnEvt | - Number of Completed Packets |
hciStatus_t HCI_EXT_OnePktPerEvtCmd | ( | uint8 | control | ) |
Set whether a connection will be limited to one packet per event.
control | - One Packet Per Event |
hciStatus_t HCI_EXT_PacketErrorRateCmd | ( | uint16 | connHandle, |
uint8 | command | ||
) |
Packet Error Rate Command.
Reset or Read the Packet Error Rate counters for a connection.
connHandle | - The LL connection ID on which to send this data. |
command | - Packet Error Rate Command |
hciStatus_t HCI_EXT_PERbyChanCmd | ( | uint16 | connHandle, |
perByChan_t * | perByChan | ||
) |
Packet Error Rate by Channel Command.
This command is used to start or end Packet Error Rate by Channel counter accumulation for a connection, and can be used by an application to make Coexistence assessments. Based on the results, an application can perform an Update Channel Classification command to limit channel interference from other wireless standards.
If *perByChan is NULL, counter accumulation will be discontinued. If *perByChan is not NULL, then it is assumed that there is sufficient memory for the PER data of type perByChan_t (defined in ll.h)
connHandle | - The LL connection ID on which to send this data. |
perByChan | - Pointer to PER by Channel data, or NULL. |
hciStatus_t HCI_EXT_ResetSystemCmd | ( | uint8 | mode | ) |
Issue a soft or hard system reset.
This command is used to issue a hard or soft system reset. On the CC254x, a hard reset is caused by a watchdog timer timeout, while a soft reset is caused by resetting the PC to zero. On the CC264x, a hard reset is caused by setting the SYSRESET bit in the System Controller Reset Control register.
mode | - Reset Type |
hciStatus_t HCI_EXT_SaveFreqTuneCmd | ( | void | ) |
Save the frequency tuning value to non-volatile memory.
This setting will be used by the BLE Controller upon reset, and when waking from Sleep.
hciStatus_t HCI_EXT_ScanEventNoticeCmd | ( | uint8 | taskID, |
uint16 | taskEvent | ||
) |
Scan Event Notice Command.
This HCI Extension API is used to enable or disable a notification to the specified task using the specified task event whenever a Scan event ends. A non-zero taskEvent value is taken to be "enable", while a zero valued taskEvent is taken to be "disable".
-DEXTRA_SCAN_FEAT=SCAN_EVT_NOTICE_CFG
taskID | - User's task ID. |
taskEvent | - User's task event. |
hciStatus_t HCI_EXT_ScanReqRptCmd | ( | uint8 | mode | ) |
Enable/disable Scan Request Reports.
Enables or disables scan request reports. The default system value for this feature is disabled. When enabled, a received Scan Reuqest from a peer device during Advertising will result in a Scan Request Report sent from the controller of type hciEvt_BLEScanReqReport_t.
-DEXTRA_ADV_FEAT=SCAN_REQ_RPT_CFG
mode | - Scan Request Report |
hciStatus_t HCI_EXT_SetBDADDRCmd | ( | uint8 * | bdAddr | ) |
Set this device's BLE address (BDADDR).
This address will override the device's address determined when the device is reset (i.e. a hardware reset, not an HCI Controller Reset). To restore the device's initialized address, issue this command with an invalid address.
bdAddr | - A pointer to a buffer to hold this device's address. An invalid address (i.e. all FF's) will restore this device's address to the address set at initialization. |
hciStatus_t HCI_EXT_SetFastTxResponseTimeCmd | ( | uint8 | control | ) |
Set Fast TX Response Time.
This command is used to configure the Link Layer fast transmit response time feature. The default system value for this feature is HCI_EXT_ENABLE_FAST_TX_RESP_TIME. When the Host transmits data, the controller (by default) ensures the packet is sent over the LL connection with as little delay as possible, even when the connection is configured to use slave latency. That is, the transmit response time will tend to be no longer than the connection interval. This results in lower power savings since the LL may need to wake to transmit during connection events that would normally have been skipped. If saving power is more critical than fast transmit response time, then this feature can be disabled using this command. When disabled, the transmit response time will be no longer than slave latency + 1 times the connection interval.
control | - Fast Tx Response Time |
hciStatus_t HCI_EXT_SetFreqTuneCmd | ( | uint8 | step | ) |
Set Frequency Tuning.
Set the frequency tuning up or down.When the current setting is already at its max value, then stepping up will have no effect. When the current setting is already at its min value, then stepping down will have no effect. This setting will only remain in effect until the device is reset unless HCI_EXT_SaveFreqTuneCmd is used to save it in non-volatile memory.
step | - Frequency Tuning |
hciStatus_t HCI_EXT_SetLocalSupportedFeaturesCmd | ( | uint8 * | localFeatures | ) |
Write this device's supported features.
This command is used to set the Controller's Local Supported Features. See ll_common.h for defines to set / clear features.
For a complete list of supported LE features, see the BT Spec.
localFeatures | - Pointer to eight bytes of local features. |
hciStatus_t HCI_EXT_SetMaxDataLenCmd | ( | uint16 | txOctets, |
uint16 | txTime, | ||
uint16 | rxOctets, | ||
uint16 | rxTime | ||
) |
Set the maximum Rx and Tx Octets (in bytes) and Time (in us).
txOctets | - Value of maximum supported Tx octets (in bytes). |
txTime | - Value of maximum supported Tx time (in us). |
rxOctets | - Value of maximum supported Rx octets (in bytes). |
rxTime | - Value of maximum supported Rx time (in us). |
hciStatus_t HCI_EXT_SetMaxDtmTxPowerCmd | ( | uint8 | txPower | ) |
Set the maximum transmit output power for DTM.
This command is used to override the RF transmitter output power used by the Direct Test Mode (DTM). Normally, the maximum transmitter output power setting used by DTM is the maximum transmitter output power setting for the device (i.e. 4 dBm for the CC2540; 0 dBm for the CC2541; 5 dBm for the CC264x). This command will change the value used by DTM.
txPower | - TX Power |
hciStatus_t HCI_EXT_SetRxGainCmd | ( | uint8 | rxGain | ) |
Set the receiver gain.
The default system value for this feature is HCI_EXT_RX_GAIN_STD
rxGain | - RX Gain |
hciStatus_t HCI_EXT_SetSCACmd | ( | uint16 | scaInPPM | ) |
Set this device's Sleep Clock Accuracy.
For a slave device, this value is directly used, but only if power management is enabled. For a master device, this value is converted into one of eight ordinal values representing a SCA range, as specified in the BT Spec. For a Slave device, the value is directly used. The system default value for a Master and Slave device is 50ppm and 40ppm, respectively
scaInPPM | - A SCA value in PPM from 0..500. |
hciStatus_t HCI_EXT_SetTxPowerCmd | ( | uint8 | txPower | ) |
Set the transmit power.
The default system value for this feature is HCI_EXT_TX_POWER_0_DBM
txPower | - TX Power |
void HCI_ExtTaskRegister | ( | uint8 | taskID | ) |
HCI vendor specific registration for Host extended commands.
taskID | - The Host Extended Command OSAL task identifier. |
void HCI_GAPTaskRegister | ( | uint8 | taskID | ) |
HCI vendor specific registration for Host GAP.
taskID | - The Host GAP OSAL task identifier. |
hciStatus_t HCI_HostNumCompletedPktCmd | ( | uint8 | numHandles, |
uint16 * | connHandles, | ||
uint16 * | numCompletedPkts | ||
) |
Set the number of HCI daata packets completed per connection handle.
Used by the Host to notify the Controller of the number of HCI data packets that have been completed for each connection handle since this command was previously sent to the controller.
The Host_Number_Of_Conpleted_Packets command is a special command. No event is normally generated after the command has completed. The command should only be issued by the Host if flow control in the direction from controller to the host is on and there is at least one connection, or if the controller is in local loopback mode.
numHandles | - Number of connection handles. |
connHandles | - Array of connection handles. |
numCompletedPkts | - Array of number of completed packets. |
void HCI_L2CAPTaskRegister | ( | uint8 | taskID | ) |
HCI vendor specific registration for Host L2CAP.
taskID | - The Host L2CAP OSAL task identifier. |
hciStatus_t HCI_LE_AddDeviceToResolvingListCmd | ( | uint8 | peerIdAddrType, |
uint8 * | peerIdAddr, | ||
uint8 * | peerIRK, | ||
uint8 * | localIRK | ||
) |
Add a device to the resolving list.
Add one device to the list of address translations used to resolve Resolvable Private Addresses in the Controller.
peerIdAddrType | - Device Address Type |
peerIdAddr | - Peer device Identity Address. |
peerIRK | - IRK of peer device. |
localIRK | - IRK for own device. |
hciStatus_t HCI_LE_AddWhiteListCmd | ( | uint8 | addrType, |
uint8 * | devAddr | ||
) |
Add a white list entry.
addrType | - Device Address Type |
devAddr | - Pointer to address of device to put in white list. |
hciStatus_t HCI_LE_ClearResolvingListCmd | ( | void | ) |
Remove all devices from the whitelist.
Remove all devices from the list of address translations used to resolve Resolvable Private addresses in the Controller.
hciStatus_t HCI_LE_ClearWhiteListCmd | ( | void | ) |
Clear the white list.
hciStatus_t HCI_LE_ConnUpdateCmd | ( | uint16 | connHandle, |
uint16 | connIntervalMin, | ||
uint16 | connIntervalMax, | ||
uint16 | connLatency, | ||
uint16 | connTimeout, | ||
uint16 | minLen, | ||
uint16 | maxLen | ||
) |
Update the connection parameters.
connHandle | - Connection handle. |
connIntervalMin | - Minimum allowed connection interval. |
connIntervalMax | - Maximum allowed connection interval. |
connLatency | - Number of skipped events (slave latency). |
connTimeout | - Connection supervision timeout. |
minLen | - Info parameter about min length of conn. |
maxLen | - Info parameter about max length of conn. |
hciStatus_t HCI_LE_CreateConnCancelCmd | ( | void | ) |
Cancel connection.
hciStatus_t HCI_LE_CreateConnCmd | ( | uint16 | scanInterval, |
uint16 | scanWindow, | ||
uint8 | initFilterPolicy, | ||
uint8 | addrTypePeer, | ||
uint8 * | peerAddr, | ||
uint8 | ownAddrType, | ||
uint16 | connIntervalMin, | ||
uint16 | connIntervalMax, | ||
uint16 | connLatency, | ||
uint16 | connTimeout, | ||
uint16 | minLen, | ||
uint16 | maxLen | ||
) |
Create a connection.
scanInterval | - Time between Init scan events. |
scanWindow | - Time of scan before Init scan event ends. |
initFilterPolicy | - Initiator White List Policy |
addrTypePeer | - Device Address Type |
peerAddr | - Pointer to peer device's address. |
ownAddrType | - Device Address Type |
connIntervalMin | - Minimum allowed connection interval. |
connIntervalMax | - Maximum allowed connection interval. |
connLatency | - Number of skipped events (slave latency). |
connTimeout | - Connection supervision timeout. |
minLen | - Info parameter about min length of conn. |
maxLen | - Info parameter about max length of conn. |
hciStatus_t HCI_LE_EncryptCmd | ( | uint8 * | key, |
uint8 * | plainText | ||
) |
Perform an encryption using AES128.
key | - Pointer to 16 byte encryption key. |
plainText | - Pointer to 16 byte plaintext data. |
hciStatus_t HCI_LE_GenerateDHKeyCmd | ( | uint8 * | publicKey | ) |
Generate Diffie-Hellman Key.
This LE API is used to initiate the generation of a Diffie- Hellman key in the Controller for use over the LE transport. This command takes the remote P-256 public key as input. The Diffie-Hellman key generation uses the private key generated by LE_Read_Local_P256_Public_Key command.
publicKey | The remote P-256 public key (X-Y format). |
hciStatus_t HCI_LE_LtkReqNegReplyCmd | ( | uint16 | connHandle | ) |
Send a negative LTK reply to the Controller.
connHandle | - Connection handle. |
hciStatus_t HCI_LE_LtkReqReplyCmd | ( | uint16 | connHandle, |
uint8 * | ltk | ||
) |
Send a positive LTK reply to the controller.
connHandle | - Connection handle. |
ltk | - Pointer to 16 byte Long Term Key. |
hciStatus_t HCI_LE_RandCmd | ( | void | ) |
Generate a random number.
The random number generation will not complete until any current radio operations end. If this is the case, the "status" of the pReturnParam of the initial hciEvt_CmdComplete_t will be set to LL_STATUS_ERROR_DUE_TO_DELAYED_RESOURCES (0x12). Another hciEvt_CmdComplete_t will be sent after the radio operations end that contains the random number.
hciStatus_t HCI_LE_ReadAdvChanTxPowerCmd | ( | void | ) |
Read transmit power when Advertising.
hciStatus_t HCI_LE_ReadBufSizeCmd | ( | void | ) |
Determine the maximum ACL data packet size allowed by the Controller.
hciStatus_t HCI_LE_ReadChannelMapCmd | ( | uint16 | connHandle | ) |
Read a connection's data channel map.
connHandle | - Connection handle. |
hciStatus_t HCI_LE_ReadLocalP256PublicKeyCmd | ( | void | ) |
Read local P-256 Public Key.
Read the local P-256 public key from the Controller. The Controller shall generate a new P-256 public/ private key pair upon receipt of this command.
hciStatus_t HCI_LE_ReadLocalResolvableAddressCmd | ( | uint8 | localIdAddrType, |
uint8 * | localIdAddr | ||
) |
Read Local Resolvable Private Address.
Get the current local Resolvable Private Address being used for the corresponding local Public or Random (Static) Identity Address.
localIdAddrType | - Device Address Type |
localIdAddr | - Local device Identity Address. |
hciStatus_t HCI_LE_ReadLocalSupportedFeaturesCmd | ( | void | ) |
Read the LE locally supported features.
hciStatus_t HCI_LE_ReadMaxDataLenCmd | ( | void | ) |
Read max data length.
Read the maximum supported transmit and receive payload octets and packet duration times.
hciStatus_t HCI_LE_ReadPeerResolvableAddressCmd | ( | uint8 | peerIdAddrType, |
uint8 * | peerIdAddr | ||
) |
Read the Peer Resolvable Address.
Get the current peer Resolvable Private Address being used for the corresponding peer Public or Random (Static) Identity Address.
peerIdAddrType | - Device Address Type |
peerIdAddr | - Peer device Identity Address. |
hciStatus_t HCI_LE_ReadRemoteUsedFeaturesCmd | ( | uint16 | connHandle | ) |
Read the remote device's used features.
connHandle | - Connection handle. |
hciStatus_t HCI_LE_ReadResolvingListSizeCmd | ( | void | ) |
Read Resolving List Size.
Read the total number of address translation entries in the resolving list that can be stored in the Controller.
hciStatus_t HCI_LE_ReadSuggestedDefaultDataLenCmd | ( | void | ) |
Read Suggested Default Data Length.
Read the default maximum trasmit packet size and the default maximum packet transmit time to be used for new connections.
hciStatus_t HCI_LE_ReadSupportedStatesCmd | ( | void | ) |
TRead the Controller's supported states.
hciStatus_t HCI_LE_ReadWhiteListSizeCmd | ( | void | ) |
Read the white list.
hciStatus_t HCI_LE_ReceiverTestCmd | ( | uint8 | rxChan | ) |
Start the receiver Direct Test Mode test.
rxChan | - Rx Channel k=0..39, where F=2402+(k*2MHz). |
hciStatus_t HCI_LE_RemoteConnParamReqNegReplyCmd | ( | uint16 | connHandle, |
uint8 | reason | ||
) |
Negatively reply to the Conneciton Parameter Update Request.
This LE API is used to negatively reply to the HCI LE Remote Connection Parameter Request event from the Controller. This command indicates that the Host has denied the remote device's request to change connection parameters.
connHandle | - Connection handle. |
reason | - Reason connection parameter request was rejected. |
hciStatus_t HCI_LE_RemoteConnParamReqReplyCmd | ( | uint16 | connHandle, |
uint16 | connIntervalMin, | ||
uint16 | connIntervalMax, | ||
uint16 | connLatency, | ||
uint16 | connTimeout, | ||
uint16 | minLen, | ||
uint16 | maxLen | ||
) |
Positively reply to the Conneciton Parameter Update Request.
This LE API is used to positively reply to the HCI LE Remote Connection Parameter Request event from the Controller. This command indicates that the Host has accepted the remote device's request to change connection parameters.
connHandle | - Connection handle. |
connIntervalMin | - Minimum allowed connection interval. |
connIntervalMax | - Maximum allowed connection interval. |
connLatency | - Number of skipped events (slave latency). |
connTimeout | - Connection supervision timeout. |
minLen | - Info parameter about min length of conn. |
maxLen | - Info parameter about max length of conn. |
hciStatus_t HCI_LE_RemoveDeviceFromResolvingListCmd | ( | uint8 | peerIdAddrType, |
uint8 * | peerIdAddr | ||
) |
Remove a device from the whitelist.
Remove one device fromthe list of address translations used to resolve Resolvable Private Addresses in the Controller.
peerIdAddrType | - Device Address Type |
peerIdAddr | - Peer device Identity Address. |
hciStatus_t HCI_LE_RemoveWhiteListCmd | ( | uint8 | addrType, |
uint8 * | devAddr | ||
) |
Remove a white list entry.
addrType | - Device Address Type |
devAddr | - Pointer to address of device to remove from the white list. |
hciStatus_t HCI_LE_SetAddressResolutionEnableCmd | ( | uint8 | addrResolutionEnable | ) |
Disable / Enable Address Resolution.
Enable resolution of Resolvable Private Addresses in the Controller. This causes the Controller to use the resolving list whenever the Controller receives a local or peer Resolvable Private Address.
addrResolutionEnable | - Privacy 1.2 |
hciStatus_t HCI_LE_SetAdvDataCmd | ( | uint8 | dataLen, |
uint8 * | pData | ||
) |
Set the Advertising data.
dataLen | - Length of Advertising data. |
pData | - Pointer to Advertising data. |
hciStatus_t HCI_LE_SetAdvEnableCmd | ( | uint8 | advEnable | ) |
Turn Advertising on or off.
advEnable | - Advertiser Commands |
hciStatus_t HCI_LE_SetAdvParamCmd | ( | uint16 | advIntervalMin, |
uint16 | advIntervalMax, | ||
uint8 | advType, | ||
uint8 | ownAddrType, | ||
uint8 | directAddrType, | ||
uint8 * | directAddr, | ||
uint8 | advChannelMap, | ||
uint8 | advFilterPolicy | ||
) |
Set the Advertising parameters.
advIntervalMin | - Minimum allowed advertising interval. |
advIntervalMax | - Maximum allowed advertising interval. |
advType | - Advertiser Type |
ownAddrType | - Device Address Type |
directAddrType | - Device Address Type |
directAddr | - Pointer to address of device when using directed advertising. |
advChannelMap | - Advertiser Channels |
advFilterPolicy | - Advertiser White List Policy |
hciStatus_t HCI_LE_SetDataLenCmd | ( | uint16 | connHandle, |
uint16 | txOctets, | ||
uint16 | txTime | ||
) |
Set Data Length.
Set the maximum transmission packet size and the maximum packet transmission time for the connection.
connHandle | - Connection handle. |
txOctets | - Maximum transmit payload size (in bytes). |
txTime | - Maximum transmit time (in us). |
hciStatus_t HCI_LE_SetEventMaskCmd | ( | uint8 * | pEventMask | ) |
Set the HCI LE event mask.
The event mask to determine which LE events are supported.
pEventMask | - Pointer to LE event mask of 8 bytes. |
hciStatus_t HCI_LE_SetHostChanClassificationCmd | ( | uint8 * | chanMap | ) |
Update the current data channel map.
chanMap | - Pointer to the new channel map. |
hciStatus_t HCI_LE_SetRandomAddressCmd | ( | uint8 * | pRandAddr | ) |
Set this device's Random address.
pRandAddr | - Pointer to random address. |
hciStatus_t HCI_LE_SetResolvablePrivateAddressTimeoutCmd | ( | uint16 | rpaTimeout | ) |
Set Resolvable Private Address Timeout.
Set the length of time the Controller uses a Resolvable Private Address before a new Resolvable Private Address is generated and starts being used.
rpaTimeout | - RPA timeout (in secs). |
hciStatus_t HCI_LE_SetScanEnableCmd | ( | uint8 | scanEnable, |
uint8 | filterDuplicates | ||
) |
Turn Scanning on or off.
scanEnable | - Scan Commands |
filterDuplicates | - Scan Filtering |
hciStatus_t HCI_LE_SetScanParamCmd | ( | uint8 | scanType, |
uint16 | scanInterval, | ||
uint16 | scanWindow, | ||
uint8 | ownAddrType, | ||
uint8 | filterPolicy | ||
) |
Set the Scan parameters.
scanType | - Scan Types |
scanInterval | - Time between scan events. |
scanWindow | - Time of scan before scan event ends. |
ownAddrType | - This device's address. |
filterPolicy | - Scan Types |
hciStatus_t HCI_LE_SetScanRspDataCmd | ( | uint8 | dataLen, |
uint8 * | pData | ||
) |
Set the Advertising Scan Response data.
dataLen | - Length of Scan Response data. |
pData | - Pointer to Scan Response data. |
hciStatus_t HCI_LE_StartEncyptCmd | ( | uint16 | connHandle, |
uint8 * | random, | ||
uint8 * | encDiv, | ||
uint8 * | ltk | ||
) |
Start encryption in a connection.
connHandle | - Connection handle. |
random | - Pointer to eight byte Random number. |
encDiv | - Pointer to two byte Encrypted Diversifier. |
ltk | - Pointer to 16 byte Long Term Key. |
hciStatus_t HCI_LE_TestEndCmd | ( | void | ) |
End the Direct Test Mode test.
hciStatus_t HCI_LE_TransmitterTestCmd | ( | uint8 | txChan, |
uint8 | dataLen, | ||
uint8 | pktPayload | ||
) |
This LE API is used to start the transmit Direct Test Mode test.
txChan | - Tx RF frequency k=0..39, where F=2402+(k*2MHz). |
dataLen | - Test data length: 0..37 bytes |
pktPayload | - Direct Test Mode |
hciStatus_t HCI_LE_WriteSuggestedDefaultDataLenCmd | ( | uint16 | txOctets, |
uint16 | txTime | ||
) |
Write Suggested Default Data Length.
Set the default maximum transmission packet size and the default maximum packet transmission time for the connection.
txOctets | - Maximum transmit payload size (in bytes). |
txTime | - Maximum transmit time (in us). |
hciStatus_t HCI_ReadAuthPayloadTimeoutCmd | ( | uint16 | connHandle, |
uint16 * | aptoValue | ||
) |
Read the connection's Authenticated Payload Timeout value.
connHandle | - The LL connection ID to read the APTO value from. |
aptoValue | - Pointer to current APTO value, in units of 10ms. |
hciStatus_t HCI_ReadBDADDRCmd | ( | void | ) |
Read this device's BLE address (BDADDR).
hciStatus_t HCI_ReadLocalSupportedCommandsCmd | ( | void | ) |
Read the locally supported commands.
hciStatus_t HCI_ReadLocalSupportedFeaturesCmd | ( | void | ) |
Read the locally supported features.
hciStatus_t HCI_ReadLocalVersionInfoCmd | ( | void | ) |
Read the local version information.
hciStatus_t HCI_ReadRemoteVersionInfoCmd | ( | uint16 | connHandle | ) |
Request version information from the remote device in a connection.
connHandle | - Connection handle. |
hciStatus_t HCI_ReadRssiCmd | ( | uint16 | connHandle | ) |
Read RSSI of last packet.
Read the RSSI of the last packet received on a connection given by the connection handle. If the Receiver Modem test is running (HCI_EXT_ModemTestRxCmd ), then the RF RSSI for the last received data will be returned. If there is no RSSI value, then HCI_RSSI_NOT_AVAILABLE will be returned.
connHandle | - Connection handle. |
hciStatus_t HCI_ReadTransmitPowerLevelCmd | ( | uint16 | connHandle, |
uint8 | txPwrType | ||
) |
Read the transmit power level.
connHandle | - Connection handle. |
txPwrType | - ref TX_Power_Mode |
hciStatus_t HCI_ResetCmd | ( | void | ) |
Reset the Link Layer.
hciStatus_t HCI_SendDataPkt | ( | uint16 | connHandle, |
uint8 | pbFlag, | ||
uint16 | pktLen, | ||
uint8 * | pData | ||
) |
Send an ACL data packet over a connection.
connHandle | - Connection ID (handle). |
pbFlag | - Packet Boundary Flag. |
pktLen | - Number of bytes of data to transmit. |
*pData | - Pointer to data buffer to transmit. |
hciStatus_t HCI_SetEventMaskCmd | ( | uint8 * | pMask | ) |
Set the HCI event mask.
The event mask is used to determine which events are supported.
pMask | - Pointer to an eight byte event mask. |
hciStatus_t HCI_SetEventMaskPage2Cmd | ( | uint8 * | pMask | ) |
Set the HCI event mask page 2.
The HCI Event mask page 2 is used to determine which events are supported.
pMask | - Pointer to an eight byte event mask. |
void HCI_SMPTaskRegister | ( | uint8 | taskID | ) |
HCI vendor specific registration for Host SMP.
taskID | - The Host SMP OSAL task identifier. |
void HCI_TestAppTaskRegister | ( | uint8 | taskID | ) |
HCI vendor specific registration for HCI Test Application.
taskID | - The HCI Test Application OSAL task identifier. |
uint8 HCI_ValidConnTimeParams | ( | uint16 | connIntervalMin, |
uint16 | connIntervalMax, | ||
uint16 | connLatency, | ||
uint16 | connTimeout | ||
) |
Checks that the connection time parameter ranges are valid.
Also checks if the min/max CI range is valid.
connIntervalMin | - Minimum connection interval. |
connIntervalMax | - Maximum connection interval. |
connLatency | - Connection slave latency. |
connTimeout | - Connection supervision timeout. |
hciStatus_t HCI_WriteAuthPayloadTimeoutCmd | ( | uint16 | connHandle, |
uint16 | aptoValue | ||
) |
Used to write the connection's Authenticated Payload Timeout value.
connHandle | - The LL connection ID to write the APTO value to. |
aptoValue | - The APTO value, in units of 10ms. |