【问题标题】:How to access Bluetooth low level functions in pybluez?如何在 pybluez 中访问蓝牙低级功能?
【发布时间】:2011-12-08 17:59:23
【问题描述】:

是否有用于较低级别 bt 功能的 pybluez 包装函数?我在文档中找不到任何内容。我需要使用的功能等同于:

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

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

【问题讨论】:

    标签: python linux bluetooth


    【解决方案1】:

    获得完全相同功能的简单方法是让 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 套接字以手动形成命令包和解析结果。您只需要自定义要使用的命令即可。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多