Ask Learn
Preview
Ask Learn is an AI assistant that can answer questions, clarify concepts, and define terms using trusted Microsoft documentation.
Please sign in to use Ask Learn.
Sign inThis browser is no longer supported.
Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.
Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
NOTE: We now have official MSDN documentation online, which we recommend you use to build against. This is where we will update you if we need to add or change anything for clarity.
This post will detail the requirements for a Bluetooth peripheral to support Swift Pair on Windows. There will be additional details on MSDN coupled with the next release of Windows 10.
A core pillar while we built this feature was to keep it as simple and easy to implement for others in the ecosystem. We’ve identified two sets of requirements needed to ensure your peripheral works well with Windows. One set is for the peripheral’s behavior, and another for the structure and values in a Microsoft defined vendor section. By meeting these requirements all peripheral makers should now be able to try this feature out using this latest Insider build.
Adhering to the core principle of making pairing easy and predictable for our users, we have identified the following set of peripheral behaviors.
Bluetooth LE is required, but that does not mean audio and other BR/EDR peripherals can’t get in on the action. We have 3 payloads which will trigger the seamless pairing experience; one for solely Bluetooth LE peripherals, and then two for dual mode peripherals. The dual mode payloads help address whether the peripheral in question will pair over both Bluetooth LE and BR/EDR using secure connections or is leveraging this Bluetooth LE advertisement to pair over only BR/EDR.
[caption id="attachment_266" align="alignnone" width="641"] Figure 1: Pairing over Bluetooth LE only[/caption]
[caption id="attachment_255" align="alignnone" width="836"] Figure 2: Paring over Bluetooth LE and BR/EDR with Secure Connections[/caption]
[caption id="attachment_235" align="alignnone" width="824"] Figure 3: Pairing over BR/EDR only, using Bluetooth LE for discovery[/caption]
How does Windows detect if a peripheral is in range?
In addition to the new experience, we've also added a Bluetooth proximity service that reads the signal strength from a peripheral to determine its proximity to Windows. When determined to be close by, the notification will show.
Since the signal strength varies between hosts and peripherals, we are always looking to increase the precision of our proximity service to make our proximity detection more predictable. This is what the reserved Received Signal Strength (RSSI) byte in the payload will be used for.
How does Windows listen for these peripherals without draining power?
The pattern Windows is looking for will be offloaded to the radio via Hardware Offload. The offloaded pattern will listen for a match to the vendor section without waking Windows up or active scanning. If the radio does not support Hardware Offload, then the feature is not supported, and this is represented in Settings by not having the “Connect to certain Bluetooth devices quickly”.
How does Windows detect and display Bluetooth peripheral information?
The name and the type of peripheral need to be in the same advertisement that has the vendor section. We will not active scan for this feature, and all peripheral info must be included in this single advertisement. If friendly name section can’t fit in this advertisement, we provide the fallback mechanism at the end of the payload to have the peripheral name show.
There are competing implementations of this feature for other platforms, are there long-term plans to interop with them?
Currently, this is specific to Windows, however we are looking to standardize this functionality across all platforms in the future with the Bluetooth SIG.
If you’d like to take advantage of this great new feature and make a peripheral that supports Swift Pair, please reach out to a Microsoft representative, or leave a comment here and we'll get back to you. We would love to work together as we evolve this experience.
Ask Learn is an AI assistant that can answer questions, clarify concepts, and define terms using trusted Microsoft documentation.
Please sign in to use Ask Learn.
Sign in