Open Source wearable bio-sensor: TrueSense Kit

Dear All,
i attended the Quantified-Self Europe Conference in Amsterdam, and it was a great event, met with many many interesting folks there.
i brought a few TrueSense kit production samples and they are all taken by the end of the first day, plus many follow on orders, and i really appreciated the enthusiasm received.

We have just posted a major enhancement of opiconsole program for Windows with many added applications. We have also posted the SDK (including source codes) for Windows, for Linux and Raspberry Pi.

OPIconsole & SDK Download

Now with all file formats updated and enhanced (Generic EDF, _EEG, _ECG, _act, _hyp, _med), please read OPI Console Data Formats and Algorithms for details. (It’s backward compatible with prior Generic EDF files, please use ViewConverter to generate new Generic EDF, _EEG, _ECG and other computed .edf files for future use.)

GetStart video tutorials are posted for your easy references.

Activity (+ posture and pedometer) Viewer now tracks all your physical posture and movements, computed from live monitoring as well as recorded files.
Sleep Analysis now includes Activity Viewer, detailed Sleep stages and brain wave states with summary and hypnogram outputs.
Meditate Analysis now includes Activity Viewer, detailed brain wave states with summary and meditate (modified hypnogram) outputs.


open data, open source, low cost, free apps,
what’s not to like!
wish more device vendors can support this.

Are there any plans for an OPI console and SDK for OSX?
I for one would be grateful!

thank you for your kind interest. we will start working on Apple OSX port.
will post progress update in a few days.

OPI Console: the OSX port for Apple Macs is now working in the lab, we will be posting it for download within a day or two.

OPI Console for OSX is now available for download

Did you consider developing a NIRS sensor? Something that could be used to measure muscle oxygenation levels?
I am looking for something like that.

any particular wavelength you’re interested in?
many/most of the oximeter devices and heart rate devices today has dual Red-IR LED’s and PIN diode detector already.

I think the trick is to come up with parameters that center the measurement on the muscle, and not the fat layer or skin tissue that sit on top of it.

See this reference for more details:

This is not easy stuff.

This looks really cool at a great price point - I just placed an order, looking forward to hacking around with it :smiley:

Thanks a lot for making this device !

hmm, the reference provided seems to suggest main use in critical medical care unit for terminally ill patients. probably why few device makers will attempt this, in addition to being difficult.
just curious, what do you have in mind for using such type of sensor?

Optimizing endurance training by monitoring muscle oxygenation while running.

Muscle oxygenation is a strong biomarker, which, for instance, could tell you if your intervals are too taxing for your current level of fitness.

for all WIN, OSX, Linux platforms (20130705)
V1.20 OPI Console and V1.05 SDK
Description at
Download at

Most of the fitness and sporting gadgets with accelerometer (G-sensor) built-in can give you nice scores on pedometer (number of steps taken), and some activity level measure (“fuel”). However, by NOT providing the users the opportunity to access and view the raw sensor data, greater opportunity to further help the user is often lost.

One key issue faced by most walker, jogger, runner: is my gait correct, smooth, or actually hurtful? Do I have the right cushioning for the ground impact with my unique gait and foot angle and position? The resulting impact-force can be drastically different, which naturally propagates along spine to “shake” the neck and head, causing unnecessary strain and possible injury if not corrected.

For a posture sensor worn on head (best for detecting correct posture, as well as possible neck strain), the accelerometer Raw data can tell us a great deal. And “a step is not just a step; one step can be very different from another step” as measured by any of those fitness gadgets. Here, we illustrate the recorded Accelerometer Z-axis (measuring head forward-backward tilt) during normal walking gait, comparing wearing hard heel vs. soft heel shoes. The impact G-forces and resulting strains, as propagated through spine to the head, are very different. Not shown here, but you should experiment for yourself, are different effects from, landing on heel, palm, toes, or smooth rolling from heel to toes.

New ReLax model for carry Anywhere stress monitoring and management, and no computer/smartphone needed to use the kit.


Not easy indeed. Are there any devices that do NIRS for the fitness application you suggest? I imagine it would be hard to get reliable readings on a body engaged in strenuous exercise.

indeed very difficult problem.
in spite of optimism, the NIRS (and similar problem for all the optical HR monitors and electrical ECG monitors) cannot handle/cancel vigorous movement artifacts well.
fundamentally, the signal is always modulated by the movement (which changes the absorption length for optical measurements, and changes the piezoelectric potential for electrical measurements), even for the very best sensor.

In an experiment investigating ways to engage optical Brain-Computer-Interfaces (BCIs) we used functional near infrared spectroscopy (fNIRS) and machine learning (support vector machines) to try to automatically classify ‘brain states’. (Given a time series pattern, what what the participant imagining doing: calculation, playing tennis, navigation, mental imagery, talking, singing?) Participants achieved between 55 and 90% accuracy across all tasks. (With the better trained participants achieving highest accuracies.) But this is with optimal conditions overall: awesome hardware, careful preparation, dark room etc…

From my experience to use fNIRS for our purposes seems like a great idea at first: The signal is similar to the hemodynamic signal that you get from big fMRIs, it can be better localized etc. But there are some important drawbacks that, in my opinion, make it impractical to use at home:
a) as FuChieh has already pointed out, it completely fails to deliver a meaningful signal on even the slightest of movements. As with all optical methods, this seems unlikely to be solved any time soon.
b) the signal to noise ratio (SNR) is very small: the changes in brain oxygenation you’re looking for are very small and you need optimal recording conditions to visible : little hair, (fair hair is better), dark room, no movement, optimal placement etc
c) the signal is very localized: you need to place your optodes directly over the ‘sweet spot’ in order to assess it correctly
d) optodes need to be pressed against the skin somewhat in order to give a good signal. this does get uncomfortable!

So basically, if you vary your measurement site by a cm, if you place the optode over a bit of hair, over a blood vessel, if you move, if there are adverse lighting conditions (or any bright light at all), your measurements will be corrupted.

However, IF you manage to have a clean signal, you WILL be able to see brain activation in the signal with your bare eye. For example if you sit still and put the optode just above your motor cortex and imagine to move the respective bodypart in a complex and controlled manner, you will see an increase in deoxygenated hemoglobin whenever you imagine movement, going back to baseline after termination of mental imagery within a couple of seconds. So I can definitely see it being used somehow, somewhere…
Just look at this beautiful signal here (raw data obtained during visual stimulation measured over the occipital cortex, Uludag et al, 2004):
(see paper below)

A collegue of mine Kamil Uludag has looked at the problem of optimizing wavelengths for fNIRS:

In essence he argues:
“The quality of the concentration changes’ assessment critically depends on
the wavelength combination used. Trying to optimize this combination, two
spectroscopic effects must be taken into account: cross talk and
separability. Cross talk between [oxy-Hb] and [deoxy-Hb] occurs
because the assumption made in the analysis—that there is a
homogeneous concentration change—does not hold true for the adult
human head. Separability—to be introduced in this paper—is a
measure for the degree of physical noise of the measurement that will
influence the noise of the concentration changes’ assessment. In other
words, high separability corresponds to a low noise with respect to the
concentration changes assessed”
“Cross talk leads to a ‘‘deformation’’, in some cases even an inversion of the
response direction, when the time courses of [oxy-Hb] and [deoxyHb] are
determined, while separability determines the noise level of the time course.”
“Our results (…) show that [oxy-Hb] and [deoxy-Hb] are determined more
accurately when using the wavelength combination 664 and 830
nm as opposed to 782 and 830 nm, and similarly that the
combination of 691 and 830 nm is superior to 780 and 830 nm.”

Check out the figure above: same task, same subject, same recording site, different wavelengths used.

No, sorry. Also, I’m really not sure about how accurate one can get with a DIY version. The originals use complicated lock-in amplifiers in order to achieve the SNR necessary for this. However, it might be easier if you’re looking at muscle instead of brain tissue?!
And yes it would be hard to get those readings, if not impossible.

That being said, I’d love to (help) develop a NIRS device for the enthusiasts. It’s definitely one measurement modality that’s still missing from our arsenal.

Quite many folks expressed interests in tracking meditation using brainwave and accelerometers.
Here is nice way to visualize your meditation sessions using <$50 sensor system (shown as a “dozing” meditation.)

Аny chance for bluetooth version?