GPS: the technology we all use that is never good enough

zephr.xyz
11 min readNov 2, 2023

--

Given the trillion dollars in economic impacts and the billions of dollars invested we’d expect GPS to have our rideshare to show up on the correct side of the street, fitness trackers to have accurate times for our segments or mobile apps to serve the right ad when we go into a store. For one of the most pervasive and common technologies of the modern age GPS can be frustratingly inconsistent and inaccurate. Our goal at Zephr is simple — software that makes GPS for mobile devices that can achieve sub 50cm accuracy. In short an accurate and consistent GPS based location for everyone.

Why is GPS hard?

Given all the money invested in GPS and the number of applications that use it, why is it so difficult to deliver consistently precise locations for users? The long answer could easily be a book in length. The short answer, GPS is using satellites 20,200 km away from earth to try and pinpoint a receiver within centimeter to meter level accuracy. In the process you are dealing with the speed of light, the theory of special relativity, the rotation of the earth and attempting to solve an ambiguous distance calculation with coarse signals that like to bounce off things. It is an impressive and fun bundle of math just to recreate the basic GPS solution.

How has GPS improved?

While GPS creates frustrations for users today it’s had some impressive improvements in its relatively long tech history. The first SiRFstar-I GPS chipsets for mobile phones could only get 5–10m accuracy in open sky conditions, but had a 60 second time-to-fix. Time-to-fix is how long it takes the GNSS receiver to connect to satellites and create a location solution for your mobile device. The time-to-fix problem was largely solved by assisted GPS (A-GPS) introduced by SnapTack back in 1999. A-GPS uses cellular towers to help improve the time-to-fix and availability of GPS to a level that made it viable for mobile phone applications. The introduction of SiRFstar-I and A-GPS really kicked off the emerging mobile app economy. When it was later combined with the iPhone the modern location based app economy was off to the races. Since then there have been other incremental improvements like the use of WiFi and Bluetooth, and most recently the advent of dual band GPS chips, to further improve GPS accuracy and performance.

Since there are so many variables that go into determining the accuracy of GPS on a mobile device it is hard to pin down a precise accuracy metric. GPS.gov highlights 4.9 meters as the average result in an ideal “open sky” scenario. This result is based on a 2014 study of 31,000 mobile devices from 192 different countries. The caveat to these metrics is they are all based on the best case “open sky” scenario. As we’ve all experienced, the accuracy of GPS can vary significantly when you get into a dense urban situation, in the mountains or under dense foliage. We can get a sense of the magnitude of variation from this DXOmark test that compared 15 phones while driving through urban and suburban Paris. In doing so they looked at not only average error, but also max error.

GPS Accuracy Statistics for 15 Mobile Phones

When we look at the max error it becomes evident why so many of us have bad experiences with GPS. While the average results are quite reasonable the max errors are those scenarios where the rideshare goes to the wrong block or we miss a turn in our navigation app.

The other challenge to improving GPS has been that the vast majority of approaches rely on new GPS chips or firmware. This makes accessibility to improvements challenging. Often only the newest high end phones will have the latest technology, making the diffusion of improvements slow and uneven across the market. As a result, creating new location based app experiences that rely on high accuracy GPS is particularly hard.

Introducing Zephr

For Zephr to really hit the mark and enable the next generation of GPS for location based applications we needed significant improvements to 1) accuracy, 2) performance/resiliency and 3) accessibility. To deliver on these ambitious goals we’ve created a new networked GPS that delivers sub meter absolute accuracy. Further, the solution is delivered purely as software — no new hardware or firmware required.

So, what is the “networked GPS” that makes this all possible? Traditionally there have broadly been two forms of GPS: “survey grade” and “consumer grade”. The latter is the GPS you get on your mobile phone today and the former, “survey grade”, uses the elaborate receivers you see on tripods, often around construction sites.

An RTK GPS Surveying Receiver

While the antennas on these rigs are certainly better than what is in your mobile phone, what really makes them accurate are the error corrections they get from a network of base stations.

A NOAA CORS Reference Base Station

These base stations are permanent structures with really precise locations that enable them to send error corrections to a surveyor’s rover antenna achieving 1–3cm levels of accuracy. These base stations generally need to be within 10 kms for the most accurate correction.

Zephr is based on a simple premise. What if we could turn each user’s mobile device into a base station, and use their raw GNSS measurements to create a localized error correction? Instead of one super-precise base station measurement for an error correction, we use a sample of several less precise measurements from nearby mobile devices to converge on devices’ true locations.

With the amazing assistance of SRI’s Applied Physics Lab, and their battery of simulation and benchmarking software, we were able to test our new approach using a multi-receiver modification of Google’s Decimeter Challenge data. The good news from the testing was our approach worked, and we didn’t need a lot of phones to achieve our sub 50cm accuracy goal. In the graph below we can see that with only a few mobile devices we can achieve our target accuracy. Specifically, with just 3 devices we can achieve a sub 50cm result.

SRI Simulations for Multiple Device Accuracy Over Time

The “epoch” term used in the graph is the GPS term for seconds as a unit of time. When you use the GPS on your phone today there is a “cold start” problem. Before the GPS can determine your location it needs to connect to satellites — this is the “time to fix’’ we discussed earlier. The mobile phone is starting “cold” with no knowledge of what satellites it will be connecting to. When you use Zephr there is already a “warm” network of nearby phones with existing satellite connections that help your mobile device quickly get a fix. Think of it like sharing cheat codes in a video game. Connecting this concept to the graph above, users of Zephr’s “warm network” are starting at epoch 180 instead of epoch 0 (a cold start), which means better accuracy faster. This also helps when you have outages like going through a tunnel or your phone executes a duty cycle. When we compare this approach to standard GPS results the benefits become even more stark, even with just three mobile devices on the network.

SRI Testing for Outages and Drops

These types of “networked” advantages are a big part of what makes the performance and resilience of Zephr’s approach better than the status quo. Arguably the biggest killer of GPS performance and resilience is multipath error, where satellite signals bounce off of big objects like buildings. The multipath bounces cause the timing of the signal to be off, which in turn causes your location to be off. Since your phone can only see a small subset of satellites it doesn’t have a large set of measurements to determine which signals bounced, in turn allowing them to be removed from the location solution. An additional advantage of a networked GPS is we receive measurements from several phones giving us a much bigger sample to detect multipath errors. The bigger dataset opens up the potential to use a more sophisticated set of statistical tools to determine the optimal set of signals to solve for the mobile device’s location. Last but not least we can plot the Zephr results against the Google Kaggle data on a map — because maps are awesome.

Zephr Results vs. the Google Kaggle Baseline

Green is the Kaggle NovAtel SPAN ISA-100C ground truth, blue is the Zephr solution and red is the Google WLS (weighted least squares) solution.

Real World Testing

While SRI has some of the best GPS experts and testing facilities on the planet, nothing beats real world data with live mobile devices. Once we had completed all of our simulation scenarios and scaling tests we needed to roll up our sleeves and head outside. For our field testing we created a relatively simple but challenging kinematic test where we used only the GPS constellation and the L1 band data to power our solver. Our testing protocol is based on using four test mobile devices (dual band Pixel 4’s), a SparkFun RTK system for ground truth and a Samsung A12 as a single band test device.

The protocol for this test set the RTK ground truth, the Pixel 4 and Samsung A12 in motion across a football field at Monarch High School in Louisville, CO. The other three Pixel 4 phones were put in stationary positions to provide our multi-receiver signals for the solver. In the map below we can see the Zephr result in blue, GPS in yellow and the RTK ground truth as the orange line.

Zephr Field Testing Results

The football field is a handy reference to see visually how much each location solution is drifting from ground truth. Overall we can see the Zephr solution is performing quite well, generally keeping within the 1m buffer and often within 50cm buffer. We provide a more quantitative view of this using radar plots of the results below. In these plots the color darkens temporally. The earliest data points are light blue and the later data points are dark blue. This allows us to see if measurements are getting more accurate as the network warms up.

Zephr Field Testing Statistical Results

Encouragingly the Zephr result shows that vast majority of error below a meter and the mean almost sub 50cm. We can also view these results as a more traditional scatter plot to see the results overlaid on each other.

Zephr Field Testing Plots vs. Accuracy Targets

While our goal is to consistently achieve a sub 50cm accuracy we are really pleased with the progress and results. Fortunately, we have some more levers to pull adding in multi-constellation and dual band support as well as several computational optimizations that we can take advantage of. Overall a networked GPS approach looks to have several promising facets that hold up well in simulation and real world testing.

Privacy

While we are super excited about all the benefits of the Zephr approach there is the blaring concern for privacy. When we say “networked GPS’’ there is the immediate perception of sharing your location, which is now more precise than ever. Having privacy as a concern from day one we’ve architected a platform centered on protecting user privacy. The only data that Zephr’s approach requires to provide improved accuracy is the phone’s GNSS measurements (e.g. accumulated delta range, pseudorange) and not personally identifiable information. GNSS measurements are just data from the satellite that help us measure the distance from the mobile device to the satellite and conditions (e.g. atmospherics) under which they were transmitted. These measurements are used by us to create an error correction on Zephr’s server that is sent to the user’s device where it is used locally to determine a user’s location. In production we never save or store the user’s location to disk on Zephr’s platform.

There is nothing more important to Zephr than user’s privacy. While GPS has been a massive boon to the economy and consumer convenience it has come with a dark side as well. Users’ personal data being sold on the gray market and an ever creeping surveillance state. You can read about some of our past experiences in Bryan Tau’s upcoming book “Means of Control”. Through both engineering and policy Zephr will be pushing to ensure the responsible use of location through our platform.

Call for Pilots!

In order to continue to develop the robustness and resilience of the Zephr approach we are looking for opportunities to collect and test more networked GPS data. If you are interested in seeing how much Zephr can improve accuracy for your use case let us know! We’ve built an Android data collection app you can use to compare the accuracy of GPS for your current use case to Zephr’s location results.

Zephr Data Collection Apps for Pilots

These results will be best if you have a handful of users collecting data at the same time. Initially we’ll be providing a post processing service, where once you are done collecting data Zephr will correct your data and post the files for access. Early next year we’ll be launching our real time SDK for direct mobile app integration.

One of the most fun aspects of building out Zephr’s technology has been imagining potential new use cases. There are three use cases we’ve been particularly excited about 1) rideshare 2) locations based gaming and 3) collision avoidance. Below we have quick descriptions of the benefits we see from using Zephr in these verticals.

We think these are just the tip of the iceberg with what is possible. The real excitement will be seeing what the developer community imagines and creates. Every iteration of location technology has created amazing new uses and even new industries. According to Space Capital the advent of the current GPS capabilities for mobile phones has generated 137 investor exits generating $170 billion in value. With the combination of new low earth orbit GPS satellites (Xona, Trustpoint, Xairos), new GPS chips and firmware (Qualcomm, OneNav, Broadcom, FocalPoint) and new software like Zephr we are entering a next generation of GPS accuracy. We believe these innovations will kick off another explosion of new apps across a variety of verticals for a newly augmented world. Join us :-)

--

--