Java(J2SE)蓝牙低功耗(BLE)

时间:2015-03-04 13:06:08

标签: java linux bluetooth bluetooth-lowenergy

我正在尝试使用Java连接到蓝牙低功耗(BLE)传感器。到目前为止,我搜索了一个与我的Linux上的BlueZ堆栈接口的库。

我为Java找到的唯一免费库是Bluecove,但似乎它们没有实现BLE。 我检查了我的BT加密狗是否正常工作并使用Linux命令行工具识别传感器

sudo hcitool lescan

gatttool -i hci0 -b XX:XX:XX:XX:XX:XX -I

它没有问题。

之后我尝试使用Bluecove示例进行DeviceDiscovery,但我的传感器没有显示,而是扫描了正常的BT设备。我找不到扫描BLE设备的方法。

进一步研究我得出的结论是Bluecove只是实现了JSR-82。 如果我没有弄错,这个标准比BLE更老,因此没有实现它。

对于支持Java中的BLE的Bluecove有什么替代方案吗?我的意思是应该有,因为Android没有问题(在较新的版本中)与BLE设备通信。

提前致谢!

2 个答案:

答案 0 :(得分:14)

过了一会儿之后,我找到了一个名为TinyB的答案。

https://software.intel.com/en-us/java-for-bluetooth-le-apps

TinyB是英特尔的BluetoothLE实现,它具有Java SDK。 到目前为止,我已经能够实现我所尝试的一切。

希望这可以帮助其他人绊倒这个话题。

答案 1 :(得分:1)

一个有趣的选项是使用Kura Bluetooth LE APIs,它建立在TinyB库的顶部。