Hello everyone,
I'm trying to find the fastest possible way to get RSSI values for
Bluetooth devices. So far, my code looks like this:
dev_id = hci_get_route(NULL);
hci_devinfo(dev_id,&di);
...
num_rsp = hci_inquiry(dev_id, len, max_rsp, NULL, &ii, flags);
...
for (i = 0; i < num_rsp; i++) {
uint16_t myhandle;
if (hci_create_connection(
sock,
&(ii+i)->bdaddr,
htobs(di.pkt_type & ACL_PTYPE_MASK),
(ii+i)->clock_offset,
0,
&myhandle,
0
) < 0) perror("hci_create_con");
if (hci_read_rssi(sock, myhandle, &rssi, 0) < 0)
rssi = -127;
hci_disconnect(sock, myhandle, HCI_OE_USER_ENDED_CONNECTION, 0);
...
}
Now, while this works, I feel it's really slow.
Can somebody please enlighten me to the meaning of parameters 3-5 of
hci_create_connection? I also would be grateful for some mid-level
description of the Bluetooth protocol..
What I believe to know is this:
- ptype: Packet types which are allowed for this connection.
Intersection of what the device supports and all ACL packet types.
- clock offset: difference in ticks between local device clock and
target device clock. My limited Bluetooth knowledge made me think that
when I specify the offset from hci_inquiry, the connection should be
created faster, as the clock offset doesn't have to be calculated
again. However, I don't really see a difference when I just set this
to 0.
- rswitch: Allow role switch. Not a difference either..
I know that somebody posted a while ago that L2CAP should be preferred
for such tasks, but IIRC, opening an L2CAP connection requires
authentication/pairing while this method doesn't.
Please correct my half-knowledge, where appropriate :-)
Thanks for your help,
Yours, Florian
--
0666 - Filemode of the Beast
-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
Don't miss this year's exciting event. There's still time to save $100.
Use priority code J8TL2D2.
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
Bluez-devel mailing list
Bluez-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/bluez-devel
[Linux USB Devel]
[Video for Linux]
[Linux Audio Users]
[Photo]
[Yosemite News]
[Yosemite Photos]
[Free Online Dating]
[Linux Kernel]
[Linux SCSI]
[XFree86]