Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

MS Bluetooth Stack: obtaining a remote device's friendly name

1 view
Skip to first unread message

Robert

unread,
Mar 31, 2008, 7:26:07 AM3/31/08
to
Hi all,

When using the functions BluetoothFindFirstDevice and
BluetoothFindNextDevice to do an inquiry, I just noticed that the
friendly names are returned in the BLUETOOTH_DEVICE_INFO struct that
is filled.

However, I don't want my bluetooth radio to retrieve the remote
device's friendly name (since this involves paging and may increase my
inquiry time).

Is it possible to configure in some way, to NOT retrieve the friendly
names for remote devices? (and let me as a developer choose whether I
need this information).

Any help is highly appreciated!

Robert

Doron Holan [MSFT]

unread,
Mar 31, 2008, 12:37:20 PM3/31/08
to
no, you cannot control this. this is more a user preference then a
particular app's preference anyways. the msft stack will query for friendly
names if and only if there are no other outstanding connect or inquiry
requests pending. in essence, the friendly names are gathered lazily once
the local radio is idle.

d

--
Please do not send e-mail directly to this alias. this alias is for
newsgroup purposes only.
This posting is provided "AS IS" with no warranties, and confers no rights.


"Robert" <Robe...@gmail.com> wrote in message
news:282e6f3a-1bc5-4b9e...@e6g2000prf.googlegroups.com...

Robert

unread,
Apr 1, 2008, 8:55:37 AM4/1/08
to
On 31 mrt, 18:37, "Doron Holan [MSFT]" <dor...@online.microsoft.com>
wrote:

> no, you cannot control this. this is more a user preference then a
> particular app's preference anyways. the msft stack will query for friendly
> names if and only if there are no other outstanding connect or inquiry
> requests pending. in essence, the friendly names are gathered lazily once
> the local radio is idle.
>
> d
>

Thanks Doron, for your reply.
Does an inquiry take precedence over this lazy way of gathering
friendly names? In other words, would it be possible that an inquiry
request be delayed because the radio is still busy requesting a
device's friendly name?

Doron Holan [MSFT]

unread,
Apr 1, 2008, 6:54:10 PM4/1/08
to
if an inquiry is requested in the middle of a friendly name request, it will
pend until the friendly name request returns. this is usually a matter of
milliseconds, so not that big of a deal in the end. there is no other way,
there is no way to cancel the FNR once it has been sent to the local radio

d

--
Please do not send e-mail directly to this alias. this alias is for
newsgroup purposes only.
This posting is provided "AS IS" with no warranties, and confers no rights.


"Robert" <Robe...@gmail.com> wrote in message

news:56c5a963-47f2-45aa...@e23g2000prf.googlegroups.com...

Robert

unread,
Apr 4, 2008, 7:54:14 AM4/4/08
to
> if an inquiry is requested in the middle of a friendly name request, it will
> pend until the friendly name request returns. this is usually a matter of
> milliseconds, so not that big of a deal in the end. there is no other way,
> there is no way to cancel the FNR once it has been sent to the local radio
>
> d


I've been testing with this, and these FNRs take a whole lot longer
than just a few milliseconds. I've found that it could take as long as
4 seconds. I guess this is happening when the FNR timeouts? If so, is
there some way to configure the FNR timeout?

Cheers, Robert

Doron Holan [MSFT]

unread,
Apr 7, 2008, 1:32:18 PM4/7/08
to
I do not think that the HCI command to request a FNR allows for a timeout,
this is a function of the underlying radio and the radio we are trying to
get a name for. Note that EIR fixes this issue b/c we get the friendly name
back in the inquiry response.

d

--
Please do not send e-mail directly to this alias. this alias is for
newsgroup purposes only.
This posting is provided "AS IS" with no warranties, and confers no rights.


"Robert" <Robe...@gmail.com> wrote in message

news:9526c608-b629-4df9...@d21g2000prf.googlegroups.com...

Robert

unread,
Apr 8, 2008, 4:37:19 AM4/8/08
to
> I do not think that the HCI command to request a FNR allows for a timeout,
> this is a function of the underlying radio and the radio we are trying to
> get a name for. Note that EIR fixes this issue b/c we get the friendly name
> back in the inquiry response.
>

Thanks Doran, one more final question then: the way I currently try to
decrease the FNRs (in my situtation timeouts happen very often) is to
update the local cache using BluetoothUpdateDeviceInfo, passing some
custom name.

Will this stop the FNRs from being sent for devices it has seen
before? Does the local cache ever get invalidated?

Thanks,
Robert

Doron Holan [MSFT]

unread,
Apr 8, 2008, 12:28:32 PM4/8/08
to
I assume you mean BluetoothUpdateDeviceRecord, not
BluetoothUpdateDeviceInfo. If so, this call will set the name of the remote
device in the bluetooth service, but not in the driver stack. the driver
stack is the one that issues the remote name request so calling this will
probably have no effect on the RNRs sent

d

--
Please do not send e-mail directly to this alias. this alias is for
newsgroup purposes only.
This posting is provided "AS IS" with no warranties, and confers no rights.


"Robert" <Robe...@gmail.com> wrote in message

news:10af98e6-4022-4d4a...@b64g2000hsa.googlegroups.com...

Robert

unread,
Apr 8, 2008, 12:41:20 PM4/8/08
to
> I assume you mean BluetoothUpdateDeviceRecord, not
> BluetoothUpdateDeviceInfo. If so, this call will set the name of the remote
> device in the bluetooth service, but not in the driver stack. the driver
> stack is the one that issues the remote name request so calling this will
> probably have no effect on the RNRs sent
>

Sorry, yes I meant BluetoothUpdateDeviceRecord...

What are the exact conditions for the stack to initiate a RNR? Is it
possible to somehow prevent this conditions from being fulfilled?
I can't use EIR since the devices we're using here are Bluetooth 1.2.

Thanks (again!),
Robert

Doron Holan [MSFT]

unread,
Apr 8, 2008, 2:19:13 PM4/8/08
to
the stack will issue an RNR for each device that is newly discovered that is
not paired or a friendly device.

d
--
Please do not send e-mail directly to this alias. this alias is for
newsgroup purposes only.
This posting is provided "AS IS" with no warranties, and confers no rights.


"Robert" <Robe...@gmail.com> wrote in message

news:5894c7df-8891-411a...@v26g2000prm.googlegroups.com...

Robert

unread,
Apr 8, 2008, 4:07:20 PM4/8/08
to
On 8 apr, 20:19, "Doron Holan [MSFT]" <dor...@online.microsoft.com>
wrote:

> the stack will issue an RNR for each device that is newly discovered that is
> not paired or a friendly device.
>
> d

Sorry that I keep on asking questions... But what exactly is a
friendly device?

Does this mean that if I can make a device a friendly device (by
whatever means), the RNR is not issued anymore?

Cheers, Robert

Doron Holan [MSFT]

unread,
Apr 8, 2008, 4:36:02 PM4/8/08
to
an RNR will be issued the first time we any device. a friendly device is
one that you want to "pair" with, but does not support numeric pairing.
think of a bth mouse.

d

--
Please do not send e-mail directly to this alias. this alias is for
newsgroup purposes only.
This posting is provided "AS IS" with no warranties, and confers no rights.


"Robert" <Robe...@gmail.com> wrote in message

news:7cdfc846-902a-48f0...@1g2000prg.googlegroups.com...

0 new messages