Prototype of "Dynamic Lock"

img11
Project Info

  • Location: Redmond, WA
  • Start Date: May 2016
  • End Date: August 2016
Project Features

  • Windows 10 native service protytpe.
  • Simple UI allowing for configuration.
  • Experienced 3 technical areas: PM, Dev, Quality.
  • Completed in a team of 3.

Overview

N-A-BLE. This is the shorthand we gave our project. Pronounced like "enable", it stands for "Natural Authentication Bluetooth Low Energy."

Our goal? Windows should know who you are, and when you are nearby.


In the summer of 2016, I participated in the Explorer program at Microsoft. This program is designed to let college students entering the tech field experience different tech roles at Microsoft: PM, Dev, and Quality. I worked with 2 other interns, and together, we were able to design, develope, test and gather usage data on the first prototype of the feature now known as "Dynamic Lock". Read more about it here.


One thing that we did differently then the final product shipped in Windows was to experiment with Bluetooth Low Energy instead of regular Bluetooth. BLE is an optimized/stripped down version of regular Bluetooth. It has an unobstructed range of up to 70m, and the most important part was that there are standalone BLE tags. These tags are just slightly bigger than a quarter, and are continuously getting smaller as the technology evolves. This opens up the use case of Dynamic Lock to include not only Bluetooth-enabled smartphones, but also everyday objects that contain a BLE tag. This allows for the experience to be much more versatile and personal. However, there are certain drawbacks with BLE being more spoofable than a regular Bluetooth pairing, so until we come up with a good solution for security, regular Bluetooth is going to be the way to go.


Some of the technologies we used include:

  • Windows runtime BluetoothLE APIs
  • Windows runtime libraries
  • Native C++ and Comptrs
  • Windows lockscreen system
  • Windows presentation foundation UI
  • TraceLogging to gather usage data