In addition to these 6 sensors, there are 2 push buttons who's states can be fully tracked.
Let's Get Ready to Rumble:
To put this $30 cost into perspective, if you wanted to create your own Arduino module with the same sensing capabilities, the cost could get quite high: It will cost $10-20 for each individual sensor, summing up to around 70 or 80 bucks. Additionally, this excludes the cost of the Arduino itself, the fun time spent soldering everything together, and you'd probably need a power module and bluetooth shield as well.
For $30, the TI SensorTag is definitely affordable, but developing with these SensorTags may not be as speedy or straightforward as one might think.
When we unpackaged the SensorTags from its box, I took the liberty of being our guinea pig and testing one of these sensors out. I followed the instructions to download its mobile app, paired the little guy with my phone over bluetooth, and voilà - data incoming! I swung it around, tried every sensor, and even tied it to my bicycle's crank and rode it around the park!
Above are three screenshots at the beginning of my bike ride. Whenever there's an obvious sin wave on the accelerometer (the first and second graph of motion data), I was pedalling. Likewise, when the graph is messy (third graph), I was coasting - but realistically a messy graph could mean anything except for pedalling.
Let There be Light! (or something like that):
Interestingly, I noticed that there's also a sin wave on the luxometer. I flipped my bike over without the wheels touching the ground and brought my bike to a full stop, I spun the crank at a constant speed and this is what I got:
What happened was the sensor's luxometer was facing the frame of the bicycle, and every time it passed over the down tube, light got blocked off, resulting in the steady wave signal above. If I were to make a simple cadence meter for the bike, using the luxometer may be the easiest way. Instead of calculating for the crank's displacement through acceleration, the luxometer's presentation of sensor passing over the downtube is much more binary. Additionally, it is much more simple to set up than those magnetic cadence meters since you don't have to use duct-tape or a zip-tie to keep the magnet on your bike's frame.
Although these were all fun and good, my experience with the SensorTag went downhill from here.
Requesting Data, Requesting Data:
The SensorTag app only shows you the current streaming data. There is an option to push this stream to the "cloud", but that's pretty much it. There's no easy way to access this data directly for your own app. To actually log the data, you have to either sign up for Bluemix (IBM's proprietary IoT platform) and make an app in their ecosystem, or use your own web server to process the data.
Depending on the developer's experience and style, one option could be more preferable to the other, but if you decide to stay away from the Bluemix system, you might as well jam whatever sensors you need to an Arduino and develop it yourself. The chances for utilizing every sensor on the SensorTag is relatively low, and if you're only using motion data for example, putting a motion shield on your Arduino will be around the same range as the TI SensorTag. The accessbility of the data from your own motion sensor would be more worthwhile.
Who knows, maybe Raspberry Pi joins the game and starts jamming these sensors on their board as well, that could get interesting.