Wireless Communication Library Support Forum

Frameworks => Bluetooth Framework => Topic started by: saustin on March 17, 2016, 03:01:00 AM

Title: BLE alternative
Post by: saustin on March 17, 2016, 03:01:00 AM
We are very pleased with our developers license for VB.Net so far, but have a few questions.

We have developed a Windows Forms VB.Net application (using wcl VB.NET 4.5.1) to run on a Surface 3 (not Pro) that communicates with three Bluetooth 2.1 sensor type devices using SPP and the Surface 3 BT radio.  We are using wcl for discovery, pairing, in range, connection and data flows and everything is working wonderfully .  Our application is very responsive with the Bluetooth communications, using a request/reply action to fetch sensor data and do some processing of it.  Connecting to one of our devices takes 3-5 seconds (which is excellent for us) and since we have three devices we use three instances of wclClient and use the Ondata event for each for reply handling.   The BT connections to all sensors remains active during a 15 minute data collection duration with 1 second samples.  I believe with our post processing time, we could have good results down to 250mS periods if needed.  Thank you for your excellent product!   We were previously using a VB.Net vCom method in Visual Studio (before wcl) with it's longer connect times and blocking/threading actions that the VB serial control comes with.   (We are using the latest versions of Windows 10 and VS Community 2015 (as of March 15, 2016))

Next Step:
We would like to incorporate another sensor that we are performing the design/build for, and we wish to use BLE 4.1 for this (probably with GATT). 

You do not currently have a BLE solution for the Microsoft LE stack in Windows 10. 

Questions that may shed some light:

1. Assuming we will use a Surface 3 with it's hardware and Windows 10 with it's MS drivers/bluetooth stacks, and assuming that you had a Microsoft  BLE solution available to use,  is it even reasonable to think that the single BT radio can perform both BT 2.1 and BLE 4.1 communications concurrently?

2. One possible solution might be to add a USB BT dongle (a second radio) with BlueSoleil stack and use your BLE code for that?

3. We have thought about using a Universal Windows Apps application or dll (VS with Win10 SDK) since it appears BLE BT devices are supported in the Windows.Devices.Bluetooth namespace area.  What would be your opinion in going this direction?

Thank You for you consideration.

S. Austin
Automated Control Systems
Savage, Minnesota, USA
Title: Re: BLE alternative
Post by: Mike Petrichenko on March 17, 2016, 08:58:02 AM

First I must say that BLE on Windows is something "strange". After past few years I am working with it it does not look good working. First, on Win 8 you can not discover BLE devices from your application. Second, on Win 10 even there is a possible way to discover BLE devices from your application you always must "install" the device so Windows installs it drivers. And you can work only with supported profiles. Then. After reboot or after disconnect from your BLE device you need (in 90%) to re-install the device as windows does not connect to it any more. It looks like BLE on Window swas developed by 10 different temas and no one knows exactly what others do and how. It has 3 (three) different APIs absolutely incompatable with each other. Really bad things.

Now with your questions:

1. At least it works with BlueSoleil. Should work with MS as well but I can not give any guaratee.
2. Yes, BlueSoleil has much better BLE support.
3. On Win 10 it may be not bad idea but it also has lot of limitations.
Title: Re: BLE alternative
Post by: saustin on March 18, 2016, 02:26:02 PM
I see Bluesoleil has dongles and software.  What in particular would be needed for this second radio idea as I am not familiar with Bluesoleil?
Title: Re: BLE alternative
Post by: Mike Petrichenko on March 18, 2016, 04:23:13 PM
You can use any BLE dongle with BlueSoleil.