Hacking the kyto heart rate monitor 2901

Image

The  kyto heart rate monitor 2901 is a small and cheap heart rate monitor that send data to the computer via an USB port. It is delivered with a convenient PC software that give elementary data (heart beat and heart rate). The sensor is an optical sensor fixed to the ear. This device give a stable measure of the heart rate, is non-invasive, and does not require electrodes and complex installation.

 

The Kyoto HRM 2901

The Kyoto HRM 2901

The very simple Kyto software does not run with Linux and we propose here to try to capture the data sent by the device under Linux.

Serial port

When the device is plugged it is listed as « /dev/hidraw0 » (or « /dev/hidraw1 ») in the « /dev » directory. Let’s imagine that the name of the device is « /dev/hidraw0 ». We have first to allow the user to access the serial port :

sudo chown username /dev/hidraw0

Then incoming serial port data can be read by any terminal (tty) software.

The data

The device send a packet of 5 octets (c1 to c5) for each heart beat. We built a small application to extract the decimal values (short int) corresponding to each octet and computed also the heart rate. The following table gives an example of the data transmitted by the device :

Time (ms) HR (beat/min) Data number c1 c2 c3 c4 c5
289 207 5 65499 3 0 22 3
1073 76 5 65500 3 0 20 3
1849 77 5 65501 3 0 22 3
2633 76 5 65502 3 0 22 3
3417 76 5 65503 3 0 29 3
4225 74 5 65504 3 0 42 3
5025 75 5 65505 3 0 43 3
5833 74 5 65506 3 0 49 3
6633 75 5 65507 3 0 41 3
7433 75 5 65508 3 0 41 3
8217 76 5 65509 3 0 26 3
8985 78 5 65510 3 0 6 3
9729 80 5 65511 3 0 65522 2
10473 80 5 65512 3 0 65520 2
11217 80 5 65513 3 0 65523 2
11961 80 5 65514 3 0 65521 2
12705 80 5 65515 3 0 65520 2
13457 79 5 65516 3 0 65530 2
14225 78 5 65517 3 0 8 3
15001 77 5 65518 3 0 10 3
15776 77 5 65519 3 0 23 3
16561 76 5 65520 3 0 24 3
17345 76 5 65521 3 0 19 3
18120 77 5 65522 3 0 21 3
18904 76 5 65523 3 0 23 3
19688 76 5 65524 3 0 23 3
20472 76 5 65525 3 0 25 3
21248 77 5 65526 3 0 17 3
22032 76 5 65527 3 0 26 3
22816 76 5 65528 3 0 24 3
23600 76 5 65529 3 0 26 3
24384 76 5 65530 3 0 24 3
25176 75 5 65531 3 0 34 3
25960 76 5 65532 3 0 29 3
26752 75 5 65533 3 0 31 3
27536 76 5 65534 3 0 26 3
28328 75 5 65535 3 0 25 3
29104 77 5 0 4 0 20 3
29888 76 5 1 4 0 23 3
30664 77 5 2 4 0 22 3
31440 77 5 3 4 0 12 3
32224 76 5 4 4 0 23 3
33000 77 5 5 4 0 22 3
33784 76 5 6 4 0 26 3
34576 75 5 7 4 0 28 3
35360 76 5 8 4 0 25 3
36136 77 5 9 4 0 20 3
36912 77 5 10 4 0 15 3
37696 76 5 11 4 0 26 3
38488 75 5 12 4 0 32 3
39280 75 5 13 4 0 33 3
40080 75 5 14 4 0 37 3
40864 76 5 15 4 0 29 3
41656 75 5 16 4 0 27 3
42448 75 5 17 4 0 35 3
43248 75 5 18 4 0 39 3
44048 75 5 19 4 0 45 3
44856 74 5 20 4 0 47 3
45656 75 5 21 4 0 40 3
46447 75 5 22 4 0 36 3
47239 75 5 23 4 0 30 3
48007 78 5 24 4 0 7 3

It is clear that the two first octets are related to the count of heart beats. The two last octets are related to the heart rate. The third octet is always 0.

Utiliser une tablette graphique pour capturer le mouvement (LINUX)

Les tablettes graphiques et touchpad sont des dispositifs expérimentaux très utilisés. Les modèles actuels communiquent les données de mouvement vers l’ordinateur via un port USB. Un utilisateur standard s’en servira comme interface à la place de la souris, comme outil de dessin ou de conception. Même sous Linux, les tablettes graphiques sont en général reconnues et utilisables directement (voir le site linux wacom project pour plus de détail). Mais si l’on veut utiliser ces dispositifs comme outils d’acquistion pour une expérimentation en psychologie, un certain nombre d’adaptations sont indispensables.

Nous allons ici proposer une analyse susceptible de vous aider à réaliser une acquisition sous linux (ubuntu) avec une tablette du leader du marché. Il s’agira en l’occurrence ici d’une tablette bamboo touch 2FG (plus en vente). Mais les informations contenues dans cet article seront sans doute utiles pour d’autres matériels.

La tablette

Cette tablette (ou touchpad), qui n’est plus commercialisée, se pilote à un ou deux doigts. Elle ne retourne pas d’informations liées à la pression mais seulement des informations de mouvement. Elle peut fonctionner en mode absolu ou relatif (comme une souris). Dans le premier mode, elle informe sur la position absolue du doigt sur la surface. Dans le second mode elle ne transmet que les déplacement en X et Y du doigt depuis la dernière position. En expérimentation, on cherche le plus souvent à obtenir la trajectoire du doigt et donc à fonctionner en mode absolu qui n’est pas le mode par défaut du dispositif.

Installer la tablette Wacom sous linux

Les dernières adaptations de Linux et en particulier les dernières versions d’Ubuntu reconnaissent sans problème les modèles les plus courants de tablette sans configuration particulière. Cependant, s’il vous faut changer les réglages par défaut, alors vous devrez vous informer sur les principaux outils de gestion des tablettes sous Linux. La documentation disponible est malheureusement d’une façon générale mal organisée et parfois obsolète.

Les principaux sites à consulter sont :

Je suppose donc que vous avez réussi l’étape d’installation. Les paragraphes suivants peuvent cependant vous aider à paramétrer correctement l’outil.
Continue reading

Stabilométrie avec la Wii balance board (linux)

Cette article essaye de proposer une technique permettant de récupérer les données de la wii et de s’en servir pour faire des mesures stabilométriques. En effet, la plate-forme de Nintendo comporte quatre capteurs de force tout a fait efficaces qui permettent théoriquement de calculer la trajectoire du centre des pressions du corps.

Continue reading

Le stawiilomètre

Le stawiilomètre

Le stawiilomètre

We describe here a way two build something like a stabilometer by sticking a wiimote under an unstable plateform.

Le Stabilomètre de Bessoux

Le stabilomètre du professeur Bessoux est une plate-forme de force permettant l’enregistrement de la trajectoire du centre des pressions d’une personne se tenant debout sur la plate-forme. La trajectoire du centre des pressions renseigne sur la qualité de l’équilibration de la personne.
L’épreuve consistant à enregistrer l’évolution d’une personne en équilibre statique debout sur la plate-forme est appelée stabilométrie statique. La wiiplate permet de réaliser de la posturogrphie statique et ce principe est utilisé dans les jeux de fitness par exemple.

Il existe aussi une version dynamique du stabilomètre, placé sur une sorte de plate-forme à bascule. Pour sensibiliser le sujet, on le place sur une plate-forme qui est placée en déséquilibre sur deux arcs de cylindre (deux « roues »). On enregistre alors la trajectoire du centre des pressions en déséquilibre antéro-postérieur ou latéral.

Pour en savoir plus :

  • site de la société Satel : http://www.satel-posture.com/
  • exemple d’application en staps : ANALYSE COMPARATIVE DES OSCILLATIONS CORPORELLES DE DANSEURS ET DE SPORTIFS SUR PLATEFORME À BASCULE : INTÉRÊTS DE CETTE TECHNIQUE de Golomer et al. (http://visio.univ-littoral.fr/revue-staps/pdf/304.pdf)

Le stawiilometer dynamique

Principe

Le problème est qu’un stabilomètre coûte très cher, est principalement un outil de diagnostic clinique et de rechercher,  et n’est donc pas vraiment accessible pour effectuer des travaux dirigés à l’université. Nous proposons donc en fait de détourner un outil technologique grand public maintenant banal, une télécommande de console de jeux Wii (20 euros ?), pour construire un stabilomètre dynamique.
Cette télécommande permet en effet d’obtenir des données tout à fait intéressante par le biais d’une liaison sans fil BlueTooth :

  • l’inclinaison de la télécommande sur trois axes de rotation
  • les accélérations linéaires sur trois axes X, Y, Z linéaires.

Nous allons montrer que ces données sont tout à fait utilisables pour faire de la stabilométrie : nous allons tout simplement attacher la télécommande sous une plate-forme à bascule puis recueillir les données avec un ordinateur.

Continue reading