Informational Commands — MAX BLE HCI 0.1.0 documentation

# Informational Commands

## Read Local Version Information

Read the version information values for the local Controller.

Command | OCF | Command Parameters | Return Parameters
--- | --- | --- | ---
READ_LOCAL_VER_INFO | 0x0001 |  | Status HCI_Version HCI_Subversion LMP_Version Company_Identifier LMP_Subversion

### Parameters

None.

### Return Parameters

Status, size = 1 octet
Value(s) | Parameter Description
--- | ---
0x00 | Command completed successfully
0x01 to 0xFF | Command failed.

HCI_Version, size = 1 octet
Value(s) | Parameter Description
--- | ---
0x00 to 0xFF | HCI specification version supported by the Controller.

HCI_Subversion, size = 2 octets
Value(s) | Parameter Description
--- | ---
0x0000 to 0xFFFF | Controller HCI revision, vendor-specific.

LMP_Version, size = 1 octet
Value(s) | Parameter Description
--- | ---
0x00 to 0xFF | Current LMP version supported by the Controller.

Company_Identifier, size = 2 octets
Value(s) | Parameter Description
--- | ---
0x0000 to 0xFFFF | Company ID for the manufacturer of the Controller.

LMP_Subversion, size = 2 octets
Value(s) | Parameter Description
--- | ---
0x0000 to 0xFFFF | Controller Current LMP subversion, vendor-specific.

### Event(s) Generated

- COMMAND_COMPLETE

## Read Local Supported Commands

Reads the list of HCI commands supported by the local Controller.

Command | OCF | Command Parameters | Return Parameters
--- | --- | --- | ---
READ_LOCAL_SUP_CMDS | 0x0002 |  | Status Supported_Commands

### Parameters

None.

### Return Parameters

Status, size = 1 octet
Value(s) | Parameter Description
--- | ---
0x00 | Command completed successfully.
0x01 to 0xFF | Command failed.

Supported_Commands, size = 64 octets
Value(s) | Parameter Description
--- | ---
N/A | Bit mask for each HCI command, such that when Bit X = 1: Command indicated by Bit X is supported. Bit X = 0: Command indicated by Bit X is not supported.

### Event(s) Generated

- COMMAND_COMPLETE

## Read Local Supported Features

Reads a list of features supported by the local Controller.

Command | OCF | Command Parameters | Return Parameters
--- | --- | --- | ---
READ_LOCAL_SUP_FEAT | 0x0003 |  | Status LMP_Features

### Parameters

None.

### Return Parameters

Status, size = 1 octet
Value(s) | Parameter Description
--- | ---
0x00 | Command completed successfully.
0x01 to 0xFF | Command failed.

LMP_Features, size = 8 octets
Value(s) | Parameter Description
--- | ---
N/A | Bit mask for LMP features, such that when Bit X = 1: Feature indicated by Bit X is supported Bit X = 0: Feature indicated by Bit X is not supported

### Event(s) Generated

- COMMAND_COMPLETE

## Read Buffer Size

Read the maximum data size of HCI ACL and Synchronous packets sent from the Host to the Controller.

Command | OCF | Command Parameters | Return Parameters
--- | --- | --- | ---
READ_BUF_SIZE | 0x0005 |  | Status ACL_Data_Packet_Length Synchronous_Data_Packet_Length Total_Num_ACL_Data_Packets Total_Num_Synchronous_Data_Packets

### Parameters

None.

### Return Parameters

Status, size = 1 octet
Value(s) | Parameter Description
--- | ---
0x00 | Command completed successfully.
0x01 to 0xFF | Command failed.

ACL_Data_Packet_Length, size = 2 octets
Value(s) | Parameter Description
--- | ---
0x0001 to 0xFFFF | Maximum length (in octets) of data for HCI ACL packets that the Controller can accept.

Synchronous_Data_Packet_Length, size = 1 octet
Value(s) | Parameter Description
--- | ---
0x00 to 0xFF | Maximum length (in octets) of data for HCI Synchronous packets that the Controller can accept.

Total_Num_ACL_Data_Packets, size = 2 octets
Value(s) | Parameter Description
--- | ---
0x0001 to 0xFFFF | Total number of HCI ACL packets that can be stored in the data buffers of the Controller.

Total_Num_Synchronous_Data_Packets, size = 2 octets
Value(s) | Parameter Description
--- | ---
0x0000 to 0xFFFF | Total number of HCI Synchronous Data packets that can be stored in the data buffers of the Controller.

### Event(s) Generated

- COMMAND_COMPLETE

## Read BD_ADDR

Read the Public Device Address.

Command | OCF | Command Parameters | Return Parameters
--- | --- | --- | ---
READ_BD_ADDR | 0x0009 |  | Status BD_ADDR

### Parameters

None.

### Return Parameters

Status, size = 1 octet
Value(s) | Parameter Description
--- | ---
0x00 | Command completed successfully.
0x01 to 0xFF | Command failed.

BD_ADDR, size = 6 octets
Value(s) | Parameter Description
--- | ---
N/A | BD_ADDR of the device.

### Event(s) Generated

- COMMAND_COMPLETE

## Read Local Supported Codecs

Read a list of the Bluetooth SIG approved codecs from the Controller. Return parameters are organized as such:

Status
Num_Supported_Standard_Codecs
Standard_Codec_ID[0]
Standard_Codec_Transport[0]
…
Standard_Codec_ID[i]
Standard_Codec_Transport[i]
Num_Supported_Vendor_Specific_Codecs
Vendor_Specific_Codec_ID[0]
Vendor_Specific_Codec_Transport[0]
…
Vendor_Specific_Codec_ID[k]
Vendor_Specific_Codec_Transport[k]

Command | OCF | Command Parameters | Return Parameters
--- | --- | --- | ---
READ_LOCAL_SUP_CODECS | 0x000D |  | Status Num_Supported_Standard_Codecs Standard_Codec_ID[i] Standard_Codec_Transport[i] Num_Supported_Vendor_Specific_Codecs Vendor_Specific_Codec_ID[k] Vendor_Specific_Codec_Transport[k]

### Parameters

None.

### Return Parameters

Status, size = 1 octet
Value(s) | Parameter Description
--- | ---
0x00 | Command completed successfully.
0x01 to 0xFF | Command failed.

Num_Supported_Standard_Codecs, size = 1 octet
Value(s) | Parameter Description
--- | ---
0x00 to 0xFF | Total number of codecs supported.

Standard_Codec_ID, size = 1*Num_Supported_Standard_Codecs octet
Value(s) | Parameter Description
--- | ---
0x00 to 0xFF | Codec identifier.

Standard_Codec_Transport, size = 1*Num_Supported_Standard_Codecs octet
Bit Number | Parameter Description
--- | ---
0 | Codec supported over BR/EDR ACL.
1 | Codec supported over BR/EDR SCO and eSCO.
2 | Codec supported over LE CIS.
3 | Codec supported over LE BIS.
All other bits | [Reserved for future use].

Num_Supported_Vendor_Specific_Codecs, size = 1 octet
Value(s) | Parameter Description
--- | ---
0x00 to 0xFF | Total number of vendor-specific codecs supported.

Vendor_Specific_Codec_ID, size = 4*Num_Supported_Vendor_Specific_Codecs octet
Octet Number | Parameter Description
--- | ---
0 and 1 | Company identifier.
2 and 3 | Vendor-defined codec ID.

Vendor_Specific_Codec_Transport, size = 1*Num_Supported_Vendor_Specific_Codecs octet
Bit Number | Parameter Description
--- | ---
0 | Codec supported over BR/EDR ACL.
1 | Codec supported over BR/EDR SCO and eSCO.
2 | Codec supported over LE CIS.
3 | Codec supported over LE BIS.
All other bits | [Reserved for future use].

### Event(s) Generated

- COMMAND_COMPLETE

## Read Local Supported Codec Capabilities

Read a list of capabilities supported by the controller for the indicated codec. Return parameters are organized as such:

Status
Num_Codec_Capabilities
Codec_Capability_Length[0]
Codec_Capability[0]
…
Codec_Capability_Length[i]
Codec_Capability[i]

Command | OCF | Command Parameters | Return Parameters
--- | --- | --- | ---
READ_LOCAL_SUP_CODEC_CAP | 0x000E | Codec_ID Logical_Transport_Type Direction | Status Num_Codec_Capabilities Codec_Capability_Length[i] Codec_Capability[i]

### Parameters

Codec_ID, size = 5 octets
Octet Number | Parameter Description
--- | ---
0 | Codec ID, or 0xFF for vendor-specific codec.
1 to 2 | Company ID, ignored if octet 0 is not 0xFF.
3 to 4 | Vendor-defined codec ID, ignored if octet 0 is not 0xFF.

Logical_Transport_Type, size = 1 octet
Value(s) | Parameter Description
--- | ---
0x00 | BR/EDR ACL
0x01 | BR/EDR SCO or eSCO
0x02 | LE CIS
0x03 | LE BIS
All other values | [Reserved for future use].

Direction, size = 1 octet
Value(s) | Parameter Description
--- | ---
0x00 | Input (Host to Controller)
0x01 | Output (Controller to Host)

### Return Parameters

Status, size = 1 octet
Value(s) | Parameter Description
--- | ---
0x00 | Command completed successfully.
0x01 to 0xFF | Command failed.

Num_Codec_Capabilities, size = 1 octet
Value(s) | Parameter Description
--- | ---
0x00 to 0xFF | Number of codec capabilities returned.

Codec_Capability_Length, size = 1*Num_Codec_Capabilities octet
Value(s) | Parameter Description
--- | ---
0x00 to 0xFF | Length of the corresponding Codec_Capability field.

Codec_Capability, size = SUM(Codec_Capability_Length) octets
Value(s) | Parameter Description
--- | ---
Variable | Codec-specific capability data.

### Event(s) Generated

- COMMAND_COMPLETE

## Read Local Supported Controller Delay

Read the range of supported Controller delays for the indicated codec.

Command | OCF | Command Parameters | Return Parameters
--- | --- | --- | ---
READ_LOCAL_SUP_CONTROLLER_DLY | 0x000F | Codec_ID Logical_Transport_Type Direction Codec_Configuration_Length Codec_Configuration | Status Min_Controller_Delay Max_Controller_Delay

### Parameters

Codec_ID, size = 5 octets
Octet Number | Parameter Description
--- | ---
0 | Codec ID, or 0xFF for vendor-specific codec.
1 to 2 | Company ID, ignored if octet 0 is not 0xFF.
3 to 4 | Vendor-defined codec ID, ignored if octet 0 is not 0xFF.

Logical_Transport_Type, size = 1 octet
Value(s) | Parameter Description
--- | ---
0x00 | BR/EDR ACL
0x01 | BR/EDR SCO or eSCO
0x02 | LE CIS
0x03 | LE BIS
All other values | [Reserved for future use].

Direction, size = 1 octet
Value(s) | Parameter Description
--- | ---
0x00 | Input (Host to Controller)
0x01 | Output (Controller to Host)

Codec_Configuration_Length, size = 1 octet
Value | Parameter Description
--- | ---
0x00 to 0xFF | Length of codec configuration.

Codec_Configuration, size = Codec_Configuration_Length octets
Value | Parameter Description
--- | ---
Variable | Codec-specific configuration data.

### Return Parameters

Status, size = 1 octet
Value(s) | Parameter Description
--- | ---
0x00 | Command completed successfully.
0x01 to 0xFF | Command failed.

Min_Controller_Delay, size = 3 octets
Values(s) | Parameter Description
--- | ---
0x000000 to 0x3D0900 | Minimum Controller delay in microseconds. Time range: 0s to 4s

Max_Controller_Delay, size = 3 octets
Value(s) | Parameter Description
--- | ---
0x000000 to 0x3D0900 | Maximum Controller delay in microseconds Time range: 0s to 4s

### Event(s) Generated

- COMMAND_COMPLETE