Re: BlueZ Creates conflicting deviceinfo service.

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

 



Hi Ryan,

On Thu, Mar 4, 2021 at 11:10 AM Ryan Walmsley <ryan@xxxxxxxxxxxxx> wrote:
>
> Hi,
>
> We've been working on something that uses Bluetooth to provide GATT
> services and recently have updated to BlueZ 5.55 from 5.53 and have
> found an issue.
>
> It seems that in the newer version a commit was made
> (d5e07945c4aa36a83addc3c269f55c720c28afdb) that enabled the service
> 0x180A with characteristic 0x2A50.

Yep, DIS is controlled by the daemon since you can set the vendor,
product and version using main.conf.

> However as our software creates a service on 0x180A it causes a
> conflict, as the application we are making our software with reads
> from the first service available which is the one generated by BlueZ.

You should probably stop doing that and just use main.conf to set the
values you want to be published, we should actually blacklist DIS to
be registered by applications since that is defined by the platform
having the application to override may actually cause problems.

> It looks like it was discussed about a kill switch being added of
> "DeviceIdOverLE" to then disable this but I can't find any reference
> to this at all.
>
> How would be best to disable this?

Disable DIS on the application, you can actually check if the adapter
has enabled it already using its UUIDs:

https://git.kernel.org/pub/scm/bluetooth/bluez.git/tree/doc/adapter-api.txt#n321

bluetoothctl also can be use to print the list of UUIDs that the
adapter is exposing (0000180a-0000-1000-8000-00805f9b34fb is DIS):

[bluetooth]# show
Controller 00:AA:01:01:00:24 (public)
Name:
Alias:
Class: 0x00000000
Powered: no
Discoverable: no
DiscoverableTimeout: 0x000000b4
Pairable: yes
UUID: Message Notification Se.. (00001133-0000-1000-8000-00805f9b34fb)
UUID: A/V Remote Control        (0000110e-0000-1000-8000-00805f9b34fb)
UUID: OBEX Object Push          (00001105-0000-1000-8000-00805f9b34fb)
UUID: Message Access Server     (00001132-0000-1000-8000-00805f9b34fb)
UUID: PnP Information           (00001200-0000-1000-8000-00805f9b34fb)
UUID: IrMC Sync                 (00001104-0000-1000-8000-00805f9b34fb)
UUID: Headset                   (00001108-0000-1000-8000-00805f9b34fb)
UUID: A/V Remote Control Target (0000110c-0000-1000-8000-00805f9b34fb)
UUID: Generic Attribute Profile (00001801-0000-1000-8000-00805f9b34fb)
UUID: Phonebook Access Server   (0000112f-0000-1000-8000-00805f9b34fb)
UUID: Audio Sink                (0000110b-0000-1000-8000-00805f9b34fb)
UUID: Device Information        (0000180a-0000-1000-8000-00805f9b34fb)
UUID: Generic Access Profile    (00001800-0000-1000-8000-00805f9b34fb)
UUID: Headset AG                (00001112-0000-1000-8000-00805f9b34fb)
UUID: Audio Source              (0000110a-0000-1000-8000-00805f9b34fb)
UUID: OBEX File Transfer        (00001106-0000-1000-8000-00805f9b34fb)
Modalias: usb:v1D6Bp0246d0538
Discovering: no
Roles: central
Roles: peripheral
Advertising Features:
ActiveInstances: 0x00 (0)
SupportedInstances: 0x01 (1)
SupportedIncludes: tx-power
SupportedIncludes: appearance
SupportedIncludes: local-name
SupportedSecondaryChannels: 1M
SupportedSecondaryChannels: 2M
SupportedSecondaryChannels: Coded

> --
> Ryan Walmsley
>
> Engineer
>
> Pi Supply Unit 4 Bells Yew Green Business Court,
> Bells Yew Green, East Sussex, TN3 9BJ, United Kingdom



-- 
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