Please note that as of October 24, 2014, the Nokia Developer Wiki will no longer be accepting user contributions, including new entries, edits and comments, as we begin transitioning to our new home, in the Windows Phone Development Wiki. We plan to move over the majority of the existing entries. Thanks for all your past and future contributions.

Talk:Introduction to Bluetooth support on Windows Phone 8

From Wiki
Jump to: navigation, search


R2d2rigo - Validity of the first two sections

I have found that the "Introduction" and "WP8 Bluetooth communication" sections are a reworded version of . I don't know if this conflicts with the wiki's license or content guidelines, perhaps a moderator can shed some light in this?

r2d2rigo 23:49, 9 December 2012 (EET)

Hamishwillee - Does it value add?

R2d2rigo - thanks for pointing this out. We are concerned with issues of plagiarism and copyright. Copyright is a legal matter about ownership of content and ideas. The law for copyright is complex (at least to me!) but most cases some content can be reproduced for educational purposes (or with permission). Plagiarism is more a "moral" matter, that you don't use someone else's content without acknowledgement - I take this quite seriously, particularly in a competition.

So as a rule I'm OK with small copies of information provided they aren't direct copies, that they add value to a "bigger story" and that the origin is attributed (ie I read this article to get my source material). I think that in this case they do need to attribute the source articles used - then it is clear that what this article does is pull together an overview of the bluetooth story for WP8 from a number of sources, and what those sources are.

Aady, R2d2rigo Does that make sense?

(and as an aside, the introduction at least is pretty much a "public domain" description of Bluetooth - ie this sort of wording is used everywhere.)

As an article I don't find the structure convincing - it partially covers code about working with the APIs but does not do so anywhere near completely enough to use. On the other hand, if it was more complete then it would be a more direct copy of the document you pointed to - and there is no point in the duplication.

Where I see its values is as a technical but non-code overview of:

  1. what was possible in the past
  2. What is possible now in Wp8
  3. What will be possible in an update (probably)

So suggest remove the code - briefly explain the operations that can be done and point to the article. This of this as a product change guide, not as a "how to".

Again, hope that makes sense



hamishwillee 08:45, 10 December 2012 (EET)

Aady - Thanks R2d2rigo for ur feedback

I wont agree with you on that, but may be Hamish can guide appropriately on this, I will wait for his review. And thanks for you continuous feedback , which motivates me to improvise my articles and make them more perfect...

Warm Regards,


Aady 08:46, 10 December 2012 (EET)

Aady - Thanks for ur feedback & suggestion

Hi Hamish, Thanks for your review.

There is a reason behind this kind of article structure. Its completeness should not be defined in terms of coding capabilities of WP8 and bluetooth as that is already covered in DevCenter and i have provided links to MSDN examples. As you correctly mentioned, article's main focus is to give a quick info about the past, present techniques (in short) and mainly focuses on what the developers should be looking forward for and give focus on the bluetooth technology and its capabilities. As i could see many of the developers are too much more focused about NFC being a new explorable technology compared to bluetooth.

The reason i added the small code spinet and from my perspective it is a added value cause, the regular coding approaches are already defined in MSDN devcenter:

But there is a common area where the developers get confused and my code section just ensures that the developers dont get stuck at that point and wonder why the code as given on MSDN dont work.

Let me know if you still have a different view or any other suggestion.



Aady 09:11, 10 December 2012 (EET)

Hamishwillee - Rename/warning

Hi Aady

The article title is a problem for me because it implies support for a feature we don't support - BLE. This is confusing for users, who might only read the title and also deceptive because we don't know when the support will come. I have changed the name to be more general (and indeed be more accurate for what is covered by this article), and also added explicit warning that we don't support the feature yet. Please change the introduction in line with this more general title. If you strongly disagree then I would prefer not to host this article on the wiki at all.

To me the new title now makes the article make sense - you have a description of the BT support, you make clear we support BT 4.0. You talk about BLE support, but its not the main feature.

With respect to my previous comments I stand by them.

  1. You use text that is almost verbatim from another source - this needs to be acknowledged
  2. The code does not add value because either it is incomplete (there is enough to get in trouble but not to do anything) or is it inappropriate for the style of article you have created (a technical overview). I recommend you delete the code and just explain what is available and link to the actual code.



hamishwillee 00:35, 11 December 2012 (EET)

Aady - Sounds good to me

1. Article title change - no issues 2. Warning image on top - gr8 waz never aware of this feature.. 3. Link to reference - this was already added in below the section. 4. Code removal - will consider on that suggestion.

Thanks & Regards,


Aady 08:11, 12 December 2012 (EET)

SmithDouglasJ - WP8 and Bluetooth 4.0 (BLE)

This is the best discussion I have found between forums on devices that would benefit from or require BLE usage (FitBit) or Microsoft's own forum. I am interested in using devices for Health and Sports monitoring, but no such devices make apps for WindowsPhone because of Microsoft's failure to integrate Bluetooth 4.0 into WindowsPhone OS.

I have a Nokia Lumia 822 (Verizon) and I love it, but the apps are just not there. Big business is not making their apps for WindowsPhone, and this is just one of the OS's shortcomings. When will Microsoft fix this? I have had the phone for six months, bought with the expectation that after a few months, developers would start making apps for a Microsoft product, but no luck. Now I realize it's because the platform is inferior? Disgusting.

Please, those in the tech community, pass on these concerns to Microsoft. Their OS is failing me.

SmithDouglasJ 00:10, 21 May 2013 (EEST)

Hamishwillee - The right place to report feedback to Microsoft

Is here

hamishwillee 03:30, 21 May 2013 (EEST)

Gsimpson2g - Amber Update

With the recent Amber Update making its way to phones, is there any documentation on how to handle connecting and receiving data from BT 4.0 LE devices?

Gsimpson2g (talk) 18:05, 23 August 2013 (EEST)

Hamishwillee - Best place to ask question is on discussion boards

The author may not know, and you're restricting the number of people who can help you. I'm not even sure that it is supported in Amber, though this indicates it might be.

So suggest you ask on Microsoft or our discussion boards. If the answer is yes, then posting links here would be very much be appreciated.

hamishwillee (talk) 07:04, 26 August 2013 (EEST)

SeNS - Black update is coming: time to open API and provide examples for BT 4.0

At the beginning, article says: "Warning: At time of writing (31st October 2013) no public APIs are available for accessing features of Bluetooth 4.0 LE on any device."

Today is January 16, 2014, two and a half month since the article was published. Currently, "Black" update is start rolling to the Lumia handsets worldwide. I beleive, it's a good time to provide more details to developers about BT 4.0 (especially for the BLE, low energy devices); also, will be nice to have a few examples.

Nokia, please wake up! I already have a "black update" on the one of my development handsets but I can't utilize a new functionality because of lack of documentation and samples...

SeNS (talk) 19:14, 16 January 2014 (EET)

ManniAT1 - Black and now...


I just got the black update - but I have no idea how to go on. I also have seen that adidas provides a solution which (I guess) is based on BT.

Do we have to wait for MS to update the developer bits (get new SDK) or...???

Please keep us informed!!

ManniAT1 (talk) 21:00, 16 January 2014 (EET)

Almog - WE WANT BT 4.0

I searched all over Google (sorry, Bing) for an update about the BT 4.0 API and for over a year Microsoft keep "not responding" questions about when it will be released. Why are they keeping us in the dark??

iOS and Android are there long time ago.. it's too bad for WP8.

Almog (talk) 17:07, 19 January 2014 (EET)

Hamishwillee - Suggest you raise on uservoice

As I understand it "Black" extends underlying support for Bluetooth 4.0 to other devices that did not get it for the Amber update: . However the public API is owned an managed by Microsoft and this is not something Nokia can or will expose. I suggest you raise your issues/requests on uservoice.

hamishwillee (talk) 06:04, 22 January 2014 (EET)

SeNS - No "uservoice" or other stupid "please please gemme" services

hamishwillee, you are wrong: BT 4.0 (including BLE) is a complete Nokia's invention for WP8, Microsoft is not involved! So, Nokia MUST provide us an API if company pretended to support BT 4.0 in their handsets.

These "uservoices" and other BS sites are useless - why we (third party developers) should ask and plead someone to provide a basic functionality?! If Nokia/MS don't want to share - OK, we'll choose other, more open platform...

SeNS (talk) 23:30, 24 February 2014 (EET)

Arpan Production - API to use Bluethooth 4.0 LE

Hi I know that BLE is coming with Nokia Black update but is there any API available for it ?

Arpan Production (talk) 08:31, 5 March 2014 (EET)

SeNS - New BT 4 / BLE APIs.

Guys, I found a library (dll) with new APIs. It calls BLUETOOTHAPIS.DLL and these APIs are well documented at MSDN. For example, check BLE API:

If you want to use that functionality in your managed code, you should add native (C++) project to your solution, dynamically or statically import this functions from BLUETOOTHAPIS.DLL and create a marshalling wrapper.

SeNS (talk) 22:17, 12 March 2014 (EET)

Arpan Production - Any code example for BT4/BLE APIs

Hi SeNS,

Thanks for the update.

But is there any example available for it or any demonstration is available ?

Arpan Production (talk) 13:32, 13 March 2014 (EET)

SeNS - No code sample now


unfortunately I don't have an actual BLE device to play with. As soon as I get one, I'll try to build a basic sample (attribute reading, events etc.) and publish sources on the codeplex.

If you already have a BLE gadget and wanna start coding (and of course have a C++/native+managed code experience - sorry, I can't teach you), send me a PM and I'll try to answer your questions. For the start point you may use MS samples for Win8.1

SeNS (talk) 18:25, 17 March 2014 (EET)

Arpan Production - Any useful Link

Hi SeNS,

Thanks for the information.

Is there any useful link for it or something ?

Arpan Production (talk) 06:44, 19 March 2014 (EET)

SeNS - Sorry, no direct "howto" links

Arpan Production, try to use google or MSDN samples to find any managed plus native code solution.

The implementation of undocumented (for WP8) dll library usage: - grab bluetoothapis.h & bluetoothleapis.h from C:\Program Files (x86)\Windows Kits\8.1\Include\um . These files contains a function prototype declarations (i.e. names and input and output parameters) - load library dynamically ('cause we don't have BLUETOOTHAPIS.LIB built for ARM) using LoadLibraryEx, and find addresses for all functions you interested by calling GetProcAddress - if you want to use library from the managed code, you need to create compatible wrapper to marshal parameters

Thats all, actually. You may google by keywords "how to load library using LoadLibraryEx" etc. because this technique is the same for desktop and phone.

SeNS (talk) 15:30, 19 March 2014 (EET)

Influencer - Influencer - Added remark about capabilities

Sometimes it's interesting to know which capabilities are needed...

influencer (talk) 21:24, 19 March 2014 (EET)

Pleaseking - How to get device handles for Bluetooth functions?

Hi Sens,

joining the BT LE discussion and thanks for the pointers so far, the key question for me is: how do I get device handles in my native code? Working natively and in C++ is no problem, but no clue how to start with BluetoothGATTGetServices and friends. I found a good Windows driver example, but it uses device name passed from external code - as it is a driver after all.

Thanks for the pointers in advance!

pleaseking (talk) 05:13, 20 March 2014 (EET)

SeNS -

Sorry, can't tell you exactly but you may try win 8 samples from msdn, 4 example, this one:

SeNS (talk) 07:12, 20 March 2014 (EET)

Pleaseking -

Hi Sens,

I saw this example already and even though you can get C++ sources, they are Managed C++ sources using Windows Runtime API - and its Bluetooth Smart part is missing from Windows Phone 8.

The problem with these BluetoothGATT* functions is that there are NO examples (I tried hard googling) using these Win32 functions from Win32 applications, not drivers. Microsoft indirectly mentions that this is possible in its BUILD presentation from Sep 2011 but there are no complete examples or explanations how do I write a Win32 Windows 8 application using these functions - at least I failed to find those. Looks like MS is directing everyone to write Windows Store apps - makes sense fro business point of view but irrelevant in this question.

So if you have any more detailed pointers, that would be extremely helpful - I guess I could write a Windows 8 Win32 app then too.

Thanks in advance!

pleaseking (talk) 07:23, 20 March 2014 (EET)

BuildNokia - Great that you found the Bluetooth APIs Sens

Thanks for adding a pointer to this doc.

If anyone is able to get this to work in an app it would be great if you could come back and document how you did it. I'm happy to help with guidance on contributing to the wiki if needed; feel free to reach out to me.


BuildNokia (talk) 20:34, 21 March 2014 (EET)

Mfabiop - Windows Phone 8.1


I have updated my Lumia 820 to WP 8.1. Now there is a Microsoft public API to access BLE devices. Unfortunatelly it is not working yet for me.

I have a BLE Shield that works fine with my Arduino UNO (I have tested the adidas miCoach application and I'm able to simulate a heart rate sensor).

I'm trying this tutorial but it always returning 0 devices. I guess that it still missing a Nokia firmware update to make the glue between the private API that miCoach application uses and the new public API of the WP 8.1. This is my current status for now.

mfabiop (talk) 15:40, 20 April 2014 (EEST)

SeNS - Windows Phone 8.1

Before using new GATT API, BLE device should be paired but currently BT settings page can't find/pair BLE devices... Without OS support this can be resolved working directly with driver but I'm not sure about permissions.

So, my conclusion: 6 months ago Nokia lied to general public in the press release about Bluetooth 4.0 LE support for Lumia devices. There is NO BLE support for Lumia phones (like Google has for latest Android, or Apple for iOS). It's a shame and probably good reason for people who wants money back for their devices.

Big companies (even regular people but big companies especially) shouldn't lie in the press releases...

SeNS (talk) 21:59, 9 May 2014 (EEST)

SeNS - Windows 8.1

By the way, I've modified and tested BLE samples code on Surface tablet, everything working as expected (I do have this device but green one)

SeNS (talk) 22:02, 9 May 2014 (EEST)

BuildNokia - BuildNokia - I will research this and get back to you with an answer.

It doesn't make sense to me that we would have lied about something for no reason.

Mfabiop - Windows Phone 8.1

I don't think that Nokia lied to us. The BLE support exist (at least the myCoach application is able to connect to BLE devices). The problem is that the manufacturer support for BLE comes first than the OS support. But Nokia didn't release a public BLE API (as Samsung did).

Some time before the Google releases the official BLE support on Android, the Samsung released a public API and SDK that enabled developers to use the BLE hardware that Samsung already had on its devices. For me, the same happened with Nokia and Microsoft, but Nokia did not release a public API. I don't know the reason for that but I believe that for Nokia would be better to release the API fast and be the first manufacturer with the BLE applications in Windows Phone store. This was always the Nokia's behaviour.

PS: The myCoach application is able to pair with the BLE device inside the application, but I know that the normal behaviour to BLE devices is to pair using the native bluetooth settings page.

mfabiop (talk) 22:36, 9 May 2014 (EEST)

Ltomuta - Re: Windows Phone 8.1

You can check which Lumia devices have Bluetooth LE support from the device specifications section of Nokia Developer. You can also try the existing applications (Adidas myCoach and Nokia Treasure Tag) if you have Lumia Black on those devices.

As a developer you cannot use the BTLE on Lumia Black since no API was made available for the Nokia specific Bluetooth stack.And that's good.

Windows Phone 8.1 offers now BTLE support at OS level and an API for developers to use as well. When WP8.1 will be available on the devices which support BTLE , i.e. Lumia Cyan release, you will be able to use the APIs.

Currently Lumia Cyan is not available. The WP8.1 Developer _Preview_ installed on top of Lumia Black cannot enable the OS level BTLE support since the existing Lumia Black BT stack is still on the device.

ltomuta (talk) 11:08, 15 May 2014 (EEST)

SeNS - Windows Phone 8.1 supports BLE devices

Just received brand new Nokia 630 DS handset (shipped directly from Nokia, Finland). Phone has latest WP8.1 OS installed, and I can finally find and pair my BLE gadget. Will try to use GATT API soon (I already have a working app for the "desktop" Windows 8.1).

It's a good news! Hope, all devices (including my "workhorse" Lumia-920) will receive BT 4.0 support after official WP 8.1 update this Summer...

P.S. To Mfabiop: if company saying "we are supporting BT 4.0" it means _official public support_. If no API/settings available for the developers, it means _phone don't have support_, period. And doesn't really matter what drivers/dlls/internal API's handset has; if it's not available, it means NO SUPPORT. So, the truth is - Lumia handsets line will have BT 4.0/BLE support only this summer (hope, July not an August!) but definitely not a last fall.

SeNS (talk) 23:28, 4 June 2014 (EEST)