如何判断已连接蓝牙设备的电池电量?该设备显示Android上的电池电量,所以我假设该设备支持GATT-based Battery Service.然而,通过在bluetoothctl中输入"menu gatt",然后用"list attributes[dev]"列出设备的gatt属性,什么都没有显示.

A similar question was posted to SO但OP似乎找到了一个对我不起作用的解决方案.当我在bluetoothctl中运行"info[dev]"时,我看不到电池服务的UUID.

我更喜欢在命令行上运行的、发行版不可知的解决方案.

请让我知道这个问题是否应该发布在超级用户上.

推荐答案

这可能有点晚了,但对我来说,这个Python项目工作得很好:

https://github.com/TheWeirdDev/Bluetooth_Headset_Battery_Level

我只需将第57行中的端口更改为3,就可以使用我的无名X5耳机.如果挂起或出现"连接被拒绝"错误,请try 其他端口.

Python程序通过RFCOMM使用AT命令,在Pulseaudio使用A2DP接收器(地雷重新连接)时应该可以工作.Python3是必需的,因为Python2没有BT串行套接字.Windows可能无法工作,因为它缺少bluez.它基本上和Pulseaudio黑客一样:https://stackoverflow.com/a/56390625/920122

如果您想在交换命令时查看这些命令,请try 我的debug fork:https://github.com/clst/Bluetooth_Headset_Battery_Level

Linux相关问答推荐

AWK打印到文件正在追加,而不是覆盖

sed + 从没有额外空格的文本中删除单词

如何让xargs对 bash 脚本中find命令找到的所有文件执行?

所有进程的Linux环境变量

x86_64 Linux 程序集中的逻辑与实现

在 Windows 上通过 SSH 运行 django 应用程序

如何在makefile中包含静态库

查看 linux 上的多核或多 CPU 利用率

为什么在编译 K&R2 第 1 章中最长的行示例时出现getline 的类型冲突错误?

用于 GCC/G++ 的宏来区分 Linux 和 Mac OSX?

为什么 XGrabKey 会生成额外的聚焦和聚焦事件?

将以前忽略的目录添加到 Git 存储库

SVN 错误:无法将字符串从本机编码转换为UTF-8

使用 cmake 构建错误:找不到 -lpthreads

使用单个命令打开 .tar.gz 文件

命令行 Arduino 编译和上传?

如何找到只对所有者具有特定权限的文件?

如何从 Linux 内核模块的 init_module 代码创建设备 node ?

如何始终以 GB 为单位获取 df linux 命令输出

Linux 上的 NuGet:获取响应流时出错