在 Linux 上检查连接的蓝牙设备的电池电量

新手上路,请多包涵

如何检查连接的蓝牙设备的电池电量?该设备在 Android 上显示电池电量,因此我假设该设备支持 基于 GATT 的 Battery Service 。但是,通过在 bluetoothctl 中输入“menu gatt”,然后使用“list-attributes [dev]”列出设备的 GATT 属性,什么也没有出现。

类似的问题已发布到 SO ,但 OP 似乎找到了一个对我不起作用的解决方案。当我在 bluetoothctl 中运行“info [dev]”时,我看不到电池服务的 UUID。

我更喜欢在命令行上运行并且与发行版无关的解决方案。

请让我知道这个问题是否应该发布在 SuperUser 上。

原文由 Ricardo 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.6k
2 个回答

这可能有点晚了,但对我来说,这个 Python 项目运行良好:

https://github.com/TheWeirdDev/Bluetooth_Headset_Battery_Level

我只需要将我的无名 X5 耳机的第 57 行端口更改为 3。如果它挂起或出现“连接被拒绝”错误,请尝试不同的端口。

Python 程序通过 RFCOMM 使用 AT 命令,并且应该在 Pulseaudio 使用 A2DP 接收器(我的重新连接)时工作。需要 Python 3,因为 2 没有 BT-Serial 套接字。 Windows 可能无法工作,因为它缺少 bluez。它基本上与这里的 Pulseaudio hack 做同样的事情: https ://stackoverflow.com/a/56390625/920122

如果您想查看交换时的命令,请尝试我的调试分支: https ://github.com/clst/Bluetooth_Headset_Battery_Level

原文由 clst 发布,翻译遵循 CC BY-SA 4.0 许可协议

对我来说,在终端运行这个工作:

 upower --dump

原文由 Yash Nahta 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题