How to detect GPS week rollover problems on Android

Android devices have longer lifespans than they used to. As the cost of new flagship devices has creeped over $1000 and cellular carriers in the U.S. stopped subsidizing device costs, users are keeping their Android devices longer than before. Devices also get passed down and re-sold from one user to another.

Most hardware on Android devices remains perfectly usable for a number of years. However, an event in mid 2019 caught some users of older Android devices by surprise when their Global Positioning System (GPS) technology suddenly stopped working.

GPS week rollover

To keep time, the U.S. Global Positioning System (GPS) uses a 10-bit code to represent the number of weeks since January 5, 1980. Because the maximum value of a 10-bit number in binary is 1111111111, or 1024 in base-10, every 1024 weeks (or 19.7 years) this number resets, or “rolls over,” to 0000000000 and starts counting up again. This is known as the “GPS week number rollover” problem.

The first GPS week rollover happened in August 1999, before smart phones existed. However, fast forward another 20 years, and the second rollover happened on 23:59:42 UTC on April 6, 2019.

Because GPS receivers use GPS signals broadcast from satellites to determine the time, and the GPS signal carries the GPS week value as part of this payload, GPS receivers need to be programmed to handle the GPS week rollover event. And apparently some mobile devices were not designed with this in mind.

Verizon posted a technical bulletin stating devices manufactured between 2006 and 2016 are affected, saying:

Apparently many device manufacturers and cellular carriers will not issue firmware updates for these devices to resolve the GPS week rollover problem, either because the problem is baked into the hardware or because support for the device has ended. Verizon’s article also says:

And finally 🙄:

Is my device affected?

So how do you tell if your Android device is impacted by the GPS week rollover issue?

The easiest way is to download the open-source GPSTest app that I maintain:

The app will flag your GPS time in red if seems suspicious when compared against your system time. If you tap on the red time, it will show you the full GPS time, including the date, so you can see what decade your GPS thinks it is.

Image for post
Image for post
GPSTest identified a GPS week rollover issue on a Sony MT11i (Source: Lodro via GPSTest Google Group)

Seeing the full date is helpful as sometimes the clock time can only be an hour off, which can be easy to confuse with time zone or daylight savings time issues.

For example, in the above screenshot of a Sony Ericsson Xperia Neo V MT11i, you can see it thinks it’s the year 2000.

If the time doesn’t have a red background, then you’re good 👍.

Closing thoughts

When is the next GPS week rollover, you ask? Go ahead and mark November 20, 2038 on your calendar. But hopefully by then we are all using more advanced GPS signals with a 13-bit week number that will buy us time until 2137. For more information on GPS week rollover, see this article on GPS.gov.

In the meantime — does your device have a GPS week rollover problem? If so please leave a comment with the manufacturer, model, and Android version and a screenshot so others know that this is an issue.

Finally, if you want to see if your device is capable of newer features like dual-frequency GPS and Galileo signal reception check out these articles:

Improving the world, one byte at a time. @sjbarbeau, https://github.com/barbeau, https://www.linkedin.com/in/seanbarbeau/. I work @CUTRUSF. Posts are my own.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store