用python写蓝牙低功耗的广告包?

时间:2014-06-29 23:24:00

标签: python ubuntu bluetooth bluetooth-lowenergy

在Ubuntu上,安装bluez后,根据https://learn.adafruit.com/pibeacon-ibeacon-with-a-raspberry-pi/adding-ibeacon-data我们可以通过

设置蓝牙低能耗/ 4.0广告数据
sudo hcitool -i hci0 cmd 0x08 0x0008 1E 02 01 1A 1A FF 4C 00 02 15 E2 0A 39 F4 73 F5 4B C4 A1 2F 17 D1 

并使用wireshark或python与sudo hcitool lescan我们可以看到数据是由第二个加密狗接收的。有没有办法在python中广告包而不是使用hcitool?某种类型的图书馆是理想的。

在python中,我可以使用How to retrieve advertising payload from iBeacon / BLE的修改版本(data[44:13:-1]而不是data[12:6:-1])打印收到的数据,现在我希望传输数据

(背景故事:我想要频繁地播放一条消息(一对多组播),我听说每20分钟就可以做一次广告,对几个机器人来说没有打扰配对每个机器人。我不关心安全性,我不需要连接到机器人,我只需要从中心站传输并让几个机器人接收数据。我也有兴趣学习如何在iOS / Android上写广告包数据提示)。

规格:python2.7 / 3.2,eBay上的两个CSR 4.0 USB加密狗,ubuntu 14.04。

1 个答案:

答案 0 :(得分:1)

没有。 :(

Python甚至没有赶上Linux在套接字上处理BLE地址。如果你想使用python,你要么必须将它与用C编写的位组合在一起,要么只需要调用bluez命令行工具。

但是,对于使用BLE的“多播”消息,您有正确的概念。您可以通过将其作为广告数据包的一部分发送,任何其他设备都可以被动地接收这些数据包并根据需要使用它。

相关问题