Dennis Milbert
Updated: 2010-jun-18
The program, sirfrin1, takes a ".srf" binary file and converts the MID 2, MID 7, and MID 28 message contents into a RINEX file. Its binary in, and ASCII (RINEX) out.
Note that this version of sirfrin1 only translates pseudrorange
into the RINEX format. Carrier phase is not supported.
Operation
The program operates in the DOS window. Alternatively, you can simply run "sirfrin1.exe" with a double click or with "Run..." in your "Start" menu. (I use the DOS window myself.)
One file is needed for input. One file is generated as output. The names are fixed. The files must be in the subdirectory where you are working.
Input File:
sirfrin1.srf -- Binary format. You must have logged MID 2, MID 7, and MID 28 messages.
Output File:
sirfrin1.obs -- ASCII, RINEX format. A RINEX observation file containing the pseudorange information in the MID 28 messages. A generic header is also constructed -- edit those elements you wish to change (like station ID).
Command Line Options:
The following option may be specified following the "sirfrin1". A hyphen (minus sign) is the prefix any command line option. For example:
sirfrin1 -cCommand line options are used when you have opened a DOS window or when you use "Run..." in your "Start" menu.
-c -- "clean". Drop all MID 28 records that do not have a valid clock bias estimate in the MID 7 record. Default action is to retain records without a valid clock bias estimate. Note: the SiRF seems to need a little time to warm up before it issues clock bias values.
Discussion:
The program generates a few lines of output in the DOS window. It echos the command line options it has detected. It lists counts of the number of binary messages it has encountered. It bypasses data not associated with a valid MID 2 message (a non-zero XYZ position). If the clean option is selected, it bypasses data without an associated valid clock bias in a MID 7 message. Note that the "GPS Software Time" is converted into the "GPS Time of Receipt" by application of the clock bias. Pseudorange is also adjusted by the clock bias times the speed of light.
The program only supports the version 2.2.0 and earlier software version of the SiRF binary format. Double precision byte values are rearranged in accordance with instructions at the bottom of page 3-34 of the SiRF Binary Protocol Reference Manual (Version 2.4). If the double precision binary data are not formatted as expected, the following message is issued:
detected bad pseudorange decoding this version of sirfrin1 does not handle this binary file formatand the program is halted.
RINEX Format
The RINEX version 2.10 format (10Dec2007) can be obtained from the
International GPS Service.
Shortcomings
This is "no frills" software. There are no warranties of any sort. No Windows GUI. Just the core function.
You must have the input file with the name sirfrin1.srf. The program will
overwrite any existing "sirfrin1.obs" file in the working directory. The program will not
process data with alternative kinds of binary double precision formatting.
Source Code and Binary Executable
The Fortran source code (2010jun18) is sirfrin1.for.
The compiled executable (zipped) is sirfrin1.exe.
Links to Other Pages
The links here expand on the topics above.
SiRF Binary Protocol Reference Manual: Version 2.4 (1.7Mb).
To Contact Me
My e-mail user name is the first initial of my first name
followed by all the letters of my last name (see above). My ISP is
"comcast", and it is a "dot-net", not a "dot-com". Sorry for not spelling
out my e-mail address, but I try to keep the spam-bots
from fingering me. But, just so the spam-bots don't feel left
out, they can always go to abuse@comcast.net