Skip to main content
要调试蓝牙问题,请使用主机日志或空口(OTA)日志。主机日志包括 Logcat 和 BTSnoop(协议栈)/HCI 日志。您可以使用这些日志进行初步调试。 下表列出了调试不同蓝牙问题所需的日志。

调试 BlueZ 协议栈

在启用或收集日志之前,请执行以下操作:
  1. 启用 SSH 以访问您的主机设备。有关说明,请参阅 使用 SSH 登录
  2. 将 DUT 和远程设备置于蓝牙有效范围内。
  3. 在命令提示符中使用以下命令运行 SSH:
    示例 如果设备的 IP 地址为 10.92.160.222,请运行以下命令:
  4. 输入以下密码以连接到 SSH:

启用 BlueZ 日志

要启用 BlueZ 日志,请在 SSH 中执行以下操作:
  1. 运行以下命令启用读写权限:
  2. 在文本编辑器中打开 Bluetooth 服务文件。 示例 要在 VI 编辑器中打开 bluetooth.service 文件,请运行以下命令:
  3. 在文件中的以下行末尾追加 -d 选项:
  4. 保存文件。
  5. 运行以下命令重新加载 Bluetooth 守护进程:
  6. 运行以下命令重启蓝牙:

收集 BlueZ 日志

  • 要收集 BlueZ 用户空间日志,请在 SSH 中运行以下命令:
  • 要收集所有日志,请在 SSH 中运行以下命令:

收集 snoop 日志

要收集 snoop 日志,请在 SSH 中执行以下操作:
  1. 运行 hcidump 工具。
  2. 运行以下命令保存文件:
    示例 要将 snoop 日志保存到 snoop.log 文件,请运行以下命令:
    如果设备有多个 HCI 接口,请在捕获 snoop 日志时使用 -i 选项指定目标接口。请先运行 hciconfig 以识别可用接口。 示例输出
    要在 hci1 上捕获 snoop 日志,请运行以下命令:
    示例输出

启用 PipeWire 日志

要启用 PipeWire 日志,请在 SSH 中执行以下操作:
  1. 在文本编辑器中打开 PipeWire 配置文件。 示例 要在 VI 编辑器中打开 pipewire.conf 文件,请运行以下命令:
  2. 取消注释日志级别并将其设置为 45
  3. 保存文件。
  4. 运行以下命令重新加载 Bluetooth 守护进程:
  5. 运行以下命令重启 PipeWire:

启用 WirePlumber 服务日志

要启用 WirePlumber 服务日志,请执行以下操作:
  1. 运行以下命令验证 WirePlumber 服务的状态:
  2. 在文本编辑器中打开 WirePlumber 服务文件。 示例 要在 VI 编辑器中打开 wireplumber.service 文件,请运行以下命令:
  3. 将以下调试变量添加到文件中的所有服务部分:
  4. 保存文件。
  5. 运行以下命令重新加载 Bluetooth 守护进程:
  6. 运行以下命令重启 WirePlumber 服务:
  7. 验证服务状态,确认其是否以指定的标志运行。

启用 ofono 服务日志

要启用 ofono 服务日志,请在 SSH 中执行以下操作:
  1. 运行以下命令验证 ofono 服务的状态:
    示例输出
  2. 在文本编辑器中打开 ofono 服务文件。 示例 要在 VI 编辑器中打开 ofono.service 文件,请运行以下命令:
  3. 在文件中的以下行末尾追加 -d 选项:
  4. 保存文件。
  5. 运行以下命令重新加载 Bluetooth 守护进程:
  6. 运行以下命令重启 ofono 服务:
  7. 验证服务状态,确认其是否以指定的标志运行。

收集 SSR 转储日志

在 Qualcomm Linux 软件中,如果任何蓝牙子系统模块崩溃,SSR 功能会在蓝牙驱动中收集所需的固件崩溃转储,然后重启蓝牙子系统。崩溃转储文件位于 /var/spool/crash/ 目录。 关于 SSR 日志记录,请注意以下几点:
  • 要验证 SSR 日志是否已启用或禁用,请运行以下命令:
    返回值:
    • 1:SSR 日志记录已禁用。
    • 0:SSR 日志记录已启用。
  • 要启用 SSR 日志,请运行以下命令:
  • 要手动收集 SSR 日志,请执行以下操作:
    要手动收集 SSR 崩溃转储,请确保设备蓝牙已打开。
    1. 运行 hcitool 工具。
    2. 运行以下命令向控制器发送崩溃命令:
      示例输出
      触发的崩溃会在 /var/spool/crash/ 目录生成一个 BIN 文件。 示例输出
    3. 确保已在 /var/spool/crash/ 目录生成 BIN 文件。
默认情况下未安装用户空间转储收集工具。请安装或配置一个工具(例如 systemd-coredumpkdump-tools),将转储保存到 /var/spool/crash/如果您观察到任何超时或蓝牙硬件错误,请联系 Qualcomm 并共享该 BIN 文件。
IQ-9075 和 IQ-8275 上的 SSR 限制在 IQ-9075 和 IQ-8275 平台上,SSR 存在一个已知限制:如果崩溃是由内存中损坏的 RAM 补丁数据引起的,仅靠 SSR 无法完全恢复蓝牙子系统。需要重启平台才能恢复正常运行。