Linux bluetooth development
 help / color / mirror / Atom feed
From: "Pali Rohár" <pali.rohar@gmail.com>
To: Luiz Augusto von Dentz <luiz.dentz@gmail.com>
Cc: "linux-bluetooth@vger.kernel.org" <linux-bluetooth@vger.kernel.org>
Subject: Re: [PATCH v3 1/9] doc/media-api: Enable MediaEndpoint to expose remote SEP
Date: Fri, 3 May 2019 08:17:41 +0200	[thread overview]
Message-ID: <20190503061741.jw4lcyfi2cetrxrt@pali> (raw)
In-Reply-To: <CABBYNZJGLGnNzXC_Q+Visk1XPwP9FX+BvJ65UQMj4tMJfL92+Q@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 4805 bytes --]

On Wednesday 23 January 2019 13:24:22 Luiz Augusto von Dentz wrote:
> Hi Pali,
> On Tue, Jan 22, 2019 at 7:56 PM Pali Rohár <pali.rohar@gmail.com> wrote:
> >
> > On Tuesday 22 January 2019 16:20:12 Luiz Augusto von Dentz wrote:
> > > Hi Pali,
> > > On Tue, Jan 22, 2019 at 3:45 PM Luiz Augusto von Dentz
> > > <luiz.dentz@gmail.com> wrote:
> > > >
> > > > From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
> > > >
> > > > This adds the possibility to expose remote SEP using MediaEndpoint
> > > > interface to allow setting a configuration.
> > > > ---
> > > >  doc/media-api.txt | 27 +++++++++++++++++++++++++--
> > > >  1 file changed, 25 insertions(+), 2 deletions(-)
> > > >
> > > > diff --git a/doc/media-api.txt b/doc/media-api.txt
> > > > index b5ad2db12..af9485342 100644
> > > > --- a/doc/media-api.txt
> > > > +++ b/doc/media-api.txt
> > > > @@ -500,14 +500,23 @@ Properties        object Player [readonly]
> > > >  MediaEndpoint1 hierarchy
> > > >  ========================
> > > >
> > > > -Service                unique name
> > > > +Service                unique name (Server role)
> > > > +               org.bluez (Client role)
> > > >  Interface      org.bluez.MediaEndpoint1
> > > > -Object path    freely definable
> > > > +Object path    freely definable (Server role)
> > > > +               [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX/sepX
> > > > +               (Client role)
> > > >
> > > >  Methods                void SetConfiguration(object transport, dict properties)
> > > >
> > > >                         Set configuration for the transport.
> > > >
> > > > +                       For client role transport must be set with a server
> > > > +                       endpoint oject which will be configured and the
> > > > +                       properties must contain the following properties:
> > > > +
> > > > +                               array{byte} Capabilities
> > > > +
> > > >                 array{byte} SelectConfiguration(array{byte} capabilities)
> > > >
> > > >                         Select preferable configuration from the supported
> > > > @@ -532,6 +541,20 @@ Methods            void SetConfiguration(object transport, dict properties)
> > > >                         endpoint, because when this method gets called it has
> > > >                         already been unregistered.
> > > >
> > > > +Properties     string UUID [readonly, optional]:
> > > > +
> > > > +                       UUID of the profile which the endpoint is for.
> > > > +
> > > > +               byte Codec [readonly, optional]:
> > > > +
> > > > +                       Assigned number of codec that the endpoint implements.
> > > > +                       The values should match the profile specification which
> > > > +                       is indicated by the UUID.
> > > > +
> > > > +               array{byte} Capabilities [readonly, optional]:
> > > > +
> > > > +                       Capabilities blob, it is used as it is so the size and
> > > > +                       byte order must match.
> > > >
> > > >  MediaTransport1 hierarchy
> > > >  =========================
> > > > --
> > > > 2.17.2
> > >
> > > Can you try this set?
> >
> > Hi! In V3 you added only "a2dp: Add reverse discovery" patch right?
> > I tested my setup also with this patch and there is no difference,
> > pulseaudio is working fine :-)
> >
> 
> Applied.
> 

Now I found another bug. The whole codec switching does not work with
some Ausdom headset. When pulseaudio try to switch codec profile it just
get from bluez org.bluez.Error.Failed: Invalid argument DBus error
message. And in bluez log is just: avdtp_close: Invalid argument

In btmon I'm seeing following output:

< ACL Data TX: Handle 35 flags 0x00 dlen 7              #4093 [hci0] 112.879357
      Channel: 2242 len 3 [PSM 0 mode 0] {chan 0}
        60 09 04                                         `..             
> HCI Event: Number of Completed Packets (0x13) plen 5  #4094 [hci0] 112.879474
        Num handles: 1
        Handle: 35
        Count: 1
> HCI Event: Number of Completed Packets (0x13) plen 5  #4095 [hci0] 112.883600
        Num handles: 1
        Handle: 35
        Count: 2
> HCI Event: Number of Completed Packets (0x13) plen 5  #4096 [hci0] 112.884598
        Num handles: 1
        Handle: 35
        Count: 1
> ACL Data RX: Handle 35 flags 0x02 dlen 6              #4097 [hci0] 112.906614
      Channel: 66 len 2 [PSM 0 mode 0] {chan 0}
        62 09                                            b.              
= bluetoothd: avdtp_close: Invalid argument                          112.908009

Any idea why that avdp_close is failing?

-- 
Pali Rohár
pali.rohar@gmail.com

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

      parent reply	other threads:[~2019-05-03  6:17 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-01-22 13:45 [PATCH v3 1/9] doc/media-api: Enable MediaEndpoint to expose remote SEP Luiz Augusto von Dentz
2019-01-22 13:45 ` [PATCH v3 2/9] a2dp: Expose " Luiz Augusto von Dentz
2019-01-22 13:45 ` [PATCH v3 3/9] doc/media-api: Add Endpoint property to MediaTransport Luiz Augusto von Dentz
2019-01-22 13:45 ` [PATCH v3 4/9] a2dp: Implement MediaTransport.Endpoint Luiz Augusto von Dentz
2019-01-22 13:45 ` [PATCH v3 5/9] doc/settings-storage: Add Endpoint group to cache Luiz Augusto von Dentz
2019-01-22 13:45 ` [PATCH v3 6/9] a2dp: Cache remote endpoints Luiz Augusto von Dentz
2019-01-22 13:45 ` [PATCH v3 7/9] doc/media-api: Add Device property to MediaEndpoint Luiz Augusto von Dentz
2019-01-22 13:45 ` [PATCH v3 8/9] a2dp: Add implementation of MediaEndpoint.Device Luiz Augusto von Dentz
2019-01-22 13:45 ` [PATCH v3 9/9] a2dp: Add reverse discovery Luiz Augusto von Dentz
2019-01-22 14:20 ` [PATCH v3 1/9] doc/media-api: Enable MediaEndpoint to expose remote SEP Luiz Augusto von Dentz
2019-01-22 17:56   ` Pali Rohár
2019-01-23 11:24     ` Luiz Augusto von Dentz
2019-01-27  2:00       ` Pali Rohár
2019-03-27 11:14         ` Pali Rohár
2019-04-19  8:03           ` Pali Rohár
2019-04-19 10:04             ` Luiz Augusto von Dentz
2019-04-19 11:01               ` Pali Rohár
2019-04-19 11:48                 ` Luiz Augusto von Dentz
2019-04-19 12:04                   ` Pali Rohár
2019-04-20  6:43                     ` Luiz Augusto von Dentz
2019-04-20  7:00                       ` Pali Rohár
2019-04-20  7:31                         ` Luiz Augusto von Dentz
2019-04-05 16:47       ` Pali Rohár
2019-04-08  9:41         ` Luiz Augusto von Dentz
2019-04-08  9:47           ` Luiz Augusto von Dentz
2019-04-08  9:53             ` Pali Rohár
2019-04-19  8:03           ` Pali Rohár
2019-05-03  6:17       ` Pali Rohár [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190503061741.jw4lcyfi2cetrxrt@pali \
    --to=pali.rohar@gmail.com \
    --cc=linux-bluetooth@vger.kernel.org \
    --cc=luiz.dentz@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox