OK. Personal bias alert. I am a snowboarder. I flirted with skiing for a bit last year but this winter I am back on the board and in love with it all over again. This story came across my inbox and I couldn't resist.
Nokia and snowboarding giant Burton have been collaborating on a project called Nokia x Burton: Push Snowboarding. Nokia Push is a series of projects that celebrate openness and innovation. Their hacking comp for Nokia N900 is a good example of the amazing output that can come out of the Push project.
In the Nokia Burton collaboration, the project is all about showcasing the power of Nokia devices by collecting sets of data from pro snowboarders - data that has never been captured before. There are two cool parts on top of this:
1 - All the data and source code is open, so you can see it and use it
2 - The app the riders are being tracked and measured with is a Qt app running on Nokia N8.
The project team has just finished their alpha tests at the Burton European Open in Laax, Switzerland. For these tests they fitted the Push Snowboarding kit to Burton pro-riders and captured data from their rides. As of now this data is open to everyone.
When they say it's open, they mean really open. You can download everything. The data they captured from the pros, details of the sensors that have been used, the Arduino code that handles the Bluetooth communication to the Nokia N8 and even the source code for the Qt S^3 application they've developed.
Developers can download all of the code, investigate and play with it and then come up with new ways of utilising and visualising it.
So be our guest, go in and have a look at it. What else could be done with the code and the data? Maybe a social network for snowboarders, or an application that helps them improve their techniques by using the pressure sensors to measure the time they've spent on their heels and toes... Or what about a crazy way of displaying the data-streams over video?
Best of all, the developer behind the project, Clovis, has developed everything so you can plug in and only use the streams of data that are needed for an application. Here is their technical overview:
"Our current application for the N8 (source code released under GPL) is being fully developed with Qt and with expandability in mind. The app's backend is centred around the idea of Devices. Devices generally represent a sensor and they emit (in the Qt sense of the word) their readings. Devices can be Bluetooth devices (generally Arduinos connected through a Bluetooth Serial Port), sensors internal to the phone (connected through QMobility) or even abstract Devices that use other inputs as their source. Together with that there is a module that gathers all the output from this Devices and dumps them to XML files (which we call RawLog). The communication between all these parts is managed by resembling a distributed subscriber-publisher pattern. On the app's frontend, we have a simple interface (fully built around a QGraphicsScene and QStateMachine) that enables the user to connect to the available sensors, start and end a run and check some quick (graphic) reports on the previously recorded runs.
"The inner architecture was designed to ease the work of anyone who has a cool idea on how to use the data being produced in real time. For example, if you want to add the feature of streaming loud applause to the phone's sound system when the snowboarder lands a high jump, he or she just needs to subscribe to the Air-Time detector Device, use the length of the air to scale the applause, stream it to the sound API and you're done!
"Right now this Devices are classes compiled with the app code, but we plan to make them as plugins so that one can add/remove plugins at will.
"Soon we'll have a more developer-oriented wiki/code-hosting forum on the Push Snowboarding and we'll be happy to provide support for developers!"
If you want to reach the Push Snowboarding team you can find them on twitter at @NokiaPush, by dropping a feedback suggestion on their website or by posting comments/answers here, which we will pass on to the Push Snowboarding team and Clovis.