OP-BTS/OP-BT 蓝牙服务和特征值说明


OP-BTS/OP-BT 蓝牙服务和特征值说明

概述

OP-BTS/OP-BT 设备使用低功耗蓝牙(BLE)技术进行通信,通过GATT协议提供服务和特征值。本文档详细说明了设备提供的BLE服务和特征值,帮助开发者更好地理解和使用这些功能。

设备可能提供多种不同的服务UUID,根据设备型号和固件版本的不同,可用的服务和特征值可能有所差异。本文档涵盖了常见的服务和特征值配置。

BLE服务和特征值列表

主服务 (Primary Service)

服务UUID: 18F0

这是OPBT设备的命令服务,用于发送命令和接收响应,特别适用于读取电池电压等操作:

特征UUID 属性 描述
2AF0 读/通知 通知特征,用于接收设备返回的数据
2AF1 写入特征,用于向设备发送命令

示例代码(Flutter/Dart - 2AF0特征)

// 启用数据传输特征的通知
BluetoothCharacteristic dataCharacteristic = ...; // 2AF0特征
BluetoothDescriptor cccd = await dataCharacteristic.descriptors.firstWhere(
  (d) => d.uuid.toString() == '00002902-0000-1000-8000-00805f9b34fb'
);

// 启用通知
await cccd.write([0x01, 0x00]);

// 设置通知回调
dataCharacteristic.value.listen((value) {
  // 处理接收到的数据
  print('收到数据: ${String.fromCharCodes(value)}');
});

// 禁用通知(在不需要时)
await cccd.write([0x00, 0x00]);