【问题标题】:RSSI or Link Quality for BLE connected devicesBLE 连接设备的 RSSI 或链路质量
【发布时间】:2021-07-27 16:40:55
【问题描述】:

在 Linux 环境下执行连接后,有没有办法找出 BLE 连接的 RSSI 或链路质量?

来自 Bluez 中 hci_lib.h 的 hci_read_rssi()、“hcitool rssi”、“hcitool lq”,以及供应商特定的 HCI_VS_Read_RSSI (0xFDFC) 命令(https://www.ti.com/lit/ug/swru442b/swru442b.pdf,因为我们使用的是 Wl1837MOD 芯片组)它们似乎仅适用于 BR/EDR 连接而不适用于 LE 连接。

有没有办法从连接的 BLE 设备的 Bluez API 中找出 RSSI 或链路质量或任何信号强度..?

我使用的是 Bluez V5.48,hCI/LMP 版本是蓝牙 4.2

如有任何建议,我将不胜感激。

谢谢,

维奈

【问题讨论】:

    标签: bluetooth bluetooth-lowenergy gatt rssi


    【解决方案1】:

    似乎不可能通过DBUS API. 声明:

    int16 RSSI [readonly, optional]
                Received Signal Strength Indicator of the remote
                device (inquiry or advertising). 
    

    我没有自己尝试,但您可以通过 Noble.js. 'rssiUpdate' 事件监听器来做到这一点。

    【讨论】:

    • 感谢您的回复。我检查了 Noble.js,“rssiUpdate”事件侦听器无法确认它在连接时是否有效,我的假设是每次应用程序可以在 RSSI 更改时注册通知时都读取 RSSI,但这可能仅适用于查询或广告阶段。我正在研究不支持运行 JS 或 Node.js 的嵌入式 Linux。我正在寻找 C 语言的解决方案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-12-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-01
    • 1970-01-01
    相关资源
    最近更新 更多