19c2daa00SOllivier Robert<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 29c2daa00SOllivier Robert 39c2daa00SOllivier Robert<html> 49c2daa00SOllivier Robert 59c2daa00SOllivier Robert <head> 69c2daa00SOllivier Robert <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 79c2daa00SOllivier Robert <meta name="GENERATOR" content="Mozilla/4.76 [en] (X11; U; Linux 2.2.16-22 i586) [Netscape]"> 89c2daa00SOllivier Robert <title>Generic NMEA GPS Receiver</title> 99c2daa00SOllivier Robert <link href="../scripts/style.css" type="text/css" rel="stylesheet"> 109c2daa00SOllivier Robert </head> 119c2daa00SOllivier Robert 129c2daa00SOllivier Robert <body> 139c2daa00SOllivier Robert <h3>Generic NMEA GPS Receiver</h3> 149c2daa00SOllivier Robert <hr> 159c2daa00SOllivier Robert <h4>Synopsis</h4> 169c2daa00SOllivier Robert <p>Address: 127.127.20.<i>u</i><br> 179c2daa00SOllivier Robert Reference ID: <tt>GPS</tt><br> 189c2daa00SOllivier Robert Driver ID: <tt>GPS_NMEA</tt><br> 199c2daa00SOllivier Robert Serial Port: <tt>/dev/gps<i>u</i></tt>; 4800 baud, 8-bits, no parity<br> 209c2daa00SOllivier Robert Features: <tt>tty_clk</tt></p> 219c2daa00SOllivier Robert <h4>Description</h4> 229c2daa00SOllivier Robert <p>This driver supports GPS receivers with the <tt>$GPRMC</tt> NMEA output string by default. Alternately the <tt>$GPGGA</tt> or <tt>$GPGLL </tt>may be selected.</p> 239c2daa00SOllivier Robert <p>The driver expects the receiver to be set up to transmit a <tt>$GPRMC</tt> message every second.</p> 249c2daa00SOllivier Robert <p>The accuracy depend on the receiver used. Inexpesive GPS models are available with a claimed PPS signal accuracy of 1 <font face="Symbol">m</font>s or better relative to the broadcast signal. However, in most cases the actual accuracy is limited by the precision of the timecode and the latencies of the serial interface and operating system.</p> 259c2daa00SOllivier Robert <p>If the Operating System supports the PPSAPI, RFC-2783, it will be used.<br> 269c2daa00SOllivier Robert </p> 279c2daa00SOllivier Robert <p>The various GPS sentences that this driver recognises look like this:<br> 289c2daa00SOllivier Robert (others quietly ignored)</p> 299c2daa00SOllivier Robert <pre><tt>$GPRMC,POS_UTC,POS_STAT,LAT,LAT_REF,LON,LON_REF,SPD,HDG,DATE,MAG_VAR,MAG_REF*CC<cr><lf> 309c2daa00SOllivier Robert$GPGLL,LAT,LAT_REF,LONG,LONG_REF,POS_UTC,POS_STAT*CC<cr><lf> 319c2daa00SOllivier Robert$GPGGA,POS_UTC,LAT,LAT_REF,LONG,LONG_REF,FIX_MODE,SAT_USED,HDOP,ALT,ALT_UNIT,GEO,G_UNIT,D_AGE,D_REF*CC<cr><lf> 329c2daa00SOllivier Robert 339c2daa00SOllivier Robert POS_UTC - UTC of position. Hours, minutes and seconds [fraction (opt.)]. (hhmmss[.fff]) 349c2daa00SOllivier Robert POS_STAT - Position status. (A = Data valid, V = Data invalid) 359c2daa00SOllivier Robert LAT - Latitude (llll.ll) 369c2daa00SOllivier Robert LAT_REF - Latitude direction. (N = North, S = South) 379c2daa00SOllivier Robert LON - Longitude (yyyyy.yy) 389c2daa00SOllivier Robert LON_REF - Longitude direction (E = East, W = West) 399c2daa00SOllivier Robert SPD - Speed over ground. (knots) (x.x) 409c2daa00SOllivier Robert HDG - Heading/track made good (degrees True) (x.x) 419c2daa00SOllivier Robert DATE - Date (ddmmyy) 429c2daa00SOllivier Robert MAG_VAR - Magnetic variation (degrees) (x.x) 439c2daa00SOllivier Robert MAG_REF - Magnetic variation (E = East, W = West) 449c2daa00SOllivier Robert FIX_MODE - Position Fix Mode ( 0 = Invalid, >0 = Valid) 459c2daa00SOllivier Robert SAT_USED - Number Satellites used in solution 469c2daa00SOllivier Robert HDOP - Horizontal Dilution of Precision 479c2daa00SOllivier Robert ALT - Antenna Altitude 489c2daa00SOllivier Robert ALT_UNIT - Altitude Units (Metres/Feet) 499c2daa00SOllivier Robert GEO - Geoid/Elipsoid separation 509c2daa00SOllivier Robert G_UNIT - Geoid units (M/F) 519c2daa00SOllivier Robert D_AGE - Age of last DGPS Fix 529c2daa00SOllivier Robert D_REF - Reference ID of DGPS station 539c2daa00SOllivier Robert CC - Checksum (optional) 549c2daa00SOllivier Robert <cr><lf> - Sentence terminator.</tt></pre> 559c2daa00SOllivier Robert Alternate GPS sentences (other than <tt>$GPRMC</tt> - the default) may be enabled by setting the relevent bits of 'mode' in the server configuration line<br> 569c2daa00SOllivier Robert * server 127.127.20.x mode X<br> 579c2daa00SOllivier Robert bit 0 - enables RMC ( value = 1)<br> 589c2daa00SOllivier Robert bit 1 - enables GGA ( value = 2)<br> 599c2daa00SOllivier Robert bit 2 - enables GLL ( value = 4)<br> 609c2daa00SOllivier Robert multiple sentences may be selected<br> 619c2daa00SOllivier Robert <p>The driver will send a <tt>$PMOTG,RMC,0000*1D<cr><lf></tt> message each time a <tt>$GPRMC</tt> string is needed. This is not needed on most GPS receivers because they automatically send the <tt>$GPRMC</tt> string every second and will only work on GPS receivers that understand the <tt>$PMOTG</tt> string. Others will just ignore it.</p> 629c2daa00SOllivier Robert <h4>Setting up the Garmin GPS-25XL</h4> 639c2daa00SOllivier Robert Switch off all output with by sending it the following string. 649c2daa00SOllivier Robert <pre>"$PGRMO,,2<cr><lf>"</pre> 659c2daa00SOllivier Robert <p>Now switch only $GPRMC on by sending it the following string.</p> 669c2daa00SOllivier Robert <pre>"$PGRMO,GPRMC,1<cr><lf>"</pre> 679c2daa00SOllivier Robert <p>On some systems the PPS signal isn't switched on by default. It can be switched on by sending the following string.</p> 689c2daa00SOllivier Robert <pre>"$PGRMC,,,,,,,,,,,,2<cr><lf>"</pre> 699c2daa00SOllivier Robert <h4>Monitor Data</h4> 709c2daa00SOllivier Robert <p>The GPS sentence(s) that is used is written to the clockstats file.</p> 719c2daa00SOllivier Robert <h4>Fudge Factors</h4> 729c2daa00SOllivier Robert <dl> 739c2daa00SOllivier Robert <dt><tt>time1 <i>time</i></tt> 749c2daa00SOllivier Robert <dd>Specifies the time offset calibration factor, in seconds and fraction, with default 0.0. 759c2daa00SOllivier Robert <dt><tt>time2 <i>time</i></tt> 769c2daa00SOllivier Robert <dd>Not used by this driver. 779c2daa00SOllivier Robert <dt><tt>stratum <i>number</i></tt> 789c2daa00SOllivier Robert <dd>Specifies the driver stratum, in decimal from 0 to 15, with default 0. 799c2daa00SOllivier Robert <dt><tt>refid <i>string</i></tt> 809c2daa00SOllivier Robert <dd>Specifies the driver reference identifier, an ASCII string from one to four characters, with default <tt>GPS</tt>. 819c2daa00SOllivier Robert <dt><tt>flag1 0 | 1</tt> 829c2daa00SOllivier Robert <dd>Not used by this driver. 839c2daa00SOllivier Robert <dt><tt>flag2 0 | 1</tt> 849c2daa00SOllivier Robert <dd>Specifies the PPS signal on-time edge: 0 for assert (default), 1 for clear. 859c2daa00SOllivier Robert <dt><tt>flag3 0 | 1</tt> 869c2daa00SOllivier Robert <dd>Controls the kernel PPS discipline: 0 for disable (default), 1 for enable. 879c2daa00SOllivier Robert <dt><tt>flag4 0 | 1</tt> 889c2daa00SOllivier Robert <dd>Not used by this driver. 899c2daa00SOllivier Robert </dl> 909c2daa00SOllivier Robert <p>Additional Information</p> 919c2daa00SOllivier Robert <p><a href="../refclock.html">Reference Clock Drivers</a></p> 929c2daa00SOllivier Robert <hr> 939c2daa00SOllivier Robert <script type="text/javascript" language="javascript" src="../scripts/footer.txt"></script> 949c2daa00SOllivier Robert </body> 959c2daa00SOllivier Robert 969c2daa00SOllivier Robert</html>