为什么 BLE 协议需要 UUID 来表示特定于设备的事物(例如服务和特性)?

问题描述 投票:0回答:1

我可以理解设备级别对 UUID 的需求。当您尝试访问该特定设备时,它必须能够从其他设备中唯一地识别出来。但服务和特征等实体似乎并不需要具有普遍唯一可识别性,只需在它们之间具有唯一可识别性即可。

+ 的组合应该足以挑选出服务,然而,服务也需要 UUID(特性和描述符也是如此)。这是为什么?

bluetooth-lowenergy
1个回答
0
投票
UUID 只是蓝牙规范中的 ID。

服务特性以及蓝牙协议栈中的许多其他内容都使用 ID。

Spec 可以使用更少的位来选择数字 ID,但随后会出现中央注册表问题。 UUID 的使用方式是任何实现者都可以扩展规范定义的

servicescharacteristics 和其他 ID,而无需事先集中分配,但冲突概率极小(以普遍接受的方式生成 UUID 以产生唯一的结果是以某种方式解决了问题)。

请注意,没有用于识别设备的 UUID。设备使用 BDADDR(如 mac 地址),可以是集中分配(IEEE)或随机(对于 LE)。

另请参阅:

蓝牙 GATT 服务 uuid 概述

© www.soinside.com 2019 - 2024. All rights reserved.