我在寻找这个问题的答案时没有找到任何非常好的资源。目前我在COM端口上使用TI CC2540 HCI。出于成本原因,我想摆脱这种解决方案。商用蓝牙低功耗USB加密狗可以非常便宜。我们以使用基于CSR8510的设备为例。
我想用CSR8510加密狗作为'控制器'来实现主机和应用程序。它不使用串行端口进行HCI传输。如何从该控制器发送/接收命令? CSR支持对讨论这个问题不感兴趣,因为我的数量太少(~10k)
我想指定某些低级选项,例如连接参数,扫描模式(有限发现,一般等),因此我需要对“控制器”加密狗进行相对较高级别的控制。编写内核模式驱动程序不是我可以采用的路径。
答案 0 :(得分:1)
如果你打开一个HCI套接字,linux内核将为你处理很多东西。您还可以打开L2CAP套接字以建立与设备的连接。遗憾的是文档缺乏(我实际上从未发现过),但源代码相当可读。看一下Bluez gatttool
,了解他们如何通过套接字访问蓝牙加密狗。
注意:内核中有一个令人讨厌的错误< = 3.4,当使用L2CAP套接字时,多个L2CAP连接混合在一起。
以上是我之前给出的另一个问题的答案,其中包含一些示例代码:bluez with simultaneous classic and low energy devices