Now that I have a few more runs worth of data, I was able to pick a little bit of information out of the miCoach binaries.
There are 40 EXRCS001.BIN files on the device (after the data has been unpacked), each one corresponding to an individual workout. This means you can store up to 40 workouts before you need to sync the device again. Knowing that, I had a bit of a better idea what I was looking at.
The miCoach pacer records various data points periodically – every few seconds as far as I can tell. The record length for these data points is 14 bytes. So far we have:
0x1E – row number, increments one each row
0x21 – distance
0x23 & 0x24 – Not sure exactly what the values are, but these dropped to 0 at a point where I paused the pacer and the miCoach graph shows a stride/pace of 0
0x25 – stride rate
0x26 – same situation as 0x23 and 0x24
0x27 – heart rate
0x28 – Not sure what this is, but it’s the same for each row
0x29 – time in. I think this is in seconds, but I’m not sure. It goes up by 5 each record.
At the start of the file, from 0x07 to 0x10, is a bunch of data that I suspect to be the date but haven’t figured out an obvious format. For my workout on 5/20/2010 9:58am, the hex values are 01 5A 4F B4 3C A7 53 B4 3C 24 8C
4 thoughts on “Success!”
Looks a bit like start and end dates/times in MS-DOS short format (little-endian):
Therefore, as far as the device is concerned, your workout lasted until 17:33:16?
To clarify: the last 4 shorts in that header are: start date, start time, (end?) date, (end?) time:
B4 3C = 0x3CB4 = 2010/5/20, A7 53 = 0x53A7 = 9:58:14
Good effort – thanks for starting on this and for sharing it:)
I’m just getting started with miCoach – mainly from a webapi perspective – but I may also have a go at the binary files too.
If it helps it looks like the period of the data points is 5 seconds by default.
Listing of xml commands: