3 gpsfs, gpsevermore \- GPS time and position service
42 reads an NMEA-compatible serial GPS (Global Positioning System)
43 device and provides time and position
44 through a file system, by default mounted on
49 It implements four files in the
60 file contains one line of information in 9 tab-separated fields:
61 .TF "\fImagnetic deviation
65 0 means position data invalid, 1 means a 2D position is available, 2 means a 3D position is available.
66 The value is 8, 9, or 10, respectively, when the fix data comes from a file rather than an actual GPS.
69 universal coordinated time encoded as hhmmss followed by the character 'Z'.
72 time and date converted to the format of
76 in degrees, east of Greenwich is positive, west negative.
79 in degrees, positive is north, negative south of the equator.
82 above sea level, in meters.
85 degrees, clockwise from true north.
90 .I "magnetic deviation
91 (not provided by all GPSs), in degrees, positive is westerly, negative easterly.
95 file contains one line of information in 4 tab-separated fields:
109 format (ms accuracy).
114 format. This is the system time at the time of the
116 sample. The difference between this and the previous field is used in clock
123 meaning sample valid and usable for clock synchronization. The other values are
124 not usable for clock sync:
126 means valid sample from file playback,
128 means invalid sample, and
130 means invalid playback sample.
134 file contains information about the current satellite constellation. It consists
135 of one line of general information, followed by zero or more lines, one for each satellite in use.
136 The first line contains two fields:
137 .TF "\fIsatellites in view
145 .I "satellites in view
146 number of satellites above the horizon
148 Subsequent lines have four fields:
156 above the horizon, degrees.
159 direction, degrees from true north
162 Signal to noise ratio, 0 - 99 dB
164 The contents of these files are refreshed once per second when reading from an actual GPS,
165 and once per 100 ms (giving a speed up of a factor 10) when playing back from file.
169 file can be read to obtain a copy of the raw NMEA GPS output.
171 keeps an internal buffer of 8KB, so the reader must keep up with the output
172 (typically 500 or so bytes per second).
176 flag establishes the device the GPS samples are read from. If the device file is not
179 assumes playback from file and modifies quality parameters as such.
183 flag specifies the baud rate of the serial line. The standard baud rate for NMEA
184 GPS is 4800 baud, but many device allow changing to higher speeds.
188 flag specifies the name under which the
195 flag specifies a mount mount other than
199 is used to configure GPSs using an Evermore chipset.
203 flag specifies the serial device to the GPS.
207 flag specifies the baud rate of the serial line. The standard baud rate for NMEA
208 GPS is 4800 baud, but many device allow changing to higher speeds.
212 flag specifies the speed to set the GPS to. When the command finishes, the
213 GPS should be read (and configured) at the new speed.
217 flag is sued to specify the location to initialize the GPS to. The format is
225 stands for degrees (one or more digits),
247 flag is followed by two such fields, one for longitude, one for latitude. They may be
248 given in a single argument (separated by white space), or in two arguments, in either order.
249 Initialization time is taken from
255 .TF /mnt/gps/satellites
258 position, time, speed and heading
260 .B /mnt/gps/satellites
264 GPS time (millisecond accuracy)
269 .B /sys/src/cmd/aux/gps