[HN Gopher] The Physics of GPS
___________________________________________________________________
The Physics of GPS
Author : maouida
Score : 102 points
Date : 2026-04-12 11:10 UTC (11 hours ago)
(HTM) web link (perthirtysix.com)
(TXT) w3m dump (perthirtysix.com)
| throw0101a wrote:
| Reminder of Bartosz Ciechanowski "GPS" article:
|
| * https://ciechanow.ski/gps/
|
| * 2022: https://news.ycombinator.com/item?id=29981188
|
| * 2023: https://news.ycombinator.com/item?id=36180316
|
| * Others: https://news.ycombinator.com/from?site=ciechanow.ski
|
| Standford's "An Introduction to Satellite Navigation" course is
| also instructive (recorded 2014):
|
| * https://www.youtube.com/playlist?list=PLGvhNIiu1ubyEOJga50LJ...
| dan-robertson wrote:
| I like http://lea.hamradio.si/~s53mv/navsats/theory.html which
| has a different focus from the Ciechanowski article.
| userbinator wrote:
| That's a 404 for me, but I think the site moved; this works:
| http://s53mv.s5tech.net/navsats/theory.html
| dan-robertson wrote:
| Huh, weird. Both links work for me
| TravisLS wrote:
| I love these incredibly simple and elegant classic technologies.
| GPS is one of the best. It seems like it would be incredibly
| complicated and mysterious, but it's actually quite
| straightforward.
|
| I'm working on a presentation now to explain how GPS works to
| second graders. If they understand it, I'll take some photos and
| do a write-up.
| sizzzzlerz wrote:
| even though the concepts are straightforward, the
| implementation requires great care in order to maintain and
| extract the required precision. Throw that tech into space
| takes everything to an even higher level requiring radiation
| hardening, weight management, and long term reliability. You
| can't send repair crews to fix them if they break. As an
| engineer, I am in awe of those who design and build these
| things.
| dmk wrote:
| The fact that they deliberately manufacture the satellite clocks
| to tick at the wrong frequency on the ground (10.22999999543 MHz
| instead of 10.23 MHz) so that relativity makes them tick
| correctly in orbit is one of my favorite engineering details in
| any system.
| ikidd wrote:
| Also, RTK is an interesting way to correct the signal to get sub-
| centimeter accuracy. Using the timing differences between
| satellites with a stationary unit and then sending the that to
| the rover is a cool workaround and can be used without expensive
| equipment now.
| Waterluvian wrote:
| VRS RTK can even get 1cm RMS without needing a stationary unit.
| Just need atmospheric correction data for your approx location.
| Which has been amazing for outdoor mobile robotic applications.
| UltraSane wrote:
| They sell robotic lawn mowers with LIDAR and RTK GPS. LIDAR
| combined with RTK GPS is very neat because you can place
| every point in the point cloud on earth's surface.
| magneticnorth wrote:
| A slightly related question, if anyone knows - has phone GPS
| gotten worse in recent generations? More reliance on local wifi
| networks or something like that?
|
| I ask because I do a lot of backcountry hiking, camping, and
| foraging and rely on true GPS-only navigation. My most recent two
| phones (iphone and pixel) have noticeably worse GPS performance
| than previous phones, and I even changed OS ecosystems mostly
| hoping for better GPS, but it didn't help. Maybe I've had bad
| luck, but two noticeably bad phones in a row seems like it may be
| a pattern.
|
| And is there any way to find phones with very good GPS
| performance?
| Boxxed wrote:
| I don't know, but I have noticed that the GPS in my watch
| (Garmin) seems to be better than the one in my phone.
| r4sz wrote:
| Because Garmin tools are good
| myself248 wrote:
| Garmin is a GPS company first, a watch company second. It
| shows.
| antonvs wrote:
| Aggressive battery saving, thinner phones, competition between
| multiple radio transceivers in a small device - these can
| affect GPS performance.
|
| Try disabling battery saving measures as much as possible and
| see if it helps.
| ck2 wrote:
| Wish they could solve the GPS altitude weakness
|
| Watches that use GPS for altitude are terribly inaccurate
|
| It is interesting to run the opensource GPSTEST app on a
| smartphone and watch the MSL "settle" over time but each sat
| seems to disagree
|
| * https://github.com/barbeau/gpstest
|
| btw watches are now getting THREE multi-band L1+L5 GPS chipsets,
| should help things
|
| quad-band GNSS coming soon too!
|
| * https://the5krunner.com/2026/03/06/tri-band-gps-garmin/
| Geo_ge wrote:
| Decreased vertical precision is an artefact of measurement
| geometry more than e.g. number of frequencies.
|
| Horizontal position has the benefit of having satellites at
| almost all azimuths. But the vertical position estimate only
| gets satellites from at most half of possible elevations (above
| the horizon).
|
| See "Vertical Dilution of Precision":
|
| https://en.wikipedia.org/wiki/Dilution_of_precision
| Lukas_Skywalker wrote:
| The explanation about the spheres is slightly inaccurate. With
| one satellite, you won't get a circle on the earths surface, but
| a sphere.
|
| GPS is not constrained to earths surface (or the oblate spheroid
| approximating it), luckily.
| throw0101a wrote:
| > _With one satellite, you won 't get a circle on the earths
| surface, but a sphere._
|
| With one satellite you get a sphere _in 3D space_ , but if you
| are on a surface (like that of the Earth), that gets translated
| into circle.
|
| If you are in a plane in the sky (3D space), then you get a
| spherical 'location fix'.
| Lukas_Skywalker wrote:
| True. But the GPS receiver doesn't know whether you are on
| the surface or not (and at what elevation), so it must always
| assume 3d space, hence a sphere.
| throw0101a wrote:
| Not wrong, but I think most folks are interested in lat-
| long.
|
| If you have lat-long and place it on a pre-canned map, then
| it's unlikely that most people will be either underground
| or in the air, and so whatever the surface elevation of the
| lat-long on the map is, that's most likely (>99% of the
| time?) where the person is.
|
| At least from a UX/responsiveness perspective, this is
| probably a good way to do the math. (In the background get
| a more accurate 3D fix.)
| masfuerte wrote:
| With one satellite you don't even get that because you don't
| know what time it is.
| seanalltogether wrote:
| Do the satellites broadcast their own position, or is that all
| held in a database on your phone? Also why is it so draining on
| your battery to get GPS location, if it's just solving a simple
| calculation.
| throw0101d wrote:
| Both: they broadcast not the location but the _orbital
| characteristics_ (ephemeris), and devices can save the last
| received value. As the satellites get 'perturbed' in orbit,
| their orbital data is updated and re-broadcast.
|
| *
| https://gssc.esa.int/navipedia/index.php/GPS_Navigation_Mess...
|
| * https://www.e-education.psu.edu/geog862/node/1737
|
| *
| https://gssc.esa.int/navipedia/index.php/GPS_and_Galileo_Sat...
|
| * https://en.wikipedia.org/wiki/Ephemeris
| dwa3592 wrote:
| Yes, satellites broadcast their position and time continuously.
| There's also the database approach (check A-GPS) where you
| store the satellite's position and query that but just know
| that it needs to be updated after a while.
|
| Now about the battery draining - the more satellites your phone
| GPS captures the higher the precision. You need at least 4
| satellites to trilaterate aka get precise lat, long. Listening
| to the signal from the GPS and then trilaterating is an
| expensive operation- why? because the satellite signal is very
| very weak and your phone has to run quite a lot of operations
| (how far the satellites are, then direction) to get the signal
| from the noise that's hitting your phone constantly. This is
| loosely the reason for why it drains the battery (even more so
| during cold starts).
|
| I started to build a gps tracker for my cat which wouldn't
| require a monthly subscription- after burning the first micro-
| controller I gave up and decided to leash train my cat. Now my
| cat is leash trained.
| saltcured wrote:
| The information necessary for a fix is broadcast. The locally
| stored database helps improve the time to get a fix. A GPS
| receiver, going from a cold start, needs to listen for many
| minutes to acquire and decode enough signals to have the
| required satellite position and timing information to do the
| calculation.
|
| Most of the power consumption is for the radio reception that
| has to detect and decode signals from multiple constantly
| shifting sources, dealing with their very low signal-to-noise
| ratios and other challenges like multipath distortion due to
| atmosphere and surface reflections.
|
| It's pretty remarkable how much miniaturization has improved
| the efficiency of these radios. E.g. going from the early
| "portable" GPS units that essentially had a lead-acid car or
| motorcycle battery to today's wearables that run on a tiny
| power budget while supporting a wider range of satellite
| constellations and radio bands.
| petee wrote:
| Maybe i missed it, but the first step kinda skips over how the
| inital time is calculated - the cell can't know when the signal
| was transmitted without some prior time or location knowledge?
| oofbey wrote:
| Good catch. The trick is you don't need a good clock on the
| phone. Really all you're measuring is the difference in time
| signals between the satellites. The clocks on the satellites
| are (effectively) perfectly synced with each other. So what you
| measure is that one satellite is ### meters further away from
| another. Not absolute distance to each satellite.
|
| It means you need to connect to one more satellite to remove
| that extra degree of freedom. If your phone had an atomic clock
| you could get your absolute position in 3D only listening to
| three GPS satellites, but because of local clock skew you need
| a signal from a fourth satellite.
| toast0 wrote:
| > the cell can't know when the signal was transmitted without
| some prior time or location knowledge?
|
| The signal that GPS satellites broadcast includes the current
| time, so knowing when the signal was transmitted is easy.
|
| Knowing when it was received is harder, you would need a
| calibrated, synchronized clock. But you need to receive
| multiple signals to figure out your clock, so keep reading for
| that.
| empiricus wrote:
| I found much more interesting the way the gps electronics work.
| What do you mean you need to know the exact moment you receive a
| message from a satellite with nanosecond precision? when the
| message itself is several seconds long.
___________________________________________________________________
(page generated 2026-04-12 23:01 UTC)