7

I recently came into the possession of a few Estimote devices and was kind of bummed that there was no Windows SDK just yet. So I tried to see about just finding the devices myself since they're just Bluetooth Low Energy devices.

What I have found is that neither my WPF test (using the wonderful 32feet.NET or just code) nor a Windows Phone 8.1 device (both the settings screen and in code) can see these beacons.

But they can be seen under Windows 8's desktop OS settings screen. This is what I see under Windows 8 when I have the Estimotes nearby and attempt to detect Bluetooth devices:

Bluetooth detection on Windows 8

Does anyone know why the Windows desktop OS is able to see them but nothing that I've found with C#.NET is able to detect these beacons? And does anyone have any workarounds that let's me detect beacons under Windows Phone? I don't really have a need to talk to them right now, just to know which beacon is nearby.

Liam
  • 1,712
  • 1
  • 17
  • 30
  • I'm pretty sure that your .NET application running in Windows is not able to scan for any devices. So if you want to develop a BLE based Windows application, you can only perform operations when it is connected to a remote device using the Bluetooth settings in Windows. I have no idea regarding your Windows Phone. It should be able to discover the devices if you're testing with a physical phone and if the phone supports Bluetooth 4.0 – Osman Esen Nov 02 '14 at 12:49

2 Answers2

4

I found this when searching for similar answers myself. It appears that currently Windows Store 8.1 and Windows Phone 8.1 apps have no support for the pairingless nature of Bluetooth Smart/BLE devices i.e. picking them up in passing as opposed to having to manually pair with them (not what you want to do when surrounded by beacons). They only appear when you try to manually pair with them.

http://vincenth.net/blog/archive/2014/04/24/building-cross-platform-ibeacon-apps-for-ios-android-and-windows-with-c-and-xamarin.aspx This link here confirms it: "Bluetooth Classic and Bluetooth Smart devices must be first discovered and paired via the Windows 8.1 PC settings UI (PC & devices>Bluetooth) before being accessible via the Windows Runtime APIs for Bluetooth"

Really frustrating.

Vixxd
  • 195
  • 1
  • 16
  • This is what I found as well, and this actually cost us abandoning Windows Phone as a platform for one of our client projects. This was truly disappointing that Microsoft implemented the spec in that way. – Liam Dec 29 '14 at 14:10
2

Regarding the question in the title: WinBeacon is a managed C# library that is able to detect iBeacons and can also act as a beacon. Great for testing purposes.

Unfortunately, this only works on a Windows OS, not the Windows Phone variant.

huysentruitw
  • 27,376
  • 9
  • 90
  • 133