智能手表蓝牙 GATT 通讯协议文档

以下是一份适用于智能手表的 蓝牙 GATT 通讯协议文档,适用于 BLE 5.0 及以上标准,兼容 iOS / Android 平台:


智能手表蓝牙 GATT 通讯协议文档

文档版本 :V1.0
编写日期 :2025年xx月xx日
产品型号 :Aurora Watch S1
适用芯片:EFR32BG22 / nRF52 / TLSR 系列等


一、协议概述

本通讯协议定义了 Aurora Watch S1 与手机 App 之间基于 Bluetooth Low Energy (BLE) 的 GATT 通讯结构,支持基础配置、实时同步、通知推送、健康数据同步等功能。

  • 协议基础:GATT Profile(Generic Attribute Profile)
  • 连接方式:Peripheral 模式(手表) ←→ Central 模式(手机)
  • MTU Size:默认 247 bytes(支持扩展)
  • 安全模式:BLE Secure Connections(支持绑定、加密)

二、GATT Profile 总览

Service 名称 UUID(128-bit) 用途说明
设备信息服务 0x180A 固件版本、厂商信息等
通用通讯服务(主服务) 0000FFF0-0000-1000-8000-00805F9B34FB 所有 App 与手表数据传输
时间同步服务 00001805-0000-1000-8000-00805F9B34FB 时间校准
心率服务 0x180D 实时/历史心率同步
电池服务 0x180F 电池电量读取

三、通用通讯服务定义(UUID: FFF0)

用于 App 与手表之间自定义双向数据传输,使用 Notify + Write Without Response 组合。

3.1 特征定义

特征名称 UUID 属性 最大长度 描述
下行控制 FFF1 Write Without Response 247 bytes App → 手表命令写入
上行通知 FFF2 Notify 247 bytes 手表 → App 数据上报
OTA升级通道 FFF3 Write/Notify 247 bytes 固件升级数据通道

四、协议数据结构

所有 FFF0 服务使用统一协议帧结构,格式如下:

复制代码
| Byte 0   | Byte 1~2 | Byte 3 ~ N       |
|----------|----------|------------------|
| CMD_ID   | Length   | Payload Data     |
  • CMD_ID:1 Byte,命令类型(详见下表)
  • Length:2 Bytes,小端,Payload 长度
  • Payload:具体数据内容,变长

4.1 常用命令定义

CMD_ID 方向 功能说明 Payload 示例
0x01 App→手表 请求设备信息
0x02 手表→App 返回设备信息 {"sn":"S1A001", "ver":"1.0.5"}
0x10 App→手表 设置时间 时间戳 (4 bytes, UNIX格式)
0x11 手表→App 返回时间确认 同步后时间戳
0x20 App→手表 发送通知内容 UTF-8 字符串(如来电、短信)
0x21 手表→App 用户点击操作反馈 {"type":"sms","action":"read"}
0x30 手表→App 上传心率数据 时间戳 + 心率值序列
0x40 App→手表 OTA升级初始化 固件版本+大小校验码等
0x41 App→手表 OTA数据包 固件片段(最大240字节)
0x42 手表→App OTA结果回执 {"result":"success"}

五、连接与绑定流程

  1. App 扫描广播(含设备名称 AuroraS1 + MAC 后缀)
  2. 连接后读取 Device Info(Model/Ver)
  3. App 启动绑定流程(随机绑定码或 BLE pairing)
  4. 加密通道建立后允许所有功能访问

六、注意事项

  • OTA升级阶段需独占 FFF0 服务,不可并发其他命令
  • 所有时间同步应以 UTC 格式传输,避免时区混乱
  • 通讯应基于 ACK 超时重试机制(最多3次)
  • 建议使用 JSON 作为 Payload 格式,便于解析与扩展
  • 特征 Notify 应开启 CCCD 才能收到数据

七、版本控制记录

版本号 日期 修改说明
V1.0 2025-05-10 初版发布,定义基础命令、数据结构

喜欢的盆友点赞加收藏,关注不迷路

相关推荐
asjodnobfy1 天前
开关电源尖峰电压计算
嵌入式硬件·硬件工程
振南的单片机世界1 天前
开漏输出:只能拉低,不能拉高,高电平靠“外部”帮忙
stm32·单片机·嵌入式硬件
FFF团团员9091 天前
CCS快速使用4(tim,pwm)
单片机·嵌入式硬件
某先森不吃鱼1 天前
工程日志——离轴编码器矫正与磁场串扰解决
嵌入式硬件
黑白园1 天前
STM32 通过I2C 读写EEPR0M AT24C02
stm32·单片机·嵌入式硬件
ACP广源盛139246256731 天前
ASW3742@ACP# 产品规格详解
网络·人工智能·嵌入式硬件·计算机外设·电脑
llilian_161 天前
晶体频率测试仪 破解晶振品控核心难题:晶体频率网络测试仪深度解析 晶体网络分析仪
网络·功能测试·单片机·嵌入式硬件·测试工具·51单片机
YJlio1 天前
《Windows Internals》10.5.1 ETW 概述:看懂 Windows 的“事件高速公路”
java·windows·笔记·stm32·嵌入式硬件·学习·eclipse
平凡灵感码头1 天前
(方案优化师第 1 期) 旺仔牛奶音响
单片机·嵌入式硬件
YJlio1 天前
Windows Internals 10.5.3:ETW 架构详解,从事件产生到性能分析的完整链路
windows·笔记·python·stm32·嵌入式硬件·学习·架构