智能手表蓝牙 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属性最大长度描述
下行控制FFF1Write Without Response247 bytesApp → 手表命令写入
上行通知FFF2Notify247 bytes手表 → App 数据上报
OTA升级通道FFF3Write/Notify247 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 示例
0x01App→手表请求设备信息
0x02手表→App返回设备信息{"sn":"S1A001", "ver":"1.0.5"}
0x10App→手表设置时间时间戳 (4 bytes, UNIX格式)
0x11手表→App返回时间确认同步后时间戳
0x20App→手表发送通知内容UTF-8 字符串(如来电、短信)
0x21手表→App用户点击操作反馈{“type”:“sms”,“action”:“read”}
0x30手表→App上传心率数据时间戳 + 心率值序列
0x40App→手表OTA升级初始化固件版本+大小校验码等
0x41App→手表OTA数据包固件片段(最大240字节)
0x42手表→AppOTA结果回执{“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.02025-05-10初版发布,定义基础命令、数据结构

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/80886.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux PCI 驱动开发指南

注:本文为 “Linux PCI Drivers” 相关文章合辑。 英文引文,机翻未校。 中文引文,略作重排。 如有内容异常,请看原文。 How To Write Linux PCI Drivers 翻译: 司延腾 Yanteng Si siyantengloongson.cn 1. 如何写 Linux PCI 驱动 …

Python 接入DeepSeek

不知不觉DeepSeek已经火了半年左右,冲浪都赶不上时代了。 今天开始学习。 本文旨在使用Python调用DeepSeek的接口( 这里写目录标题 一、环境准备1.1 DeepSeek1.2 Python 二、接入DeepSeek2.1 参数2.2 requests2.3 openai2.4 返回示例 一、环境准备 1.1…

Java 集合与 MyBatis 动态 SQL 实战教程

一、Java 集合的创建与用法 在 Java 中&#xff0c;List、HashSet 和数组是常用的集合类型&#xff0c;以下是它们的创建与基本操作&#xff1a; 1. List 列表 创建方式&#xff1a; List<Integer> list new ArrayList<>(Arrays.asList(1, 2, 3)); // 可变列…

无人机避障——(运动规划部分)深蓝学院动力学kinodynamic A* 3D算法理论解读(附C++代码)

开源代码链接&#xff1a;GitHub - Perishell/motion-planning 效果展示&#xff1a; ROS 节点展示全局规划和轨迹生成部分&#xff1a; Kinodynamic A*代码主体&#xff1a; int KinoAstar::search(Eigen::Vector3d start_pt, Eigen::Vector3d start_vel,Eigen::Vector3d en…

Transformer Decoder-Only 算力FLOPs估计

FLOPs和FLOPS的区别 FLOPs &#xff08;Floating Point Operations&#xff09;是指模型或算法执行过程中总的浮点运算次数&#xff0c;单位是“次”FLOPS &#xff08;Floating Point Operations Per Second&#xff09;是指硬件设备&#xff08;如 GPU 或 CPU&#xff09;每…

掌握MySQL数据库操作:从创建到管理全攻略

1.库的操作 1.1库的查看 show databases; 这句语法形式是查看服务器已经存在的数据库 注意要加分号————&#xff1b; 1.databeses是复数形式 2.大小写都可以 前提&#xff08;数据库已经创建或查看服务器自带的数据库&#xff09; 也可以查看指定的数据库 show cre…

服务器综合实验(实战详解)

实验内容 环境拓扑结构 主机环境描述 主机名主机地址需要提供的服务content.exam.com172.25.250.101提供基于httpd/nginx的YUM仓库服务ntp.exam.com172.25.250.102提供基于Chronyd的NTP服务mysql.exam.com172.25.250.103提供基于MYSQL的数据库服务nfs.exam.com172.25.250.104…

CentOS 7 修改锁屏时间为永不

在 CentOS 7 中&#xff0c;默认情况下&#xff0c;系统会在一定时间不活动后自动锁屏。对于某些用户来说&#xff0c;可能希望禁用自动锁屏功能或者将锁屏时间设置为“永不”。本文将介绍如何通过图形界面和命令行两种方式修改 CentOS 7 的锁屏时间&#xff0c;确保系统永不自…

MySQL 日期计算方法 date_sub()、date_add()、datediff() 详解-文中有示例帮助理解

1、date_sub()、date_add() date_sub() 和date_add() 语法相同&#xff0c;只不过一个加一个减。 从日期中减去指定时间间隔 语法&#xff1a; DATE_SUB(start_date, INTERVAL expr unit) start_date: 起始日期&#xff08;如 now() , 字段名&#xff09;。 INTERVAL expr…

宝塔基于亚马逊云服务器安装mysql5.7失败问题记录

安装日志如下&#xff1a; --2025-05-14 15:25:15-- https://na1-node.bt.cn/install/1/mysql.sh Resolving na1-node.bt.cn (na1-node.bt.cn)... 128.1.164.196 Connecting to na1-node.bt.cn (na1-node.bt.cn)|128.1.164.196|:443... connected. HTTP request sent, awaitin…

LLaMA-Factory 微调 Qwen2-7B-Instruct

一、系统环境 使用的 autoDL 算力平台 1、下载基座模型 pip install -U huggingface_hub export HF_ENDPOINThttps://hf-mirror.com # &#xff08;可选&#xff09;配置 hf 国内镜像站huggingface-cli download --resume-download shenzhi-wang/Llama3-8B-Chinese-Chat -…

Redis三种高可用模式的使用场景及特点的详细介绍

Redis三种高可用模式的使用场景及特点的详细介绍&#xff0c;结合不同业务需求提供选择建议&#xff1a; 主从模式&#xff08;Replication&#xff09; 核心能力&#xff1a;数据冗余备份、读写分离 适用场景&#xff1a; 读多写少&#xff1a;例如内容发布平台、新闻网站等…

通俗易懂版知识点:Keepalived + LVS + Web + NFS 高可用集群到底是干什么的?

实验开始前&#xff0c;先搞懂为什么要部署该集群&#xff1f; 这个方案的目标是让网站 永不宕机&#xff0c;即使某台服务器挂了&#xff0c;用户也感觉不到。它主要涉及 负载均衡&#xff08;LVS&#xff09; 高可用&#xff08;Keepalived&#xff09; 共享存储&#xff…

Qt中解决UI线程阻塞导致弹窗无法显示的两种方法

在Qt应用程序开发中,我们经常会遇到这样的问题:当执行一个耗时操作时,整个界面会卡住,无法响应任何用户操作,甚至连一个简单的提示弹窗都无法正常显示。本文将介绍两种解决这个问题的方法,并通过完整的代码示例进行说明。 问题描述 先来看一个常见的错误示例: #inclu…

2025年中国DevOps工具选型指南:主流平台能力横向对比

在数字化转型纵深发展的2025年&#xff0c;中国企业的DevOps工具选型呈现多元化态势。本文从技术架构、合规适配、生态整合三个维度&#xff0c;对Gitee、阿里云效&#xff08;云效DevOps&#xff09;、GitLab CE&#xff08;中国版&#xff09;三大主流平台进行客观对比分析&a…

isp流程介绍(yuv格式阶段)

一、前言介绍 前面两章里面&#xff0c;已经分别讲解了在Raw和Rgb域里面&#xff0c;ISP的相关算法流程&#xff0c;从前面文章里面可以看到&#xff0c;在Raw和Rgb域里面&#xff0c;很多ISP算法操作&#xff0c;更像是属于sensor矫正或者说sensor标定操作。本质上来说&#x…

虚幻引擎5-Unreal Engine笔记之UE编辑器退出时的保存弹框

虚幻引擎5-Unreal Engine笔记之UE编辑器退出时的保存弹框 code review! 文章目录 虚幻引擎5-Unreal Engine笔记之UE编辑器退出时的保存弹框1. 退出编辑器时弹出的“Save Content”窗口2. File 菜单中的保存选项3. 区别总结 1. 退出编辑器时弹出的“Save Content”窗口 退出时…

如何判断IP是否被平台标记

一、基础检测&#xff1a;连通性与黑名单筛查 网络连通性测试 Ping与Traceroute&#xff1a;通过命令测试延迟和路由路径&#xff0c;若延迟>50ms或存在异常节点&#xff08;如某跳延迟>200ms&#xff09;&#xff0c;可能影响可用性。示例命令&#xff1a; bash ping 8.…

零Gas授权实战:用线下签名玩转智能合约 Permit 机制

目录 链下签名背景什么是 Permit ?链下签名应用场景Permit 原理简述实战:从合约到前端完整实现安全注意事项总结链下签名背景 在以太坊智能合约开发中,很多初学者经常面临这样一个问题:ERC20 代币授权必须先调用链上合约的 approve(),再调用链上合约的 transferFrom(),每…

React 简介:核心概念、组件化架构与声明式编程

本文为《React Agent&#xff1a;从零开始构建 AI 智能体》专栏系列文章。 专栏地址&#xff1a;https://blog.csdn.net/suiyingy/category_12933485.html。项目地址&#xff1a;https://gitee.com/fgai/react-agent&#xff08;含完整代码示​例与实战源&#xff09;。完整介绍…