Table des matières
Suunto X6HR
Presentation de la montre
La montre X6HR est destine a l'entrainement pour les sports de montagne. Elle dispose des fonctions :
- Heure
- Chronometre
- Reveil
- Boussole
- Altimetre
- Barometre
- Cardiofrequencemetre
- Enregistrement des variables au cours des entrainements
- Transfert des information sur ordinateur
Cardiofrequencemetre
La frequence cardiaque est mesuree par une sonde thoracique. La transmission est sans fil (radiofrequence), la montre est compatible avec les ceintures Polar non cryptees (ancienne generation).
Transfers des journaux d'activite
La montre est connectee par une liaison serie (RS232) a l'ordinateur. La connectique cote montre est une simple pince avec 3 contacts : robuste et astucieux.
Le logiciel d'exploitation des donnees fourni par Suunto est «Activity Manager», il ne fonctionne que sous windows (fonctionne en emulation avec VMware sous linux).
Apres avoir contacte Suunto quant au protocole utilise pour communiquer avec la montre, le service technique m'a dit n'offir de support que sous windows. Je suis donc a la recherche de moyen d'intercepter le signal serie (pas trop complique), de le decoder afin de realiser un logiciel de transfert et d'analyse des données qui serait open-source et multi-plateformes (en particulier linux).
En fait ce travail a été réalisé pendant l'été 2008 par Lucas Nussbaum, il en résulte le programme SuunTux, un petit script Ruby (sniff, ce n'est pas du Python) qui est disponible sur cette page web : http://www.lucas-nussbaum.net/suuntux/
Configuration du port serie
Il semblerait que la communication se fasse a 9600 8N1 (9600 baud/s 8 bits de donnees, pas de parite et 1 bit de stop).
La communication entre le PC windows et la montre peut etre intercepte en intercallant une machine linux entre les deux. Les deux ordinateurs etant connectes par un cable RS232 croise (NullModem). Sur la machine linux il faut un programme qui transmette les datagrammes d'un port a l'autre. J'utilise slsniff (http://sourceforge.net/projects/slsnif/)
# slsnif /dev/ttyS1 -p /dev/ttyS2 -x -i X6HR.log -o PC.log -s 9600 |tee logfile
Il est également possible de capturer directement les trames avec un seul PC en utilisant le logiciel interceptty et l'emulateur VMware (http://www.suspectclass.com/interceptty/) :
# interceptty -s 'is peed 9600 ospeed 9600' -l /dev/ttyS1 @/tmp/sersock
La communication est visiblement binaire, ce qui complique un peu la tache. Le PC semble toujours envoyer des commandes qui font sept octets de long et il ne semble pas y avoir de « fin de commande » :
05 00 03 5a 00 01 5b #initialisation de la communication "connect" 4 echanges d'initialisation, 3 de terminaison 05 00 03 5d 00 04 59 #demande de telechargement de log Hiking 05 00 03 5d 00 04 59 #demande de telechargement de log Weather
Visiblement la montre s'identifie par son numero de serie mais je n'ai pas encore trouve sous quelle forme. Exemple de l'initialisation de la comminication avec un seul journal de type “temps” disponible
Un seul log 26/08/2006 Weather start time 12:00:00 duree 48:00:00 Interval: 900 Alt min & max = 0 < 05 00 03 5a 00 01 5b | Z [ > 05 00 04 5a 00 01 05 5e | Z ^ < 05 00 03 64 00 0b 6f | d o > 05 00 0e 64 00 0b 00 01 00 01 | d > 01 01 02 01 01 01 00 6c | l < 05 00 03 48 0d 12 57 | H W > 05 00 15 48 0d 12 06 08 0f 2b | H + > 0a | > e8 14 00 00 32 11 00 00 00 06 | 2 > ff ff ff 51 | Q < 05 00 03 b4 0f 14 af | > 05 00 17 b4 0f 14 00 00 00 00 | > 00 00 00 00 00 00 00 00 00 00 | > 00 00 00 00 00 00 af | < 05 00 03 c9 19 1e ce | > 05 00 21 c9 19 1e 00 00 00 00 | ! > 00 00 00 00 00 00 00 00 00 00 | > 00 00 00 00 00 00 00 00 00 00 | > 00 00 00 00 00 00 ce | < 05 00 03 5d 00 04 59 | ] Y > 05 00 07 5d 00 04 3d 28 25 3c | ] =(%< > 55 | U < 05 00 03 5a 00 01 5b | Z [ > 05 00 04 5a 00 01 05 5e | Z ^ < 05 00 03 5d 00 04 59 | ] Y > 05 00 07 5d 00 04 3d 28 25 3c | ] =(%< > 55
Voici le resultat du telechargement du journal en question (sortie windows et flux binaire associe :
Suunto X6HR. log data General Wristop model: X6HR. Wristop serial: 61403760 Log name: Weather Log Log type: Weather Start : 26/08/2006 12:00:00 End : 28/08/2006 12:00:00 Duration: 48:00.00 Sample interval: 900 s Notes: Weather Max temperature: 28 C Time: 27/08/2006 18:45:00 Min temperature: 25 C Time: 27/08/2006 06:15:00 Max pressure: 1014 hPa Time: 26/08/2006 12:00:00 Min pressure: 1014 hPa Time: 26/08/2006 12:00:00 Samples Calendar time Log time Temperature (C) Air pressure (hPa) 26/08/2006 12:00:00 00:00.00 26 1014 26/08/2006 12:15:00 00:15.00 26 1014 26/08/2006 12:30:00 00:30.00 26 1014 26/08/2006 12:45:00 00:45.00 26 1014 26/08/2006 13:00:00 01:00.00 26 1014 26/08/2006 13:15:00 01:15.00 26 1014 26/08/2006 13:30:00 01:30.00 26 1014 26/08/2006 13:45:00 01:45.00 26 1014 26/08/2006 14:00:00 02:00.00 26 1014 26/08/2006 14:15:00 02:15.00 26 1014 26/08/2006 14:30:00 02:30.00 26 1014 26/08/2006 14:45:00 02:45.00 26 1014 26/08/2006 15:00:00 03:00.00 26 1014 26/08/2006 15:15:00 03:15.00 26 1014 26/08/2006 15:30:00 03:30.00 26 1014 26/08/2006 15:45:00 03:45.00 26 1014 26/08/2006 16:00:00 04:00.00 26 1014 26/08/2006 16:15:00 04:15.00 26 1014 26/08/2006 16:30:00 04:30.00 26 1014 26/08/2006 16:45:00 04:45.00 27 1014 26/08/2006 17:00:00 05:00.00 27 1014 26/08/2006 17:15:00 05:15.00 27 1014 26/08/2006 17:30:00 05:30.00 26 1014 26/08/2006 17:45:00 05:45.00 26 1014 26/08/2006 18:00:00 06:00.00 26 1014 26/08/2006 18:15:00 06:15.00 26 1014 26/08/2006 18:30:00 06:30.00 26 1014 26/08/2006 18:45:00 06:45.00 26 1014 26/08/2006 19:00:00 07:00.00 26 1014 26/08/2006 19:15:00 07:15.00 26 1014 26/08/2006 19:30:00 07:30.00 26 1014 26/08/2006 19:45:00 07:45.00 26 1014 26/08/2006 20:00:00 08:00.00 26 1014 26/08/2006 20:15:00 08:15.00 26 1014 26/08/2006 20:30:00 08:30.00 26 1014 26/08/2006 20:45:00 08:45.00 26 1014 26/08/2006 21:00:00 09:00.00 26 1014 26/08/2006 21:15:00 09:15.00 26 1014 26/08/2006 21:30:00 09:30.00 26 1014 26/08/2006 21:45:00 09:45.00 26 1014 26/08/2006 22:00:00 10:00.00 26 1014 26/08/2006 22:15:00 10:15.00 26 1014 26/08/2006 22:30:00 10:30.00 26 1014 26/08/2006 22:45:00 10:45.00 26 1014 26/08/2006 23:00:00 11:00.00 26 1014 26/08/2006 23:15:00 11:15.00 26 1014 26/08/2006 23:30:00 11:30.00 26 1014 26/08/2006 23:45:00 11:45.00 26 1014 27/08/2006 12:00.00 26 1014 27/08/2006 00:15:00 12:15.00 26 1014 27/08/2006 00:30:00 12:30.00 26 1014 27/08/2006 00:45:00 12:45.00 26 1014 27/08/2006 01:00:00 13:00.00 26 1014 27/08/2006 01:15:00 13:15.00 26 1014 27/08/2006 01:30:00 13:30.00 26 1014 27/08/2006 01:45:00 13:45.00 26 1014 27/08/2006 02:00:00 14:00.00 26 1014 27/08/2006 02:15:00 14:15.00 26 1014 27/08/2006 02:30:00 14:30.00 26 1014 27/08/2006 02:45:00 14:45.00 26 1014 27/08/2006 03:00:00 15:00.00 26 1014 27/08/2006 03:15:00 15:15.00 26 1014 27/08/2006 03:30:00 15:30.00 26 1014 27/08/2006 03:45:00 15:45.00 26 1014 27/08/2006 04:00:00 16:00.00 26 1014 27/08/2006 04:15:00 16:15.00 26 1014 27/08/2006 04:30:00 16:30.00 26 1014 27/08/2006 04:45:00 16:45.00 26 1014 27/08/2006 05:00:00 17:00.00 26 1014 27/08/2006 05:15:00 17:15.00 26 1014 27/08/2006 05:30:00 17:30.00 26 1014 27/08/2006 05:45:00 17:45.00 26 1014 27/08/2006 06:00:00 18:00.00 26 1014 27/08/2006 06:15:00 18:15.00 25 1014 27/08/2006 06:30:00 18:30.00 25 1014 27/08/2006 06:45:00 18:45.00 25 1014 27/08/2006 07:00:00 19:00.00 25 1014 27/08/2006 07:15:00 19:15.00 25 1014 27/08/2006 07:30:00 19:30.00 25 1014 27/08/2006 07:45:00 19:45.00 25 1014 27/08/2006 08:00:00 20:00.00 25 1014 27/08/2006 08:15:00 20:15.00 25 1014 27/08/2006 08:30:00 20:30.00 25 1014 27/08/2006 08:45:00 20:45.00 25 1014 27/08/2006 09:00:00 21:00.00 25 1014 27/08/2006 09:15:00 21:15.00 26 1014 27/08/2006 09:30:00 21:30.00 26 1014 27/08/2006 09:45:00 21:45.00 26 1014 27/08/2006 10:00:00 22:00.00 26 1014 27/08/2006 10:15:00 22:15.00 26 1014 27/08/2006 10:30:00 22:30.00 26 1014 27/08/2006 10:45:00 22:45.00 26 1014 27/08/2006 11:00:00 23:00.00 26 1014 27/08/2006 11:15:00 23:15.00 26 1014 27/08/2006 11:30:00 23:30.00 26 1014 27/08/2006 11:45:00 23:45.00 26 1014 27/08/2006 12:00:00 24:00.00 26 1014 27/08/2006 12:15:00 24:15.00 26 1014 27/08/2006 12:30:00 24:30.00 26 1014 27/08/2006 12:45:00 24:45.00 26 1014 27/08/2006 13:00:00 25:00.00 26 1014 27/08/2006 13:15:00 25:15.00 26 1014 27/08/2006 13:30:00 25:30.00 26 1014 27/08/2006 13:45:00 25:45.00 26 1014 27/08/2006 14:00:00 26:00.00 26 1014 27/08/2006 14:15:00 26:15.00 26 1014 27/08/2006 14:30:00 26:30.00 26 1014 27/08/2006 14:45:00 26:45.00 26 1014 27/08/2006 15:00:00 27:00.00 26 1014 27/08/2006 15:15:00 27:15.00 26 1014 27/08/2006 15:30:00 27:30.00 27 1014 27/08/2006 15:45:00 27:45.00 27 1014 27/08/2006 16:00:00 28:00.00 27 1014 27/08/2006 16:15:00 28:15.00 27 1014 27/08/2006 16:30:00 28:30.00 27 1014 27/08/2006 16:45:00 28:45.00 27 1014 27/08/2006 17:00:00 29:00.00 27 1014 27/08/2006 17:15:00 29:15.00 27 1014 27/08/2006 17:30:00 29:30.00 27 1014 27/08/2006 17:45:00 29:45.00 27 1014 27/08/2006 18:00:00 30:00.00 27 1014 27/08/2006 18:15:00 30:15.00 27 1014 27/08/2006 18:30:00 30:30.00 27 1014 27/08/2006 18:45:00 30:45.00 28 1014 27/08/2006 19:00:00 31:00.00 28 1014 27/08/2006 19:15:00 31:15.00 28 1014 27/08/2006 19:30:00 31:30.00 27 1014 27/08/2006 19:45:00 31:45.00 27 1014 27/08/2006 20:00:00 32:00.00 27 1014 27/08/2006 20:15:00 32:15.00 27 1014 27/08/2006 20:30:00 32:30.00 27 1014 27/08/2006 20:45:00 32:45.00 27 1014 27/08/2006 21:00:00 33:00.00 27 1014 27/08/2006 21:15:00 33:15.00 27 1014 27/08/2006 21:30:00 33:30.00 27 1014 27/08/2006 21:45:00 33:45.00 27 1014 27/08/2006 22:00:00 34:00.00 27 1014 27/08/2006 22:15:00 34:15.00 27 1014 27/08/2006 22:30:00 34:30.00 26 1014 27/08/2006 22:45:00 34:45.00 26 1014 27/08/2006 23:00:00 35:00.00 26 1014 27/08/2006 23:15:00 35:15.00 26 1014 27/08/2006 23:30:00 35:30.00 26 1014 27/08/2006 23:45:00 35:45.00 26 1014 28/08/2006 36:00.00 26 1014 28/08/2006 00:15:00 36:15.00 26 1014 28/08/2006 00:30:00 36:30.00 26 1014 28/08/2006 00:45:00 36:45.00 26 1014 28/08/2006 01:00:00 37:00.00 26 1014 28/08/2006 01:15:00 37:15.00 26 1014 28/08/2006 01:30:00 37:30.00 26 1014 28/08/2006 01:45:00 37:45.00 26 1014 28/08/2006 02:00:00 38:00.00 26 1014 28/08/2006 02:15:00 38:15.00 26 1014 28/08/2006 02:30:00 38:30.00 26 1014 28/08/2006 02:45:00 38:45.00 26 1014 28/08/2006 03:00:00 39:00.00 26 1014 28/08/2006 03:15:00 39:15.00 26 1014 28/08/2006 03:30:00 39:30.00 26 1014 28/08/2006 03:45:00 39:45.00 26 1014 28/08/2006 04:00:00 40:00.00 26 1014 28/08/2006 04:15:00 40:15.00 26 1014 28/08/2006 04:30:00 40:30.00 26 1014 28/08/2006 04:45:00 40:45.00 26 1014 28/08/2006 05:00:00 41:00.00 26 1014 28/08/2006 05:15:00 41:15.00 26 1014 28/08/2006 05:30:00 41:30.00 26 1014 28/08/2006 05:45:00 41:45.00 26 1014 28/08/2006 06:00:00 42:00.00 26 1014 28/08/2006 06:15:00 42:15.00 26 1014 28/08/2006 06:30:00 42:30.00 26 1014 28/08/2006 06:45:00 42:45.00 26 1014 28/08/2006 07:00:00 43:00.00 26 1014 28/08/2006 07:15:00 43:15.00 26 1014 28/08/2006 07:30:00 43:30.00 26 1014 28/08/2006 07:45:00 43:45.00 26 1014 28/08/2006 08:00:00 44:00.00 27 1014 28/08/2006 08:15:00 44:15.00 27 1014 28/08/2006 08:30:00 44:30.00 27 1014 28/08/2006 08:45:00 44:45.00 27 1014 28/08/2006 09:00:00 45:00.00 27 1014 28/08/2006 09:15:00 45:15.00 27 1014 28/08/2006 09:30:00 45:30.00 27 1014 28/08/2006 09:45:00 45:45.00 27 1014 28/08/2006 10:00:00 46:00.00 27 1014 28/08/2006 10:15:00 46:15.00 27 1014 28/08/2006 10:30:00 46:30.00 27 1014 28/08/2006 10:45:00 46:45.00 27 1014 28/08/2006 11:00:00 47:00.00 27 1014 28/08/2006 11:15:00 47:15.00 27 1014 28/08/2006 11:30:00 47:30.00 27 1014 28/08/2006 11:45:00 47:45.00 27 1014 28/08/2006 12:00:00 48:00.00 27 1014 < 05 00 03 5d 00 04 59 | ] Y > 05 00 07 5d 00 04 3d 28 25 3c | ] =(%< > 55 | U < 05 00 03 5d 00 04 59 | ] Y > 05 00 07 5d 00 04 3d 28 25 3c | ] =(%< > 55 | U < 05 00 03 b4 0f 14 af | > 05 00 17 b4 0f 14 00 00 00 00 | > 00 00 00 00 00 00 00 00 00 00 | > 00 00 00 00 00 00 af | < 05 00 03 c9 19 1e ce | > 05 00 21 c9 19 1e 00 00 00 00 | ! > 00 00 00 00 00 00 00 00 00 00 | > 00 00 00 00 00 00 00 00 00 00 | > 00 00 00 00 00 00 ce | < 05 00 03 70 0d 32 4f | p 2O > 05 00 35 70 0d 32 ac 03 f6 1b | 5p 2 > 03 f6 1b 03 f6 1a 03 f6 1a 03 | > f6 1a 03 f6 1a 03 f6 1a 03 f6 | > 1a 03 f6 1a 03 f6 1a 03 f6 1a | > 03 f6 1a 03 f6 1a 03 f6 1a 03 | > f6 1a 03 f6 1a 03 e0 | < 05 00 03 a2 0d 32 9d | 2 > 05 00 35 a2 0d 32 f6 1a 03 f6 | 5 2 > 1a 03 f6 1a 03 f6 1a 03 f6 1a | > 03 f6 1a 03 f6 1a 03 f6 1a 03 | > f6 1a 03 f6 1a 03 f6 1a 03 f6 | > 1a 03 f6 1a 03 f6 1a 03 f6 1a | > 03 f6 1a 03 f6 1a 71 | q < 05 00 03 d4 0d 32 eb | 2 > 05 00 35 d4 0d 32 03 f6 1a 03 | 5 2 > f6 1a 03 f6 1a 03 f6 1a 03 f6 | > 1a 03 f6 1a 03 f6 1a 03 f6 1a | > 03 f6 1a 03 f6 1a 03 f6 1a 03 | > f6 1a 03 f6 1a 03 f6 1a 03 f6 | > 1a 03 f6 1a 03 f6 1e | < 05 00 03 06 0e 32 3a | 2: > 05 00 35 06 0e 32 1a 03 f6 1a | 5 2 > 03 f6 1a 03 f6 1a 03 f6 19 03 | > f6 19 03 f6 19 03 f6 19 03 f6 | > 19 03 f6 19 03 f6 19 03 f6 19 | > 03 f6 19 03 f6 19 03 f6 19 03 | > f6 19 03 f6 1a 03 23 | # < 05 00 03 38 0e 32 04 | 8 2 > 05 00 35 38 0e 32 f6 1a 03 f6 | 58 2 > 1a 03 f6 1a 03 f6 1a 03 f6 1a | > 03 f6 1a 03 f6 1a 03 f6 1a 03 | > f6 1a 03 f6 1a 03 f6 1a 03 f6 | > 1a 03 f6 1a 03 f6 1a 03 f6 1a | > 03 f6 1a 03 f6 1a e8 | < 05 00 03 6a 0e 32 56 | j 2V > 05 00 35 6a 0e 32 03 f6 1a 03 | 5j 2 > f6 1a 03 f6 1a 03 f6 1a 03 f6 | > 1a 03 f6 1a 03 f6 1a 03 f6 1b | > 03 f6 1b 03 f6 1b 03 f6 1b 03 | > f6 1b 03 f6 1b 03 f6 1b 03 f6 | > 1b 03 f6 1b 03 f6 a2 | < 05 00 03 9c 0e 32 a0 | 2 > 05 00 35 9c 0e 32 1b 03 f6 1b | 5 2 > 03 f6 1b 03 f6 1b 03 f6 1c 03 | > f6 1c 03 f6 1c 03 f6 1b 03 f6 | > 1b 03 f6 1b 03 f6 1b 03 f6 1b | > 03 f6 1b 03 f6 1b 03 f6 1b 03 | > f6 1b 03 f6 1b 03 bf | < 05 00 03 ce 0e 32 f2 | 2 > 05 00 35 ce 0e 32 f6 1b 03 f6 | 5 2 > 1b 03 f6 1a 03 f6 1a 03 f6 1a | > 03 f6 1a 03 f6 1a 03 f6 1a 03 | > f6 1a 03 f6 1a 03 f6 1a 03 f6 | > 1a 03 f6 1a 03 f6 1a 03 f6 1a | > 03 f6 1a 03 f6 1a 1e | < 05 00 03 00 0f 32 3d | 2= > 05 00 35 00 0f 32 03 f6 1a 03 | 5 2 > f6 1a 03 f6 1a 03 f6 1a 03 f6 | > 1a 03 f6 1a 03 f6 1a 03 f6 1a | > 03 f6 1a 03 f6 1a 03 f6 1a 03 | > f6 1a 03 f6 1a 03 f6 1a 03 f6 | > 1a 03 f6 1a 03 f6 c8 | < 05 00 03 32 0f 32 0f | 2 2 > 05 00 35 32 0f 32 1a 03 f6 1a | 52 2 > 03 f6 1a 03 f6 1a 03 f6 1a 03 | > f6 1a 03 f6 1a 03 f6 1b 03 f6 | > 1b 03 f6 1b 03 f6 1b 03 f6 1b | > 03 f6 1b 03 f6 1b 03 f6 1b 03 | > f6 1b 03 f6 1b 03 16 | < 05 00 03 64 0f 32 59 | d 2Y > 05 00 35 64 0f 32 f6 1b 03 f6 | 5d 2 > 1b 03 f6 1b 03 f6 1b 03 f6 1b | > 03 f6 1b 03 f6 1b 03 f6 1a 03 | > f6 1a 03 f6 1a 03 f6 1a 03 f6 | > 1a 03 f6 1a 03 f6 1a 03 f6 1a | > 03 f6 1a 03 f6 1a b4 | < 05 00 03 96 0f 1e 87 | > 05 00 21 96 0f 1e 03 f6 1a 03 | ! > f6 1a 03 f6 1a 03 f6 1a 03 f6 | > 1a 03 f6 1a 03 f6 1a 03 f6 1a |
Hypotheses sur le protocole de communication
Le premier octet correspond au type de commande 05 correspond a la lecture, 06 a l'ecriture (jamais teste). Le second et le troisieme octets definisent la longueur de la trame (avant le checksum). Le dernier correspond au checksum.
Si la trame provient de la montre : le checksum s'obtient en effectuant un Xor entre les bits des octets 2 a 2 recursivement entre le 4eme et l'avant dernier octet de la trame. Si la trame provient du PC, le checksum s'applique sur la totalite de la trame a l'exception du dernier octet (le checksum). Il est calcule comme precedement mais ne commence pas avec un octet nul mais avec 0x06.
Lors de l'operation de lecture (05) envoyee par le PC, octets 4 et 5 definissent la position dans la memoire et l'octet 6 la longueur de la trame a lire.
Identified memory addresses
Memory address are 16 bits (2 bytes) little endian(?) meaning that the most significant byte is the second one.
General parameters of the watch (units, ...) are coded on adress //64 00// over 11 bytes
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 <05 00 03 64 00 0b 6f >05 00 0e 64 00 0b 00 01 00 01 00 01 02 01 01 ff 00 93
Meaning of byte number :
- 7 : bip off(00) / on(01)
- 8 : icon off(00) / on(01)
- 9 : light normal(00) / off (01) / Night (02?)
- 10: 12h (00) / 24h (01)
- 11: date ? MM.DD(00) / DD.MM(01) / Day(02)
- 12: altitude ft(00) / m(01)
- 13: ascentional speed m/s(00) / m/mn(01) / m/h(02) / ft/s(03) / ft/mn(04) / ft/h(05)
- 14: pression inHg(00) / hPa(01)
- 15: temperature F(00) / C (01)
byte 16 et 17 ??
Max altitude is coded on address //48 0d//
< 05 00 03 48 0d 12 57 > 05 00 15 48 0d 12 06 08 0f 2b 0a
Max altitude was reached on (20)06/08/15 and the value is 2b 0a as a short integer (16 bits little endian) meening 2603m
HR+hiking log positions in connect
< 05 00 03 c8 0f 30 f7 | get 36 bytes starting from c8 0f > 05 00 33 c8 0f 30 | > 07 | number of log points ??? > 06 08 1f | start date 31st august 2006 > 09 17 | start time 09:23:00 > 0a | sample time ???? > 01 | ? > 05 5f 05 5f | total ascent (1375m) / total descent (1375m) > 00 02 | ? > 06 3a 36 | duration 6:56.53 > 00 | ? > 03 d4 | time up : 980 (>H) *sample time in sec = 2h43m20 > 03 fc | time down :1020(>H) *sample time im sec = 2h50m00 > 08 d2 08 1f 0d 13 | Highest point 2258m (>H) reached on 2006/08/31 at 13:19 > 04 5a 08 1f 09 1b | Lowest point 1114m (>H) reached on 2006/08/31 at 09:27 > 3e b3 7c | Lowest/highest/average HR = 62 - 179 124 > a5 1e | alarm on HR : max=165 min=30 > 00 38 | HR over limits : 56*10s * 9mn 20 > 09 93 | HR in limits : (>H) 2451*(sample time) = 24510sec=6h48m30s > 00 00 | Under limit : 0 > ff ff ff |??? > 4b |Checksum
Weather log
Weather log are 2 day long, one data point every 15mn, so 193 data
The SAM software reads 11 blocks of 50 bytes (0x32) starting from 07 0d to 64 0f (ending at 1e 0f), then 30 bytes from 1e 0f to b4 of. 580 byte were read, making 3 byte per log-point. one byte is dedicated to the temerature (1a or 1b in this log (26 or 27C) and 2 bytes for pression (in big endian short integer)
il ne reste plus beaucoup d'informations non comprises : “28 25 3c”.
HR+hiking log positions in connect
31/08/2006 9:23:00 HR hiking log 6:58:54 10 1114 2258 mini HR=62 max HR=179 avr HR=124 tot asc=1375 tot des=1375 Suunto X6HR. log data General Wristop model: X6HR. Wristop serial: 61403760 Log name: HR Hiking Log Log type: HR Hiking Start : 31/08/2006 09:23:00 End : 31/08/2006 16:21:54 Duration: 06:58.54 Sample interval: 10 s Notes: Altitude High point: 2258 m Time: 31/08/2006 13:19:00 Low point: 1114 m Time: 31/08/2006 09:27:00 Total ascent: 1375 m Ascent time: 02:43.20 Average ascent: 0 m/s Total descent 1375 m Descent time: 02:50.00 Average descent: 0 m/s Heart rate HR min: 62 HR max : 179 HR average: 124 HR limit high: 165 HR limit low: 30 Over high: 00:09.20 In limits: 06:48.30 Below low: 00:00.00 Samples Calendar time Log time Heart rate Altitude (m) Lap Note 31/08/2006 09:27:00 00:04.00 0 1114 00:04.00 31/08/2006 10:21:00 00:58.00 124 1493 00:54.00 31/08/2006 10:34:00 01:11.00 126 1599 00:13.00 31/08/2006 10:35:00 01:12.00 120 1600 00:01.00 31/08/2006 10:54:00 01:31.00 143 1712 00:19.00 31/08/2006 11:36:00 02:13.00 117 2000 00:42.00 31/08/2006 12:34:00 03:11.00 101 2162 00:58.00 31/08/2006 13:19:00 03:56.00 159 2258 00:45.00 < 05 00 03 5d 00 04 59 | ] Y > 05 00 07 5d 00 04 3d 28 25 3c | ] =(%< > 55 |Checksum < 05 00 03 5d 00 04 59 | ] Y > 05 00 07 5d 00 04 3d 28 25 3c | ] =(%< > 55 |Checksum < 05 00 03 b4 0f 14 af | > 05 00 17 b4 0f 14 01 00 00 00 | > 00 00 00 00 00 00 00 00 00 00 | > 00 00 00 00 00 00 ae | < 05 00 03 c9 19 1e ce | > 05 00 21 c9 19 1e 01 00 00 00 | > 00 00 00 00 00 00 00 00 00 00 | > 00 00 00 00 00 00 00 00 00 00 | > 00 00 00 00 00 00 cf | < 05 00 03 fa 0f 31 c4 | 1 > 05 00 34 fa 0f 31 | get 49 bytes (7log of 7bytes) > 08 1f 0a 15 05 d5 7c | 08/31 10H21 1493m 124HR > 08 1f 0a 22 06 3f 7e | > 08 1f 0a 23 06 40 78 | > 08 1f 0a 36 06 b0 8f | > 08 1f 0b 24 07 d0 75 | > 08 1f 0c 22 08 72 65 | date 08/31 ; time 12:34 ; 2162m ; 101HR > 08 1f 0d 13 08 d2 9f | date 08(B) 31 (B) ;time 13h(B) 19mn(B) ; 2258m (>H) ; 159HR (B) > fa |chksum
Conclusion
Si vous etes interesse par ce projet, vous pouvez me contacter par courier electronique a jerome AT terre-adelie POINT org