2004-01-05 13:22:15

by Stephen Crane

[permalink] [raw]
Subject: [Bluez-devel] non-blocking device discovery

Hi,
I seem to remember a posting to this list in which someone mentioned
that they'd implemented non-blocking device-discovery by writing
commands directly to the hci socket. The code was C++ which leads me to
think that it was part of KDE but I can't find it on the net.

Can someone refresh my memory?

Thanks,
Steve
--
Stephen Crane, Rococo Software Ltd. http://www.rococosoft.com
[email protected] +353-1-6601315 (ext 209)



-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills. Sign up for IBM's
Free Linux Tutorials. Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click
_______________________________________________
Bluez-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-devel


2004-01-07 04:44:13

by Marcel Holtmann

[permalink] [raw]
Subject: Re: [Bluez-devel] non-blocking device discovery

Hi Stephen,

> Now onto my new question, what are the semantics of OCF_INQUIRY? I seem
> to be getting one unique device per inquiry call. That is I get one
> EVT_INQUIRY_RESULT event with a bdaddr I haven't seen before and then it
> terminates with an EVT_INQUIRY_COMPLETE. For example:
>
> inquiry
> found 00:aa:bb:cc:dd:ee
> inquiry complete
> ...
> inquiry
> found 00:aa:bb:cc:dd:ee
> found 00:aa:bb:cc:dd:ef
> inquiry complete
>
> ...and so on. It seems that when it finds a new device, it passes that
> back up and exits inquiry mode. Can this be right (or have I fscked
> up)? It only stays in inquiry mode for the specified length of time
> when there are no new devices to be found.

this is not the whole story. What you see is the behaviour of the CSR,
Ericsson and ST based devices, which filter out duplicates. The devices
from Nokia, Broadcom and AVM report every device and it is possible that
you see some bdaddr's more than once.

Regards

Marcel




-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills. Sign up for IBM's
Free Linux Tutorials. Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click
_______________________________________________
Bluez-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-devel

2004-01-06 15:53:30

by Stephen Crane

[permalink] [raw]
Subject: Re: [Bluez-devel] non-blocking device discovery

Sorry, it was my fsck-up. (Funny how quickly these things are discovered
after going public :-)

On Tue, 2004-01-06 at 15:34, Stephen Crane wrote:
> Hi Fred and list,
> Yeah that was the code I was referring to. (It is also very similar to
> the code I'd cobbled together from Marcel's libs2 and the old
> hci_inquiry() from libs1.)
>=20
> Now onto my new question, what are the semantics of OCF_INQUIRY? I seem
> to be getting one unique device per inquiry call. That is I get one
> EVT_INQUIRY_RESULT event with a bdaddr I haven't seen before and then i=
t
> terminates with an EVT_INQUIRY_COMPLETE. For example:
>=20
> inquiry
> found 00:aa:bb:cc:dd:ee
> inquiry complete
> ...
> inquiry
> found 00:aa:bb:cc:dd:ee
> found 00:aa:bb:cc:dd:ef
> inquiry complete
>=20
> ...and so on. It seems that when it finds a new device, it passes that
> back up and exits inquiry mode. Can this be right (or have I fscked
> up)? It only stays in inquiry mode for the specified length of time
> when there are no new devices to be found.
>=20
> I have set the inquiry time parameter to 0x30 and the number of devices
> to 0xff (both the max as per the spec).
>=20
> TIA,
> Steve
>=20
> On Mon, 2004-01-05 at 19:12, Fred Sch=E4ttgen wrote:
> > On Monday 05 January 2004 14:22, Stephen Crane wrote:
> > > Hi,
> > > I seem to remember a posting to this list in which someone mentione=
d
> > > that they'd implemented non-blocking device-discovery by writing
> > > commands directly to the hci socket. The code was C++ which leads m=
e to
> > > think that it was part of KDE but I can't find it on the net.
> > >
> > > Can someone refresh my memory?
> >=20
> > Maybe you were looking for this: http://cvs.sourceforge.net/viewcvs.p=
y/
> > kde-bluetooth/kdebluetooth/libkbluetooth/? It's not part of the offic=
ial KDE=20
> > distribution (yet), but it's in fact KDE/Qt code..
> >=20
> > greetings
> > Fred
> >=20
> >=20
> >=20
> > -------------------------------------------------------
> > This SF.net email is sponsored by: IBM Linux Tutorials.
> > Become an expert in LINUX or just sharpen your skills. Sign up for I=
BM's
> > Free Linux Tutorials. Learn everything from the bash shell to sys ad=
min.
> > Click now! http://ads.osdn.com/?ad_id=3D1278&alloc_id=3D3371&op=3Dcli=
ck
> > _______________________________________________
> > Bluez-devel mailing list
> > [email protected]
> > https://lists.sourceforge.net/lists/listinfo/bluez-devel
--=20
Stephen Crane, Rococo Software Ltd. http://www.rococosoft.com
[email protected] +353-1-6601315 (ext 209)



-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills. Sign up for IBM's
Free Linux Tutorials. Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click
_______________________________________________
Bluez-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-devel

2004-01-06 15:34:14

by Stephen Crane

[permalink] [raw]
Subject: Re: [Bluez-devel] non-blocking device discovery

Hi Fred and list,
Yeah that was the code I was referring to. (It is also very similar to
the code I'd cobbled together from Marcel's libs2 and the old
hci_inquiry() from libs1.)

Now onto my new question, what are the semantics of OCF_INQUIRY? I seem
to be getting one unique device per inquiry call. That is I get one
EVT_INQUIRY_RESULT event with a bdaddr I haven't seen before and then it
terminates with an EVT_INQUIRY_COMPLETE. For example:

inquiry
found 00:aa:bb:cc:dd:ee
inquiry complete
...
inquiry
found 00:aa:bb:cc:dd:ee
found 00:aa:bb:cc:dd:ef
inquiry complete

...and so on. It seems that when it finds a new device, it passes that
back up and exits inquiry mode. Can this be right (or have I fscked
up)? It only stays in inquiry mode for the specified length of time
when there are no new devices to be found.

I have set the inquiry time parameter to 0x30 and the number of devices
to 0xff (both the max as per the spec).

TIA,
Steve

On Mon, 2004-01-05 at 19:12, Fred Sch=E4ttgen wrote:
> On Monday 05 January 2004 14:22, Stephen Crane wrote:
> > Hi,
> > I seem to remember a posting to this list in which someone mentioned
> > that they'd implemented non-blocking device-discovery by writing
> > commands directly to the hci socket. The code was C++ which leads me =
to
> > think that it was part of KDE but I can't find it on the net.
> >
> > Can someone refresh my memory?
>=20
> Maybe you were looking for this: http://cvs.sourceforge.net/viewcvs.py/
> kde-bluetooth/kdebluetooth/libkbluetooth/? It's not part of the officia=
l KDE=20
> distribution (yet), but it's in fact KDE/Qt code..
>=20
> greetings
> Fred
>=20
>=20
>=20
> -------------------------------------------------------
> This SF.net email is sponsored by: IBM Linux Tutorials.
> Become an expert in LINUX or just sharpen your skills. Sign up for IBM=
's
> Free Linux Tutorials. Learn everything from the bash shell to sys admi=
n.
> Click now! http://ads.osdn.com/?ad_id=3D1278&alloc_id=3D3371&op=3Dclick
> _______________________________________________
> Bluez-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/bluez-devel
--=20
Stephen Crane, Rococo Software Ltd. http://www.rococosoft.com
[email protected] +353-1-6601315 (ext 209)



-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills. Sign up for IBM's
Free Linux Tutorials. Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click
_______________________________________________
Bluez-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-devel

2004-01-05 19:12:34

by Fred Schaettgen

[permalink] [raw]
Subject: Re: [Bluez-devel] non-blocking device discovery

On Monday 05 January 2004 14:22, Stephen Crane wrote:
> Hi,
> I seem to remember a posting to this list in which someone mentioned
> that they'd implemented non-blocking device-discovery by writing
> commands directly to the hci socket. The code was C++ which leads me to
> think that it was part of KDE but I can't find it on the net.
>
> Can someone refresh my memory?

Maybe you were looking for this: http://cvs.sourceforge.net/viewcvs.py/
kde-bluetooth/kdebluetooth/libkbluetooth/? It's not part of the official KDE
distribution (yet), but it's in fact KDE/Qt code..

greetings
Fred



-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills. Sign up for IBM's
Free Linux Tutorials. Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click
_______________________________________________
Bluez-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-devel

2004-01-05 13:44:12

by Marcel Holtmann

[permalink] [raw]
Subject: Re: [Bluez-devel] non-blocking device discovery

Hi Stephen,

> I seem to remember a posting to this list in which someone mentioned
> that they'd implemented non-blocking device-discovery by writing
> commands directly to the hci socket. The code was C++ which leads me to
> think that it was part of KDE but I can't find it on the net.
>
> Can someone refresh my memory?

I posted examples of this on the mailing list some time ago. You can
also take a look at libs2/lib/bluetooth.c and see the bt_inquiry()
function. This function is not yet complete, but it should give you a
general idea how it works.

Regards

Marcel




-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills. Sign up for IBM's
Free Linux Tutorials. Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click
_______________________________________________
Bluez-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-devel