GNSS¶
Summary
- GNSS (Global Navigation Satellite System) is the umbrella term for any satellite-based positioning system — GPS is just one of four global constellations, not a synonym for the whole category.
- Every GNSS works the same fundamental way: satellites broadcast precise time and orbital data, and a receiver calculates its own position by measuring how long each satellite's signal took to arrive.
- Four independent, fully global constellations exist today — GPS (US), Galileo (EU), GLONASS (Russia), and BeiDou (China) — and modern receivers routinely use all four at once for faster, more accurate fixes.
Think of GNSS as:
"A constant, global game of 'how far am I from each of these known points in the sky' — get that distance from enough points at once, and there's only one place on Earth that fits all the answers."
Overview¶
GNSS is deliberately a plural concept: multiple independent constellations, each built and operated by a different government, all doing fundamentally the same job. A modern smartphone or GNSS module doesn't pick just one — it listens to satellites from all available constellations simultaneously, because more visible satellites means faster fixes, better accuracy, and better resilience against any single constellation being degraded, jammed, or temporarily out of view.
Positioning¶
The core technique behind every GNSS is trilateration: measuring the distance to several known points (satellites, in this case) and finding the one location consistent with all of those distances at once.
Each satellite continuously broadcasts its own precise position and the exact time the signal was sent, using an onboard atomic clock. The receiver measures how long the signal took to arrive and multiplies by the speed of light to get a distance — called a pseudorange, because it's not a perfectly true range yet.
Why 'pseudo'-range, and why does positioning need 4 satellites, not 3?
A receiver's own clock is nowhere near atomic-clock precision — even a tiny clock error translates into a large distance error at the speed of light. That clock bias is an unknown, on top of the three unknowns for the receiver's actual position (x, y, z). Four unknowns need four equations, so a fix requires signals from at least four satellites — three to pin down 3D position, and a fourth to solve for (and cancel out) the receiver's own clock error.
DOP (Dilution of Precision) describes how much a given satellite geometry amplifies measurement error — satellites spread widely across the sky give a low (good) DOP, while satellites clustered close together give a high (bad) DOP, since small ranging errors get magnified much more when all your reference points are nearly in the same direction.
GPS¶
GPS (Global Positioning System), officially NAVSTAR GPS, is the original global system — developed by the US and operated by the US Space Force. It became the first fully operational GNSS in 1995 and remains the most widely supported constellation in existing receivers.1
| Operator | US Space Force |
| Satellites | ~31 operational (24 minimum required) |
| Orbit | MEO, ~20,200 km, 6 orbital planes, 55° inclination |
| Signals | L1 (1575.42 MHz), L2 (1227.60 MHz), L5 (1176.45 MHz) |
| Typical civilian accuracy | ~3–5 m |
Table 1. GPS Key Specifications
Galileo¶
Galileo is the European Union's GNSS — notably, the only global constellation that's civilian-controlled from the ground up, rather than a military system with civilian access layered on top.2 It offers HAS (High Accuracy Service), launched in 2023, providing free ~20 cm accuracy directly from the satellite signal itself, with no ground correction network required.2
| Operator | EUSPA / ESA |
| Satellites | 30 nominal (24 active + 6 spares) |
| Orbit | MEO, ~23,222 km — higher than GPS, 3 orbital planes |
| Signals | E1 (1575.42 MHz), E5a (1176.45 MHz), E5b (1207.14 MHz), E6 (1278.75 MHz) |
| Notable feature | Free ~20 cm accuracy via HAS, no correction network needed |
Table 2. Galileo Key Specifications
GLONASS¶
GLONASS (GLObal NAvigation Satellite System) is Russia's constellation, operated by Roscosmos. It's the historical outlier of the group: legacy GLONASS satellites use FDMA (each satellite on its own slightly different frequency channel) rather than the CDMA scheme every other GNSS uses — though newer GLONASS-K2 satellites are transitioning to CDMA as well.3
| Operator | Roscosmos |
| Satellites | 24 nominal |
| Orbit | MEO, ~19,130 km, 3 orbital planes |
| Signals | L1 (~1602 MHz, FDMA), L2 (~1246 MHz, FDMA); newer satellites add CDMA signals |
| Typical accuracy | ~2.8–7.4 m |
Table 3. GLONASS Key Specifications
BeiDou¶
BeiDou (BDS) is China's system, and — with over 35 satellites — currently the largest constellation in orbit.4 It's architecturally unique among the four: rather than an MEO-only design, BeiDou mixes MEO, GEO (geostationary), and IGSO (inclined geosynchronous) satellites, which gives it especially strong signal availability and geometry over the Asia-Pacific region specifically.
| Operator | China National Space Administration |
| Satellites | 35+ (largest constellation) |
| Orbit | Mixed MEO + GEO + IGSO (unique among the four) |
| Signals | B1I (1561.098 MHz), B1C (1575.42 MHz), B2a (1176.45 MHz), B3I (1268.52 MHz) |
| Notable feature | Reached full global coverage in 2020, after starting as a regional-only system |
Table 4. BeiDou Key Specifications
Frequencies overlap on purpose
GPS L1, Galileo E1, and BeiDou B1C all sit on the exact same frequency (1575.42 MHz) — and GPS L5, Galileo E5a, and BeiDou B2a all share 1176.45 MHz too. This alignment is deliberate international coordination, not coincidence — it's exactly what lets a single receiver chip listen to multiple constellations through the same antenna hardware.5
GNSS Signal Bandwidth¶
Every GNSS signal is a Direct-Sequence Spread Spectrum (DSSS) signal — it's the ranging code, not the navigation data riding underneath it, that determines how much bandwidth a signal actually occupies. A faster chipping rate (how quickly the code's bits, or "chips," are transmitted) directly produces a wider signal.
| Signal | Chipping Rate | Approx. Bandwidth (null-to-null) |
|---|---|---|
| GPS L1 C/A | 1.023 Mcps | ~2.046 MHz |
| GPS L2C | 1.023 Mcps (multiplexed) | ~2 MHz |
| GPS/military P(Y) | 10.23 Mcps | ~20 MHz |
| GPS L5 / Galileo E5a | 10.23 Mcps | ~24 MHz |
Table 5. Chipping Rate and Signal Bandwidth
Why does more bandwidth actually matter?
A faster chipping rate produces a sharper, narrower code correlation peak — L1 C/A's 1.023 Mcps chip is about 293 m long as transmitted, while L5's 10.23 Mcps chip is only about 29.3 m, roughly ten times shorter.6 A narrower correlation peak lets the receiver distinguish the direct signal from a reflected (multipath) copy of itself far more precisely — exactly why L5/E5a-capable receivers perform so much better than L1-only receivers in dense urban environments.
Sources of Error¶
Even a perfect trilateration calculation is only as good as the distance measurements feeding it, and several independent error sources stack up on every single pseudorange:7
| Error Source | Typical Magnitude | Cause |
|---|---|---|
| Ionospheric delay | ~5 m | Charged particles in the upper atmosphere slow the signal, by an amount that depends on frequency |
| Signal arrival / receiver noise | ~3 m | Fundamental limits of the receiver's own code-tracking precision |
| Ephemeris error | ~2.5 m | The satellite's broadcast orbital position is never perfectly exact |
| Satellite clock error | ~2 m | Even atomic clocks drift slightly relative to GNSS system time |
| Multipath | ~1 m | The signal reflects off buildings/terrain before reaching the antenna, arriving later than the direct path |
| Tropospheric delay | ~0.5 m | Weather-dependent delay from the lower atmosphere |
Table 6. Typical GNSS Error Budget (Single-Frequency)
These errors are statistically independent, so they combine in root-sum-square (RSS) fashion rather than simply adding — and then get scaled by DOP based on the actual satellite geometry at the moment of the fix. That's why the same set of underlying errors can still produce a noticeably better or worse final position, depending purely on where the satellites happen to be in the sky at that moment.
Dual-frequency correction removes the biggest one
Ionospheric delay is proportional to 1/frequency², which means it affects two different frequencies by two different, precisely calculable amounts. A receiver tracking two frequencies at once (e.g., L1 + L5) can directly measure and cancel out almost all of the ionospheric error — rather than relying on a modeled estimate — which is the single biggest accuracy jump modern dual-frequency smartphone chips deliver over older single-frequency ones.
NMEA¶
NMEA 0183 is the standard ASCII text format nearly every GNSS receiver uses to output its data — a series of comma-delimited "sentences," each starting with $, a two-letter talker ID (GP for GPS-only, GN for a combined multi-constellation fix, etc.), and a three-letter sentence type, ending with a checksum after *.
| Sentence | Contents |
|---|---|
GGA |
Fix time, position, fix quality, number of satellites used, HDOP, altitude |
RMC |
Time, fix status, position, ground speed, course, date — the "recommended minimum" data set |
GSA |
Fix type (2D/3D), PDOP/HDOP/VDOP, and which satellites are actively used in the fix |
GSV |
Satellites currently in view: ID, elevation, azimuth, and signal strength |
VTG |
Course over ground and ground speed |
Table 7. Common NMEA 0183 Sentences
This GGA sentence reads: a fix at time 12:35:19 UTC, at 48°07.038'N, 011°31.000'E, with fix quality 1 (a standard GPS fix), using 8 satellites, an HDOP of 0.9, and an altitude of 545.4 meters above mean sea level.
A-GNSS¶
A-GNSS (Assisted GNSS) speeds up how quickly a receiver gets its first fix by having a network — typically the cellular network a phone is already connected to — hand over data the receiver would otherwise have to slowly decode directly from the satellite signal itself: almanac data, precise ephemeris, and an approximate starting time/position.
This matters a lot in practice: a cold start with no assistance can take 30+ seconds to decode a full navigation message from scratch, while A-GNSS can cut that Time-To-First-Fix (TTFF) down to just a few seconds.
- MS-based — the network supplies assistance data, but the mobile device still calculates its own final position
- MS-assisted — the mobile device just forwards raw satellite measurements, and the network calculates the position on its behalf
RTK¶
RTK (Real-Time Kinematic) positioning pushes accuracy from meters down to centimeters, by using the satellite signal's carrier phase (a far more precise measurement than the basic code-based pseudorange everything above relies on) combined with real-time correction data from a base station at a precisely surveyed, known location.
The base station computes the difference between its known true position and its own GNSS-measured position, and streams that correction — commonly in RTCM format — to one or more rovers, which apply it to their own measurements to cancel out most of the shared error sources (atmospheric delay, satellite clock/orbit error) affecting both receivers similarly.
Network RTK removes the need for your own base station
Rather than every user running a physical base station, Network RTK services combine corrections from a wide network of fixed reference stations and compute a Virtual Reference Station (VRS) correction tailored to the rover's approximate location, delivered over the internet (commonly via NTRIP) — no dedicated hardware base station required.
Dead Reckoning (DR)¶
Dead Reckoning estimates current position by extrapolating forward from a last known position, using measured heading, speed, and elapsed time — without needing any external positioning signal at all. It's what a GNSS-equipped system falls back on the moment satellite signals disappear: tunnels, dense urban canyons, underground parking, or indoors.
Typical DR sensor inputs:
- IMU (accelerometer + gyroscope) — senses acceleration and rotation
- Wheel speed sensors / odometry — precise distance traveled, in vehicles
- Magnetometer — an absolute heading reference, since a gyroscope alone only measures change in heading, not an absolute direction
- Barometer — altitude change, useful for indoor floor-level estimation
DR drifts — it doesn't correct itself
Every DR position estimate is built on the previous one, so small sensor errors accumulate over time (integration drift) rather than staying bounded. Left alone long enough, a pure DR system's estimated position steadily diverges from reality — which is exactly why DR is essentially never used standalone. It's fused with GNSS (typically via a Kalman filter), using DR to bridge the gaps whenever GNSS is unavailable, and letting GNSS reset the accumulated drift the moment a fix becomes available again.
Useful Resources¶
- GPS.gov — official US government GPS information site
- European GNSS Service Centre — Galileo
- Wikipedia — GLONASS
- Wikipedia — Galileo (satellite navigation)
- NovAtel — What are Global Navigation Satellite Systems?
-
NovAtel. (n.d.). What are Global Navigation Satellite Systems? https://novatel.com/tech-talk/an-introduction-to-gnss/what-are-global-navigation-satellite-systems-gnss ↩
-
Wikipedia contributors. (n.d.). Galileo (satellite navigation). Wikipedia. https://en.wikipedia.org/wiki/Galileo_(satellite_navigation) ↩↩
-
Wikipedia contributors. (n.d.). GLONASS. Wikipedia. https://en.wikipedia.org/wiki/GLONASS ↩
-
Orbital Radar. (2026, March). GPS vs GLONASS vs Galileo vs BeiDou: Accuracy 2026. https://orbitalradar.com/navigation-constellations ↩
-
GNSS Decoded. (n.d.). GNSS frequency bands: L1, L2, L5, B1, E5, G1. https://gnssdecoded.com/gnss-frequency-bands/ ↩
-
Inside GNSS. (2025, July 8). L5: Helping build more resilient PNT. https://insidegnss.com/l5-helping-build-more-resilient-pnt/ ↩
-
Brierley-Green, A. (2017, September). GNSS fundamentals [Presentation]. IEEE Long Island Section. https://www.ieee.li/pdf/viewgraphs/gnss_fundamentals.pdf ↩