fuchsia.hardware.bluetooth

用于与蓝牙供应商和传输驱动程序交互的 API。

已添加:NEXT

协议

模拟器

fuchsia.hardware.bluetooth/emulator.fidl 中定义

用于模拟支持标准蓝牙 HCI 的蓝牙控制器的协议。 表示 bt-emulator 设备协议。一个 bt-emulator 设备用于配置和 发布虚假的 bt-hci 设备。

AddBredrPeer

插入要由此控制器模拟的新 BR/EDR 对等设备。注册后, 可以使用 peer 句柄来驱动和观察虚假对等方的特征。

系统将发送回复以确认已创建虚构对等设备。如果对等节点 (例如,由于 parameters 中缺少必填字段,或由于包含 地址)将关闭 peer 句柄,并且系统将显示错误回复 。

对等方将出现在查询结果中,并根据其 配置(只要 peer 渠道处于打开状态)。模拟器停止模拟此对等设备 何时关闭,这使其不再处于可发现状态,且不对任何 请求。

请求

名称类型
payload PeerParameters

响应

名称类型
payload Emulator_AddBredrPeer_Result

AddLowEnergyPeer

插入要由此控制器模拟的新 LE 对等设备。注册后, 可以使用 peer 句柄来驱动和观察虚假对等方的特征。

系统将发送回复以确认已创建虚构对等设备。如果对等节点 (例如,由于 parameters 中缺少必填字段,或由于包含 地址)将关闭 peer 句柄,并且系统将显示错误回复 。

对等方将显示在广告报告中,并根据其 配置(只要 peer 渠道处于打开状态)。模拟器停止模拟此对等设备 何时关闭,这使其不再处于可发现状态,且不对任何 请求。

请求

名称类型
payload PeerParameters

响应

名称类型
payload Emulator_AddLowEnergyPeer_Result

发布

使用提供的 settings 发布 bt-hci 设备。每个模拟器实例只能 管理一台 bt-hci 设备。返回模拟器。HCI_ALREADY_PUBLISHED如果设备具有 已经发布。

请求

名称类型
payload EmulatorSettings

响应

名称类型
payload Emulator_Publish_Result

WatchControllerParameters

控制器参数状态的挂起 get 模式在状态 更改。

请求

<空>

响应

名称类型
payload Emulator_WatchControllerParameters_Result

WatchLeScanStates

返回链路层 LE 扫描过程的最新状态向量。 此方法会在自上次调用以来至少发生一次状态更改时返回 该方法的另一个示例。

在给定时间,对此方法的多次调用可能会未完成。系统将在 在扫描状态发生变化时立即做出响应。

请求

<空>

响应

名称类型
payload Emulator_WatchLeScanStates_Result

WatchLegacyAdvertisingStates

返回链路层 LE 旧版的最低状态到最新状态的矢量 。此方法会在至少发生一次状态变化时返回 自此客户端上次调用该方法以来。

在给定时间,对此方法的多次调用可能会未完成。系统将在 在扫描状态发生变化时立即做出响应。

请求

<空>

响应

名称类型
payload Emulator_WatchLegacyAdvertisingStates_Result

HCI

fuchsia.hardware.bluetooth/hci.fidl 中定义

ConfigureSco

使用指定的参数为 SCO 连接配置 HCI。 在 SCO 通道上发送/接收数据之前,必须调用此方法。 如果当前供应商或传输不支持 SCO,则返回 ZX_ERR_NOT_SUPPORTED

请求

名称类型
coding_format ScoCodingFormat
encoding ScoEncoding
sample_rate ScoSampleRate

响应

名称类型
payload Hci_ConfigureSco_Result

OpenAclDataChannel

打开双向 HCI ACL 数据通道。 如果渠道已经打开,则返回 ZX_ERR_ALREADY_BOUND。

请求

名称类型
channel handle<channel>

响应

名称类型
payload Hci_OpenAclDataChannel_Result

OpenCommandChannel

打开用于发送 HCI 命令的双向 HCI 命令通道,并 来接收事件数据包若渠道被触发,则返回 ZX_ERR_ALREADY_BOUND 已打开。

请求

名称类型
channel handle<channel>

响应

名称类型
payload Hci_OpenCommandChannel_Result

OpenIsoDataChannel

在提供的句柄上打开一个通道,用于发送和接收等时数据包。 如果打开 hci 渠道时出错或 hci 出现,则 Zircon 渠道会关闭。 频道已与另一个 zircon 通道的标识名相关联。 如果当前供应商或传输系统不支持 ISO,则返回 ZX_ERR_NOT_SUPPORTED 如果渠道已经打开,则返回 ZX_ERR_ALREADY_BOUND。

请求

名称类型
channel handle<channel>

响应

名称类型
payload Hci_OpenIsoDataChannel_Result

OpenScoDataChannel

在提供的标识名上打开一个 SCO 频道。Zircon 通道 会在打开 hci 渠道出错或 hci 时关闭 频道已与另一个 zircon 通道的标识名相关联。 如果当前供应商或传输不支持 SCO,则返回 ZX_ERR_NOT_SUPPORTED 如果渠道已经打开,则返回 ZX_ERR_ALREADY_BOUND。

请求

名称类型
channel handle<channel>

响应

名称类型
payload Hci_OpenScoDataChannel_Result

OpenSnoopChannel

打开仅限输出的渠道,用于监控 HCI 流量。 每条消息的格式为:[1 个八位字节标志] [n 个八位字节载荷] 标志八位字节是一个定义了以下值的位字段:

  • 0x00:载荷表示从主机发送到 控制器。
  • 0x01:载荷表示控制器发送的事件数据包。 如果渠道已经打开,则返回 ZX_ERR_ALREADY_BOUND。

请求

名称类型
channel handle<channel>

响应

名称类型
payload Hci_OpenSnoopChannel_Result

ResetSco

释放活跃 SCO 连接占用的资源。必须调用 当 SCO 连接关闭时触发。 如果当前供应商或传输不支持 SCO,则返回 ZX_ERR_NOT_SUPPORTED

请求

<空>

响应

名称类型
payload Hci_ResetSco_Result

HciTransport

fuchsia.hardware.bluetooth/hci.fidl 中定义

AckReceive

请求

<空>

ConfigureSco

建立 SCO 连接。一次只能配置 1 个 SCO 连接。

请求

名称类型
payload HciTransportConfigureScoRequest

OnReceive

确认之前可以发送多个数据包事件。每个数据包都必须 已向 AckReceive 确认。服务器应限制待处理确认的数量 以免频道溢出建议最多添加 10 个未确认的数据包。如果命令或 客户端收到 SCO 数据包后,客户端应关闭协议。

响应

名称类型
payload ReceivedPacket

发送

多个“Send”可同时处于待处理状态。 最好限制待处理调用的数量以避免溢出。 建议最多添加 10 个待处理的通话。 如果服务器收到事件或 SCO 数据包,服务器应关闭该协议。

请求

名称类型
payload SentPacket

响应

名称类型
payload HciTransport_Send_Result

对等节点

fuchsia.hardware.bluetooth/emulator.fidl 中定义

用于驱动虚构对等设备状态的协议。

AssignConnectionStatus

为控制器分配 HCI status,以响应连接请求。 适用于所有连续的 HCI_Create_Connection 和 HCI_LE_Create_Connection 命令。通过 以空响应确认。

请求

名称类型
status HciError

响应

名称类型
payload Peer_AssignConnectionStatus_Result

EmulateDisconnectionComplete

模拟断开连接。如果对等设备未连接,则不执行任何操作。

请求

<空>

EmulateLeConnectionComplete

模拟 LE 连接事件。如果对等端已连接,则不执行任何操作。通过 role 参数用于确定链路层连接角色。

请求

名称类型
role fuchsia.bluetooth/ConnectionRole

SetDeviceClass

设置在设备运行期间针对此对等设备的查询响应中报告的设备类别 发现。如果对等端不是 BR/EDR,服务器将关闭并显示 ZX_ERR_NOT_SUPPORTED 墓碑。

请求

名称类型
value uint32

响应

名称类型
payload Peer_SetDeviceClass_Result

SetLeAdvertisement

请求

名称类型
payload PeerSetLeAdvertisementRequest

响应

名称类型
payload Peer_SetLeAdvertisement_Result

SetServiceDefinitions

设置可通过服务发现协议发现的对等方服务。如果 对等端不是 BR/EDR,服务器将以 ZX_ERR_NOT_SUPPORTED 墓碑关闭。

请求

名称类型
service_definitions vector<fuchsia.bluetooth.bredr/ServiceDefinition>[32]

响应

名称类型
payload Peer_SetServiceDefinitions_Result

WatchConnectionStates

返回最少到最近的控制器连接状态的矢量。 此方法会在自上次调用该方法以来发生了状态更改时返回 方法。

在给定时间,对此方法的多次调用可能会未完成。系统将在 在扫描状态发生变化时立即做出响应。

请求

<空>

响应

名称类型
payload Peer_WatchConnectionStates_Result

ScoConnection

fuchsia.hardware.bluetooth/hci.fidl 中定义

AckReceive

请求

<空>

OnReceive

确认之前可以发送多个数据包事件。每个数据包都必须 已向 AckReceive 确认。服务器应限制待处理确认的数量 以免频道溢出建议最多添加 10 个未确认的数据包。

响应

名称类型
packet vector<uint8>[258]

发送

多个“Send”可同时处于待处理状态。 最好限制待处理调用的数量以避免溢出。 建议最多添加 10 个待处理的通话。

请求

名称类型
packet vector<uint8>[258]

响应

名称类型
payload ScoConnection_Send_Result

停止

服务器会在收到 Stop 后关闭协议。这对于 同步(例如,在配置另一个 ScoConnection 之前)。

请求

<空>

信息收集

fuchsia.hardware.bluetooth/hci.fidl 中定义

AcknowledgePackets

最多已收到 sequence 个确认数据包。

请求

名称类型
sequence uint64

OnDroppedPackets

在收到 AcknowledgePackets 后,如果数据包在下列时间之后被丢弃,服务器会发送一次 最后 OnObservePacket

响应

名称类型
payload SnoopOnDroppedPacketsRequest

OnObservePacket

数据包已传输/接收。在 出现故障。如果客户端等待时间过长,允许服务器丢弃数据包 确认数据包。

响应

名称类型
payload SnoopOnObservePacketRequest

供应商

fuchsia.hardware.bluetooth/vendor.fidl 中定义

BtVendor 协议可由供应商驱动程序实现,以支持功能询问 和供应商命令编码

EncodeCommand

对供应商 HCI 命令进行编码并返回编码的命令。 如需了解可能的命令和参数,请参阅 VendorCommand

  • 错误 ZX_ERR_NOT_SUPPORTED 不支持该命令。
  • error ZX_ERR_INVALID_ARGS 命令的参数无效。

请求

名称类型
payload VendorCommand

响应

名称类型
payload Vendor_EncodeCommand_Result

GetFeatures

返回此控制器支持的供应商功能。

请求

<空>

响应

名称类型
payload Vendor_GetFeatures_Result

OpenHci

已弃用。 打开控制器的 HCI 协议。在 已初始化。 如果已经连接其他客户端,则返回 ALREADY_BOUND。

请求

<空>

响应

名称类型
payload Vendor_OpenHci_Result

OpenHciTransport

打开控制器的 HciTransport 协议。在 已初始化。 如果已经连接其他客户端,则返回 ALREADY_BOUND。

请求

<空>

响应

名称类型
payload Vendor_OpenHciTransport_Result

OpenSnoop

打开传输驱动程序的 Snoop 协议。 如果已经连接其他客户端,则返回 ALREADY_BOUND。

请求

<空>

响应

名称类型
payload Vendor_OpenSnoop_Result

VirtualController

fuchsia.hardware.bluetooth/virtual.fidl 中定义

用于生成虚拟蓝牙设备。

CreateEmulator

创建子设备,并返回创建的子设备的名称。

请求

<空>

响应

名称类型
payload VirtualController_CreateEmulator_Result

CreateLoopbackDevice

创建使用 BT HCI UART 的虚拟蓝牙串行设备 协议。 如果出现错误,Zircon 通道将关闭。

请求

名称类型
payload VirtualControllerCreateLoopbackDeviceRequest

结构体

Emulator_AddBredrPeer_Response

fuchsia.hardware.bluetooth/emulator.fidl 中定义

<空>

Emulator_AddLowEnergyPeer_Response

fuchsia.hardware.bluetooth/emulator.fidl 中定义

<空>

Emulator_Publish_Response

fuchsia.hardware.bluetooth/emulator.fidl 中定义

<空>

Emulator_WatchLeScanStates_Response

fuchsia.hardware.bluetooth/emulator.fidl 中定义

字段类型说明默认
states vector<LeScanState> 无默认设置

Emulator_WatchLegacyAdvertisingStates_Response

fuchsia.hardware.bluetooth/emulator.fidl 中定义

字段类型说明默认
states vector<LegacyAdvertisingState> 无默认设置

HciTransport_Send_Response

fuchsia.hardware.bluetooth/hci.fidl 中定义

<空>

Hci_ConfigureSco_Response

fuchsia.hardware.bluetooth/hci.fidl 中定义

<空>

Hci_OpenAclDataChannel_Response

fuchsia.hardware.bluetooth/hci.fidl 中定义

<空>

Hci_OpenCommandChannel_Response

fuchsia.hardware.bluetooth/hci.fidl 中定义

<空>

Hci_OpenIsoDataChannel_Response

fuchsia.hardware.bluetooth/hci.fidl 中定义

<空>

Hci_OpenScoDataChannel_Response

fuchsia.hardware.bluetooth/hci.fidl 中定义

<空>

Hci_OpenSnoopChannel_Response

fuchsia.hardware.bluetooth/hci.fidl 中定义

<空>

Hci_ResetSco_Response

fuchsia.hardware.bluetooth/hci.fidl 中定义

<空>

Peer_AssignConnectionStatus_Response

fuchsia.hardware.bluetooth/emulator.fidl 中定义

<空>

Peer_SetDeviceClass_Response

fuchsia.hardware.bluetooth/emulator.fidl 中定义

<空>

Peer_SetLeAdvertisement_Response

fuchsia.hardware.bluetooth/emulator.fidl 中定义

<空>

Peer_SetServiceDefinitions_Response

fuchsia.hardware.bluetooth/emulator.fidl 中定义

<空>

Peer_WatchConnectionStates_Response

fuchsia.hardware.bluetooth/emulator.fidl 中定义

字段类型说明默认
states vector<ConnectionState> 无默认设置

ScoConnection_Send_Response

fuchsia.hardware.bluetooth/hci.fidl 中定义

<空>

ScoPacket

fuchsia.hardware.bluetooth/hci.fidl 中定义

字段类型说明默认
packet vector<uint8>[258] 无默认设置

Vendor_EncodeCommand_Response

fuchsia.hardware.bluetooth/vendor.fidl 中定义

字段类型说明默认
encoded vector<uint8>[16] 无默认设置

Vendor_OpenHciTransport_Response 资源

fuchsia.hardware.bluetooth/vendor.fidl 中定义

字段类型说明默认
channel HciTransport 无默认设置

Vendor_OpenHci_Response 资源

fuchsia.hardware.bluetooth/vendor.fidl 中定义

字段类型说明默认
channel Hci 无默认设置

Vendor_OpenSnoop_Response 资源

fuchsia.hardware.bluetooth/vendor.fidl 中定义

字段类型说明默认
channel Snoop 无默认设置

VirtualController_CreateEmulator_Response

fuchsia.hardware.bluetooth/virtual.fidl 中定义

字段类型说明默认
name string[32]? 无默认设置

精英

ConnectionState 柔性环境

类型:uint32

fuchsia.hardware.bluetooth/emulator.fidl 中定义

名称说明
1
2

EmulatorError flexible

类型:uint32

fuchsia.hardware.bluetooth/emulator.fidl 中定义

可为模拟器范围的配置生成的错误代码。

名称说明
1
2

EmulatorPeerError flexible

类型:uint32

fuchsia.hardware.bluetooth/emulator.fidl 中定义

为操纵虚构对等体的函数生成的错误代码。

名称说明
1
2
3

HciConfig 柔性

类型:uint32

fuchsia.hardware.bluetooth/emulator.fidl 中定义

预设 HCI 配置。

名称说明
1

在 LMP 功能中同时支持 BR/EDR 和 LE。

2

将支持的功能和 HCI 命令限制为仅 LE 所需的功能和 HCI 命令。

HciError 柔性

类型:uint8

fuchsia.hardware.bluetooth/emulator.fidl 中定义

定义了蓝牙控制器可报告的 HCI 协议错误代码列表。这些 值取自蓝牙核心规范 v5.4 第 2 卷,D 部分,第 1.3 节

名称说明
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71

LegacyAdvertisingType 严格

类型:uint8

fuchsia.hardware.bluetooth/emulator.fidl 中定义

蓝牙核心规范 v5.4,第 4 卷,E 部分,7.8.5 中的 LE 旧版广告类型。

名称说明
0

可连接且可扫描。

1

可连接、高占空比、定向。

2

可扫描,未定向。

3

不可连接、未定向

4

扫描回复

PacketDirection 严格

类型:uint32

fuchsia.hardware.bluetooth/hci.fidl 中定义

名称说明
1
2

ScoCodingFormat 柔性

类型:uint8

fuchsia.hardware.bluetooth/hci.fidl 中定义

名称说明
1
2

ScoEncoding 柔性环境

类型:uint8

fuchsia.hardware.bluetooth/hci.fidl 中定义

名称说明
1
2

ScoSampleRate 柔性环境

类型:uint8

fuchsia.hardware.bluetooth/hci.fidl 中定义

名称说明
1
2

VendorAclDirection 柔性环境

类型:uint8

fuchsia.hardware.bluetooth/vendor.fidl 中定义

名称说明
1
2

VendorAclPriority 柔性

类型:uint8

fuchsia.hardware.bluetooth/vendor.fidl 中定义

名称说明
1
2

表格

AclBufferSettings

fuchsia.hardware.bluetooth/emulator.fidl 中定义

HCI ACL 数据流控制参数。

Ordinal字段类型说明
data_packet_length uint16

ACL 帧 MTU(以字节为单位)。

total_num_data_packets uint8

控制器可以缓冲的 ACL 帧数上限。

AdvertisingData

fuchsia.hardware.bluetooth/emulator.fidl 中定义

Ordinal字段类型说明
data vector<uint8>[31]

AndroidVendorSupport

fuchsia.hardware.bluetooth/vendor.fidl 中定义

指明是否支持 Android 供应商扩展 如果为空,则表示支持 Android HCI 扩展,但版本未指定。 应使用 LE 获取供应商功能命令检测版本。

Ordinal字段类型说明
major_version uint8
minor_version uint8

ControllerParameters

fuchsia.hardware.bluetooth/emulator.fidl 中定义

内含蓝牙控制器和基带参数,可由主机写入,但无法写入 属于特定程序类别(如下文中所定义)。

Ordinal字段类型说明
local_name string[248]

用于链路层名称发现过程的本地名称。此参数仅适用于 用于 BR/EDR 传输。在 LE 中,本地名称以广告参数的形式提供, 。

device_class fuchsia.bluetooth/DeviceClass

本地“设备类别”用于 BR/EDR 问询程序中。

EmulatorSettings

fuchsia.hardware.bluetooth/emulator.fidl 中定义

模拟器使用的控制器设置。

Ordinal字段类型说明
address fuchsia.bluetooth/Address

BD_ADDR (BR/EDR) 或 LE 公共设备地址。默认值为“00:00:00:00:00:00”。

hci_config HciConfig

支持的 HCI 命令配置。默认值为“DUAL_MODE”。

extended_advertising bool

如果支持 5.0 扩展广告功能,则为 true。默认值为“false”。

acl_buffer_settings AclBufferSettings

ACL-U 数据缓冲区设置。默认值为 data_packet_length [数据数据包长度]:1024 total_num_data_packets:5 如果 hci_config 设置为 DUAL_MODE。否则,默认为 null。

le_acl_buffer_settings AclBufferSettings

LE-U ACL 数据缓冲区设置。默认值为 data_packet_length [数据数据包长度]:251 total_num_data_packets:5

HciTransportConfigureScoRequest 资源

fuchsia.hardware.bluetooth/hci.fidl 中定义

Ordinal字段类型说明
coding_format ScoCodingFormat

必填。

encoding ScoEncoding

必填。

sample_rate ScoSampleRate

必填。

connection server_end<ScoConnection>

必填。

LeScanState

fuchsia.hardware.bluetooth/emulator.fidl 中定义

表示 LE 扫描状态。如果已配置扫描参数,则这些字段会显示。

Ordinal字段类型说明
enabled bool

如果已启用扫描,则为 true。

active bool

如果已启用扫描,则为 true。否则,扫描将处于被动状态。

interval uint16

扫描间隔和窗口参数。这些是在蓝牙控制器中定义的 “timeslices”其中 1 个切片 = 0.625 毫秒。有效值范围为 0x4(2.5 毫秒)至 0x4000 (10.24) ms)。

window uint16
filter_duplicates bool

如果已启用重复过滤,则为“true”。

address_type fuchsia.bluetooth/AddressType

使用的本地设备地址的类型。

LegacyAdvertisingState

fuchsia.hardware.bluetooth/emulator.fidl 中定义

旧版广告的控制器参数。

Ordinal字段类型说明
enabled bool

如果已使用 HCI_LE_Set_Advertising_Enable 命令启用广告,则为 True。 此字段始终存在。

type LegacyAdvertisingType

最近配置的广告类型。此字段始终存在。默认值为 fuchsia.hardware.bluetooth/LegacyAdvertisingType.ADV_IND.

address_type fuchsia.bluetooth/AddressType

用于通告的 LE 地址类型。此字段始终存在。默认值为 fuchsia.bluetooth/AddressType.PUBLIC.

interval_min uint16

主机指定的通告间隔范围参数。仅在已配置时显示。

interval_max uint16
advertising_data AdvertisingData

任何已配置的通告和扫描响应数据。仅当任一字段不为零时才显示。

scan_response AdvertisingData

PeerParameters 资源

fuchsia.hardware.bluetooth/emulator.fidl 中定义

用于模拟对等设备通过 BR/EDR/低功耗传输的行为的参数。

Ordinal字段类型说明
address fuchsia.bluetooth/Address

对等体的公开 BR/EDR BD_ADDR 地址。此字段是必填字段。

connectable bool

如果存在且为 true,对等方将发送可连接的广告并接受连接 请求。如果无法连接,对等端将忽略连接请求。

channel server_end<Peer>

信道的服务器端绑定到对等协议。

PeerSetLeAdvertisementRequest

fuchsia.hardware.bluetooth/emulator.fidl 中定义

Ordinal字段类型说明
le_address fuchsia.bluetooth/Address

对等方的 LE 地址。

advertisement AdvertisingData

广告数据内容。如果不存在,则此对等方发送的广告数据 将为空。

scan_response AdvertisingData

扫描响应数据内容。如果存在,虚构控制器将生成 可扫描的通告包和扫描响应事件。

SnoopOnDroppedPacketsRequest

fuchsia.hardware.bluetooth/hci.fidl 中定义

Ordinal字段类型说明
sent uint32
received uint32

SnoopOnObservePacketRequest

fuchsia.hardware.bluetooth/hci.fidl 中定义

Ordinal字段类型说明
sequence uint64

单调递增的数据包数量。用于与以下项结合使用的流控制 OnAcknowledgePackets

direction PacketDirection
packet SnoopPacket

VendorFeatures

fuchsia.hardware.bluetooth/vendor.fidl 中定义

供应商支持的功能表。

Ordinal字段类型说明
acl_priority_command bool

支持 SetAclPriority 命令 如果缺失,则不支持该命令。

android_vendor_extensions AndroidVendorSupport

支持 Android 供应商扩展 如果缺失,则表示 Android 供应商扩展不受支持。

VendorSetAclPriorityParams

fuchsia.hardware.bluetooth/vendor.fidl 中定义

Ordinal字段类型说明
connection_handle uint16

请求优先的 ACL 连接句柄。

priority VendorAclPriority
direction VendorAclDirection

数据应优先采用的方向。可能并非所有人都支持 供应商。优先级正常时会被忽略。

VirtualControllerCreateLoopbackDeviceRequest 资源

fuchsia.hardware.bluetooth/virtual.fidl 中定义

Ordinal字段类型说明
uart_channel handle<channel>

联合体

Emulator_AddBredrPeer_Result strict

fuchsia.hardware.bluetooth/emulator.fidl 中定义

Ordinal变体类型说明
response Emulator_AddBredrPeer_Response
err EmulatorPeerError
framework_err internal

Emulator_AddLowEnergyPeer_Result 严格

fuchsia.hardware.bluetooth/emulator.fidl 中定义

Ordinal变体类型说明
response Emulator_AddLowEnergyPeer_Response
err EmulatorPeerError
framework_err internal

Emulator_Publish_Result strict

fuchsia.hardware.bluetooth/emulator.fidl 中定义

Ordinal变体类型说明
response Emulator_Publish_Response
err EmulatorError
framework_err internal

Emulator_WatchControllerParameters_Result strict

fuchsia.hardware.bluetooth/emulator.fidl 中定义

Ordinal变体类型说明
response ControllerParameters
framework_err internal

Emulator_WatchLeScanStates_Result strict

fuchsia.hardware.bluetooth/emulator.fidl 中定义

Ordinal变体类型说明
response Emulator_WatchLeScanStates_Response
framework_err internal

Emulator_WatchLegacyAdvertisingStates_Result 严格

fuchsia.hardware.bluetooth/emulator.fidl 中定义

Ordinal变体类型说明
response Emulator_WatchLegacyAdvertisingStates_Response
framework_err internal

HciTransport_Send_Result 严格

fuchsia.hardware.bluetooth/hci.fidl 中定义

Ordinal变体类型说明
response HciTransport_Send_Response
framework_err internal

Hci_ConfigureSco_Result 严格

fuchsia.hardware.bluetooth/hci.fidl 中定义

Ordinal变体类型说明
response Hci_ConfigureSco_Response
err zx/Status
framework_err internal

Hci_OpenAclDataChannel_Result 严格

fuchsia.hardware.bluetooth/hci.fidl 中定义

Ordinal变体类型说明
response Hci_OpenAclDataChannel_Response
err zx/Status
framework_err internal

Hci_OpenCommandChannel_Result 严格

fuchsia.hardware.bluetooth/hci.fidl 中定义

Ordinal变体类型说明
response Hci_OpenCommandChannel_Response
err zx/Status
framework_err internal

Hci_OpenIsoDataChannel_Result 严格

fuchsia.hardware.bluetooth/hci.fidl 中定义

Ordinal变体类型说明
response Hci_OpenIsoDataChannel_Response
err zx/Status
framework_err internal

Hci_OpenScoDataChannel_Result 严格

fuchsia.hardware.bluetooth/hci.fidl 中定义

Ordinal变体类型说明
response Hci_OpenScoDataChannel_Response
err zx/Status
framework_err internal

Hci_OpenSnoopChannel_Result 严格

fuchsia.hardware.bluetooth/hci.fidl 中定义

Ordinal变体类型说明
response Hci_OpenSnoopChannel_Response
err zx/Status
framework_err internal

Hci_ResetSco_Result 严格

fuchsia.hardware.bluetooth/hci.fidl 中定义

Ordinal变体类型说明
response Hci_ResetSco_Response
err zx/Status
framework_err internal

Peer_AssignConnectionStatus_Result strict

fuchsia.hardware.bluetooth/emulator.fidl 中定义

Ordinal变体类型说明
response Peer_AssignConnectionStatus_Response
framework_err internal

Peer_SetDeviceClass_Result strict

fuchsia.hardware.bluetooth/emulator.fidl 中定义

Ordinal变体类型说明
response Peer_SetDeviceClass_Response
framework_err internal

Peer_SetLeAdvertisement_Result 严格

fuchsia.hardware.bluetooth/emulator.fidl 中定义

Ordinal变体类型说明
response Peer_SetLeAdvertisement_Response
err EmulatorPeerError
framework_err internal

Peer_SetServiceDefinitions_Result 严格

fuchsia.hardware.bluetooth/emulator.fidl 中定义

Ordinal变体类型说明
response Peer_SetServiceDefinitions_Response
framework_err internal

Peer_WatchConnectionStates_Result strict

fuchsia.hardware.bluetooth/emulator.fidl 中定义

Ordinal变体类型说明
response Peer_WatchConnectionStates_Response
framework_err internal

ReceivedPacket 柔性环境

fuchsia.hardware.bluetooth/hci.fidl 中定义

主机从控制器收到的数据包。

Ordinal变体类型说明
event vector<uint8>[257]
acl vector<uint8>[65539]
iso vector<uint8>[16387]

ScoConnection_Send_Result strict

fuchsia.hardware.bluetooth/hci.fidl 中定义

Ordinal变体类型说明
response ScoConnection_Send_Response
framework_err internal

SentPacket 柔性环境

fuchsia.hardware.bluetooth/hci.fidl 中定义

主机发送到控制器的数据包。

Ordinal变体类型说明
command vector<uint8>[258]
acl vector<uint8>[65539]
iso vector<uint8>[16387]

SnoopPacket 柔性环境

fuchsia.hardware.bluetooth/hci.fidl 中定义

Ordinal变体类型说明
event vector<uint8>[257]
command vector<uint8>[258]
acl vector<uint8>[65539]
sco vector<uint8>[258]
iso vector<uint8>[16387]

VendorCommand 柔性

fuchsia.hardware.bluetooth/vendor.fidl 中定义

Ordinal变体类型说明
set_acl_priority VendorSetAclPriorityParams

Vendor_EncodeCommand_Result strict

fuchsia.hardware.bluetooth/vendor.fidl 中定义

Ordinal变体类型说明
response Vendor_EncodeCommand_Response
err zx/Status
framework_err internal

Vendor_GetFeatures_Result strict

fuchsia.hardware.bluetooth/vendor.fidl 中定义

Ordinal变体类型说明
response VendorFeatures
framework_err internal

Vendor_OpenHciTransport_Result 严格 资源

fuchsia.hardware.bluetooth/vendor.fidl 中定义

Ordinal变体类型说明
response Vendor_OpenHciTransport_Response
err zx/Status
framework_err internal

Vendor_OpenHci_Result 严格的 资源

fuchsia.hardware.bluetooth/vendor.fidl 中定义

Ordinal变体类型说明
response Vendor_OpenHci_Response
err zx/Status
framework_err internal

Vendor_OpenSnoop_Result 严格的 资源

fuchsia.hardware.bluetooth/vendor.fidl 中定义

Ordinal变体类型说明
response Vendor_OpenSnoop_Response
err zx/Status
framework_err internal

VirtualController_CreateEmulator_Result strict

fuchsia.hardware.bluetooth/virtual.fidl 中定义

Ordinal变体类型说明
response VirtualController_CreateEmulator_Response
err zx/Status
framework_err internal

常量

名称类型说明
ACL_PACKET_MAX 65539 uint64
BT_VENDOR_MAX_COMMAND_BUFFER_LEN 16 uint16

编码命令可能需要的最大缓冲区长度。 在添加可能需要较大缓冲区的新命令时进行更新。

COMMAND_MAX 258 uint64
EVENT_MAX 257 uint64
ISO_PACKET_MAX 16387 uint64
MAX_LEGACY_ADVERTISING_DATA_LENGTH 31 uint8

旧版 (4.x) 和扩展 (5.x) 通告 PDU 类型的通告数据 MTU (请参阅核心规范 v5.4,第 4 卷,E 部分,第 7.3.11 和 7.8.54 节)。

MAX_LOCAL_NAME_LENGTH 248 uint8

使用 HCI_Write_Local_Name 命令分配的本地名称的大小上限(以字节为单位) (请参阅核心规范 v5.4,第 4 卷,E 部分,7.3.11)。

MAX_NAME_LENGTH 32 uint32
MAX_PEER_SERVICES 32 uint8

一次可通告的服务记录数上限。

SCO_PACKET_MAX 258 uint64

服务

HciService

fuchsia.hardware.bluetooth/hci.fidl 中定义

名称类型传输
hci fuchsia.hardware.bluetooth/Hci 频道
hci_transport fuchsia.hardware.bluetooth/HciTransport 频道
信息收集 fuchsia.hardware.bluetooth/Snoop 频道