Bluetooth 蓝牙UUID发现

Bluetooth 蓝牙UUID发现,bluetooth,uuid,low-level,service-discovery,Bluetooth,Uuid,Low Level,Service Discovery,有人知道蓝牙设备如何在范围内提取可发现设备的设备ID吗 理想情况下,我正在寻找最简单的解决方案,其中涉及到蓝牙协议的最小实现 一个起点是好的,我只想创建一个设备,可以存储附近蓝牙设备的所有设备ID,功耗最小,最好只使用无线电频率,而不是SDP和其他任何东西 如果你不能在这方面帮助我,请你帮我找到适合低级蓝牙(逐步)通信的阅读材料。在线阅读是如此之高,以至于我无法计算实际发送的是什么,何时发送。来自的蓝牙规范是低级信息的良好起点。您需要一个帐户来访问规范,但您可以免费创建一个帐户 基本上,您需要做

有人知道蓝牙设备如何在范围内提取可发现设备的设备ID吗

理想情况下,我正在寻找最简单的解决方案,其中涉及到蓝牙协议的最小实现

一个起点是好的,我只想创建一个设备,可以存储附近蓝牙设备的所有设备ID,功耗最小,最好只使用无线电频率,而不是SDP和其他任何东西

如果你不能在这方面帮助我,请你帮我找到适合低级蓝牙(逐步)通信的阅读材料。在线阅读是如此之高,以至于我无法计算实际发送的是什么,何时发送。

来自的蓝牙规范是低级信息的良好起点。您需要一个帐户来访问规范,但您可以免费创建一个帐户

基本上,您需要做的是定期进入查询模式,并在响应数据包到达时抓取它们。您在查询模式中花费的时间越多,就越有可能发现范围内的设备:可发现的设备很少进入查询扫描模式;扫描查询/查询扫描跳频方案中的所有可能频率需要一些时间(对于较旧的蓝牙版本,至少需要10.24秒)。即使这样,你也可能有次优的无线电条件


对于实现,我建议您至少从现有的蓝牙库开始,例如,不要尝试从头开始创建自己的库。

Laalto从蓝牙规范/堆栈POV中找到了答案,但您的问题意味着您需要一个独立的蓝牙设备,而不仅仅是一个笔记本应用程序扫描周围的设备

我只能代表我为之工作的公司生产的BT芯片(剑桥硅无线电-CSR)说话,但我们的芯片可以做到这一点。我们的芯片有一个板载虚拟机沙箱,允许访问芯片的固件功能和蓝牙堆栈。您可以轻松编写一个C代码应用程序,在虚拟机沙箱中运行,在芯片上,定期扫描周围可发现的设备,获取它们的ID,然后在通过USB或串行连接时下载,或者在设备直接连接到侦听器时通过BT下载

以及芯片、开发工具包、设计参考等。。等等

您可能需要一个带有额外硬件(UART、USB等)的模块以及一个芯片,但您可以使用蓝牙USB或更小的大小来实现这一点

了解更多您想要实现的目标、为什么需要扫描周围蓝牙设备以及设备需要多大,这将非常有帮助

对不起,如果这听起来像广告。为了平衡:Broadcom也生产BT芯片