2. 通信接口

2.1. NFC

NFC用来读取设备的序列号。

直接调用手机扫描设备的NFC tag。可以得到一串由数字和字母ASCII码组成的序列号(暂定长度是10个字节)。

2.2. BLE

BLE用来控制体测设备和获取测量结果。需要以下信息来扫描,连接和通信。

信息

数值

蓝牙名称

Lynx

广播中的 Manufacture Data

0x0059 + 序列号

Service UUID

07B0C5FE-5285-45A0-9C77-AC03B69E04CA

Write Characteristic UUID

0A6AC844-2174-4165-84C8-3E5E632A31E4

Indication Characteristic UUID

6E287A90-1C27-4057-AF80-8F7600736750

2.3. 扫描连接过程

  1. 手机读取NFC Tag的信息,获取到设备的序列号

  2. 手机扫描BLE设备,过滤条件是

    1. 蓝牙名称是 Lynx

    2. 广播中包含 Manufacture 数据

    3. Manufacture 数据内容是 0x0059 + 序列号

  3. 连接此BLE设备

  4. 查找Service 和 Characteristic 的 UUID。 UUID 需符合如下条件:

    1. 能找到 Service UUID 是 07B0C5FE-5285-45A0-9C77-AC03B69E04CA 的 service (不是唯一的)

    2. Service 包含一个 Characteristic UUID 是 0A6AC844-2174-4165-84C8-3E5E632A31E4 的 Characteristic(此为写通道)

    3. Service 包含一个 Characteristic UUID 是 6E287A90-1C27-4057-AF80-8F7600736750 的 Characteristic(此为通知通道)

    4. 使能 Indication Characteristic (即 6E287A90-1C27-4057-AF80-8F7600736750) 的通知

!pragma teoz true
participant 手机 as P #cyan
box 设备 #LightBlue
participant BLE as B
participant NFC as N #coral
end box

autonumber
P <- N : 读取 NFC Tag 信息
P -> B : 扫描 BLE
P -> B : 连接 BLE
P -> B : 查询 Service 和 Characteristic UUID