Re: Some headsets appear don't work when BlueZ connecting with both HSP AG and HFP AG.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Bao,

On Mon, Feb 1, 2021 at 9:48 AM Huang-Huang Bao <eh5@xxxxxxxx> wrote:
>
> Hi,
>
> Any comments on this?
>
> We have thought about how to fix it in client side, that is registering
> HFP AG or HSP AG profile with `AutoConnect` disabled and let PipeWire to
> initiate  headset profile connection throw
> `org.bluez.Device1.ConnectProfile(string uuid).
>
> But for headset has no A2DP support, PipeWire is not possible to get
> triggered with device connection event when other application is calling
> `org.bluez.Device1.Connect()` if `AutoConnect` is disabled on HSP AG and
> HFP AG profiles, so that PipeWire don't know when to initiate headset
> profile connection.
>
> Currently we disabled HSP AG by default on PipeWire to work around this
> problem.
> https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/425

I guess we could introduce a some sort of conflict frag but Im afraid
that would complicate things a lot because then we need to have some
sort o priority as well, also HSP is so ancient I would basically
consider it deprecated by now, the only reason to use is if you don't
have a Telephony (e.g. oFono) subsystem to handle the HFP properly.

> Regards,
> Bao.
>
> On 1/23/21 10:14 PM, Huang-Huang Bao wrote:
> > Hi linux-bluetooth,
> >
> >
> > PipeWire recently got HFP AG support,
> >
> > its native headset backend registers both HSP AG profile and HFP AG
> > profile with `AutoConnect` enabled by default.
> >
> > Hence, BlueZ would trying to connect headset with both HSP and HFP.
> > Seems it causes some headsets stop to work with HFP/HSP profile.
> >
> > Discussions on PipeWire:
> > https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/604#note_773590
> >
> > Frédéric Danis says:
> >  >Currently it seems to me that there are at least 3 behaviours when
> > both native HSP and HFP are enabled, depending on the Headset/Speaker:
> >  >
> >  >    with Sony WH-1000XM3, iiuc:
> >  >        HFP is tried first, starting SLC process
> >  >        then a connection to HSP is rejected by the headset which
> > stops to send AT commands on the HFP RFComm channel
> >  >        Audio is not working
> >  >    with Sony WH-CH710N:
> >  >        HFP is tried first, starting SLC process
> >  >        then a connection to HSP is rejected by the headset, but the
> > headset keeps on sending AT commands on the HFP RFComm channel
> >  >        Audio is working
> >  >    with JBL GO 2 speaker:
> >  >        HFP is tried first, starting SLC process on a RFComm channel
> >  >        then HSP is connected on a second RFComm channel and following
> > HFP AT commands are sent on this second channel
> >  >        Audio is not working (iirc)
> >
> > Can it be fixed in BlueZ? For example, do not auto-connect HSP or HFP
> > profile if the other one has been connected. Maybe to add an extra
> > option "Conflicts" on "org.bluez.ProfileManager1.RegisterProfile()" to
> > indicate UUIDs which conflict with registered profile.
> >
> > Regards,
> > Bao



-- 
Luiz Augusto von Dentz




[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux