A little-known bug on GPS receivers saw many devices set the clock back to 1999 this weekend. This event, which takes place every 19.7 years, has the potential to disrupt any system that relies upon GPS satellites for precise timing information.
TNW explained the bug in more detail a few weeks ago, but here’s a recap: GPS satellites transmit data and time information to terrestrial-based devices. Because the data packets are so small, the satellites are unable to encode this information in a standard DD/MM/YY format. Instead, they transmit a 10-bit number which counts upwards from an epoch. This represents the week. But 10 bits isn’t nearly enough, so this field “rolls over” to zero after 1,024 weeks.
When the field, known as a “week number” or “WN” hits zero, the receiving device gets confused and the clock goes back to the era of Bill Clinton, Windows 98, and Eagle Eye Cherry.
This isn’t just an aesthetic problem. If you’re relying on the highly accurate atomic clocks used by GPS satellites for any kind of timing or scheduling, this bug could throw your entire system into chaos. Fortunately, it looks like the GPS rollover wasn’t anywhere near as disruptive as the Millennium Bug was.
The main reason for this was device manufacturers knew this was coming. It had already happened once before, in 1999. Most modern GPS devices had mitigations pre-installed, so users didn’t have to do anything to ensure their date remained current. As for the few devices that did revert back to the nineties, manufacturers like TomTom and Garmin diligently offered software updates that returned things to normal.
— Geordie Millar (@gm_stack) April 7, 2019
Unfortunately, some Boeing 787 aircraft fell victim to the rollover, with crucial avionics systems showing the wrong date. This has resulted in several Chinese airlines grounding planes while they wait for a software update.
Aircraft use GPS timing to calculate distance and trajectory. According to a recent memo from US CERT, a nanosecond error can result in one foot of positioning ranging error. To give you a sense of scale for the problem, there are 6.2126e+17 nanoseconds in 19.7 years. Furthermore, 6.2126e+17 ft translates to 117.66 trillion miles – or 2.3 times the distance from Earth to the star Sirius.
6.2126e+17 ft is 20.015 light years. Or 6.1367 parsecs. In short, those planes don’t know if they’re in China, or sodding Narnia.
Fixing the firmware on those planes won’t be too much of a hassle, from a technological standpoint. Getting the sign-off from the regulatory agencies will probably be a bit more bureaucratic and tedious, but still doable. Still, it’s not great news for the Chinese airlines who have faced persistent issues with the Rolls Royce Trent 1000 engines on some 787′s, as well as the more recent grounding of the global 737 Max 8 fleet.
That aside, the GPS Rollover really wasn’t as bad as many people feared (or, perhaps more accurately in the case of the Daily Mail, fearmongered). The good news is that the powers that be are working to address this issue by increasing the size of the GPS WN from 10 bits to 13 bits, allowing it to store 8,192 weeks, or 157 years. This means that the next time we face this problem again will be sometime in 2137.
Don’t worry, my great-great-grandchildren will tell you all about it.
TNW Conference 2019 is coming! Check out our glorious new location, inspiring line-up of speakers and activities, and how to be a part of this annual tech bonanza by clicking here.