M t*_*e K 6 uuid core-bluetooth bluetooth-lowenergy
我知道我可以使用 BLE 创建自己的服务,方法是使用 128 位 UUID,在 Mac 上使用类似于uuidgen的工具。但我真的对为我的服务定义别名和基本 UUID 的方式感到困惑。事实上,基本 UUID 需要采用以下形式:
0x0000xxxx-1213-XYZA-1523-781FEABCD123
Run Code Online (Sandbox Code Playgroud)
和别名
Service 0x1523 : 0x00001523-1213-XYZA-1523-781FEABCD123
characteristic 0x1524 : 0x00001524-1213-XYZA-1523-781FEABCD123
Run Code Online (Sandbox Code Playgroud)
但是当我生成 uuid 时,我得到类似的信息:
580663F1-AFF1-457F-9F79-0F2BF3E11892
Run Code Online (Sandbox Code Playgroud)
我如何指定别名以识别服务和特征?我需要删除第一部分吗?或者我完全错了,我需要做其他事情才能得到它们吗?
我如何设法生成像蓝牙 SIG 一样的基本 UUID?
谢谢
我想您可以自由地为您的服务定义您的 UUID,您不需要遵循您提到的格式。如果您使用16位UUID,它将扩展为BLE基础uuid。请看下面的问题:
作为参考,您可以查看 bluez 的源代码树,plugins/gatt-example.c。对于权重服务,他们使用任意 128 位 UUID。参见register_weight_service():
https://github.com/aguedes/bluez/blob/master/plugins/gatt-example.c
这是运行中的服务,与 gatttool(bluez 工具)连接:
attr 句柄:0x003c,结束 grp 句柄:0x0040 uuid:00001806-0000-1000-8000-00805f9b34fb
attr 句柄:0x0041,结束 grp 句柄:0x0049 uuid:0000180e-0000-1000-8000-00805f 9b34fb
attr 句柄:0x004a,结束 grp 句柄:0x0056 uuid:00001811-0000-1000-8000-00805f9b34fb
attr句柄:0x0057,结束grp句柄:0x005b uuid:0000a0f0-0000-1000-8000-00805f9b34fb attr句柄:0xfffa
,结束 grp 句柄:0xfffe uuid:feee74dc-a8de- 3196-1149-d43596c00a4f
从句柄0xfffa开始的特征:
句柄:0xfffa,uuid:2800
句柄:0xfffb,uuid:2802
句柄:0xfffc,uuid:2803 句柄
:0xfffd,uuid:e9258c1e-8962-c4b6-0b45-2c9018f28880 句柄:0xfffe
,uuid:2904
句柄:0x ffff,uuid:2901
| 归档时间: |
|
| 查看次数: |
21141 次 |
| 最近记录: |