HCI Extension Vendor Specific API¶
HCI Extension Commands¶
In addition to the BLE HCI commands, the following HCI Extension vendor specific commands are also available.
HCI_EXT_SetRxGainCmd¶
- Opcode:
0xFC00
- Command Description:
Set the receiver gain.
Command Parameters
- RX Gain:
Set RX gain to standard or high.
- Size:
1 byte(s)
- Default:
0
- Range:
Value
Description
0
RX Gain Standard
1
RX Gain High
Events Generated
When this command has completed, an HCI_EXT_SetRxGainDone event shall be generated.
HCI_EXT_OnePktPerEvtCmd¶
- Opcode:
0xFC02
- Command Description:
This command is used to configure the Link Layer to only allow one packet per connection event. This command can be used to trade-off throughput and power consumption during a connection. When enabled, power can be conserved during a connection by limiting the number of packets per connection event to one, at the expense of more limited throughput. When disabled, the number of packets transferred during a connection event is not limited, at the expense of higher power consumption. Note that when set, all connections will be restricted to one packet per event.
Command Parameters
- Control:
Enable or disable allowing only one packet per event.
- Size:
1 byte(s)
- Default:
0
- Range:
Value
Description
0
Disable
1
Enable
Events Generated
When this command has completed, an HCI_EXT_OnePacketPerEventDone event shall be generated.
HCI_EXT_DecryptCmd¶
- Opcode:
0xFC05
- Command Description:
This command is used to decrypt encrypted text using AES128.
Command Parameters
- Key:
128 bit key for the decryption of the data given in the command. The most significant octet of the data corresponds to key[0] using the notation specified in FIPS 197.
- Size:
16 byte(s)
- Default:
“BF:01:FB:9D:4E:F3:BC:36:D8:74:F5:39:41:38:68:4C”
- Range:
Any 16 byte value
- Data:
128 bit encrypted data to be decrypted. The most significant octet of the key corresponds to key[0] using the notation specified in FIPS 197.
- Size:
16 byte(s)
- Default:
“66:C6:C2:27:8E:3B:8E:05:3E:7E:A3:26:52:1B:AD:99”
- Range:
Any 16 byte value
Events Generated
When this command has completed, an HCI_EXT_DecryptCommandDone event shall be generated.
HCI_EXT_SetLocalSupportedFeaturesCmd¶
- Opcode:
0xFC06
- Command Description:
This command is used to set the Controllers Local Supported Features. For a complete list of supported LE features, please see [1], Part B, Section 4.6. Note: This command can be issued either before or after one or more connections are formed. However, the local features set in this manner are only effective if performed before a Feature Exchange Procedure has been initiated by the Central. Once this control procedure has been completed for a particular connection, only the exchanged feature set for that connection will be used. Since the Link Layer may initiate the feature exchange procedure autonomously, it is best to use this command before the connection is formed.
Command Parameters
- FeatureSet:
Write LL local supported features.
- Size:
8 byte(s)
- Default:
0x0000000000000001
- Range:
Value
Description
0x0000000000000000
No Events Specified
0x0000000000000001
Encryption
0x0000000000000002
Connection Parameters Request
0x0000000000000004
Reject Extended Indication
0x0000000000000008
Peripheral Features Exchange
0x0000000000000010
Ping
0x0000000000000020
Data Packet Length Extension
0x0000000000000040
Privacy
0x0000000000000080
Extended Scanner Filter Policies
0x0000000000000100
2M PHY
0x0000000000000200
Stable Modulation Index Tx
0x0000000000000400
Stable Modulation Index Rx
0x0000000000000800
Coded PHY
0x0000000000001000
Extended Advertising
0x0000000000002000
Periodic Advertising
0x0000000000004000
Channel Selection Algorithm #2
0x0000000000008000
LE Power Class 1
0x0000000000010000
Minimum Number of Used Channels
0x0000000000020000
Connection CTE Request
0x0000000000040000
Connection CTE Response
0x0000000000080000
Connectionless CTE Transmitter
0x0000000000100000
Connectionless CTE Receiver
0x0000000000200000
Antenna Switching During CTE Tx
0x0000000000400000
Antenna Switching During CTE Rx
0x0000000000800000
Receiving CTE
0x0000002000000000
LE Power Control Request 1
0x0000004000000000
LE Power Control Request 2
0x0400000000000000
Channel Sounding
0x0800000000000000
Channel Sounding Host Support
Events Generated
When this command has completed, an HCI_EXT_WriteLocalFeatureSupportDone event shall be generated.
HCI_EXT_ModemTestTxCmd¶
- Opcode:
0xFC08
- Command Description:
This API is used to 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 the HCI_EXT_EndModemTest command to end the test. Note: The RF channel, not the BLE frequency, is specified! You can obtain the RF channel from the BLE frequency as follows: RF Channel = (BLE Frequency - 2402) / 2. Note: When the HCI_EXT_EndModemTest is issued to stop this test, a Controller reset will take place. Note: The device will transmit at the default output power (0 dBm) unless changed by HCI_EXT_SetTxPowerCmd. Note: This modem test can be used to satisfy in part radio regulation requirements as specific in standards such as ARIB STD-T66.
Command Parameters
- CW Mode:
Set Modem Test CW modulation.
- Size:
1 byte(s)
- Default:
0
- Range:
Value
Description
0
Modulated Transmit Carrier
1
Unmodulated Transmit Carrier
- TX RF Channel:
RF channel of transmit frequency.
- Size:
1 byte(s)
- Default:
0
- Range:
0-39
Events Generated
When this command has completed, an HCI_EXT_ModemTestTxDone event shall be generated.
HCI_EXT_ModemHopTestTxCmd¶
- Opcode:
0xFC09
- Command Description:
This API is used to 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 the HCI_EXT_EndModemTest command to end the test. Note: When the HCI_EXT_EndModemTest is issued to stop this test, a Controller reset will take place. Note: The device will transmit at the default output power (0 dBm) unless changed by HCI_EXT_SetTxPowerDbmCmd. Note: This modem test can be used to satisfy in part radio regulation requirements as specific in standards such as ARIB STD-T66.
Events Generated
When this command has completed, an HCI_EXT_ModemHopTestTxDone event shall be generated.
HCI_EXT_ModemTestRxCmd¶
- Opcode:
0xFC0A
- Command Description:
This API is used to 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_SetRxGain command. RSSI may be read during this test by using the HCI_ReadRssi command. Use HCI_EXT_EndModemTest command to end the test. Note: The RF channel, not the BLE frequency, is specified! You can obtain the RF channel from the BLE frequency as follows: RF Channel = (BLE Frequency - 2402) / 2. Note: When the HCI_EXT_EndModemTest is issued to stop this test, a Controller reset will take place. Note: This modem test can be used to satisfy in part radio regulation requirements as specific in standards such as ARIB STD-T66.
Command Parameters
- RX RF Channel:
RF channel of receive frequency.
- Size:
1 byte(s)
- Default:
0
- Range:
0-39
Events Generated
When this command has completed, an HCI_EXT_ModemTestRxDone event shall be generated.
HCI_EXT_EnhancedModemTestTxCmd¶
- Opcode:
0xFC27
- Command Description:
This API is used start the enhanced BLE5 continuous transmitter modem test, using either a modulated or unmodulated carrier wave tone, at the frequency that corresponds to the specified RF channel, for a given PHY (1M, 2M, Coded S2, or Coded S8). Use LL_EXT_EndModemTest to end the test.Note: A Controller reset will be issued by the HCI_EXT_EndModemTest command! Note: The BLE device will transmit at the current TX power setting. Note: This API can be used to verify this device meets Japan’s TELEC regulations.
Command Parameters
- CW Mode:
Set Enhanced Modem Test Tx CW modulation.
- Size:
1 byte(s)
- Default:
0
- Range:
Value
Description
0
Modulated Transmit Carrier
1
Unmodulated Transmit Carrier
- RF PHY:
PHY to transmit on
- Size:
1 byte(s)
- Default:
0
- Range:
Value
Description
0x00
1 Mbps Phy
0x01
2 Mbps Phy
0x02
Coded S8 Phy (125kpbs)
0x06
Coded S2 Phy (500 kbps)
- RF Channel:
RF channel of transmit frequency.
- Size:
1 byte(s)
- Default:
0
- Range:
0-39
Events Generated
When this command has completed, an HCI_EXT_EnhancedModemTestTxDone event shall be generated.
HCI_EXT_EnhancedModemHopTestTxCmd¶
- Opcode:
0xFC28
- Command Description:
This API is used to start the enhanced continuous transmitter direct test mode test using a modulated carrier wave. A test reference data packet is transmitted on a different frequency (linearly stepping through all RF channels 0..39), for a given PHY (1M, 2M, Coded S2, or Coded S8), every period (depending on the payload length, as given Vol. 6, Part F, section 4.1.6). Use LL_EXT_EndModemTest to end the test. Note: A Controller reset will be issued by the HCI_EXT_EndModemTest command! Note: The BLE device will transmit at the current TX power setting. Note: This API can be used to verify this device meets Japan’s TELEC regulations.
Command Parameters
- Payload Length:
Data payload length in bytes
- Size:
1 byte(s)
- Default:
37
- Range:
0-37
- Payload Type:
DTM Packet Pattern Type
- Size:
1 byte(s)
- Default:
0x00
- Range:
Value
Description
0x00
PRBS9
0x01
0x0F
0x02
0x55
0x03
PRBS15
0x04
0xFF
0x05
0x00
0x06
0xF0
0x07
0xAA
- RF PHY:
PHY to transmit on
- Size:
1 byte(s)
- Default:
0
- Range:
Value
Description
0x00
1 Mbps Phy
0x01
2 Mbps Phy
0x02
Coded S8 Phy (125kpbs)
0x06
Coded S2 Phy (500 kbps)
Events Generated
When this command has completed, an HCI_EXT_EnhancedModemHopTestTxDone event shall be generated.
HCI_EXT_EnhancedModemTestRxCmd¶
- Opcode:
0xFC29
- Command Description:
This API is used to start the enhanced BLE5 continuous receiver modem test using a modulated carrier wave tone, at the frequency that corresponds to the specific RF channel, for a given PHY (1M, 2M, Coded S2, or Coded S8). Any received data is discarded. RSSI may be read during this test by using the LL_ReadRssi command. Use LL_EXT_EndModemTest command to end the test. Note: A Controller reset will be issued by LL_EXT_EndModemTest!
Command Parameters
- RF PHY:
PHY to transmit on
- Size:
1 byte(s)
- Default:
0
- Range:
Value
Description
0x00
1 Mbps Phy
0x01
2 Mbps Phy
0x02
Coded S8 Phy (125kpbs)
0x06
Coded S2 Phy (500 kbps)
- RF Channel:
RF Channel
- Size:
1 byte(s)
- Default:
0
- Range:
0 to 39
Events Generated
When this command has completed, an HCI_EXT_EnhancedModemTestRxDone event shall be generated.
HCI_EXT_EndModemTestCmd¶
- Opcode:
0xFC0B
- Command Description:
This API is used to end a modem test. A Controller reset will take place.
Events Generated
When this command has completed, an HCI_EXT_EndModemTestDone event shall be generated.
HCI_EXT_SetBDADDRCmd¶
- Opcode:
0xFC0C
- Command Description:
This command is used to set this devices BLE address (BDADDR). This address will override the devices address determined when the device is reset (i.e. a hardware reset, not an HCI Controller Reset). To restore the devices initialized address, issue this command with an invalid address. Note: This command is only allowed when the Controller is in the Standby state. Note: This command is intended to only be used during initialization. Changing the devices BDADDR after various BLE operations have already taken place may cause unexpected problems.
Command Parameters
- BDADDR:
BLE Public Address (MSB..LSB). Use “FF:FF:FF:FF:FF:FF” to restore the device address to that which was determined at initialization.
- Size:
6 byte(s)
- Default:
“00:00:00:00:00:00”
- Range:
Any 6 byte value
Events Generated
When this command has completed, an HCI_EXT_SetBDADDRDone event shall be generated.
HCI_EXT_SetVirtualAdvAddrCmd¶
- Opcode:
0xFC73
- Command Description:
This API is used to set the advertiser’s virtual public address. Note: This command is only allowed when the advertise set is not active and its PDU type is Legacy Non-Connectable and Non-Scanable.
Command Parameters
- Handle:
Adv handle to which address will be assigned
- Size:
1 byte(s)
- Default:
“0”
- Range:
From 0 to 20 sets
- BDADDR:
Advertiser’s virtual public address
- Size:
6 byte(s)
- Default:
“00:00:00:00:00:00”
- Range:
Any 6 byte value
Events Generated
When this command has completed, an HCI_EXT_SetVirtualAdvAddrDone event shall be generated.
HCI_EXT_SetQOSParameters¶
- Opcode:
0xFC75
- Command Description:
This API is used to set the QOS Parameters according to the entered parameter type.
Command Parameters
- taskType:
The type of task: 0=LL_QOS_CONN_TASK_TYPE, 1=LL_QOS_ADV_TASK_TYPE, 2=LL_QOS_SCN_TASK_TYPE, 3=LL_QOS_INIT_TASK_TYPE, 4=LL_QOS_PERIODIC_ADV_TASK_TYPE, 5=LL_QOS_PERIODIC_SCN_TASK_TYPE.
- Size:
1 byte(s)
- Default:
“0”
- Range:
From 0 to 5.
- paramType:
The type of parameter: 0=LL_QOS_TYPE_PRIORITY, 1=LL_QOS_TYPE_CONN_MIN_LENGTH, 2=LL_QOS_TYPE_CONN_MAX_LENGTH.
- Size:
1 byte(s)
- Default:
“0”
- Range:
From 0 to 2: LL_QOS_TYPE_PRIORITY, LL_QOS_TYPE_CONN_MIN_LENGTH, LL_QOS_TYPE_CONN_MAX_LENGTH.
- ParamVal:
The parameter value. For LL_QOS_TYPE_PRIORITY: 0=Low, 1=Medium, 2=High. For LL_QOS_TYPE_CONN_MIN_LENGTH/LL_QOS_TYPE_CONN_MAX_LENGTH: time in [us].
- Size:
4 byte(s)
- Default:
“0”
- Range:
For LL_QOS_TYPE_PRIORITY: LL_QOS_LOW_PRIORITY (=0), LL_QOS_MED_PRIORITY (=1), LL_HIGH_LOW_PRIORITY (=2). For LL_QOS_TYPE_CONN_MIN_LENGTH: For coded connection the range LL_MIN_LINK_DATA_TIME_CODED (2704 us) - LL_MAX_LINK_DATA_TIME_CODED (17040 us).For uncoded connection the range LL_MIN_LINK_DATA_TIME (328 us) - LL_MAX_LINK_DATA_TIME_UNCODED (2120 us). For LL_QOS_TYPE_CONN_MAX_LENGTH: For coded connection the range LL_MIN_LINK_DATA_TIME_CODED (2704 us) - connection’s interval (us). For uncoded connection the range LL_MIN_LINK_DATA_TIME (328 us) - connection’s interval.
- taskHandle:
The task handle to be changed (secondary and primary tasks). For connection enter the connection’s Id.
- Size:
2 byte(s)
- Default:
“0”
- Range:
From 0 to 20
Events Generated
When this command has completed, an HCI_EXT_SetQOSParametersDone event shall be generated.
HCI_EXT_SetQOSDefaultParameters¶
- Opcode:
0xFC76
- Command Description:
This API is used to set the default QOS Parameters values.
Command Parameters
- paramDefaultVal:
The parameter default value. For LL_QOS_TYPE_PRIORITY: 0=Low, 1=Medium, 2=High.
- Size:
4 byte(s)
- Default:
“0”
- Range:
For LL_QOS_TYPE_PRIORITY: LL_QOS_LOW_PRIORITY (=0), LL_QOS_MED_PRIORITY (=1), LL_HIGH_LOW_PRIORITY (=2).
- paramType:
The type of parameter: 0=LL_QOS_TYPE_PRIORITY
- Size:
1 byte(s)
- Default:
“0”
- Range:
From 0 to 0: LL_QOS_TYPE_PRIORITY
- taskType:
The type of task: 0=LL_QOS_CONN_TASK_TYPE, 1=LL_QOS_ADV_TASK_TYPE, 2=LL_QOS_SCN_TASK_TYPE, 3=LL_QOS_INIT_TASK_TYPE, 4=LL_QOS_PERIODIC_ADV_TASK_TYPE, 5=LL_QOS_PERIODIC_SCN_TASK_TYPE.
- Size:
1 byte(s)
- Default:
“0”
- Range:
From 0 to 5
Events Generated
When this command has completed, an HCI_EXT_SetQOSDefaultParameters event shall be generated.
HCI_EXT_SetHostDefChanClassificationCmd¶
- Opcode:
0xFC79
- Command Description:
This API is used to set the default channel map to use in future connections.
Command Parameters
- Channel Map:
The channel map to set as default. bit map for each channel. 1 to use channel, 0 to not use.
- Size:
5 byte(s)
- Default:
“00:00:00:00:01”
- Range:
Any 6 byte value, will use only 37 LSb, one for each channel.
Events Generated
When this command has completed, an HCI_EXT_SetHostDefChanClassificationCmd event shall be generated.
HCI_EXT_SetHostConnChanClassificationCmd¶
- Opcode:
0xFC7A
- Command Description:
This API is used to set the channel map of a specific active connection.
Command Parameters
- Channel Map:
The channel map to set as default. bit map for each channel. 1 to use channel, 0 to not use.
- Size:
5 byte(s)
- Default:
“00:00:00:00:01”
- Range:
Any 6 byte value, will use only 37 LSb, one for each channel.
- Handle:
Local identifier of the LL connection
- Size:
2 byte(s)
- Default:
0x0000
- Range:
0x0000 to 0x0EFF
Events Generated
When this command has completed, an HCI_EXT_SetHostConnChanClassificationCmd event shall be generated.
HCI_EXT_Send_Power_Control_Request¶
- Opcode:
0xFC7C
- Command Description:
This API is used to trigger the power control procedure and send the power control request packet.
Command Parameters
- Connection Handle:
Local identifier of the LL connection
- Size:
2 byte(s)
- Default:
0x0000
- Range:
0x0000 to 0xFFFD
- Requested PHY:
Phy on which the command is triggered for
- Size:
1 byte(s)
- Default:
0x1
- Range:
Value
Description
0x1
LE 1M PHY
0x2
LE 2M PHY
0x3
LE Coded PHY with S=8 data coding
0x4
LE Coded PHY with S=2 data coding
0xC
LE Coded PHY with S=2 and S=8 data coding
- Delta Power dB:
The amount of power the peer device need to decrease or increase in dB units
- Size:
1 byte(s)
- Default:
0x0
- Range:
-127 to 126
- APR Enable:
Flag to enable the APR
- Size:
1 byte(s)
- Default:
0x0
- Range:
Value
Description
0x0
APR disable
0x1
APR enable
- HCI_Command_Status_Event:
HCI Command Status Event with the status of the command.
- Size:
1 byte(s)
- Default:
HCI_EXT_Send_Power_Control_Request
- Range:
HCI Command Status Event
Events Generated
When this command is completed, an LE Transmit Power Reporting event shall be generated.
HCI_EXT_SetDefaultAntennaCmd¶
- Opcode:
0xFC7D
- Command Description:
This API is used to set a default antenna for regular BLE communications.
Command Parameters
- Index:
Index of the antenna to be set as default.
- Size:
1 byte(s)
- Default:
0x00
- Range:
0x00 to 0x03
Events Generated
When this command is completed, an HCI_EXT_SetDefaultAntennaDone event shall be generated.
HCI_EXT_RssiMon_RegCmd¶
- Opcode:
0xFC35
- Command Description:
This API registers an RSSI monitoring command for a specific connection.
Command Parameters
- Connection Handle:
Local identifier of the LL connection
- Size:
2 byte(s)
- Default:
0x0000
- Range:
0x0000 to 0xEFFF
- Low rssi threshold:
Lowest allowed rssi value before triggering this calllback
- Size:
1 byte(s)
- Default:
0x0
- Range:
-127 to 20
- High rssi threshold:
Highest allowed rssi value before triggering this calllback
- Size:
1 byte(s)
- Default:
0
- Range:
-127 to 20
Events Generated
When this command has completed, an HCI_EXT_RssiMon_RegCmdDone event shall be generated.
HCI_EXT_RssiMon_UnregCmd¶
- Opcode:
0xFC36
- Command Description:
This API unregisters an RSSI monitoring command for a specific connection.
Command Parameters
- Register Handle:
Local identifier handle for the rssi monitor callback
- Size:
1 byte(s)
- Default:
0x00
- Range:
0x00 to 0xFF
Events Generated
When this command has completed, an TODO.
HCI_EXT_RssiMon_SetConfigCmd¶
- Opcode:
0xFC37
- Command Description:
This API sets the configuration for the RSSI monitoring command.
Command Parameters
- Income rssi monitor weight:
Weight of the income rssi value to be used in the rssi statistic calculation
- Size:
1 byte(s)
- Default:
0x1
- Range:
0x1 to 0xFF
- Minimum number of rssi samples:
Minmium number of rssi samples that after this amount the rssi statistic is valid
- Size:
1 byte(s)
- Default:
0xA
- Range:
0x1 to 0xFF
Events Generated
When this command has completed, an TODO.
HCI_EXT_RssiMon_GetConfigCmd¶
- Opcode:
0xFC38
- Command Description:
This API gets the configuration for the RSSI monitoring command.
Events Generated
When this command has completed, an HCI_EXT_RssiMon_GetConfigCmdDone event shall be generated.
HCI_EXT_RssiMon_GetRssiStatCmd¶
- Opcode:
0xFC39
- Command Description:
This API gets the RSSI statistics for a specific connection.
Command Parameters
- Connection Handle:
Local identifier of the LL connection
- Size:
2 byte(s)
- Default:
0x0000
- Range:
0x0000 to 0xEFFF
Events Generated
When this command has completed, an HCI_EXT_RssiMon_GetRssiStatCmdDone event shall be generated.
HCI_EXT_SetSCACmd¶
- Opcode:
0xFC0D
- Command Description:
This command is used to set this devices Sleep Clock Accuracy (SCA) value, in parts per million (PPM), from 0 to 500. For a Central device, the value is converted to one of eight ordinal values representing a SCA range (per [1], Volume 6, Part B, Section 2.3.3.1, Table 2.2), which will be used when a connection is created. For a Peripheral device, the value is directly used. The system default value for a Central and Peripheral device is 50ppm and 40ppm, respectively. Note: This command is only allowed when the device is not in a connection. Note: The devices SCA value remains unaffected by an HCI Reset.
Command Parameters
- SCA:
BLE Device Sleep Clock Accuracy (PPM).
- Size:
2 byte(s)
- Default:
“40”
- Range:
(0..500)
Events Generated
When this command has completed, an HCI_EXT_SetSCADone event shall be generated.
HCI_EXT_EnablePTMCmd¶
- Opcode:
0xFC0E
- Command Description:
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. Note: This command is only allowed as a direct function call, and is only intended to be used by an embedded application. No vendor specific Command Complete event will be generated.
Events Generated
When this command has completed, will simply return. No vendor specific Command Complete event will be generated.
HCI_EXT_DisconnectImmedCmd¶
- Opcode:
0xFC13
- Command Description:
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. Note that the Host issuing the command will still receive the HCI Disconnection Complete event with a Reason status of 0x16 (i.e. Connection Terminated by Local Host), followed by an HCI Vendor Specific Event.
Command Parameters
- Connection Handle:
Handle used to identify a connection
- Size:
2 byte(s)
- Default:
0x0000
- Range:
0x0000 to 0x0EFF
Events Generated
When this command has completed, an HCI_EXT_DisconnectImmedDone event shall be generated.
HCI_EXT_PacketErrorRateCmd¶
- Opcode:
0xFC14
- Command Description:
This command is used to Reset or Read the Packet Error Rate counters for a connection. When Reset, the counters are cleared; when Read, the total number of packets received, the number of packets received with a CRC error, the number of events, and the number of missed events are returned. The system default value upon hardware reset is Reset. Note: The counters are only 16 bits. At the shortest connection interval, this provides a little over 8 minutes of data. Note: This command is only valid for a valid connection handle (i.e. for an active connection). It is therefore not possible to read the packet error rate data once the connection has ended.
Command Parameters
- Connection Handle:
Handle used to identify a connection
- Size:
2 byte(s)
- Default:
0x0000
- Range:
0x0000 to 0x0EFF
- PER Test Command:
Reset or Read the PER counters.
- Size:
1 byte(s)
- Default:
0
- Range:
Value
Description
0
Reset PER Counters
1
Read PER Counters
Events Generated
When this command has completed, an HCI_EXT_PER event shall be generated.
HCI_EXT_SetPeripheralLatencyOverrideCmd¶
- Opcode:
0xFC1A
- Command Description:
This command is used to enable or disable the Peripheral Latency Override, allowing the user to ensure that Peripheral Latency is not applied even though it is active. The default value is Disable. Note: This command will be disallowed for no connection, or the connection is not in the Peripheral role.
Command Parameters
- Control:
Enable or disable suspending peripheral latency.
- Size:
1 byte(s)
- Default:
0
- Range:
Value
Description
0
Disable
1
Enable
Events Generated
When this command has completed, an HCI_EXT_OverridePLDone event shall be generated.
HCI_EXT_BuildRevisionCmd¶
- Opcode:
0xFC1B
- Command Description:
This command is used to a) allow the embedded user code to set their own 16 bit revision number, and b) to read the build revision number of the BLE stack library software. The default value of the user revision number is zero. When the user updates a BLE project by adding their own code, they may use this API to set their own revision number. When called with mode set to HCI_EXT_SET_APP_REVISION, the stack will save this value. No event will be returned from this API when used this way as it is intended to be called from within the target itself. Note however that this does not preclude this command from being received via the HCI. However, no event will be returned. When this API is used from the HCI, then the second parameter is ignored, and a vendor specific event is returned with the users revision number and the build revision number of the BLE stack.
Command Parameters
- Mode:
Set User Revision or Get Build Revision.
- Size:
1 byte(s)
- Default:
0
- Range:
Value
Description
0
Set User Revision Number
1
Read Build Revision
- UserRevNum:
User Revision Number.
- Size:
2 byte(s)
- Default:
0
- Range:
Any 16 bit value
Events Generated
When this command has completed, an HCI_EXT_BuildRevisionDone event shall be generated but only when the value of mode is HCI_EXT_READ_BUILD_REVISION.
HCI_EXT_ResetSystemCmd¶
- Opcode:
0xFC1D
- Command Description:
This command is used to issue a hard or soft system reset. A hard reset is caused by setting the SYSRESET bit in the System Controller Reset Control register. The soft reset is currently not supported on the CC264x.
Command Parameters
- type:
Reset Type
- Size:
1 byte(s)
- Default:
0
- Range:
Value
Description
0x00
Chip Reset
0x01
Soft Reset
Events Generated
When this command has completed, an HCI_EXT_ResetSystemDone event shall be generated.
HCI_EXT_NumComplPktsLimitCmd¶
- Opcode:
0xFC1F
- Command Description:
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 Number of Completed Packets event will be returned (if non-zero) based on the flushOnEvt flag. The limit can be set from one to the maximum number of HCI buffers (please see the LE Read Buffer Size command in the Bluetooth Core specification). The default limit is one; the default flushOnEvt flag is FALSE.
Command Parameters
- Limit:
Set Number of Completed Packets Limit.
- Size:
1 byte(s)
- Default:
1
- Range:
0x01 to the value returned from HCI_LE_ReadBufSizeCmd
- flushOnEvt:
Enable or disable flush of Number of Completed Packets at end of Event.
- Size:
1 byte(s)
- Default:
0
- Range:
Value
Description
0
Disable
1
Enable
Events Generated
When this command has completed, an HCI_EXT_NumComplPktsLimitDone event shall be generated.
HCI_EXT_GetConnInfoCmd¶
- Opcode:
0xFC20
- Command Description:
This command (which replaces Get Number Connections) is used to get the number of allocated connections, the number of active connections, and for each active connection, the connection handle, the connection role, the peer device address and peer device address type. The number of allocated connections is based on a default build value that can be changed in the project using MAX_NUM_BLE_CONNS (please see the software users guide for additional details). The number of active connections refers to active BLE connections. The information per connection is based on the structure hciConnInfo_t provided in hci.h. If all parameters are NULL, then the call to this command is considered a network processor call via a transport layer, and the results will be provided via a vendor specific command complete event.If any parameter is not NULL, then the call to this command is considered a direct function call and the valid pointers will be used to store the result. In this case, it is the users responsibility to ensure there is sufficient memory allocated! Note that partial results can be obtained by selective use of the pointers. For example, if only the number of active connections is desired, this can be obtained as follows:
Events Generated
When this command has completed, an HCI_EXT_GetConnInfoDone event shall be generated.
HCI_EXT_SetMaxDataLenCmd¶
- Opcode:
0xFC21
- Command Description:
This command is used to set the Data Length Extension internal variables supportedMaxTxOctets, supportedMaxTxTime, supportedMaxRxOctets and supportedMaxRxTime that are normally set exclusively by the Controller to the maximum data length and duration allowed by this device (default Tx and Rx Octets is 251; default Tx and Rx Time is 2120 us [but note that any future change to support PHYs could alter the default values of Time]).
Command Parameters
- Tx Octets:
Maximum number of payload octets that the local Controller supports for transmission of a single Link Layer Data Channel PDU.
- Size:
2 byte(s)
- Default:
0
- Range:
0x001B to 0x00FB
- Tx Time:
Maximum time, in microseconds, that the local Controller supports for transmission of a single Link Layer Data Channel PDU.
- Size:
2 byte(s)
- Default:
0
- Range:
0x0148 to 0x0848
- Rx Octets:
Maximum number of payload octets that the local Controller supports for reception of a single Link Layer Data Channel PDU.
- Size:
2 byte(s)
- Default:
0
- Range:
0x001B to 0x00FB
- Rx Time:
Maximum time, in microseconds, that the local Controller supports for reception of a single Link Layer Data Channel PDU.
- Size:
2 byte(s)
- Default:
0
- Range:
0x0148 to 0x0848
Events Generated
When this command has completed, an HCI_EXT_SetMaxDataLengthDone event shall be generated.
HCI_EXT_SetDtmTxPktCntCmd¶
- Opcode:
0xFC24
- Command Description:
This API is used to set the DTM TX packet count.
Command Parameters
- TX Packet Count:
Number of DTM packets to transmit
- Size:
2 byte(s)
- Default:
0
- Range:
Value
Description
0x0000
Continuous Tx
Events Generated
When this command has completed, an HCI_EXT_SetDtmTxPktCntDone event shall be generated.
HCI_EXT_SetPinOutputCmd¶
- Opcode:
0xFC2A
- Command Description:
This API is used to set GPIO as output.
Command Parameters
- Pin:
Pin Number
- Size:
1 byte(s)
- Default:
0
- Range:
0x00 to 0x1F
- Value:
initialize value 0 or 1
- Size:
1 byte(s)
- Default:
0
- Range:
Value
Description
0x00
Output Low
0x01
Output High
0xFF
Input
Events Generated
When this command has completed, an HCI_EXT_SetPinOutputDone event shall be generated.
HCI_EXT_SetLocationingAccuracyCmd¶
- Opcode:
0xFC2B
- Command Description:
This API is used to set CTE accuracy.
Command Parameters
- handle:
connection handle (0x0XXX) or periodic advertising train handle (0x1XXX)
- Size:
2 byte(s)
- Default:
0x0000
- Range:
0x0000 to 0x1EFF
- CTE PHY:
Indicate which PHY to configure.
- Size:
0 byte(s)
- Default:
0x01
- Range:
Value
Description
0x01
LE 1M
0x02
LE 2M
- 1M:sample rate:
Accuracy between 1 (least accuracy as in 5.1 spec) to 4 (most accuracy)
- Condition:
( (phyMask & 0x1) == 0x01)
- Size:
1 byte(s)
- Default:
1
- Range:
Value
Description
0x01
1us AoD transmission
0x02
1us AoD reception
0x04
1us AoA reception
- 1M:sample size:
Size 8 bits (as in 5.1 spec) or 16 bits (more accurate)
- Condition:
( (phyMask & 0x1) == 0x01)
- Size:
1 byte(s)
- Default:
1
- Range:
Value
Description
0x01
8 bits
0x02
16 bits
- 1M:sample rate:
- Condition:
( (phyMask & 0x1) != 0x01)
- Size:
1 byte(s)
- Value:
0
- 1M:sample size:
- Condition:
( (phyMask & 0x1) != 0x01)
- Size:
1 byte(s)
- Value:
0
- 2M:sample rate:
Accuracy between 1 (least accuracy as in 5.1 spec) to 4 (most accuracy)
- Condition:
( (phyMask & 0x2) == 0x02)
- Size:
1 byte(s)
- Default:
1
- Range:
Value
Description
0x01
1us AoD transmission
0x02
1us AoD reception
0x04
1us AoA reception
- 2M:sample size:
Size 8 bits (as in 5.1 spec) or 16 bits (more accurate)
- Condition:
( (phyMask & 0x2) == 0x02)
- Size:
1 byte(s)
- Default:
1
- Range:
Value
Description
0x01
8 bits
0x02
16 bits
- 2M:sample rate:
- Condition:
( (phyMask & 0x2) != 0x02)
- Size:
1 byte(s)
- Value:
0
- 2M:sample size:
- Condition:
( (phyMask & 0x2) != 0x02)
- Size:
1 byte(s)
- Value:
0
- sample control:
0x00-default filtering(skip antenna switching samples, …), 0x01-RAW_RF no filtering
- Size:
1 byte(s)
- Default:
0x00
- Range:
0x00 to 0x01
Events Generated
When this command has completed, an HCI_EXT_SetLocationingAccuracyDone event shall be generated.
HCI_EXT_GetActiveConnInfoCmd¶
- Opcode:
0xFC2C
- Command Description:
This API is used to get connection information needed to track an active BLE connection.
Command Parameters
- connId:
- Size:
1 byte(s)
- Default:
0
- Range:
0x0000 to 0x0EFF
Events Generated
When this command has completed, an HCI_EXT_GetActiveConnInfoDone event shall be generated.
HCI_EXT_CoexEnableCmd¶
- Opcode:
0xFC2E
- Command Description:
This API is used to enable or disable the Coex feature.
Command Parameters
- Enable:
1 for enable and 0 for disable
- Size:
1 byte(s)
- Default:
1
- Range:
0x00 to 0x01
Events Generated
When this command has completed, an HCI_EXT_CoexEnableDone event shall be generated.
HCI_EXT_SetTxPowerDbmCmd¶
- Opcode:
0xFC2F
- Command Description:
This command is used to set the RF transmitter output power value in dBm.
Command Parameters
- dBm:
Tx power to use.
- Size:
1 byte(s)
- Default:
0
- Range:
-127 to 20
- fraction:
Tx power fraction (0.5 dBm).
- Size:
1 byte(s)
- Default:
0
- Range:
Value
Description
False
True
Events Generated
When this command has completed, an HCI_EXT_SetTxPowerDone event shall be generated.
HCI_EXT_SetMaxDtmTxPowerDbmCmd¶
- Opcode:
0xFC30
- Command Description:
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. This command will change the value used by DTM. Note: When DTM is ended by a call to HCI_LE_TestEndCmd, or a HCI_Reset is used, the transmitter output power setting is restored to the default value of 0 dBm.
Command Parameters
- dBm:
Tx power to use.
- Size:
1 byte(s)
- Default:
0
- Range:
-127 to 20
- fraction:
Tx power fraction (0.5 dBm).
- Size:
1 byte(s)
- Default:
0
- Range:
Value
Description
False
True
Events Generated
When this command has completed, an HCI_EXT_SetMaxDtmTxPowerDone event shall be generated.
HCI_EXT_GetRxStatisticsCmd¶
- Opcode:
0xFC31
- Command Description:
This command is used to Reset or Read the RX statistics counters for a connection. When Reset, the counters are cleared; when Read, the total number of ok packets received, the number of control packets received, the number of control packets received that were ACKed, the number of packets received with a CRC error, the number of packets that were ignored, the number of empty packets that were received, and the number of discarded packets are returned. The system default value upon hardware reset is Reset. Note: The counters are only 16 bits. At the shortest connection interval, this provides a little over 8 minutes of data. Note: This command is only valid for a valid connection handle (i.e. for an active connection). It is therefore not possible to read the packet error rate data once the connection has ended.
Command Parameters
- Connection Handle:
Handle used to identify a connection
- Size:
2 byte(s)
- Default:
0x0000
- Range:
0x0000 to 0x0EFF
- RX Stats Test Command:
Reset or Read the RX statistics counters.
- Size:
1 byte(s)
- Default:
0
- Range:
Value
Description
0
Reset Statistics Counters
1
Read Statistics Counters
Events Generated
When this command has completed, an HCI_EXT_GET_RX_STATS event shall be generated.
HCI_EXT_GetTxStatisticsCmd¶
- Opcode:
0xFC32
- Command Description:
This command is used to Reset or Read the RX statistics counters for a connection. When Reset, the counters are cleared; when Read, the total number of ok packets transmitted, the number of transmitted packets ACKed, the number of control packets transmitted, the number of control packets transmitted ACKed, the number of control packets transmitted ACKed that were ACKed, the number of packets retransmissions, and the number of packets on Tx queue that are finished. The system default value upon hardware reset is Reset. Note: The counters are only 16 bits. At the shortest connection interval, this provides a little over 8 minutes of data. Note: This command is only valid for a valid connection handle (i.e. for an active connection). It is therefore not possible to read the packet error rate data once the connection has ended.
Command Parameters
- Connection Handle:
Handle used to identify a connection
- Size:
2 byte(s)
- Default:
0x0000
- Range:
0x0000 to 0x0EFF
- TX Stats Test Command:
Reset or Read the TX statistics counters.
- Size:
1 byte(s)
- Default:
0
- Range:
Value
Description
0
Reset Statistics Counters
1
Read Statistics Counters
Events Generated
When this command has completed, an HCI_EXT_GET_TX_STATS event shall be generated.
HCI_EXT_GetCoexStatisticsCmd¶
- Opcode:
0xFC33
- Command Description:
This command is used to Reset or Read the COEX statistics counters for a connection. When Reset, the counters are cleared; when Read, the total number of grants (CC33xx: grants_asserted), the total number of rejects (CC33xx: request_deassrted), the total number of continuously rejected requests (CC33xx: grants_deasserted), and the number of max continuously rejected requests (CC33xx: request_assrted). The system default value upon hardware reset is Reset.
Command Parameters
- Coex Stats Test Command:
Reset or Read the Coex statistics counters.
- Size:
1 byte(s)
- Default:
0
- Range:
Value
Description
0
Reset Statistics Counters
1
Read Statistics Counters
Events Generated
When this command has completed, an HCI_EXT_GET_COEX_STATS event shall be generated.
HCI_EXT_HostToControllerCmd¶
- Opcode:
0xFC34
- Command Description:
This API is used to send the controller a raw HCI packet.
Command Parameters
- HciPacketLength:
The hci packet length.
- Size:
2 byte(s)
- Default:
4
- Range:
4 to 255
- HciPacket:
The raw hci packet.
- Size:
pktLen byte(s)
- Default:
“01:03:0c:00”
- Range:
Any value
Events Generated
When this command has completed the corrsponding event shall be generated.
HCI Extension Events¶
The HCI Extension vendor specific commands generate the following vendor specific events.
HCI_EXT_SetRxGainDone¶
- Opcode:
0x0400
- Event Description:
This event is sent to indicate the RF receiver gain has been set, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_SetTxPowerDone¶
- Opcode:
0x0401
- Event Description:
This event is sent to indicate the RF transmitter power has been set, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_OnePacketPerEventDone¶
- Opcode:
0x0402
- Event Description:
This event is sent to indicate the One Packet Per Event feature has been enabled or disabled, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_DecryptCommandDone¶
- Opcode:
0x0405
- Event Description:
This event is sent to indicate Decryption has completed.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
- Decrypted Data:
128 bit decrypted data block. The most significant octet of plainTextData corresponds to plainTextData using the notation specified in FIPS 197.
- Size:
16 byte(s)
- Range:
Any 16 byte value
HCI_EXT_WriteLocalFeatureSupportDone¶
- Opcode:
0x0406
- Event Description:
This event is sent to indicate the Set Local Supported Features command has completed.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_SetFastTxResponseTimeDone¶
- Opcode:
0x0407
- Event Description:
This event is sent to indicate the Set Fast Transmit Response Time feature has been enabled or disabled, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_ModemTestTxDone¶
- Opcode:
0x0408
- Event Description:
This event is sent to indicate the Modem Test Transmit test has started, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_ModemHopTestTxDone¶
- Opcode:
0x0409
- Event Description:
This event is sent to indicate the Modem Hop Test Transmit test has started, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_ModemTestRxDone¶
- Opcode:
0x040A
- Event Description:
This event is sent to indicate the Modem Test Receive test has started, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_EnhancedModemTestTxDone¶
- Opcode:
0x0427
- Event Description:
This event is sent to indicate the enhanced Modem Test Transmit test has started, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_EnhancedModemHopTestTxDone¶
- Opcode:
0x0428
- Event Description:
This event is sent to indicate the enhanced Modem Hop Test Transmit test has started, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_EnhancedModemTestRxDone¶
- Opcode:
0x0429
- Event Description:
This event is sent to indicate the enhanced Modem Test Receive test has started, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_EndModemTestDone¶
- Opcode:
0x040B
- Event Description:
This event is sent to indicate the modem test has been shutdown, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_SetBDADDRDone¶
- Opcode:
0x040C
- Event Description:
This event is sent to indicate the devices BLE address has been set, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_SetVirtualAdvAddrDone¶
- Opcode:
0x042D
- Event Description:
This event is sent to indicate the advertise’s virtual address has been set, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_SetSCADone¶
- Opcode:
0x040D
- Event Description:
This event is sent to indicate the devices SCA has been set, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_EnablePTMDone¶
- Opcode:
0x040E
- Event Description:
There is not a corresponding event opcode (0x040E) and parameters for this command as it is only allowed as a direct function call by the application software.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_SetMaxDtmTxPowerDone¶
- Opcode:
0x0411
- Event Description:
This event is sent to indicate the maximum Direct Test Mode (DTM) RF transmitter power has been set, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_DisconnectImmedDone¶
- Opcode:
0x0413
- Event Description:
This event is sent to indicate the Disconnect Immediate command has completed, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_PER¶
- Opcode:
0x0414
- Event Description:
This event is sent to indicate the Packet Error Rate Reset or Read command has completed, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
- PER Command Type:
Read or Reset
- Size:
1 byte(s)
- Range:
Value
Description
0
Reset PER Counters
1
Read PER Counters
- RX Pkts:
Number of received packets.
- Condition:
( cmdVal!=0x00 && cmdStat==0x00)
- Size:
2 byte(s)
- Range:
Any 2 byte value
- RX CRC Fails:
Number of received packets with CRC error.
- Condition:
( cmdVal!=0x00 && cmdStat==0x00)
- Size:
2 byte(s)
- Range:
Any 2 byte value
- Events:
Number of connection events.
- Condition:
( cmdVal!=0x00 && cmdStat==0x00)
- Size:
2 byte(s)
- Range:
Any 2 byte value
- Missed Events:
Number of missed connection events.
- Condition:
( cmdVal!=0x00 && cmdStat==0x00)
- Size:
2 byte(s)
- Range:
Any 2 byte value
HCI_EXT_OverridePLDone¶
- Opcode:
0x041A
- Event Description:
This event is sent to indicate the Set Peripheral Latency Override feature has been enabled or disabled, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_BuildRevisionDone¶
- Opcode:
0x041B
- Event Description:
This event is sent to indicate the user revision number and the build revision of the stack, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
- User Revision Number:
The user revision number set by the application software. If no value was ever set, than 0x0000.
- Condition:
( cmdStat==0x00)
- Size:
2 byte(s)
- Range:
Any 2 byte value
- Build Revision Number:
The build revision number of the BLE stack.
- Condition:
( cmdStat==0x00)
- Size:
2 byte(s)
- Range:
Any 2 byte value
HCI_EXT_ResetSystemDone¶
- Opcode:
0x041D
- Event Description:
This event is sent to indicate the Reset System command has completed, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_NumComplPktsLimitDone¶
- Opcode:
0x041F
- Event Description:
This event is sent to indicate the Number Completed Packets Limit command has completed, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_GetConnInfoDone¶
- Opcode:
0x0420
- Event Description:
This event is sent to indicate the Get Connection Information command has completed.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
- Alloc Conns:
Total number of allocated connections
- Size:
1 byte(s)
- Range:
- Active Conns:
Number of currently active connections
- Size:
1 byte(s)
- Range:
An array of size “numConn” will be returned containing the parameters starting here:
- Conn Handle:
Connection Handle
- Size:
1 byte(s)
- Range:
- Conn Role:
- Size:
1 byte(s)
- Range:
Value
Description
0x22
LMP/LL Response Timeout
0x23
LMP Error Transaction Collision
0x24
LMP PDU Not Allowed
0x25
Encryption Mode Not Acceptable
0x26
Link Key Can Not be Changed
0x27
Requested QoS Not Supported
0x28
Instant Passed
0x29
Pairing With Unit Key Not Supported
0x2A
Different Transaction Collision
0x2B
Reserved
0x2C
QoS Unacceptable Parameter
0x2D
QoS Rejected
0x2E
Channel Assessment Not Supported
0x2F
Insufficient Security
0x30
Parameter Out Of Mandatory Range
0x31
Reserved
0x32
Role Switch Pending
0x33
Reserved
0x34
Reserved Slot Violation
0x35
Role Switch Failed
0x36
Extended Inquiry Response Too Large
0x37
Simple Pairing Not Supported By Host
0x38
Host Busy - Pairing
0x39
Connection Rejected Due To No Suitable Channel Found
0x3A
Controller Busy
0x3B
Unacceptable Connection Interval
0x3C
Directed Advertising Timeout
0x3D
Connection Terminated Due To MIC Failure
0x3E
Connection Failed To Be Established
0x3F
MAC Connection Failed
0x40
Coarse Clock Adjust Rejected
0x41
Type0 Submap Not Defined
0x42
Unknown Advertising Identifier
0x43
Limit Reached
0x44
Operation Cancelled by Host
0x45
Packet Too Long
- Peer Addr:
- Size:
6 byte(s)
- Range:
- Peer Addr Type:
- Size:
1 byte(s)
- Range:
Value
Description
0x00
Public
0x01
Random
0x02
Public Identity
0x03
Random Identity
The array of parameters ends here.
HCI_EXT_SetMaxDataLengthDone¶
- Opcode:
0x0421
- Event Description:
This event is sent to indicate the Set Max Data Length command has completed.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_SetDtmTxPktCntDone¶
- Opcode:
0x0424
- Event Description:
This event is sent to indicate the DTM TX Packet Count has been set, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_LE_ADV_EVENT¶
- Opcode:
0x0425
- Event Description:
Extended advertisement event.
Event Parameters
- eventID:
- Size:
1 byte(s)
- Range:
Value
Description
0x00
Adv Start After Enable
0x01
Adv End After Disable
0x02
Adv Start
0x03
Adv End
0x04
Adv Report
0x05
Adv Set Terminated
0x06
Scan req received
0x07
Scan Timeout
0x08
Scan Start
0x09
Scan End
0x0A
Scan Window End
0x0B
Scan Interval End
0x0C
Scan Duration End
0x0D
Scan Period End
0x0E
LL Out of memory
0x0F
Adv Data Truncated
- handle:
- Size:
1 byte(s)
- Range:
- Adv Data Len:
- Condition:
( eventID==0x0f)
- Size:
2 byte(s)
- Range:
- Available Adv Data Len:
- Condition:
( eventID==0x0f)
- Size:
1 byte(s)
- Range:
HCI_EXT_LE_SCAN_EVENT¶
- Opcode:
0x0426
- Event Description:
Extended Scanner event.
Event Parameters
- eventID:
- Size:
1 byte(s)
- Range:
Value
Description
0x00
Adv Start After Enable
0x01
Adv End After Disable
0x02
Adv Start
0x03
Adv End
0x04
Adv Report
0x05
Adv Set Terminated
0x06
Scan req received
0x07
Scan Timeout
0x08
Scan Start
0x09
Scan End
0x0A
Scan Window End
0x0B
Scan Interval End
0x0C
Scan Duration End
0x0D
Scan Period End
0x0E
LL Out of memory
0x0F
Adv Data Truncated
HCI_EXT_SetPinOutputDone¶
- Opcode:
0x042A
- Event Description:
This event is sent to indicate the Enable Pin Output has been set, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_SetLocationingAccuracyDone¶
- Opcode:
0x042B
- Event Description:
This event is sent to indicate the locationing accuracy has been set, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_GetActiveConnInfoDone¶
- Opcode:
0x042C
- Event Description:
This event is sent to provide active connection information as requested.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
An array of size “cmConnInfo” will be returned containing the parameters starting here:
- Access Addr:
- Size:
4 byte(s)
- Range:
- Conn Interval (in 0.625ms units):
- Size:
2 byte(s)
- Range:
- Hop Value:
- Size:
1 byte(s)
- Range:
- mSCA:
- Size:
2 byte(s)
- Range:
- next chan:
- Size:
1 byte(s)
- Range:
- Chann Map:
- Size:
5 byte(s)
- Range:
- CrcInit:
- Size:
3 byte(s)
- Range:
The array of parameters ends here.
HCI_EXT_CoexEnableDone¶
- Opcode:
0x042E
- Event Description:
This event is sent to indicate the Enable Coex feature, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_SetDefaultChannelMapDone¶
- Opcode:
0x042F
- Event Description:
This event is sent to indicate the Set Default Channel Map feature, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_SetConnectionChannelMapDone¶
- Opcode:
0x0430
- Event Description:
This event is sent to indicate the Set Connection Channel Map feature, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_GetRxStatisticsDone¶
- Opcode:
0x0431
- Event Description:
This event is sent to indicate the RX statistics Reset or Read command has completed, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
- RX Statistics Command Type:
Read or Reset
- Size:
1 byte(s)
- Range:
Value
Description
0
Reset Statistics Counters
1
Read Statistics Counters
- RX OK Pkts:
Number of ok received packets.
- Condition:
( cmdVal!=0x00 && cmdStat==0x00)
- Size:
2 byte(s)
- Range:
Any 2 byte value
- RX OK Control Pkts:
Number of ok received control packets.
- Condition:
( cmdVal!=0x00 && cmdStat==0x00)
- Size:
2 byte(s)
- Range:
Any 2 byte value
- RX OK Control Pkts ACKed:
Number of ok received control packets that were ACKed.
- Condition:
( cmdVal!=0x00 && cmdStat==0x00)
- Size:
2 byte(s)
- Range:
Any 2 byte value
- RX CRC Error Pkts:
Number of CRC error received packets.
- Condition:
( cmdVal!=0x00 && cmdStat==0x00)
- Size:
2 byte(s)
- Range:
Any 2 byte value
- RX Ignored Pkts:
Number of ignored received packets.
- Condition:
( cmdVal!=0x00 && cmdStat==0x00)
- Size:
2 byte(s)
- Range:
Any 2 byte value
- RX Empty Pkts:
Number of Empty received packets.
- Condition:
( cmdVal!=0x00 && cmdStat==0x00)
- Size:
2 byte(s)
- Range:
Any 2 byte value
- RX Discarded Pkts:
Number of discarded received packets.
- Condition:
( cmdVal!=0x00 && cmdStat==0x00)
- Size:
2 byte(s)
- Range:
Any 2 byte value
HCI_EXT_GetTxStatisticsDone¶
- Opcode:
0x0432
- Event Description:
This event is sent to indicate the TX statistics Reset or Read command has completed, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
- TX Statistics Command Type:
Read or Reset
- Size:
1 byte(s)
- Range:
Value
Description
0
Reset Statistics Counters
1
Read Statistics Counters
- TX OK Pkts:
Number of transmitted packets.
- Condition:
( cmdVal!=0x00 && cmdStat==0x00)
- Size:
2 byte(s)
- Range:
Any 2 byte value
- TX OK Pkts ACKed:
Number of transmitted packets that were ACKed.
- Condition:
( cmdVal!=0x00 && cmdStat==0x00)
- Size:
2 byte(s)
- Range:
Any 2 byte value
- TX Control Pkts:
Number of transmitted control packets.
- Condition:
( cmdVal!=0x00 && cmdStat==0x00)
- Size:
2 byte(s)
- Range:
Any 2 byte value
- TX Control Pkts Acked:
Number of transmitted control packets that were ACKed.
- Condition:
( cmdVal!=0x00 && cmdStat==0x00)
- Size:
2 byte(s)
- Range:
Any 2 byte value
- TX Control Pkts Acked that were ACKed:
Number of transmitted control packets ACKed that were ACKed.
- Condition:
( cmdVal!=0x00 && cmdStat==0x00)
- Size:
2 byte(s)
- Range:
Any 2 byte value
- TX Retransmissions:
Number of packets retransmissions.
- Condition:
( cmdVal!=0x00 && cmdStat==0x00)
- Size:
2 byte(s)
- Range:
Any 2 byte value
- TX Queue Finished Pkts:
Number of on Tx queue that are finished.
- Condition:
( cmdVal!=0x00 && cmdStat==0x00)
- Size:
2 byte(s)
- Range:
Any 2 byte value
HCI_EXT_GetCoexStatisticsDone¶
- Opcode:
0x0433
- Event Description:
This event is sent to indicate the COEX statistics Reset or Read command has completed, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
- COEX Statistics Command Type:
Read or Reset
- Size:
1 byte(s)
- Range:
Value
Description
0
Reset Statistics Counters
1
Read Statistics Counters
- Num of Grants:
Total number of grants (CC33xx: grants_asserted).
- Condition:
( cmdVal!=0x00 && cmdStat==0x00)
- Size:
4 byte(s)
- Range:
Any 4 byte value
- Num of Rejects:
Total number of rejects (CC33xx: grants_asserted).
- Condition:
( cmdVal!=0x00 && cmdStat==0x00)
- Size:
4 byte(s)
- Range:
Any 4 byte value
- Continuously rejects:
Total number of continuously rejected requests (CC33xx: grants_deasserted).
- Condition:
( cmdVal!=0x00 && cmdStat==0x00)
- Size:
2 byte(s)
- Range:
Any 2 byte value
- Max continuously rejects:
Max continuously rejected requests (CC33xx: request_assrted).
- Condition:
( cmdVal!=0x00 && cmdStat==0x00)
- Size:
2 byte(s)
- Range:
Any 2 byte value
HCI_EXT_SetDefaultAntennaDone¶
- Opcode:
0x0435
- Event Description:
This event is sent to indicate that a default antenna has been set, or that there was an error.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
HCI_EXT_RssiMon_RegCmdDone¶
- Opcode:
0x0436
- Event Description:
This event is sent to indicate the registration to the rssi monitor is complete.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
- Register handle:
Register callback handle to the rssi monitor
- Size:
1 byte(s)
- Range:
HCI_EXT_RssiMon_GetConfigCmdDone¶
- Opcode:
0x0437
- Event Description:
This event is sent to indicate the get rssi monitor configuration is complete.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
- Income rssi weight:
The weight of the income rssi to the rssi statistic calculation
- Size:
1 byte(s)
- Range:
- Minimum rssi samples:
The minimum number of rssi samples to get a valid rssi statistic value
- Size:
1 byte(s)
- Range:
HCI_EXT_RssiMon_GetRssiStatCmdDone¶
- Opcode:
0x0438
- Event Description:
This event is sent to indicate the get rssi satisitic value from the rssi monitor is complete.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
- Rssi statistic value:
The Rssi statistic value
- Size:
1 byte(s)
- Range:
Value
Description
0x7F
Invalid rssi value
HCI_EXT_RssiMon_ReportCB¶
- Opcode:
0x0439
- Event Description:
This event is sent to indicate a threshold happen and a callback is trigger.
Event Parameters
- Callback handle:
The callback handle that was triggered
- Size:
1 byte(s)
- Range:
- Threshold pass value:
Which kind of threshold passed
- Size:
1 byte(s)
- Range:
Value
Description
0x1
Low threshold pass
0x2
High threshold pass
0x3
Threshold back in range
HCI_EXT_LLTestModeDone¶
- Opcode:
0x0470
- Event Description:
LL Test Mode event.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
See Status Table
- Command Opcode:
- Size:
2 byte(s)
- Range:
See Command Table
CommandStatus¶
- Opcode:
0x067F
- Event Description:
The Command Status event is used to indicate that the command given by opCode parameter has been received and is being processed. If successful, an HCI vendor specific event that corresponds to the command will follow if applicable. Otherwise, no event will follow since the command was not started.
Event Parameters
- Status:
- Size:
1 byte(s)
- Range:
Value
Description
0x00
SUCCESS
0x12
bleIncorrectMode
0x02
INVALIDPARAMETER
- opCode:
opCode from the corresponding command
- Size:
2 byte(s)
- Range:
See Command Table
- length:
Payload length
- Condition:
(StatOpCode!=0x010C && StatOpCode!=0xFCF3 && StatOpCode!=0xFCF4 && StatOpCode!=0xFCF5 && StatOpCode!=0xFE84 && StatOpCode!=0xFE87 && StatOpCode!=0xFE3E && StatOpCode!=0xFE54 && StatOpCode!=0xFE56 && StatOpCode!=0xFE58 && StatOpCode!=0xFE61 && StatOpCode!=0x0682 && StatOpCode!=0xFE43 && StatOpCode!=0xFE37 && StatOpCode!=0xFE49)
- Size:
1 byte(s)
- payload:
See the corresponding command for payload parsing information if it exists.
- Condition:
(StatOpCode!=0x010C && StatOpCode!=0xFCF3 && StatOpCode!=0xFCF4 && StatOpCode!=0xFCF5 && StatOpCode!=0xFE84 && StatOpCode!=0xFE87 && StatOpCode!=0xFE3E && StatOpCode!=0xFE54 && StatOpCode!=0xFE56 && StatOpCode!=0xFE58 && StatOpCode!=0xFE61 && StatOpCode!=0x0682 && StatOpCode!=0xFE43 && StatOpCode!=0xFE37 && StatOpCode!=0xFE49)
- Size:
length byte(s)