协议
频道
在 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 |