1

in a nutshell, things seem to be good from the ofono-phonesim perspective in terms of modems, but I still can't get HFP audio telephony to work for calls (meanwhile A2DP works flawlessly for music playback).

I'm on Ubuntu 20.04 Focal Fossa, arm64.

This is a follow up to my earlier question. It may seem to be a duplicate of this question but, my use case is the opposite, as I'm trying to use the Linux machine's USB peripherals ($15 mic and $15 speaker bar) as the Headset Unit role, and a mobile device as the Audio Gateway.

Additionally, I've attempted the top answer, specifically everything up to this point:

ofono-phonesim -p 12345 /usr/share/phonesim/default.xml

with

dbus-send --print-reply --system --dest=org.ofono /phonesim org.ofono.Modem.SetProperty string:"Powered" variant:boolean:"true"

and

/ofono/test$ ./enable-modem

and it looks like I'm good from a modem perpective, however I still get no audio for telephony, and I get "Failed to change profile to headset_audio_gateway" in blueman when i try to set the Smart Phone to Headset Audio Gateway (HSP/HFP) manually.

Here's the output for ~/ofono/test/list-modems:

user@machine:~/dir$ ofono-phonesim -p 12345 /usr/share/phonesim/default.xml&
[2] 6834
user@machine:~/dir$ dbus-send --print-reply --system --dest=org.ofono /phonesim org.ofono.Modem.SetProperty string:"Powered" variant:boolean:"true"
method return time=1645567249.694253 sender=:1.163 -> destination=:1.166 serial=33 reply_serial=2

user@machine:~/dir/ofono/test$ ./enable-modem /hfp/org/bluez/hci0/dev_E0_D0_83_93_CC_5A
Connecting modem /hfp/org/bluez/hci0/dev_E0_D0_83_93_CC_5A...
user@machine:~/dir/ofono/test$ test/list-modems
bash: test/list-modems: No such file or directory
user@machine:~/dir/ofono/test$ ./list-modems
[ /hfp/org/bluez/hci0/dev_E0_D0_83_93_CC_5A ]
    Online = 1
    Powered = 1
    Lockdown = 0
    Emergency = 0
    Serial = E0:D0:83:93:CC:5A
    Interfaces = org.ofono.VoiceCallManager org.ofono.CallVolume org.ofono.Handsfree org.ofono.NetworkRegistration 
    Features = net 
    Name = enwave64's Note10
    Type = hfp
    [ org.ofono.VoiceCallManager ]
        EmergencyNumbers = 118 110 08 911 000 112 999 119 
    [ org.ofono.CallVolume ]
        SpeakerVolume = 50
        MicrophoneVolume = 50
        Muted = 0
    [ org.ofono.Handsfree ]
        InbandRinging = 1
        EchoCancelingNoiseReduction = 1
        DistractedDrivingReduction = 0
        VoiceRecognition = 0
        Features = three-way-calling echo-canceling-and-noise-reduction voice-recognition release-all-held release-specified-active-call private-chat create-multiparty hf-indicators 
        BatteryChargeLevel = 2
    [ org.ofono.NetworkRegistration ]
        Status = registered
        Mode = auto-only
        Name = 
        Strength = 40

[ /phonesim ]
    Online = 0
    Powered = 1
    Lockdown = 0
    Emergency = 0
    Manufacturer = MeeGo
    Model = Synthetic Device
    Revision = REV1
    Serial = 1234567890
    Interfaces = org.ofono.SmartMessaging org.ofono.PushNotification org.ofono.MessageManager org.ofono.Phonebook org.ofono.TextTelephony org.ofono.RadioSettings org.ofono.CallForwarding org.ofono.SimToolkit org.ofono.SimAuthentication org.ofono.AllowedAccessPoints org.ofono.VoiceCallManager org.ofono.SimManager 
    Features = sms tty rat stk sim 
    Type = hardware
    [ org.ofono.SmartMessaging ]
    [ org.ofono.PushNotification ]
    [ org.ofono.MessageManager ]
        ServiceCenterAddress = +15551234567
        UseDeliveryReports = 0
        Bearer = cs-preferred
        Alphabet = default
    [ org.ofono.Phonebook ]
    [ org.ofono.TextTelephony ]
        Enabled = 1
    [ org.ofono.RadioSettings ]
        TechnologyPreference = any
        AvailableTechnologies = gsm umts lte 
    [ org.ofono.CallForwarding ]
        VoiceUnconditional = 
        VoiceBusy = 
        VoiceNoReply = 
        VoiceNoReplyTimeout = 20
        VoiceNotReachable = 
        ForwardingFlagOnSim = 0
    [ org.ofono.SimToolkit ]
        IdleModeText = 
        IdleModeIcon = 
        MainMenuTitle = 
        MainMenuIcon = 
        MainMenu = 
    [ org.ofono.SimAuthentication ]
        NetworkAccessIdentity = [email protected]
    [ org.ofono.AllowedAccessPoints ]
    [ org.ofono.VoiceCallManager ]
        EmergencyNumbers = 911 1020 112 
    [ org.ofono.SimManager ]
        Present = 1
        CardIdentifier = 8949222074451242066
        SubscriberIdentity = 246813579
        ImsPrivateIdentity = [email protected]
        FixedDialing = 0
        BarredDialing = 0
        MobileCountryCode = 246
        MobileNetworkCode = 81
        SubscriberNumbers = 358501234567 
        LockedPins = 
        ServiceNumbers = [112] = '112' [Emergency] = '999' [Police] = '997' [Firemen] = '998' [Sea emergency] = '+48601100100' [Mountain emer.] = '+48601100300' [.HELP DESK] = '2601' [.RECHARGE] = '5555' [.Voicemail] = '+48601222222' [.Voice access] = '+48601104444' 
        PreferredLanguages = de en it fr es nl 
        PinRequired = none
        Retries = [pin = 3] 
        CardSlotCount = 1
        ActiveCardSlot = 1

bluetoothd only seems to give useful info related to A2DP.

Any ideas? Has anyone gotten this to work with the phone as the Audio Gateway?

edit: cat /var/log/syslog* | grep -i pulse shows [datetime][machine] pulseaudio[839]: Refused to switch profile to headset_audio_gateway: Not connected after attempting to switch to HFP manually in blueman.

Update Feb 24 2022: So I realized that I had headset=native set in /etc/pulse/default.pa, from some earlier testing where I was trying to ensure HSP instead of HFP. So now that i've set headset=ofono I'm no longer getting an error message "Failed to change profile to headset_audio_gateway" when I switch to HFP.

output from $ pacmd list-cards:

index: 4
        name: <bluez_card.E0_D0_83_93_CC_5A>
        driver: <module-bluez5-device.c>
        owner module: 28
        properties:
                device.description = "enwave64's Note10"
                device.string = "E0:D0:83:93:CC:5A"
                device.api = "bluez"
                device.class = "sound"
                device.bus = "bluetooth"
                device.form_factor = "phone"
                bluez.path = "/org/bluez/hci0/dev_E0_D0_83_93_CC_5A"
                bluez.class = "0x5a020c"
                bluez.alias = "enwave64's Note10"
                device.icon_name = "audio-card-bluetooth"
        profiles:
                headset_head_unit: Headset Head Unit (HSP/HFP) (priority 30, available: no)
                a2dp_source: High Fidelity Capture (A2DP Source) (priority 20, available: unknown)
                headset_audio_gateway: Headset Audio Gateway (HSP/HFP) (priority 10, available: yes)
                off: Off (priority 0, available: yes)
        active profile: <headset_audio_gateway>
        sinks:
                bluez_sink.E0_D0_83_93_CC_5A.headset_audio_gateway/#7: enwave64's Note10
        sources:
                bluez_sink.E0_D0_83_93_CC_5A.headset_audio_gateway.monitor/#17: Monitor of enwave64's Note10
                bluez_source.E0_D0_83_93_CC_5A.headset_audio_gateway/#18: enwave64's Note10
        ports:
                phone-output: Phone (priority 0, latency offset 0 usec, available: yes)
                        properties:

                phone-input: Phone (priority 0, latency offset 0 usec, available: yes)
                        properties:

So at least I see headset_audio_gateway: Headset Audio Gateway (HSP/HFP) (priority 10, available: yes) now. Now the issue is it seems like I can switch to HSP/HFP okay, but I'm still getting silence. This was the same result I would get with HSP before installing ofono & ofono-phonesim.

last piece of new info from cat /var/log/syslog* | grep -i pulse: pulseaudio[882]: Deferred setup faild on fd -1: Transport endpoint is not connected. Not exactly sure what this means or if it's relevant but looks to be a new error.

0

You must log in to answer this question.

Browse other questions tagged .