蓝牙设备对接文档
面向第三方 App 开发者的蓝牙设备通信协议文档
概述
本文档面向第三方 App 开发者,提供蓝牙设备对接所需的完整协议说明、连接流程和 Demo 代码示例。
系统基于 BLE(Bluetooth Low Energy)协议,支持两种通信方式:
- 广播设备 (Broadcast) — 通过 BLE Advertising 发送指令,无需配对连接,设备持续监听广播数据并执行对应操作
- 点对点设备 (Point-to-Point) — 通过 BLE GATT 建立双向连接,支持设备状态上报、鉴权握手等高级功能
核心概念
设备数据来源
所有设备信息通过 API 接口获取,每个设备包含 deviceModel 对象,其中三个关键字段决定了连接和通信方式:
| 字段 | 类型 | 说明 |
|---|---|---|
connectionType | 0 | 1 | 连接类型。0 = 点对点(需蓝牙搜索配对),1 = 广播(无需搜索) |
isPrivate | 0 | 1 | 是否使用私有协议。1 = 使用 PrivateProtocol(AB 帧协议) |
isAuth | 0 | 1 | 是否需要鉴权。1 = 连接后需要 CRC8 握手认证 |
指令数据
设备数据中包含两种指令集:
func(通用功能指令) — 用于所有业务场景的设备联动控制,包括视频互动、远程控制、游戏联动、音乐同步等。提供基础的强度档位控制能力modes(经典模式指令) — 仅用于"经典模式"功能中的预设模式切换,用户通过按钮快速切换设备工作模式
设备协议总览
| 通信方式 | 协议 | 连接方式 | 适用设备 |
|---|---|---|---|
| 广播 | Manufacturer Data / Service UUID | BLE Advertising | Default、NNG、MY |
| 点对点 | PrivateProtocol | BLE GATT | 私有协议设备 |
| 点对点 | VxMi Protocol | BLE GATT | Vx / Mi 系列 |
| 点对点 | EasyLive Protocol | BLE GATT | Easy 系列 |
文档导航
概述
广播设备
- 连接方式 — BLE Advertising 广播连接的初始化与数据发送
- 指令集 — 广播设备命令格式与使用方法
- 广播协议 — 三种广播协议(Default、NNG、MY)详解
- 平台差异 — Android 与 iOS 的广播实现差异
- 最佳实践 — 广播频率、命令队列等优化建议
点对点设备
- 连接流程 — BLE GATT 连接、扫描与配对
- 鉴权流程 — CRC8 握手认证详解
- PrivateProtocol — AB 帧私有协议
- VxMi Protocol — Vx/Mi 步进电机设备协议
- EasyLive Protocol — Easy 系列设备协议
- 设备通知 — 设备状态上报与电量通知
- 帧编码 — FrameCodec 编解码与 CRC-8 校验
波形数据
- 波形播放 — 波形数据播放与指令映射