diff options
author | Eric S. Raymond <esr@thyrsus.com> | 2010-03-28 08:47:01 -0400 |
---|---|---|
committer | Eric S. Raymond <esr@thyrsus.com> | 2010-03-28 08:47:01 -0400 |
commit | d893a0737a7f169583d2809d01a1cd631e309ec5 (patch) | |
tree | 9708cca246b78a4a02e5be25c852e52acd052932 | |
parent | 2b2481ddf1e55b64584db6aad8c9973653b6027f (diff) | |
download | gpsd-d893a0737a7f169583d2809d01a1cd631e309ec5.tar.gz |
Improvements to FAQ entries on accuracy.
-rw-r--r-- | www/faq.html | 56 |
1 files changed, 45 insertions, 11 deletions
diff --git a/www/faq.html b/www/faq.html index 139f3139..dcee3c0f 100644 --- a/www/faq.html +++ b/www/faq.html @@ -76,7 +76,8 @@ GPSD Frequently Asked Questions <li><a href='#why_not_parse_nmea'>Why use the <code>gpsd</code> protocol rather than parsing raw NMEA?</a><br/> <li><a href='#interfacing'>How should I interface my application with <code>gpsd</code>?</a><br/> <li><a href='#agps'>Can GPSD work use Assisted GPS data from cellphone networks?</code>?</a><br/> -<li><a href='#accuracy'>How can I improve fix and PPS time accuracy from my GPS</a><br/> +<li><a href='#accuracy'>How can I improve fix accuracy from my GPS?</a><br/> +<li><a href='#time'>How can I improve time reference accuracy from my GPS?</a><br/> <li><a href='#sleep'>Why does my GPS get lost when I sleep/wake my laptop?</a><br/> <li><a href='#web'>How do I get gpsd data into a web page?</a><br/> </ul> @@ -468,7 +469,7 @@ we know there aren't any published standards for the format of the corrections. So even if we had the signals, GPSD couldn't know what to do with them.</p> -<h1 id='accuracy'>How can I improve fix and PPS time accuracy from my GPS</h1> +<h1 id='accuracy'>How can I improve fix accuracy from my GPS?</h1> <p>Use an antenna, and place the sensor (and/or antenna) properly.</p> @@ -476,19 +477,24 @@ do with them.</p> reference. It should be particularly helpful for reducing timing jitter.</p> -<p>One common error is to place the GPS or antenna as high as possible. -This is wrong, and causes signal bounce from the ground or water, -which can causes the GPS to mistake its position and the time signal. -The correct location for a boat GPS antenna is on the gunwale rail or +<p>One common error is to place the GPS or antenna as high as +possible. This will increase <a +href="http://en.wikipedia.org/wiki/Global_Positioning_System#Multipath_effects">multipath +effects</a> due to signal bounce from the ground or water, which can +cause the GPS to mistake its position and the time signal. The +correct location for a boat GPS antenna is on the gunwale rail or pushpit rail, close to the water and as far from the mast as possible -(to reduce signal bounce from the mast). If you're in a car, don't -put the GPS antenna on the roof, put it on the towbar or similar. If +(to reduce signal bounce from the mast). If you're outside or in a fixed location, put the GPS antenna as far from -buildings as possible, and on the ground./<p> +buildings as possible, and on the ground. If you're in a car, don't +put the GPS antenna on the roof, put it on the towbar or similar.</p> <p>If you're driving in a heavily built up area, you're going to get -signal bounce and reduced accuracy. That's just how the physics -works.</p> +signal bounce off buildings and and reduced accuracy. That's just how +the physics works. Note, however, that as your velocity goes up it +becomes easier for the convergence filters in your GPS to spot +and discard delayed signal, so multipath effects are proprtionately +less important in fast-moving vehicles.</p> <p>If you're using <tt>gpsd</tt> with software that plots your position on a map, and you seem to be getting latitude/longitude that @@ -500,6 +506,34 @@ as much as 100-150m with respect to WGS84. While modern datums (e.g., NAD83) are almost all very close to WGS84, typically each area of world has an older datum that only agrees at the 100m level.</p> +<h1 id='time'>How can I improve time reference accuracy from my GPS?</h1> + +<p>All the measures you'd take to improve <a href="#accuracy">fix +accuracy</a> will help. Time referencing at accuracies below +0.01sec has its own set of issues related to latency in your +sensor and computer.</p> + +<p>In particular, USB transport is not suited for anything +time-related that requires sub-millisecond accuracy. If a +USB-connected GPS unit wants to tell the computer it's 12:23:45, it +will have to wait for the computer to poll it. This polling happens +1000 times per second, introducing variable latency averaging a +half-millisecond. Furthermore, the USB chip might run at anything +close to 1000 Hz. If it runs at 1000.1 Hz, every 10th second the next +time-report will come 1 whole millisecond earlier. This will have NTP +observing something like a 1 ms high sawtooth in the time-reports.</p> + +<p>For accurate time reference, use a PPS line over RS232 triggering an +interrupt. Serial bus interrupt latencies on modern hardware on the +order of 10 microseconds, roughly a hundred-fold impovement over +USB.</p> + +<p>Don't confuse PPS with conventianal, non-PPS data transport over RS232; +the latency on that is much higher. At one character per ten bits +(counting framing at stopbits) a 9600-bps serial link introduces +about a millisecond of latency <em>per character</em>; both USB and +RS232 will incur that overhead.</p> + <h1 id='sleep'>Why does my GPS get lost when I sleep/wake my laptop?</h1> <p>This is not a GPSD problem, but a result of the way Linux handles |