Re: [Bluez-users] concurrent calls to RFCOMM connect()

Marcel Holtmann
2007-11-27T08:29:21Z

Hi Andrea,

> > It serializes connection attempts to different remote devices. If you
> > try to connect to the same remote device (by opening the same TTY twice)
> > then you are out of luck. The kernel is not doing anything here.
>
> My question was not clear enough... In my test I try to connect to a
> different remote address while in progress with the first one (both
> powered off). I do it like this:
>
> Terminal 1:
> $> rfcomm connect 00:01:95:07:30:EA
>
> Terminal 2 (while the first attempt is in progress):
> $> rfcomm connect 00:01:95:07:30:40
> Can't connect RFCOMM socket: Device or resource busy
>
> Does it mean my kernel and/or my bluez-utils are too old to queue
> connection attempts?

I think your kernel is too old, because we fixed that. However the
kernel only queues the attempt. It won't make it faster since we can't
serialize the baseband/radio.

> > You need to read the specification since clearly you are guessing here
> > behavior. The various timeouts can be configured. Or maybe get a book
> > that explains the basics behind the Bluetooth radio.
>
> I'm going to follow your suggestions, even if I believe the
> specification is too intricated for me. Maybe a book is a better
> choice. Thanks for patience.

There exist a bunch of books that are good enough. Actually the might be
even better then the raw specification document.

Regards

Marcel