Author Topic: Problems with Discovery  (Read 1990 times)


  • Guest
Problems with Discovery
« on: September 04, 2008, 04:42:53 PM »
I'm writing a pairing wizard for my application using your library and running in to some problems.

* VB.NET 2005
* Microsoft Bluetooth Stack

1)  The list returns devices already paired with the stack and new ones in range.
  • Is there a way to differentiate which devices were just detected and which are returned from the Bluetooth stack cache of currently paired devices?  I can use the  wclBluetoothDevices.InRange() function but that takes a significant amount of time to return when the device is not actually in range.  This delay is much more noticeable when there are multiple devices already paired with the stack.
  • I am using wclBluetoothDiscovery.Discovery() and obtaining the list from the DiscoveryCompleted event.

2)  The max number of returned devices appears to be 8 regardless of new or already paired.
  • Is there a limitation regarding this?  I know there is a limitation regarding the number of active connections, but unaware of any regarding pairing.

3)  Is there an event or anything else that I can hook into to get the devices as they are being detected instead of waiting until the discovery is completed?

4)  Is there a way to set the discovery time?  If not, what is the duration and what is it based on? I would like to send the user some feedback regarding the time left for discovery.

Offline Mike Petrichenko

  • Bluetooth Framework Developer
  • Administrator
  • Hero Member
  • *****
  • Posts: 3053
  • Karma: 1000
    • Soft Service Company
Re: Problems with Discovery
« Reply #1 on: September 04, 2008, 07:03:41 PM »
Good day!

1. The list of returned devices is hard depended on the bluetooth stack. For Microsoft there is no way to can differently paired and new devices. Use Device.Paired property to check is device already paired.
2. Also, it depends on stack implementation. I never tested how much paired devices window can store.
3. No. There is no such event. But you can use InRange function inthread to monitor specified device.
4. No. The discovery time is hard coded BT stack velue. It is stored in registry but I do not recomend to chege it because stack may become unstable.


Sitemap 1 2 3 4 5 6 7 8 9