AW: Bluetooth: Is it possible to operate Bluez concurrent in central and peripheral role?

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

 



Hello Luiz,

I have now tried the same procedure with my desktop linux pc instead of the embedded linux device.
The result is the same but I think in the logs is now more useful information.

It is also a Bluetooth 4.2 hardware but this time with an intel chipset.

I have tried two cases(the same procedure as before).
 1) first I established a connection from the smartphone to the desktop(desktop as peripheral device)
 2) try to establish a connection from desktop to the sensor(desktop as central device) using the command "connect 88:...." in blutoothctl tool while the connection between smartphone and desktop is still established
      The device was successfully discovered and is still available and waiting for connection.
      a) desktop starts passive device scan.
      b) sensor sends scan response.
      c) after the scan response is received, desktop disables the device scan 
      d) no further action at hci interface(expected le connection attempt command)
      e) bluetoothctl runs into timeout and logs "Failed to connect: org.bluez.Error.Failed"

After that I disconnected the smartphone from the desktop and did the same as mentioned in point 2.
The only difference in this case is that the connection attempt command is immediately sent after the passive device scan is disabled(point 2.c).

Maybe this is more helpful than the last answer.

Should I set any special flags that I get it to work?

Thanks.

Best Regards,
Thomas Eisenkolb

Hi Thomas,
On Thu, Oct 11, 2018 at 10:18 AM Eisenkolb Thomas <Eisenkolb.Thomas@xxxxxxxxxxx> wrote:
>
> Hello,
>
> I am working with blueZ 5.50 on a linux embedded device with kernel 4.14.
>
> Now I have to implement a use case where the linux embedded device communicates as a central device with a few sensors through Bluetooth LE characteristics and at the same time it should advertise some data and accept at least one incoming connection from a Smartphone as a peripheral device for maintenance cases.
>
> I haven't found any information about blueZ is supporting both LE roles at the same time.
> I have already tried it now for 2 days to get this use case to work and I found a few limitations for which I didn't find any solution.
>
> I was not able to advertise any data while my device had an active connection to a peripheral device.
> Also while the Smartphone is connected to my embedded device(peripheral), I don't receive any advertised Data from any sensor and I cannot connect to any sensor.
>
> The Bluetooth Hardware Module which I am using on the embedded Linux System supports Bluetooth 4.2. From the Bluetooth Standard I have found that concurrent use of both Bluetooth Low Energy Roles should be supported since Bluetooth 4.1.
>
> Is it possible from blueZ Stack side to implement this use-case?

BlueZ should work as dual roles already, if it doesn't there could bugs or the controller preventing commands to work properly.

> If yes, can you give me some hints what I have to consider to get this case working?

Do you have HCI logs of the problem(s)?

> If no, have you got a timeline when it will be supported or is this no planned to implement in near future?

Most of upstream effort is on mesh and updates to include 5.0 features, but dual-role is something that we might consider high priority if that is not working properly.

>
> Thanks for your answer,
> Thomas
>
>


--
Luiz Augusto von Dentz

Attachment: bluetoothctl.log
Description: bluetoothctl.log

Attachment: btmon.log
Description: btmon.log


[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