我想创建一个真正的自定义Gatt服务,这意味着不使用任何蓝牙SIG规范:https://www.bluetooth.com/specifications/gatt/services/
我想创建一个自定义服务,该服务可以在单个特征中发送加速度计和陀螺仪数据。这将意味着创建自定义消息。
我知道我应该为gatt服务创建128位UUID,例如用于心率的0000180D-0000-1000-8000-00805F9B34FB
但不使用此BASE uuid。我不知道如何使它适应使用16位格式的MOVESENSE示例代码:0x180D
有人做过定制的GATT服务来发送加速度计和陀螺仪数据吗,对此我可以提供一些指导吗?
我正在使用Gatt服务。
答案 0 :(得分:0)
当前的movesense-device-lib(<= 1.9.x)支持用于服务UUID的16位或128位UUID,但是仅16位用于特性的UUID(即将发布的movesense-device-lib 2.0版本将删除该限制)。
要将128位UUID设置为服务定义,只需制作一个16字节的字节数组,而不是2:
constexpr uint8_t SENSOR_DATASERVICE_UUID[] = { 0xAA, 0xBB, ... , 0x33, 0x44 };
customGattSvc.uuid = wb::MakeArray<uint8_t>( SENSOR_DATASERVICE_UUID, sizeof(SENSOR_DATASERVICE_UUID));
完全公开:我为Movesense团队工作