有谁知道蓝牙设备如何获取范围内可发现设备的设备 ID?
理想情况下,我正在寻找涉及蓝牙协议(protocol)最小实现的最简单解决方案。
一个起点会很好,我只是想创建一个设备,它可以以最小的功耗存储附近蓝牙设备的所有设备 ID,最好只使用射频而不是 SDP 和其他任何东西。
如果你不能帮我解决这个问题,请你帮我找到低级蓝牙(逐步)通信的好阅读 Material 。网上的阅读水平太高了,我搞不清楚实际发送的是什么,什么时候发送。
最佳答案
Laalto 从蓝牙规范/堆栈 POV 中找到了答案,但您的问题暗示您正在寻找独立的蓝牙设备 - 而不仅仅是扫描周围设备的笔记本电脑应用程序。
我只能代表我工作的公司(Cambridge Silicon Radio - CSR)生产的 BT 芯片,但我们的芯片开箱即用。我们的芯片有一个板载虚拟机沙箱,允许访问芯片的固件功能和蓝牙堆栈。您可以轻松编写一个 C 代码应用程序在芯片上的虚拟机沙箱中运行,它会定期扫描周围可发现的设备,获取它们的 ID,然后在通过 USB 或串行连接时下载它们,或者在设备连接到时通过 BT 下载它们听众直接。
www.csr.com和 www.csrsupport.com用于芯片、开发套件、设计引用等……等等……
您可能想要一个带有额外硬件(UART、USB 等...)的模块以及芯片,但您可以使用蓝牙 USB 大小或可能更小的东西来实现它。
这真的有助于更多地了解您想要实现的目标,为什么您想要只扫描周围蓝牙设备的东西以及设备需要多大。
对不起,如果这听起来像广告。为了平衡:Broadcom 也生产 BT 芯片!
关于蓝牙 UUID 发现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1298600/