True Position GPSDO

Info

Output

Standard output when locked

$CLOCK 1296916319 18 3
$CLOCK 1296916320 18 3
$CLOCK 1296916321 18 3
$CLOCK 1296916322 18 3
$EXTSTATUS 0 3 00.58 34.89
$STATUS 0 0 0 0 4 0
$CLOCK 1296916323 18 3
$CLOCK 1296916324 18 3
$CLOCK 1296916325 18 3
$CLOCK 1296916326 18 3

$STATUS A B C D E F

  • A: 10MHz (0=good, 1=bad)
  • B: 1PPS (0=good, 1=bad)
  • C: Antenna Status (0=good, 1=bad)
  • D: Holdover Duration (seconds)
  • E: # Satellites Tracked
  • F: Status:
    • 0 - Locked
    • 1 - Recovery

$EXTSTATUS A B C D

  • A: Survey Status (0=normal, 1=surveying)
  • B: # Satellites Tracked
  • C: DOP/TDOP?
  • D: OCXO Temperature

Commands

Based on FW 12.0.1
Commands:

$PROCEED [Send at startup to get past the bootloader]

$FACT [Factory preset]
$GETBDELAY [returns board delay, nanoseconds]
$GETDELAY [returns cable delay, nanoseconds]
$GETPOS [return position ]
$GETSCALEFACTOR [Returns a float, such as 3.742106e-3] 
$GETVER [returns version info]
$KALDBG <0|1> [Enable reporting of Kalman filter parameters]
$PPSDBG <0|1> [Enable or disable timing information every second]
$RESET [Unit software reset]
$SETBDELAY <n> [-32 <= n <= 32, Set board delay, PPS4 units (roughly 5 or 6 ns). PPS4 is controlled to equal this value]
$SETDELAY <n> [-32768 <= n <= 32767Set cable delay, nanoseconds]
$SETPOS <n> <n> <n> [set position to Lat/Long/Elevation_MSL, send value returned by survey]
$SURVEY <n> [survey for n hours, default is 8]
$TRAINOXCO [Start OXCO Training. This restarts the board ($PROCEED needed), and measures freq
            change with 500 ADC count]
$UPDATE FLASH [update flash memory settings]

Other unknown commands:
$GETA [returns -1; Attenuator?]
$GETP [returns -1 255; Potentiometer?]
$SET1PPS  ["$SET1PPS 0"/"$SET1PPS 1"] seems to go to a manual holdover mode, and status changes to 3]
          [Seems to return to normal a few minutes after "$SET1PPS 1 1"???  (Status goes 8,16,17,18,0]


Messages:
$STATUS 
1: (Maybe 10 MHz bad, based on packrat docs)
2: (Maybe PPS bad, based on packrat docs)
3: Antenna is bad? 0=good
4: Holdover duration (secs)
5: Number of sats tracked (different than, but within 2 of $EXTSTATUS, perhaps only counts channels 0-7???, range is 0-8)
Status [Locked = 0, Recovery = 1, (Forced holdover?)=3, Train OXCO=7, Holdover = 8,
       [Startup A/B/C/D = 10/11/2/19 ]
       [ (transition from 1 to 0) = (14,15,16,17,18) ] Wait states when transitioning
       [ (transition from 0 to 1) = (20,21,22) ]  Wait states when transitioning
 (6 = locked, but unknown location????)
        //
$PPSDBG 1187153266 3 25.28081e3 -253 -6 2 2 0.0
1: same as clock (GPS Time)
2: Same as $STATUS status, but updates much more often (and seems to skip states less often)
3: Floating point number. Output voltage. Tends towards 29e3 on my board. Proportional to the DAC voltage
        On my RevC CTS board, Vbias ~= 6.25e-5*PPS3. This may make sense for a 4.096 V reference: 4.096/2^16=6.25e-5
        During startup, it is not put in the result string (this field is blank, so two sequential space characters are in the string)
4: Measured phase offset? Units seem something like 6.5*ns
5: Looks like a saw-tooth between -15 and 15 (or so). Perhaps the quantization error reported by the GPS module?
6: Normally 0, but sometimes 2 (related to holdover/startup?)
7: Normally 0, but sometimes 1 or 2 (related to holdover/startup?)
8: Always 0.0? 

$EXTSTATUS
1: SurveyStatus [0=normal, 1=surveying]
2: Number of sats (different than, but within 2 of $STATUS, perhaps only counts channels 0-9, range is 0-10)
3: DOP (maybe TDOP?)
4: Temperature (close to FPGA? close to oven?) (my board reads about 45C)
        //
$GETPOS (sent after setting position, or requesting position
Latitude
Longitude
Elevation_MSL
Correction to MSL to get WGS elevation (add this value to MSL to get WGS ellipsoid)
Status flag [(Normal?)=0 on 196 board or =2 on Bliley board, Surveying=3], or maybe a FOM?
        //
$SURVEY 40448488 -86915296 225 -34 7129
[sent during a survey]
1: Latitude
2: Longitude
3: Elevation_MSL
4: Correction to MSL to get WGS elevation (add this value to MSL to get WGS ellipsoid)
5: Number of seconds remaining

$SAT
Channel # (0-based, seems to only return channel 0 through 7)
GPS Sattelite number
Elevation (degree)
Azimuth (degree)
SNR (dB*Hz)

$CLOCK 1187156731 18 3
GPS UNIX-timestamp (secs since 1970), but my board is off by 10 years (reporting 2007 while it is 2017)
Count of leap-seconds
Time figure-of-merit (1=good, 7=bad)

$GETVER 12.0.1 BOOT 10 fbde 7437 06162200B0000A2004183ACC
$GETVER 12.0.1 0.4850266.0.1 19 fbde 7437 06162200B0000A2004183ACC
[version information, I used this to know if I need to send the PROCEED command, String contains BOOT when in bootloader mode]
[During boot, only terminated with LF but not CR(or maybe other-way around?)]
1: Bootloader version?
2: ("BOOT" during boot) or (software or perhaps GPS version info????)
3: Status code (same as $STATUS)
4: CRC of something?
5: Always 7437?
6: (Part number: 06162200)(Board Rev: B)(Assembly version: 0000)(Delimeter: A)(Year: 2004)(Week?: 18)(SN?: 3ACC)

$WSAT 4 138 209 38 0
[WAAS Satellite info, same format as $SAT]
 
$SET1PPS
[Sent at boot, but also in response to a $SET1PPS command. Sent every 20 seconds.]
 
$KALDBG 1187203779 0.08 29.59241e3 0.120e-3 0.568 0 0
[Only be sent when reference is locked (state=0)]
1: GPS UNIX-timestamp (secs since 1970), but my board is off by 10 years (reporting 2007 while it is 2017)
2: Floating point number.
    Resets to 0 at time of lock (and at end of holdover).
3: Floating point number. Magnitude is similar to PPS3, but does not track it so well.
4: Floating point.
    Resets to 0 at time of lock (and at end of holdover).
5: Floating point. Smoothed version of PPS3, seems like ~6.5*(PPS phase in ns)?
    Resets to 0 at time of lock (and at end of holdover).
6: Flag, always zero?
7: Flag, always zero?
trueposition_gpsdo.txt · Last modified: 2021/02/09 14:42 by john
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0