如何访问pybluez中的蓝牙低级function?

pybluez包装函数是否有较低级别的btfunction? 我找不到文档中的任何内容。 我需要使用的function与以下function相同:

l2ping (single ping) hcitool cc hcitool rssi hcitool lq hcitool tpl hcitool dc 

有没有办法从pybluez(或实际上任何其他包装和/或脚本语言)访问?

Solutions Collecting From Web of "如何访问pybluez中的蓝牙低级function?"

获得完全相同的功能的简单方法是只让python脚本从命令行调用hcitool。

但对于自定义解决方案,可以使用pybluez发送与其他命令生成的相同的HCI命令包。 例如,hcitool rssi只是将HCI Read RSSI命令发送到本地BT适配器,并解析结果。 用pybluez你可以打开一个HCI套接字,构造命令包,并且自己解析结果。 如果您无法访问定义命令包格式的BT规范,则可以查看hcitool的源代码以查看发送的内容,也可以使用hcidump。

要使用hcidump,你可以在终端上运行hcidump来嗅探本地的HCI命令流量,同时使用另一个终端通过hcitool执行你的其他命令。 使用hcidump,您将能够捕获原始数据包事务,您可以使用它作为您想从pybluez生成的参考。

本示例http://code.google.com/p/pybluez/source/browse/trunk/examples/advanced/inquiry-with-rssi.py显示了如何处理HCI套接字,以手动形成命令包和解析结果。 你只需要定制你想要使用的命令。