Hacking the Microsoft Band: Home automation and virtual games

Hacking the Microsoft Band

This week, Microsoft invited UI Centric to join them at a 24 hour hackathon to get our hands on their new wearable: the Microsoft Band. As with most hackathons the purpose was to see what our team, as well as the others in attendance of course, could do with the preview SDK which has been made available on iOS, Android and Windows Phone.

So, on a sunny Monday afternoon in Whitechapel we got to work on creating a couple of simple projects that would show off what can be achieved with the SDK, and also highlight what is currently missing.

Virtual Egg N Spoon racing

Most of the capabilities available in the Microsoft Band SDK boil down to accessing the myriad of sensors built into the device. We discovered excellent results with the raw sensor data coming from the Gyroscope and Accelerometer available in the device, and put that data to use in a game devised to test a player’s ability to keep a steady hand whilst still running.

As you can see from our demonstration video below, it’s possible to connect multiple Microsoft Bands to one controlling phone device, so the potential for games or even multiple limb tracking is opened up to developers through the SDK.

For this particular project we also utilised the inferred data the band curates regarding step counts, which gave us a reasonable way to know when the game had ended. Finally, using the Band’s message dialog capability we delivered game notifications directly to the screen when a player had either won, or dropped their egg.

Simple home automation

Microsoft band + Raspberry Pi

To demonstrate the Band’s potential in the home automation space, we put together a simple app to read in values from the skin temperature sensor, and control a desk fan if the given temperature if it was over a defined threshold. Of course, this is a very simple version of home automation that we envisage would be expanded to work with an air conditioning/heater unit – but you try carrying one of those half way across London!

This project also used a Raspberry Pi 2 to provide a simple web API through a Java app hosted in Tomcat, which in turn used Energenie’s GPIO controller board to remotely control a power socket. With this very simple setup we could then use the Band’s capability as the trigger for the fan.

We were able to implement Cortana integration as well, using voice commands to trigger the web calls needed to turn the fan on or off. Unfortunately due to an SDK limitation, temperature sensing was only possible with the app running in the foreground, but we’re told that Microsoft is still building the SDK and we should be able to bring this feature into an automated background task on the Windows Phone app.

What next?

Wearable SDKs are going to continue to be a point of interest in 2015. Android wear is making some impressive strides, the Apple Watch is closer than ever to release, Pebble’s new offering is looking like another strong contender, and Microsoft is finally building out a full featured SDK for its surprise wearable release of last year.

In our time with Microsoft’s SDK we were impressed at the simplicity with which we could get going and develop apps that interface with the Band. The fact that all of the functionality is available whether writing for iOS, Android, or Windows Phone should be commended as it attracted teams from all different backgrounds to the hackathon.

With that said there are some serious drawbacks right now with the SDK. Firstly it’s impossible to have a two way dialog with the band whereby the user can respond to a notification in some meaningful way. Also unavailable to developers is the ability to draw any kind of custom user interface on the band itself, or to access presses of the action button. Finally on the Windows Phone SDK specifically there are some issues with trying to use the SDK from a background task which severely limits the number of actually useful scenarios we can envisage.

Microsoft is aware of these issues of course, and were actively looking for feedback from every developer at the event. Remembering that this is a preview of the planned SDK and that we can hope for a richer feature set in the future; we’re excited to see how else we could utilise this new paradigm in mobile devices.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>