Search code examples
javagpsnotepad++reverse-engineeringgpx

How to reverse engineer a .RIB file?


In 2019 I bought a Zeal Optics Transcend GPS goggle for a very low price.

These google were produced by Recon Instruments and they were later bought by Intel. The technology was very good an I was able to check my statistics during the day and at home.

enter image description here

Because the googles hit the market on 2012/2013 the technology was a bit old when I bought them but I was still able to upload my data to http://reconinstruments.com/ and I could check online my statistics

enter image description here

Then, some day around 2020 the dashboard wasn't reachable any more, the website was down, and all the Zeal Optics Transcend GPS goggle owner were left alone without any way to upload the data to a dashboard.

But the monitor on the goggle is still working, collecting data, and if I connect the goggle to my computer I can see a DAY08.RIB file that is generated for each day I go to ski.

The files on Notepad++ looks something like this:

enter image description here

Because internet is a fantastic place to be I found someone else in my same situation and on the Intel blog someone suggested to use this GitHub repository which contains a .jar and a .java file to convert the *.RIB to *.GPX.

The repository works very well!

But is missing temperature information.

Is there any way I could reverse engineer a .RIB file because I think that the temperature information are not taken during the conversion. But they must be there. Somewhere.

EDIT: In case you want to download a copy I put 3 of them here

EDIT 2: New data fresh out of the fridge here . As you can see there are 2 files that get generated for each day: DAY14 and EVENT14 but the second one is nearly empty. The goggle started at 14° and said in the fridge 30 minutes. When I took them out of the fridge the temperature on the monitor was 8° and the max reached was 15°.


Solution

  • Coincidentally I just shared a project on github which I made to do exactly what you're asking, but this is for the Snow2 goggles of Recon Instruments. Here is the repository: https://github.com/stevenhgs/rib-to-gpx-file-converter

    In the README you can see how I was able to reverse engineer it.

    After taking a quick look at your files I saw that the data of your files do not have the same structure as the files produced by the Snow2 goggles. So the program I shared won't work for your files. However, I was able to see that your track points have a size of 20 and I was able to already see the time, the longitude and latitude in this data.

    Is it correct that the activity of the file DAY05.rib took place around 16:48 and at a latitude of 46.xxx and a longitude of 6.xxx?