Thanks to the cooperation of many people in the sci.geo.satellite-nav newsgroup (special acknowledgments go to José María Muñoz and Sam Storm van Leeuwen) we have been able to get an idea of where some raw data was being sent in the async messages datastream (see this report for details.
After getting the raw data (mainly pseudoranges and carrier phase) from our unit we have to postprocess it to see if they really make sense. I have written a simple program GAR2RNX (a GARmin TO RiNeX translator) that generates RINEX2 compliant files from the binary data file obtained using the logger utility.
Note: Previous versions of the programs had several important bugs when generating RINEX files. If you downloaded them prior to Jun 20 2000, please consider downloading them again. Several improvements have also been added.
The advantage of the RINEX (Receiver INdependent EXchange) format is that it can be directly postprocessed againt other RINEX files provided by reference stations around the world.
Simply put, the procedure to obtain a RINEX file is:
async -p your_port -rinex -t 300 -o bindata.g12
that would generate a file bindata.g12 with a five minute logging.
gar2rnx bindata.g12 -area XXXX -f
or, if you happen to have a Garmin from the eTrex or eMap series:
gar2rnx bindata.g12 -etrex -area XXXX -f
This command will create a file using the standard RINEX conventions for observation files, something like
XXXX0751.01Omeaning that the data was recorded the 75th day of the year 01 (2001).
American users will find this CORS address quite convenient.
For European users there is this EUREF site, although the access is less user-friendly.
For my tests, I have used GeoGenius.
It's not public domain, but you can get a functional evaluation demo
from them.
Of course, since our knowledge of the Garmin undocumented binary protocol is poor and mostly guesswork and since my particular knowledge of RINEX files was acquired during a weekend, it is quite probably that some problems will appear. Nevertheless, I have done some preliminar tests, and the results are ok, so that I know that I haven't done any mayor blunders with the RINEX formatting and that the raw data extracted from the GPS12 that I put into the Rinex file is meaningful.
You can see these results in the next section. They do look good, but I'm relunctant to say that they are actually pretty good until I don't check them properly.