我正在开始使用微控制器和树莓派(tardis BLE dongle)构建一个简单的BLE网络。作为起点,我正在寻找一个简单的C或C++示例来读写BLE设备,类似于我在命令行上能够执行的操作。到目前为止,我发现的示例都相当复杂。作为一个BLE初学者,在进一步设计之前,我需要一些非常简单的示例来构建基础。我可以像在下面的gatttool示例中那样将BLE设备名称硬编码。
以下是我当前如何使用Bluez命令行选项:
从命令行中,我可以使用:
$ sudo hcitool lescan
LE Scan ...
BB:A0:50:02:18:07 MyDevice
接下来,我可以使用gatttool在命令行上连接到设备:
$ sudo gatttol -b BB:A0:50:02:18:07 -I
[BB:A0:50:02:18:07][LE]> connect
Attempting to connect to BB:A0:50:02:18:07
Connection successful
最后我能够使用适当的句柄进行阅读和写作
[BB:A0:50:02:18:07][LE]> char-write-req 000f 0100
Characteristic value was written successfully
[BB:A0:50:02:18:07][LE]> char-write-cmd 0011 4C467A
我用于初步研究和入门的一些网站:
http://people.csail.mit.edu/albert/bluez-intro/c404.html
https://github.com/carsonmcdonald/bluez-experiments/blob/master/experiments/scantest.c