协议
频道
在 fuchsia.bluetooth/channel.fidl 中定义
用于发送/接收数据包的双工通道。此协议还
充当使 Channel
保持打开状态的令牌。关闭此协议(并且
用于 BR/EDR 频道的关联 socket
)将关闭底层
。
接收
等待传入数据包的挂起获取。仅一个Receive
同时处于待处理状态
请求
<空>
响应
名称 | 类型 |
---|---|
payload |
Channel_Receive_Result
|
发送
通过该通道发送多个数据包。仅一个Send
同时处于待处理状态
请求
名称 | 类型 |
---|---|
packets |
vector<Packet>
|
响应
名称 | 类型 |
---|---|
payload |
Channel_Send_Result
|
WatchChannelParameters
对于 RFCOMM 通道,它将不会返回,且调用将挂起 。
对于 BR/EDR L2CAP 连接导向型信道,目前 返回,且通话将无限期暂停。初始渠道参数 fuchsia.bluetooth.bredr/Channel 中提供。
对于 LE L2CAP 连接导向型信道,第一次调用将 立即返回频道远程端的参数。 后续调用将挂起,直到 ChannelParameters 发生变更为止 然后将返回新参数,包括已指定 未更改。
请求
<空>
响应
名称 | 类型 |
---|---|
payload |
Channel_WatchChannelParameters_Result
|
结构体
地址
在 fuchsia.bluetooth/address.fidl 中定义
表示 48 位蓝牙设备地址。
字段 | 类型 | 说明 | 默认 |
---|---|---|---|
type |
AddressType
|
设备地址的类型。 |
无默认设置 |
bytes |
uint8[6]
|
以小端字节序排列的设备地址字节。 |
无默认设置 |
Bool
在 fuchsia.bluetooth/deprecated.fidl 中定义
已弃用
字段 | 类型 | 说明 | 默认 |
---|---|---|---|
value |
bool
|
无默认设置 |
Channel_Receive_Response
在 fuchsia.bluetooth/channel.fidl 中定义
字段 | 类型 | 说明 | 默认 |
---|---|---|---|
packets |
vector<Packet>
|
无默认设置 |
Channel_Send_Response
在 fuchsia.bluetooth/channel.fidl 中定义
<空>
DeviceClass
在 fuchsia.bluetooth/device_class.fidl 中定义
“设备/服务的类”是一个变量格式字段,用于定义 蓝牙设备。位字段分为名为“主要服务类”的片段 “major device class”和“minor device class”。
不应对任何应用的具体功能或特性做任何假设, 。如需了解详情,请参阅 https://www.bluetooth.com/specifications/assigned-numbers/baseband.
字段 | 类型 | 说明 | 默认 |
---|---|---|---|
value |
uint32
|
无默认设置 |
错误
在 fuchsia.bluetooth/deprecated.fidl 中定义
已弃用 - 改用特定于协议的错误枚举
字段 | 类型 | 说明 | 默认 |
---|---|---|---|
error_code |
ErrorCode
|
无默认设置 | |
protocol_error_code |
uint32
|
无默认设置 | |
description |
string?
|
无默认设置 |
HostId
在 fuchsia.bluetooth/id.fidl 中定义
系统用于标识主机适配器的 64 位唯一值。
字段 | 类型 | 说明 | 默认 |
---|---|---|---|
value |
uint64
|
无默认设置 |
Int8
在 fuchsia.bluetooth/deprecated.fidl 中定义
已弃用
字段 | 类型 | 说明 | 默认 |
---|---|---|---|
value |
int8
|
无默认设置 |
包
在 fuchsia.bluetooth/channel.fidl 中定义
来自协议或服务协议或服务的数据的有效负载, 远程对等方。
字段 | 类型 | 说明 | 默认 |
---|---|---|---|
packet |
vector<uint8>
|
无默认设置 |
PeerId
在 fuchsia.bluetooth/id.fidl 中定义
系统用于标识对等设备的 64 位唯一值。
字段 | 类型 | 说明 | 默认 |
---|---|---|---|
value |
uint64
|
无默认设置 |
状态
在 fuchsia.bluetooth/deprecated.fidl 中定义
已弃用 - 使用特定于协议的错误枚举和“error”语法
字段 | 类型 | 说明 | 默认 |
---|---|---|---|
error |
Error?
|
无默认设置 |
UInt16
在 fuchsia.bluetooth/deprecated.fidl 中定义
已弃用
字段 | 类型 | 说明 | 默认 |
---|---|---|---|
value |
uint16
|
无默认设置 |
乌伊德
在 fuchsia.bluetooth/uuid.fidl 中定义
表示采用 128 位规范形式的蓝牙 UUID。虽然蓝牙标准支持 16 位和 32 位短格式 UUID,则 Fuchsia FIDL 库要求所有 UUID 以规范的 128 位形式表示。
字段 | 类型 | 说明 | 默认 |
---|---|---|---|
value |
uint8[16]
|
采用小端字节序的 UUID 字节。 |
无默认设置 |
精英
AddressType 类型 strict
类型:uint8
在 fuchsia.bluetooth/address.fidl 中定义
名称 | 值 | 说明 |
---|---|---|
公开 |
1 |
LE 公共设备地址或 |
随机 |
2 |
LE 专用或静态随机设备地址。 |
外观灵活
类型:uint16
在 fuchsia.bluetooth/appearance.fidl 中定义
LE Appearance 属性的可能值,用于描述外部 其外观和功能。 (请参阅蓝牙分配号码文档: https://www.bluetooth.com/specifications/gatt/viewer?attributeXmlFile=org.bluetooth.characteristic.gap.appearance.xml) 此枚举非常灵活,因为较新的设备可能会使用新的外观值,并且未来 分配号码文档可能还有其他条目。
名称 | 值 | 说明 |
---|---|---|
未知 |
0 |
|
电话 |
64 |
|
计算机 |
128 |
|
观看 |
192 |
|
WATCH_SPORTS |
193 |
|
时钟 |
256 |
|
DISPLAY |
320 |
|
REMOTE_CONTROL |
384 |
|
EYE_GLASSES |
448 |
|
代码 |
512 |
|
设置键盘 |
576 |
|
MEDIA_PLAYER |
640 |
|
BARCODE_SCANNER |
704 |
|
温度计 |
768 |
|
THERMOMETER_EAR |
769 |
|
HEART_RATE_SENSOR |
832 |
|
HEART_RATE_SENSOR_BELT |
833 |
|
BLOOD_PRESSURE |
896 |
|
BLOOD_PRESSURE_ARM |
897 |
|
BLOOD_PRESSURE_WRIST |
898 |
|
HID |
960 |
|
HID_KEYBOARD |
961 |
|
HID_MOUSE |
962 |
|
HID_JOYSTICK |
963 |
|
HID_GAMEPAD |
964 |
|
HID_DIGITIZER_TABLET |
965 |
|
HID_CARD_READER |
966 |
|
HID_DIGITAL_PEN |
967 |
|
HID_BARCODE_SCANNER |
968 |
|
GLUCOSE_METER |
1024 |
|
RUNNING_WALKING_SENSOR |
1088 |
|
RUNNING_WALKING_SENSOR_IN_SHOE |
1089 |
|
RUNNING_WALKING_SENSOR_ON_SHOE |
1090 |
|
RUNNING_WALKING_SENSOR_ON_HIP |
1091 |
|
骑车 |
1152 |
|
CYCLING_COMPUTER |
1153 |
|
CYCLING_SPEED_SENSOR |
1154 |
|
CYCLING_CADENCE_SENSOR |
1155 |
|
CYCLING_POWER_SENSOR |
1156 |
|
CYCLING_SPEED_AND_CADENCE_SENSOR |
1157 |
|
PULSE_OXIMETER |
3136 |
|
PULSE_OXIMETER_FINGERTIP |
3137 |
|
PULSE_OXIMETER_WRIST |
3138 |
|
WEIGHT_SCALE |
3200 |
|
PERSONAL_MOBILITY |
3264 |
|
PERSONAL_MOBILITY_WHEELCHAIR |
3265 |
|
PERSONAL_MOBILITY_SCOOTER |
3266 |
|
GLUCOSE_MONITOR |
3328 |
|
SPORTS_ACTIVITY |
5184 |
|
SPORTS_ACTIVITY_LOCATION_DISPLAY |
5185 |
|
SPORTS_ACTIVITY_LOCATION_AND_NAV_DISPLAY |
5186 |
|
SPORTS_ACTIVITY_LOCATION_POD |
5187 |
|
SPORTS_ACTIVITY_LOCATION_AND_NAV_POD |
5188 |
AssignCodingFormat flexible
类型:uint8
在 fuchsia.bluetooth/coding_format.fidl 中定义
编码格式,由蓝牙 SIG 指定(有关值,请参阅“分配编号”文档): https://www.bluetooth.com/specifications/assigned-numbers/
名称 | 值 | 说明 |
---|---|---|
U_LAW_LOG |
0 |
|
A_LAW_LOG |
1 |
|
CVSD |
2 |
|
开诚布公 |
3 |
|
LINEAR_PCM |
4 |
|
MSBC |
5 |
|
LC3 |
6 |
|
G_729A |
7 |
ChannelMode 灵活
类型:uint32
在 fuchsia.bluetooth/channel.fidl 中定义
L2CAP 通道支持的通道模式。
对于 BR/EDR,此字段用于指定首选且可接受的 L2CAP 通道 模式。如果对等端拒绝非基本模式,蓝牙系统会 尝试改为在基本模式下打开频道。
对于 LE,用于指定要使用的确切通道模式(如果 对等设备拒绝请求的模式,将无法建立通道。
有关每种模式的说明,请参阅蓝牙规范 v5.4 第 3 卷,A 部分,第 2.4 节。
名称 | 值 | 说明 |
---|---|---|
BASIC |
1 |
仅限 BR/EDR。 |
ENHANCED_RETRANSMISSION |
2 |
仅限 BR/EDR。 |
LE_CREDIT_BASED_FLOW_CONTROL |
3 |
仅限 LE。 |
ENHANCED_CREDIT_BASED_FLOW_CONTROL |
4 |
LE_only。 |
ConnectionRole strict
类型:uint32
在 fuchsia.bluetooth/connection_role.fidl 中定义
指蓝牙设备(本地或对等设备)在物理信道 Piconet 中的角色。请参阅 蓝牙词汇指南 。
名称 | 值 | 说明 |
---|---|---|
领导者 |
1 |
定义 BR/EDR 或 “正在启动”设备。 |
关注者 |
2 |
在 BR/EDR 或 “广告”设备。 |
DataDirection 严格
类型:uint8
在 fuchsia.bluetooth/coding_format.fidl 中定义
指示数据流中数据的方向。请注意,这些值与常量不对应 。
名称 | 值 | 说明 |
---|---|---|
输入 |
1 |
主机 =>控制器 |
输出 |
2 |
控制器 =>托管者 |
ErrorCode 严格
类型:uint32
在 fuchsia.bluetooth/deprecated.fidl 中定义
已弃用 - 改用特定于协议的错误枚举和 zx.Status
名称 | 值 | 说明 |
---|---|---|
未知 |
0 |
|
失败 |
1 |
|
CANCELED |
2 |
|
IN_PROGRESS |
3 |
|
TIMED_OUT |
4 |
|
NOT_FOUND |
5 |
|
NOT_SUPPORTED |
6 |
|
BLUETOOTH_NOT_AVAILABLE |
7 |
|
BAD_STATE |
8 |
|
INVALID_ARGUMENTS |
9 |
|
已完成 |
10 |
|
PROTOCOL_ERROR |
11 |
LogicalTransportType 柔性
类型:uint8
在 fuchsia.bluetooth/coding_format.fidl 中定义
可与编码数据流一起使用的逻辑传输类型。请注意,这些值没有 与蓝牙核心规范中的常量不对应,BR/EDR 值也不对应 。
名称 | 值 | 说明 |
---|---|---|
LE_CIS |
1 |
勒 CIS |
LE_BIS |
2 |
德国国家税务局 (LE BIS) |
表格
ChannelParameters
在 fuchsia.bluetooth/channel.fidl 中定义
要使用的一组参数,或用于建立 L2CAP 的参数集 向连接导向型网络的通道。
Ordinal | 字段 | 类型 | 说明 |
---|---|---|---|
1 |
channel_mode |
ChannelMode
|
选填。 对于 BR/EDR:如果未提供,系统将使用 BASIC。 对于 LE:如果未提供,将使用 LE_CREDIT_BASED_FLOW_CONTROL。 |
2 |
max_rx_packet_size |
uint16
|
此配置文件能够接受的数据包大小上限。必须大于等于 48。 可选。如果未提供,大小将由蓝牙决定 系统。对于所选尺寸,我们不提供任何保证。 |
3 |
security_requirements |
SecurityRequirements
|
BR/EDR:在此之前,链接必须满足的最低安全要求 可以创建渠道此处提供的要求将 在建立频道之前与同行进行过测试。如果对等节点 无法提供相关要求,该频道已关闭。 可选。如果未提供,则唯一保证的安全属性 就是加密 对于 LE:未使用,不得存在。 |
4 |
flush_timeout |
zx/Duration
|
对于 BR/EDR:刷新超时表示 数据包应在丢弃之前在控制器中缓冲。 无穷大的刷新超时可用于将数据包标记为可刷新 没有任何特定的刷新超时。 范围:1 毫秒 - 1,279 毫秒(或 ≤)。已向下舍入。 可选。如果未提供,则无刷新超时,且数据包不可刷新。 对于 LE:未使用,不得存在。 |
CodecAttributes
在 fuchsia.bluetooth/coding_format.fidl 中定义
标识可与数据流搭配使用的编解码器及其配置。
Ordinal | 字段 | 类型 | 说明 |
---|---|---|---|
1 |
codec_id |
CodecId
|
编码格式。 必填。 |
2 |
codec_configuration |
vector<uint8>
|
配置数据。 可选存在,由所使用的编解码器确定。 |
SecurityRequirements
在 fuchsia.bluetooth/channel.fidl 中定义
访问通告的服务所需的身份验证和权限要求。 仅限 BR/EDR。
Ordinal | 字段 | 类型 | 说明 |
---|---|---|---|
1 |
authentication_required |
bool
|
如果该实体链接存在且为 true,则必须通过 访问此服务。如果缺失,则 不需要进行身份验证。 |
2 |
secure_connections_required |
bool
|
如果该参数存在且为 true,则该物理链接必须使用安全 如果主机可以,用于访问此服务的连接密钥。 如果主机不支持安全连接,通告将会失败。 请参阅蓝牙规范 v5.2、第 3 卷、C 部分、第 5.2.2.8 节。 |
VendorCodingFormat
在 fuchsia.bluetooth/coding_format.fidl 中定义
供应商定义的编码格式。
Ordinal | 字段 | 类型 | 说明 |
---|---|---|---|
1 |
company_id |
uint16
|
公司 ID,请参阅“分配号码”文档了解相应值 https://www.bluetooth.com/specifications/assigned-numbers/ 必填。 |
2 |
vendor_id |
uint16
|
供应商定义的编解码器 ID。 必填。 |
联合体
Channel_Receive_Result 为严格
在 fuchsia.bluetooth/channel.fidl 中定义
Ordinal | 变体 | 类型 | 说明 |
---|---|---|---|
1 |
response |
Channel_Receive_Response
|
|
3 |
framework_err |
internal
|
Channel_Send_Result 严格
在 fuchsia.bluetooth/channel.fidl 中定义
Ordinal | 变体 | 类型 | 说明 |
---|---|---|---|
1 |
response |
Channel_Send_Response
|
|
3 |
framework_err |
internal
|
Channel_WatchChannelParameters_Result strict
在 fuchsia.bluetooth/channel.fidl 中定义
Ordinal | 变体 | 类型 | 说明 |
---|---|---|---|
1 |
response |
ChannelParameters
|
|
3 |
framework_err |
internal
|
CodecId 柔性环境
在 fuchsia.bluetooth/coding_format.fidl 中定义
指定编码格式。
Ordinal | 变体 | 类型 | 说明 |
---|---|---|---|
1 |
assigned_format |
AssignedCodingFormat
|
由蓝牙 SIG 定义的编码格式。 |
2 |
vendor_format |
VendorCodingFormat
|
供应商定义的编码格式。 |
常量
名称 | 值 | 类型 | 说明 |
---|---|---|---|
MAJOR_DEVICE_CLASS_AUDIO_VIDEO |
1024
|
uint32 |
|
MAJOR_DEVICE_CLASS_COMPUTER |
256
|
uint32 |
|
MAJOR_DEVICE_CLASS_HEALTH |
2304
|
uint32 |
|
MAJOR_DEVICE_CLASS_IMAGING |
1536
|
uint32 |
|
MAJOR_DEVICE_CLASS_LAN |
768
|
uint32 |
|
MAJOR_DEVICE_CLASS_MASK |
7936
|
uint32 |
主要设备类字段的常量。主要设备类由位 12-8 定义。 |
MAJOR_DEVICE_CLASS_MISCELLANEOUS |
0
|
uint32 |
|
MAJOR_DEVICE_CLASS_PERIPHERAL |
1280
|
uint32 |
|
MAJOR_DEVICE_CLASS_PHONE |
512
|
uint32 |
|
MAJOR_DEVICE_CLASS_TOY |
2048
|
uint32 |
|
MAJOR_DEVICE_CLASS_UNCATEGORIZED |
7936
|
uint32 |
|
MAJOR_DEVICE_CLASS_WEARABLE |
1792
|
uint32 |
|
MAX_DEVICE_NAME_LENGTH |
248
|
uint8 |
设备名称的最大长度。此值是根据 HCI 和 GAP 选择的 (第 5.2 卷,第 4 卷,E 部分,7.3.11 和第 3 卷,C 部分,12.1)。 |
UUID_STRING_REPRESENTATION_LENGTH |
36
|
uint8 |
UUID 的标准字符串表示法的大小。此值依据的是规范版本 IETF RFC4122 第 3 节中定义的 36 个字符的 8-4-4-4-12 格式。 |
ALIASES
名称 | 值 | 说明 |
---|---|---|
DeviceName |
string [MAX_DEVICE_NAME_LENGTH ] |
蓝牙设备名称的别名。 |
PeerIdString |
string [16 ] |
已弃用 - 请改用 fuchsia.bluetooth/PeerId |
UuidString |
string [UUID_STRING_REPRESENTATION_LENGTH ] |
已弃用 - 请改用 fuchsia.bluetooth/Uuid |