蓝牙LE服务UUID和特征UUID格式

时间:2018-12-08 09:52:13

标签: bluetooth-lowenergy

我将实现自定义BLE服务。我在网上找到了一些教程,可以通过以下方式选择其自定义服务UUID:

对于服务uuid​​,第三个和第四个字节为零,例如:

3698-0000-82c9-4adb-90cd-792b53207775

和相应的特征uuid在第三和第四字节中具有不同的值。但是所有其他字节与服务UUID相同,例如:

3698-0001-82c9-4adb-90cd-792b53207775 3698-0002-82c9-4adb-90cd-792b53207775 3698-0003-82c9-4adb-90cd-792b53207775 3698-0004-82c9-4adb-90cd-792b53207775

我的问题:这仅仅是一种惯例,还是BLE规范的强制性要求?

1 个答案:

答案 0 :(得分:1)

对于服务和特征性UUID绝对没有相同的要求,但是我已经看过它多次了,所以是常见的做法。

例如,Heart Rate service的UUID为0x180D,但其特征为UUID为0x2a37(Heart Rate Measurement),0x2a38(Body Sensor Location)和0x2a39({{3} }。

在蓝牙规范中,关于特征UUID格式,仅存在以下段落:-

  

“特性UUID”字段是16位蓝牙UUID或128位   描述特征值类型的UUID。客户应   支持同时使用16位和128位特征UUID。一种   客户可能会忽略未知的任何特征定义   特性UUID。未知特征UUID是   不支持的特征。

这可以在蓝牙规范版本5.0,第3卷,G部分,第3.3.1.3节中找到。如您所见,没有引用与服务UUID相关的特征性UUID。

我希望这会有所帮助。

相关问题