首页 > 解决方案 > 用于免提电话的 HSP 和 HFP 配置文件

问题描述

我正在尝试在我的板上实现免提电话,我通过电话和媒体音频共享模式下的蓝牙模块成功地将我的 android 手机连接到板。
我使用的芯片是 Qualcomm Atheros QCA6174。我的板上安装了 pulseaudio 11.1、bluetoothctl: 5.49 和 ofono 1.22。通过这个,我能够通过蓝牙播放媒体文件。但是当通话连接蓝牙扬声器正常工作时,即我可以通过耳机听到通话另一端所说的话,但另一端听不到我所说的(我猜是在获取数据时出现了一些错误从麦克风或从蓝牙设备传输数据)。启动呼叫后,我收到以下日志消息多次出现

"***Bluetooth: hci0 SCO packet for unknown connection handle 0***

***Bluetooth: hci0 sending frame failed (-27)***

***Bluetooth: hci0 sending frame failed (-27)***"

手机上的麦克风也无法正常工作(建立蓝牙连接后)。也在*hciconfig -a* 其中发现如下

hci0:   Type: Primary  Bus: USB
    BD Address: 00:0E:8E:76:00:55  ACL MTU: 1024:8  SCO MTU: 50:8
    UP RUNNING PSCAN 
    RX bytes:810924 acl:982 sco:18885 events:670 errors:0
    **TX bytes:528349 acl:530 sco:10271 commands:108 errors:111**
    Features: 0xff 0xfe 0x8f 0xfe 0xd8 0x3f 0x5b 0x87
    Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3 
    Link policy: RSWITCH HOLD SNIFF 
    Link mode: SLAVE ACCEPT 
    Name: mydevice
    Class: 0x2c041c
    Service Classes: Rendering, Capturing, Audio
    Device Class: Audio/Video, Portable Audio
    HCI Version: 4.2 (0x8)  Revision: 0x0
    LMP Version: 4.2 (0x8)  Subversion: 0x25a
    Manufacturer: Qualcomm 

我设置连接的步骤如下

    $ hciconfig hci0 up
    $ pactl list sources short
    $ pactl list sinks short
    $ bluetoothctl
    agent on
    scan on
    scan off
    pair <address>
    connect<address>

我的 hcitool 连接提供以下内容

    $ hcitool con
    Connections:
    < ACL 78:C3:E9:21:1B:0B handle 2 state 1 lm MASTER AUTH ENCRYPT

此处未显示 SCO 连接。我该如何解决这个问题并实施适当的免提电话?

标签: linuxbluetoothbluezpulseaudioqualcomm

解决方案


推荐阅读