Playing with sensors

In this article I would like to present a simple sensor hack that helps people to maintain a healthy posture. This solution was created during the Bosch Connected Devices Hackathon in Berlin.

Do you experience any stiffness or pain in your neck or back?

We do too! 
Stiff necks and backs are the mark of our information society that requires us to work stationary in front of computers day in — day out. Attending a two day hackathon didn’t sound good for our necks or backs but getting access to a variety of sensors to experiment with was exciting. With this in mind, my collaborator Stefan and I signed up to see what we could achieve in 48 hours.

We knew we were on to something
The Bertelsmann Foundation found out that the German industry could boost their productivity by 20 billion Euro per year if they could tackle neck and back pain related employee losses. This was a shockingly large number and could only have increased since the study was published in 2012.

We could build a solution with a sensor
We brainstormed on paper what data we need and how we could collect it. We wanted to find a small sensor that could be worn similar to Star Trek badges (on the chest or as a necklace) to measure posture. We believed a simple gyroscope (a sensor that measures movements on the X,Y,Z axis) should be able to track changes in posture sufficiently.

Getting gear in the BOSCH Sensortec popup shop
Having a full range of Bosch sensors in combination with products like Arduino, Rasperry Pi, Lego bricks allowed us to explore a range of options. We wasted too much time trying to use the Rasperry Pi and XDK before we discovered the beautifully simple SensorTag CC2650 from microchip dinosaur Texas Instruments (TI). This 24,99€ sensor kit for prototyping purposes is just the thing we were looking for.

SensorTag CC2650

See what we can do
Stefan and I have a limited understanding of electrical engineering, an area that is generally required to experiment with hardware and IOT. Despite this limited knowledge, we wanted to see what we can achieve. Talking to people at the conference we learned that most of them are electrical engineers with solid full-stack C++ skills that are required for most hardware tools, including the Bosch XDK. The TI SensorTag goes a different direction. It supports many programming languages and allows access to the data from the web. This is a great way for people like us to experiment and try out what is possible. No need to know the nitty gritty details to get started.

Making sense of the code of the sensors template

Unfortunately, the Bosch XDK requires C++ and doesnt have a Software Development Kit that runs on anywhere other than a Windows platform! We believe all producers of IOT hardware need to open their platforms so not only their industry community can experiment with it. TI is a good example of an open platform that allows manyfold programming languages, native demo apps and the option to use the cloud for data aggregation. We believe the big manufacturers need to open their platforms to talk to a bigger audience. Startups have shown that this approach can lead to great collaborations and developments.

Finding the right placement for the sensor

We made our vision work
After sketching out the general concept and what we thought was required, we dug deeper into the CC2650, test the output and connect it to a Objektive-C iOS project where we want to collect the data and trigger notifications. Fortunately, we found a XCODE template from Texas Instruments developer Mr Ole Andreas Torvmark. This allowed us to capture the data streams from the sensor in their framework and integrate it to our project. He even responded to our questions over night — Thanks Andreas!

Interpreting and testing the sensor data

We measured postures and created boundaries
Once we got data from the sensor we placed it on our chest like a Star Trek badge. It didn’t work. The sensor could measure the range of motion necessary to judge posture from our chests. We attached the sensor to our conference badge and hey presto — success! We still had to do many test runs but we eventually found satisfying limits to determine the unhealthy neck & back bends.

Testing our set sensor limits to trigger the appropriate notification

We needed feedback
Having solved the boundaries, we decided to get audio and visual feeback given by the iOS application. We produced simple messages to guide the user through the calibration process and how to use the iOS app. Then it was time to pitch the idea in front of engineers and programmers. The presentation didn’t go as planned as there were hundreds of bluetooth sensors active in the room and the app didn’t find ours. Fortunately we prepared a video :)

The product in action.

We summarise:

  • It is possible to create a simple solution to solve a real world problem without much significant programming skills in 24 hours
  • It is important to find the right sensor for the right application. Define clearly what data you need to make your idea work and then choose a suitable sensor. We wasted too much time experimenting
  • If Large organisations would connect to startups and hackers via simple and standard Application Program Interfaces (API) — a lot more innovation could happen. This way employees would also be empowered to prototype ideas quickly.
  • Software Development Kit’s need to be accessible on all platforms. We were really looking forward to experiment with the XDK if available for Linux & Mac
  • We built something we still use. It‘s our 24,99€ anti-hunchback intervention
  • Hackathon related: It was difficult contacting engineers and developers as they were somehow all pre-organised in groups
  • Cafe Moskau was an amazing venue and the support from the Bosch Sensortec Shop was great!

Stefan works as User Experience consultant across Europe while Sebastian works as Interaction Designer in London.