Controller Commands
Set Event Mask
Control which events are generated by the HCI for the host. Setting a bit to 1 enables the corresponding event.
| Command | OCF | Command Parameters | Return Parameters | 
|---|---|---|---|
| SET_EVENT_MASK | 0x0001 | Event_Mask | 
Parameters
| Bit | Event | 
|---|---|
| 0 | Inquiry Complete | 
| 1 | Inquiry Result | 
| 2 | Connection Complete | 
| 3 | Connection Request | 
| 4 | Disconnection Complete | 
| 5 | Authentication Complete | 
| 6 | Remote Name Request Complete | 
| 7 | Encryption Change | 
| 8 | Change Connection Link Key Complete | 
| 9 | Link Key Type Changed | 
| 10 | Read Remote Supported Features Complete | 
| 11 | Read Remote Version Information Complete | 
| 12 | QoS Setup Complete | 
| 15 | Hardware Error | 
| 16 | Flush Occured | 
| 17 | Role Change | 
| 19 | Mode Change | 
| 20 | Return Link Keys | 
| 21 | PIN Code Request | 
| 22 | Link Key Request | 
| 23 | Link Key Notification | 
| 24 | Loopback Command | 
| 25 | Data Buffer Overflow | 
| 26 | Max Slots Change | 
| 27 | Read Clock Offset Complete | 
| 28 | Connection Packet Type Changed | 
| 29 | QoS Violation | 
| 30 | [Previously used.] | 
| 31 | Page Scan Repitition Mode Change | 
| 32 | Flow Specification Complete | 
| 33 | Inquiry Result with RSSI | 
| 34 | Read Remote Extended Features Complete | 
| 43 | Synchronous Connection Complete | 
| 44 | Synchronous Connection Changed | 
| 45 | Sniff Subrating | 
| 46 | Extended Inquiry Result | 
| 47 | Encryption Key Refresh Complete | 
| 48 | IO Capability Request | 
| 49 | IO Capability Response | 
| 50 | User Confirmation Request | 
| 51 | User Passkey Request | 
| 52 | Remote OOB Data Request | 
| 53 | Simple Pairing Complete | 
| 54 | [Reserved for future use]. | 
| 55 | Link Supervision Timeout Changed | 
| 56 | Enhanced Flush Complete | 
| 57 | [Reserved for future use]. | 
| 58 | User Passkey Notification | 
| 59 | Keypress Notification | 
| 60 | Remote Host Supported Features Notification | 
| 61 | LE Meta | 
| All other bits | [Reserved for future use]. | 
Return Parameters
| Value(s) | Parameter Description | 
|---|---|
| 0x00 | Command completed successfully. | 
| 0x01 to 0xFF | Command failed. | 
Event(s) Generated
- COMMAND_COMPLETE 
Reset
Reset controller/link layer.
| Command | OCF | Command Parameters | Return Parameters | 
|---|---|---|---|
| RESET | 0x0003 | Status | 
Parameters
None.
Return Parameters
| Value(s) | Parameter Description | 
|---|---|
| 0x00 | Command completed successfully. | 
| 0x01 to 0xFF | Command failed. | 
Event(s) Generated
- COMMAND_COMPLETE 
Read TX Power Level
Read TX power level for a connection.
| Command | OCF | Command Parameters | Return Parameters | 
|---|---|---|---|
| READ_TX_PWR_LVL | 0x002D | Connection_Handle Type | Status Connection_Handle TX_Power_Level | 
Parameters
| Value(s) | Parameter Description | 
|---|---|
| 0x0000 to 0x0EFF | Indicates which connection to retrieve the TX power for. | 
| Value(s) | Parameter Description | 
|---|---|
| 0x00 | Read current TX power level. | 
| 0x1 | Read maximum TX power level. | 
| All other values | [Reserved for future use]. | 
Return Parameters
| Value(s) | Parameter Description | 
|---|---|
| 0x00 | Command completed successfully. | 
| 0x01 to 0xFF | Command failed. | 
| Value(s) | Parameter Description | 
|---|---|
| 0x0000 to 0x0EFF | Connection handle | 
| Value(s) | Parameter Description | 
|---|---|
| 0x00 to 0xFF | TX power level (signed value). Range: -30dBm to 20dBm | 
Event(s) Generated
- COMMAND_COMPLETE 
Set Controller to Host Flow Control
Turn flow control on/off for data sent from the Controller to the Host.
| Command | OCF | Command Parameters | Return Parameters | 
|---|---|---|---|
| SET_CONTROLLER_TO_HOST_FC | 0x0031 | Flow_Control_Enable | Status | 
Parameters
| Value(s) | Parameter Description | 
|---|---|
| 0x00 | Flow control off. | 
| 0x01 | Flow control on for HCI ACL packets and off for HCI Synchronous packets. | 
| 0x02 | Flow control off for HCI ACL packets and on for HCI Synchronous packets. | 
| 0x03 | Flow control on for all packets. | 
| All other values | [Reserved for future use]. | 
Return Parameters
| Value(s) | Parameter Description | 
|---|---|
| 0x00 | Command completed successfully. | 
| 0x01 to 0xFF | Command failed. | 
Event(s) Generated
- COMMAND_COMPLETE 
Host Buffer Size
Notify the Controller about the maximum data size of HCI ACL and Synchronous packets sent from the Controller to the Host.
| Command | OCF | Command Parameters | Return Parameters | 
|---|---|---|---|
| HOST_BUFFER_SIZE | 0x0033 | Host_ACL_Data_Packet_Length Host_Synchronous_Data_Packet_Length Host_Total_Num_ACL_Data_Packets Host_Total_Num_Synchronous_Data_Packets | Status | 
Parameters
| Value(s) | Parameter Description | 
|---|---|
| 0x0000 to 0xFFFF | Maximum length (in octets) of data for HCI ACL packets that the Host can accept. | 
| Value(s) | Parameter Description | 
|---|---|
| 0x00 to 0xFF | Maximum length (in octets) of data for HCI Synchronous packets that the Host can accept. | 
| Value(s) | Parameter Description | 
|---|---|
| 0x0000 to 0xFFFF | Total number of HCI ACL packets that can be stored in the data buffers of the Host. | 
| Values(s) | Parameter Description | 
|---|---|
| 0x0000 to 0xFFFF | Total number of HCI Synchronous packets that can be stored in the data buffers of the Host. | 
Return Parameters
| Value(s) | Parameter Description | 
|---|---|
| 0x00 | Command completed successfully. | 
| 0x01 to 0xFF | Command failed. | 
Event(s) Generated
- COMMAND_COMPLETE 
Host Number of Completed Packets
Notify the Controller about the number of HCI packets that have been completed for each connection since the previous call of this command.
| Command | OCF | Command Parameters | Return Parameters | 
|---|---|---|---|
| HOST_NUM_CMPL_PKTS | 0x0035 | Num_Handles Connection_Handle[i] Host_Num_Completed_Packets[i] | 
Parameters
| Value(s) | Parameter Description | 
|---|---|
| 0x00 to 0xFF | Number of Connection_Handle/Host_Num_Completed_Packets parameter pairs contained in this command. | 
| Value(s) | Parameter Description | 
|---|---|
| 0x0000 to 0x0EFF | Connection handle for which the corresponding number of packets has been completed. | 
| Values(s) | Parameter Description | 
|---|---|
| 0x0000 to 0xFFFF | Number of packets that have been completed for the corresponding connection handle. | 
Return Parameters
None.
Event(s) Generated
- COMMAND_COMPLETE (if command contains invalid parameters) 
Set Event Mask Page 2
Control which events are generated by the HCI for the Host (continued from SET_EVENT_MASK). Setting a bit to 1 enables the corresponding event.
| Command | OCF | Command Parameters | Return Parameters | 
|---|---|---|---|
| SET_EVENT_MASK_PAGE2 | 0x0063 | Event_Mask_Page_2 | Status | 
Parameters
| Bit | Event | 
|---|---|
| 0 | [Previously used]. | 
| 1 | [Previously used]. | 
| 2 | [Previously used]. | 
| 3 | [Previously used]. | 
| 4 | [Previously used]. | 
| 5 | [Previously used]. | 
| 6 | [Previously used]. | 
| 7 | [Previously used]. | 
| 8 | Number of Completed Data Blocks | 
| 9 | [Previously used]. | 
| 10 | [Previously used]. | 
| 11 | [Previously used]. | 
| 12 | [Previously used]. | 
| 13 | [Previously used]. | 
| 14 | Triggered Clock Capture | 
| 15 | Synchronization Train Complete | 
| 16 | Synchronization Train Received | 
| 17 | Connectionless Peripheral Broadcast Received | 
| 18 | Connectionless Peripheral Broadcast Timeout | 
| 19 | Truncated Page Complete | 
| 20 | Peripheral Page Response Timeout | 
| 21 | Connectionless Peripheral Broadcast Channel Map Change | 
| 22 | Inquiry Response Notification | 
| 23 | Authenticated Payload Timeout Expired | 
| 24 | SAM Status Change | 
| 25 | Encryption Change (v2) | 
| 60 to 63 | [Reserved for future use]. | 
Return Parameters
| Value(s) | Parameter Description | 
|---|---|
| 0x00 | Command completed successfully. | 
| 0x01 to 0xFF | Command failed. | 
Event(s) Generated
- COMMAND_COMPLETE 
Read Authenticated Payload Timeout
Read the authenticated payload timeout for a connection.
| Command | OCF | Command Parameters | Return Parameters | 
|---|---|---|---|
| READ_AUTH_PAYLOAD_TO | 0x007B | Connection_Handle | Status Connection_Handle Authenticated_Payload_Timeout | 
Parameters
| Value(s) | Parameter Description | 
|---|---|
| 0x0000 to 0x0EFF | Indicates which connection to retrieve the authenticated payload timeout for. | 
Return Parameters
| Value(s) | Parameter Description | 
|---|---|
| 0x00 | Command completed successfully. | 
| 0x01 to 0xFF | Command failed. | 
| Value(s) | Parameter Description | 
|---|---|
| 0x0000 to 0x0EFF | Connection handle | 
| Value(s) | Parameter Description | 
|---|---|
| 0x0001 to 0xFFFF | Maximum amount of time specified between packed authenticated by an MIC. Time = value * 10ms Time Range = 10ms to 655350ms | 
Event(s) Generated
- COMMAND_COMPLETE 
Write Authenticated Payload Timeout
Write the authenticated payload timeout value for a connection.
| Command | OCF | Command Parameters | Return Parameters | 
|---|---|---|---|
| WRITE_AUTH_PAYLOAD_TO | 0x007C | Connection_Handle Authenticated_Payload_Timeout | Status Connection_Handle | 
Parameters
| Value(s) | Parameter Description | 
|---|---|
| 0x0000 to 0x0EFF | Indicates which connection to write the authenticated payload timeout for. | 
| Value(s) | Parameter Description | 
|---|---|
| 0x0001 to 0xFFFF | Maximum amount of time specified between packets authenticated by a valic MIC. Time = value * 10ms Time Range = 10ms to 655350ms | 
Return Parameters
| Value(s) | Parameter Description | 
|---|---|
| 0x00 | Command completed successfully. | 
| 0x01 to 0xFF | Command failed. | 
| Value(s) | Parameter Description | 
|---|---|
| 0x0000 to 0x0EFF | Connection handle. | 
Event(s) Generated
- COMMAND_COMPLETE 
Configure Data Path
Configure the data transport path in between the Controller and the Host in the indicated direction.
| Command | OCF | Command Parameters | Return Parameters | 
|---|---|---|---|
| CONFIG_DATA_PATH | 0x0083 | Data_Path_Direction Data_Path_ID Vendor_Specific_Config_Length Vendor_Specific_Config | Status | 
Parameters
| Value(s) | Parameter Description | 
|---|---|
| 0x00 | Configure input path (Host to Controller). | 
| 0x01 | Configure output path (Controller to Host). | 
| All other values | [Reserved for future use]. | 
| Value(s) | Parameter Description | 
|---|---|
| 0x00 | [Reserved for future use]. | 
| 0x01 to 0xFE | Logic channel number, vendor-specific. | 
| 0xFF | [Reserved for future use]. | 
| Value(s) | Parameter Description | 
|---|---|
| 0x00 to 0xFF | Length of the vendor-specific configuration data. | 
| Values(s) | Parameter Description | 
|---|---|
| Variable | Vendor-specific configuration for the indicated data path. | 
Return Parameters
| Value(s) | Parameter Description | 
|---|---|
| 0x00 | Command completed successfully. | 
| 0x01 to 0xFF | Command failed. | 
Event(s) Generated
- COMMAND_COMPLETE