Slashdot Mirror


Your GPS Devices May Stop Working On April 6 If You Don't Or Can't Update Firmware (theregister.co.uk)

Zorro shares a report from The Register: Older satnavs and such devices won't be able to use America's Global Positioning System properly after April 6 unless they've been suitably updated or designed to handle a looming epoch rollover. GPS signals from satellites include a timestamp, needed in part to calculate one's location, that stores the week number using ten binary bits. That means the week number can have 210 or 1,024 integer values, counting from zero to 1,023 in this case. Every 1,024 weeks, or roughly every 20 years, the counter rolls over from 1,023 to zero. The first Saturday in April will mark the end of the 1,024th week, after which the counter will spill over from 1,023 to zero. The last time the week number overflowed like this was in 1999, nearly two decades on from the first epoch in January 1980. You can see where this is going. If devices in use today are not designed or patched to handle this latest rollover, they will revert to an earlier year after that 1,024th week in April, causing attempts to calculate position to potentially fail. System and navigation data could even be corrupted, we're warned. U.S. Homeland Security explained the issue in a write-up this week. GPS.gov also notes that the new CNAV and MNAV message formats will use a 13-bit week number, so this issue shouldn't happen again anytime soon. The site recommend users consult the manufacturer of their equipment to make sure they have the proper updates in place.

149 comments

  1. Thans for the forewarning by dunkelfalke · · Score: 2

    Going to ask our hardware supplier about this as soon as I arrive st work.

    --
    "It's such a fine line between stupid and clever" -- David St. Hubbins, Spinal Tap
    1. Re:Thans for the forewarning by Anonymous Coward · · Score: 0

      Ask about a new keyboard too!

    2. Re:Thans for the forewarning by Anonymous Coward · · Score: 0

      Assuming you can find your way there.

    3. Re:Thans for the forewarning by dunkelfalke · · Score: 2

      Well, sorry for that. Writing on a mobile phone while standing in a moving train is somewhat difficult.

      --
      "It's such a fine line between stupid and clever" -- David St. Hubbins, Spinal Tap
    4. Re:Thans for the forewarning by CaptainDork · · Score: 1

      We need American Sign Language-keyboard translators when a GPS-enabled device determines that our coordinates are variable in three dimensions.

      --
      It little behooves the best of us to comment on the rest of us.
    5. Re:Thans for the forewarning by liquid_schwartz · · Score: 1

      Interesting sig. Were you on the committee that also redefined the word racism to be not even close to it's traditional and still common usage?

    6. Re:Thans for the forewarning by Anonymous Coward · · Score: 0

      Their response, "You need to buy our newest model!"

    7. Re:Thans for the forewarning by aybiss · · Score: 1

      I was there. Your name came up several times.

      --
      It's OK Bender, there's no such thing as 2.
  2. 210 by Askmum · · Score: 1

    That means the week number can have 210 or 1,024 integer values

    Only after reading the original article I understood the connection between 210 and 1024. Copy-paste is so wonderful.

    1. Re:210 by Racemaniac · · Score: 5, Informative

      for the poor souls who don't want to go to the article, it's supposed to be 2^10

    2. Re: 210 by Anonymous Coward · · Score: 0

      This has happened so many times on Slashdot that I figured it out within seconds. Sad state of affairs.

      It could be worse, it could have been styled using Unicode superscript characters, which would then be dutifully corrupted or disappear.

    3. Re:210 by Mister+Transistor · · Score: 1

      Ah, thank you! I was trying to figure out what that was all about!

      It sounds like the new format will still have a similar problem, but by adding 3 bits, now it will still happen, but 8x less often. So what, every 160 years instead of 20 after the protocol changes?

      Feh. Don't hash dates!! What is it with these people? /seinfeld

      --
      -- You are in a maze of little, twisty passages, all different... --
    4. Re: 210 by Cmdln+Daco · · Score: 1

      Things that are overly'styled' should disappear.

      Me, I think the eighth bit should be stripped from chars on Slashdot. (Also control-g should sound the bell.)

    5. Re: 210 by Anonymous Coward · · Score: 0

      Huzzah! Ring my bell with that ctrl-g thang.

    6. Re:210 by ConceptJunkie · · Score: 1

      The way I see it, in 160 years we won't need to write software any more. Either the computers will be writing software for us, or we won't have computers at all.

      --
      You are in a maze of twisty little passages, all alike.
    7. Re:210 by Anonymous Coward · · Score: 0

      Computers won't have us at all, more likely.

    8. Re: 210 by Anonymous Coward · · Score: 0

      Computers of the Millennium Age ceased to exist shortly after WW3 (China / Russia / Muslim axis of evil) due to factories being destroyed during the fallout. With new laws limiting implementation of technology to 1980s or before AI is no longer a viable potential future

  3. Seriously? by Calydor · · Score: 1

    The last time this happened was while the world was in a complete panic over the Y2K doomsday prophecies, and you're telling me that new GPS units made since then STILL do not have a way of handling this?!

    --
    -=This sig has nothing to do with my comment. Move along now=-
    1. Re: Seriously? by Anonymous Coward · · Score: 0

      Most do. In some you need to configure the epoch manually. Others will try different epochs if fixing fails despite seemingly good conditions.

      The problem is more the application. It may not expect for example the first fix after may 6 to take a minute or so instead of 10 seconds. If it keeps restarting the GPS with an overeager watchdog things will go to shit.

    2. Re: Seriously? by Anonymous Coward · · Score: 0

      Any halfway modern receiver, that was designed by competent enough people, should be able to handle this. It's not that people in the field have learned about this just today. They knew for a while that this was coming.

    3. Re: Seriously? by Anonymous Coward · · Score: 0

      Exactly, it's been in the spec for 40+ years, guessing anything that didn't fail in 1999 rollover, won't fail now and anything newer shouldn't.

    4. Re: Seriously? by TheRaven64 · · Score: 1

      that was designed by competent enough people

      Ah, I see what the problem is, thank you.

      --
      I am TheRaven on Soylent News
    5. Re:Seriously? by arglebargle_xiv · · Score: 1

      "It would take extra time and money to develop and test it, and it's years away, why bother investing the effort, we, or the product, or both, won't be around long enough for it to be a problem".

  4. Haha. by Anonymous Coward · · Score: 0

    There are a limited number of possible fails like this, let's enjoy it.

  5. Re:Stupid n1gger GPASS by AHuxley · · Score: 0

    Anything stolen, lost from the US mil that needs a new upgrade won't work :)

    --
    Domestic spying is now "Benign Information Gathering"
  6. I smell lawsuits in the air by Anonymous Coward · · Score: 0

    for every single car manufacturer out there. pretty sure your car's infotainment system will continue to work. But if it doesn't and it is a recent model year, first owner vehicle, you could have a pretty chunky payout up to and including the cost of a new car. pretty sure your car will work on April 7th

    1. Re:I smell lawsuits in the air by Anonymous Coward · · Score: 0

      TFA says that receivers built after 2010 should be able to deal with the `week-overflow' issue. So, I'm not sure about that...

  7. 13 Bit ? really ? by Crashmarik · · Score: 1

    They couldn't just go to a 16 bit number they had to save 3 freaking bits ? and for what to have an odd length numeric ?

    1. Re:13 Bit ? really ? by hawguy · · Score: 2

      They couldn't just go to a 16 bit number they had to save 3 freaking bits ? and for what to have an odd length numeric ?

      When you're sending data at 50 bits/second over an unreliable transport that makes retransmissions likely, every bit counts.

      But in the updated CNAV block, they increased the week number to 13 bits, which will extend the next time to zero to 2037

    2. Re:13 Bit ? really ? by mentil · · Score: 1

      I wonder if instead of doing that again, they'll just decide that something less susceptible to jamming, that's easier to deploy than a satellite constellation, might be better for positioning. Say, some self-calibrating optical system using image recognition, a high-res camera sensor, and maths, that looks at the position of the stars and combines that with an onboard clock to determine latitude and longitude. An auto-sextant, if you will, far more precise than one operated with eye and hand.

      --
      Corruption is convincing someone that the selfless ideal is the same as their selfish ideal.
    3. Re: 13 Bit ? really ? by Anonymous Coward · · Score: 0

      And this is why you don't have weirdos design stuff like this.

      Hardcode a Geotag into fuel pumps and battery charging stations. Calculate waypoints from there using OCR'd roadsigns.

    4. Re:13 Bit ? really ? by Anonymous Coward · · Score: 0

      Inertial navigation systems have existed before GPS was available and are often used in bombs, missiles and airplanes together with GPS or as a backup system in the event GPS is unavailable. The military usually doesn't rely on a single system for any given task, as each system has it's own vulnerabilities. GPS is prone to jamming, INS may not be precise enough or prone to slow drifting, star navigation is pretty much useless in day time or if the skies are not clear.

    5. Re:13 Bit ? really ? by Anonymous Coward · · Score: 0

      Susceptible to weather.

      Some of the most decisive victories or most spectacular defeats have been due to weather conditions.
      I doubt any military anywhere would like a situation where the enemy knows that your ground troops won't have accurate positioning if it is cloudy.

    6. Re:13 Bit ? really ? by hawguy · · Score: 2

      I wonder if instead of doing that again, they'll just decide that something less susceptible to jamming, that's easier to deploy than a satellite constellation, might be better for positioning. Say, some self-calibrating optical system using image recognition, a high-res camera sensor, and maths, that looks at the position of the stars and combines that with an onboard clock to determine latitude and longitude. An auto-sextant, if you will, far more precise than one operated with eye and hand.

      Isn't that system easily jammed by smoke screens, clouds, and daylight?

    7. Re:13 Bit ? really ? by AmiMoJo · · Score: 1

      13 bits of week numbers is about 137 years... Shouldn't it be good for at least a century? Presumably they moved the epoch for the new field as well.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    8. Re:13 Bit ? really ? by Anonymous Coward · · Score: 0

      I don't think the optical resolution is there to get the level of precision that radio based GPS has.

      That and the fact that it would only work at certain times of day, requires line of site (can't work indoors or on cloudy days), is effected by atmospheric conditions / haze, etc. make it a it a poor substitute.

      Location / positioning in GPS denied environments is of big interest to the DoD and they've put a bunch of money into studying it.

    9. Re: 13 Bit ? really ? by Anonymous Coward · · Score: 0

      You can even look at the roadsigns yourself and figure out where to go...

    10. Re:13 Bit ? really ? by Anonymous Coward · · Score: 0

      It does not really matter. You don't need GPS for nuclear weapons. "Sorta over there" is accurate enough ...

    11. Re:13 Bit ? really ? by Anonymous Coward · · Score: 0

      I remember looking up data on INS and the state of the art many years back was that a USA missile could be launched something like 200km away from its target, zig-zag through a mountain range, and still manage to be within a few meters of the target entirely from INS. For the price of those devices, there's no reason not to include GPS to enhance the accuracy.

    12. Re:13 Bit ? really ? by CaptainDork · · Score: 1

      The Sun and its planets and their satellites move around the center of the Milky Way, which is moving through the universe.

      The current topology works better because it has less moving parts.

      The problem lies not in our stars ...

      --
      It little behooves the best of us to comment on the rest of us.
    13. Re:13 Bit ? really ? by CaptainDork · · Score: 1

      We're sorry, but in the US most school zones, in addition to limiting speeds, provide penalties for sextanting while driving.

      --
      It little behooves the best of us to comment on the rest of us.
    14. Re:13 Bit ? really ? by CaptainDork · · Score: 1

      No we're getting somewhere.

      The Mysterious 137

      If you have ever read Cargo Cult Science by Richard Feynman, you know that he believed that there were still many things that experts, or in this case, physicists, did not know. One of these ‘unknowns’ that he pointed out often to all of his colleagues was the mysterious number 137.

      --
      It little behooves the best of us to comment on the rest of us.
    15. Re:13 Bit ? really ? by Shotgun · · Score: 1

      Great. A system that I can disable with a hand flair.

      --
      Aah, change is good. -- Rafiki
      Yeah, but it ain't easy. -- Simba
    16. Re:13 Bit ? really ? by hawguy · · Score: 1

      13 bits of week numbers is about 137 years... Shouldn't it be good for at least a century? Presumably they moved the epoch for the new field as well.

      Yeah, that was a typo, I should have typed "2137". I noticed it after I posted, didn't think anyone else would so didn't bother posted a followup. If only there was some web technology allowed one to edit posts.

    17. Re:13 Bit ? really ? by ConceptJunkie · · Score: 1

      I got a ticket for that once. Then I had to register as a sextant offender. All the sailing ship captains are now shunning me.

      --
      You are in a maze of twisty little passages, all alike.
    18. Re:13 Bit ? really ? by CaptainDork · · Score: 1

      You insensitive clod.

      DO NOT BE FUDDIER THAN ME.

      Well played. :)

      --
      It little behooves the best of us to comment on the rest of us.
  8. Delayed failures by cpt+kangarooski · · Score: 5, Informative

    Another thing to watch out for are delayed failures caused by date windowing. Basically, some developers of devices using GPS-derived time were aware of the problem, and put in a pivot so that dates from before the device was made are treated as being in the future. (e.g. a device built in 2009, ten years after the last time this happened with GPS might treat dates from the 1999-2008 time period as being in 2019-2028, since that's when the device would first encounter them)

    So this may be causing random failures of devices for years.

    --
    -- This and all my posts are in the public domain. I am a lawyer. I am not your lawyer, and this is not legal advice.
    1. Re:Delayed failures by muecksteiner · · Score: 5, Interesting

      Right, thanks a lot for this piece of information, which probably solves an issue that has been puzzling to me for years.

      In my free time, I fly gliders. These things are very simple craft, but usually still have some sort of on-board computer which is used for basic navigation tasks (such as "given our glide capabilities, can we still reach airfield X from where we are right now?"). And as part of that, these on-board computers of course have to use GPS. As they are permanently installed in the cockpit, these devices tend to be quite rugged, and usually are kept around for many, many years: replacements are costly, and changing something in the panel of an aircraft, no matter how small, is a major PITA (what with the necessary regulatory paperwork, and all that). So a lot of gliders fly around with positively antique - but functional - electronics on their dashboards.

      In my particular glider, which is not exactly a new plane, this function is provided by a slightly ancient device from the early 90ies: a Filser DX50, which has been in the plane since it was built. And few years ago, this thing developed the classical sort of "GPS dementia" which is typical for devices that can't handle a roll-over. For my purposes (purely recreational flying), this is not a big issue: I don't care that the thing thinks it's 1995 all over again, as long as the position is correct. Which it, interestingly, still is.

      The only thing about the failure which was (and still is) a bit of a head-scratcher was that it occurred far away from any actual GPS decade roll-over: as far as I remember, it croaked during the change-over from 2014 to 2015. But your explanation might be the answer: when they created the device, they probably assumed "no one will use this device beyond 20 or 22 years after manufacture", and only patched the loop-around for that long.

    2. Re:Delayed failures by AmiMoJo · · Score: 1

      Could also be a rollover of days since some time in 1923 (16 bit signed int). 1923 is a popular epoch as that was when it was decided to settle on the modern calendar and dates before then can be ambiguous. It's also possible that it's just an overflow in the calculation using that value, that wasn't tested when it gets very large.

      Either way, I wouldn't rely on it working after April 6th. There doesn't appear to be a firmware fix either.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    3. Re:Delayed failures by Falconhell · · Score: 1

      Just built a new panel for my Glider, bought new Borgelt B800 vario and 7” tablet and only needed to replace 80mm altimeter with 57mm Winter. With the Borgelt vario I got a Bluetooth combiner, which combine FLARM and B800 outputs and makes them available to the tablet, which has its own GPS, baro altitude and accelerometers. Given my DG200-17C has a very small panel, it shouldn’t be they hard to do other gliders. I carry a Sony Z3 android phone in the side pocket as a fully independent backup.
      Modern various are vastly superior too. I wouldn’t fly without a FLARM these days.
      Time to bite the bullet! :)

    4. Re:Delayed failures by tepples · · Score: 1

      1923 is also when US copyright expiration was held up for two decades on account of Gershwin and Disney.

    5. Re:Delayed failures by Anonymous Coward · · Score: 0

      So this may be causing random failures of devices for years.

      I've seen this, but so far all I've seen is the date being off by 1024 weeks. Which is annoying, but the device functions just fine. After all, everything received from GPS is using the same GPS week-day format, so the data is consistent.

    6. Re:Delayed failures by muecksteiner · · Score: 1

      Yeah, I know, at some point I'll have to update the panel of my ship. But as I'm a computer scientist, a day of flying for me means getting away from it all. So I try to keep the amount of (visible) electronics in my plane to a bare minimum, and do the flying hipster thing of navigating with paper maps as much as possible. There is of course a FLARM, already now, even though I think these devices are far less useful than they are purported to be. But it can't hurt to broadcast your position to others, so why not.

      But the inane airspace structure in the country I usually fly in might force me to get something fancy, like an LX9050 or similar. I'd prefer not to have yet another computer display to watch, but tracking airspace boundaries on my smartphone while trying to extricate myself from the demented 3D onion layers which surround my home airfield is just too error prone and dangerous. And mounting a tablet in the glider is not for me: anything that gets in the way of bailing out in an emergency is a no-no. I recently borrowed a friend's plane, and it was so full of gizmos and gadgets on stalks and additional mountings that the interior almost looked like the inside of a squirrel nest. One could hardly extricate oneself from that cockpit whilst on the ground: so getting out in an emergency would not really be an option. At least one saves the money one would normally need for the emergency parachute, in such a set-up...

  9. Deja vu? by Superdarion · · Score: 4, Funny

    Oh no, it's Y2K all over again!

    1. Re:Deja vu? by sad_ · · Score: 2

      on April 6, planes will fall out of the sky!
      elevators won't know if they need to go up or down!

      --
      On a long enough timeline, the survival rate for everyone drops to zero.
    2. Re: Deja vu? by Anonymous Coward · · Score: 0

      Remember to power off your GPS on April 5th!

    3. Re:Deja vu? by e3m4n · · Score: 1

      The one difference was that Y2K gave us an army of COBOL programmers with not much other skills, but still fixable in programming. Whereas, in this case, I forsee the manufacturers feigning an inability to patch in order to drive sales. I think my newest Garmin is 10yrs old. I am sure they wished we replaced them as fast as cell phones.

        I have thought about getting a new one, I was just waiting to see if some needed features ever got incorporated. I have never liked the touchpad interface on these. I have always wondered why they aren’t Bluetooth so that I can transmit an address from my phone into my Garmin. Not only is data input a little easier on the phone but there are many times where the address I’m putting in was sent to me via email or calendar. I’m not a fan of using my phone itself as GPS mapping because any sort of notification or incoming call always suspends everything else. Mostly my GPS functions as a HUD when its not gving directions.

    4. Re:Deja vu? by houghi · · Score: 1

      To be fair, if it acxtually IS 2000/01/01 00:00 GMT again, that could indeed cause a problem.

      --
      Don't fight for your country, if your country does not fight for you.
    5. Re: Deja vu? by AngryOnions · · Score: 1

      That's supposed to happen again in 2038. Because no one has done more than the patch they deployed back in 1999.

    6. Re:Deja vu? by CaptainDork · · Score: 1

      Each and every goddam entity, be it a small business providing cupcakes or enterprises manufacturing the muffin pans will be sending compliance letters to each other 1.) demanding that suppliers better not mess up and that 2.) the author of the demand will do its best to be in compliance, but no promises, and no liability for failures beyond their control.

      --
      It little behooves the best of us to comment on the rest of us.
    7. Re:Deja vu? by Anonymous Coward · · Score: 0

      My GPS device is future-proof, but I STILL can't get it folded back in it's original configuration.

    8. Re:Deja vu? by Anonymous Coward · · Score: 0

      If the pilot can't fly the plan without GPS, He deserves to crash !!!

  10. Re:Stupid n1gger GPASS by Rosco+P.+Coltrane · · Score: 4, Informative

    Before posting judgmental crap like that, you should know your history: the Global Positioning System project was launched in 1973, and the first satellite went up in 1978. The design was done sometime in-between.

    Well guess what: in the mid-seventies, EVERYBODY was coding stuff without thinking it'd still be there 40 years later, saving bits and CPU cycles everywhere they could thinking X or Y weeks / years / kilobytes / megahertz should be enough. Even the long-term thinking Unix people thought 2038 should be far enough in the future.

    --
    "A door is what a dog is perpetually on the wrong side of" - Ogden Nash
  11. They went backwards... by Anonymous Coward · · Score: 0

    Increasing the size of the number is the wrong thing to do... it just creates the same problem further away.
    They need to shorten it to just 7 days. Then everyone will implement the roll over correctly vs just putting it off and forgetting about it.

     

    1. Re: They went backwards... by Anonymous Coward · · Score: 0

      But then you need to know the time already. The GPS is many devices only source of 'true' global time

    2. Re:They went backwards... by pushing-robot · · Score: 1

      13 bits of weeks = 157.5 years. It's safe to assume there will be entirely new navigation systems by the year 2175.

      --
      How can I believe you when you tell me what I don't want to hear?
    3. Re:They went backwards... by Sique · · Score: 5, Interesting

      That's what the developers in 1978 also assumed. There is an old saying in engineering: Nothing stays around as long as an interim solution.

      --
      .sig: Sique *sigh*
    4. Re:They went backwards... by Anonymous Coward · · Score: 0

      13 bits of weeks = 157.5 years. It's safe to assume there will be entirely new navigation systems by the year 2175.

      Right, and by 2175 Cobol will have been expurged from all banking systems. Want to bet 10 bitcoins on that ? Never ever underestimate the resiliency of legacy systems.

    5. Re: They went backwards... by Anonymous Coward · · Score: 0

      well you'd need to know the week... once you are in the right week you'd know the exact time from the GPS satellites...

      A halfway decent real time clock would keep you on the right time for (accurate to a week) for decades without connecting to the GPS, and once you do, you update the local time with the correct one from the GPS system and your good for another few decades of being disconnected.

    6. Re:They went backwards... by thereddaikon · · Score: 1

      At this point there is no reason any system should be using anything less than a 64bit value for time moving forward. I can sort of understand the limitations from back in the day and trying to save resources. Although making one integer smaller is not going to save you anything measurable even on a system from the 70's. Its one integer. But with 64bit processors and OS's being the standard today there is no reason time should be kept in anything less. Its probably overkill to make it more than that but that wouldn't necessarily hurt either.

    7. Re:They went backwards... by Shotgun · · Score: 1

      Never worked in a shop that makes commercial hardware have you? The pencil pushers driving those guys are still clawing back every bit they can in order to use a chip that is one copper penny cheaper.

      --
      Aah, change is good. -- Rafiki
      Yeah, but it ain't easy. -- Simba
    8. Re:They went backwards... by CaptainDork · · Score: 1

      Early computers were designed with the same mentality. "The year 2000 is WAY off."

      --
      It little behooves the best of us to comment on the rest of us.
    9. Re:They went backwards... by dryeo · · Score: 1

      At this point there is no reason any system should be using anything less than a 64bit value for time moving forward.

      So you're saying it should take over a second to transmit the time? GPS has 50 bps data rate (100 bps in some configurations) according to table #1 at https://gssc.esa.int/navipedia.... I'm pretty sure there are other circumstances such as communicating with Mars or further or a submarine deep down with low bit rates as well.

      Although making one integer smaller is not going to save you anything measurable even on a system from the 70's. Its one integer.

      In 1984, Apple released the ProDos disk operating system which packed day, month and year into 2 bytes to save room. I'd guess going further back that packing more then the date into an integer happened as well as systems such as the PDP-1 that used 6 bit bytes.

      --
      https://en.wikipedia.org/wiki/Inverted_totalitarianism
  12. Good, this is when we attack by Gabest · · Score: 4, Funny

    Hope you have a bunker and supplies.

    1. Re:Good, this is when we attack by Anonymous Coward · · Score: 0

      No need for bunkers. Modern bombs use GPS for guidance

    2. Re:Good, this is when we attack by clydoz · · Score: 3, Funny

      Won't help much, because you won't be able to find it.

    3. Re: Good, this is when we attack by AngryOnions · · Score: 1

      Well they'll find SOMETHING. Just might be a different target than what was intended. I wonder how far off the target would be?

    4. Re:Good, this is when we attack by CaptainDork · · Score: 1

      Is there an app for locating the bunker I built out in an abandoned oil field in Lufkin, Texas back in 1955?

      Asking for a friend.

      --
      It little behooves the best of us to comment on the rest of us.
  13. Re: Stupid n1gger GPASS by Anonymous Coward · · Score: 0

    GPS designed long before Ive was designing anything. Your irrational hatered is tres amusement

  14. Chinesium GPS Pucks by Anonymous Coward · · Score: 0

    I have a few different cheap Chinesium GPS pucks. I am certain they cannot be updated, and if they really do change the message format to add 3 bits to the epoch, they will certainly stop working.

    I wonder how many Chinesium smart watches and other consumer devices there are out there that will similarly get bricked for lack of support from the 'third shift.'

    1. Re:Chinesium GPS Pucks by _merlin · · Score: 1

      The 13-bit week number is in a completely different message format broadcast using different modulation. Using that signal will require completely new hardware, not just a firmware update. But they're likely to keep the current '70s-style signal around for a couple of decades yet.

  15. Google Maps by SeaFox · · Score: 1

    I can only hope the date string is interpreted by Google Maps itself, and not handled by Android or the handset hardware.

    Imagine you GPS functionality becoming useless because you're not getting an Android update since the handset manufacturer considers your phone EOL.

    1. Re: Google Maps by Anonymous Coward · · Score: 0

      Most of the time the message decoding is handled by the GPS chipset, which cannot be updated at all. It just spits out serial data as long as it can decode messages. If it can't decode a message, nothing gets spit out.

      So, I hope the message length is flexible by protocol, otherwise when they add those 3 bits, every hardware chipset out there will stop working.

    2. Re: Google Maps by Anonymous Coward · · Score: 0

      I am not really sure what is the date used for in a GPS receiver.

      I understand that precise time precision is critically important for GPS to work, but does it make a big difference if your GPS receiver thinks it's 1999 instead of 2019 ?

      I mean, it still has the correct time, so navigation should still be fine. The only issue would be if you are using GPS for time synchronisation source for your device, not necessarily a big issue for most users.

      Am I missing something ?

    3. Re: Google Maps by Anonymous Coward · · Score: 0

      I understand that precise time precision is critically important for GPS to work, but does it make a big difference if your GPS receiver thinks it's 1999 instead of 2019 ?

      You just answered your own question. But lets say a few ms difference = a few centimeters of adjustment.

      20 years of difference = 100000 km of adjustment.

      Totally wrong numbers just illustrating what they are talking about.

    4. Re: Google Maps by Anonymous Coward · · Score: 0

      Assuming that the week number is even used in calculation of positioning, I still don't see a problem.

      Let's say the receiver thinks it's year 1999 but the signal it received is from 2019 - then you are correct, it's going to be an issue.

      But in this case, the receiver will think it's 1999 but it will also be seeing the messages from the satellites as being from the same year. The time difference between the different satellites will still be correct (measured probably in milliseconds or even less).

      So positioning will still work (unless there is a difference in the code used for time synchronization and the code used for navigation).

      It is going to be a problem for NTP synchronization though, as time servers probably use the full date from the GPS receiver. Unless the NTP server is patched independently.

    5. Re: Google Maps by Anonymous Coward · · Score: 0

      The precession of the orbits of the satellites is accounted for in the math, so if your GPS receiver is missing 20 years worth of precession, your location computation will be not only imprecise, but likely off by kilometers.

    6. Re: Google Maps by Anonymous Coward · · Score: 1

      The problem is you're assuming GPS uses geostationary orbits and it doesn't. When you first start up a GPS receiver, that first fix can take a while. This is because it needs to download an almanac. This almanac basically calculates where the birds are in the sky. Then based off of timing signals, combined with the satellite location information, you can figure out exactly where you are. If you think it's 1999, rather than 2019, you're location calculation will be based on where those satellites were in 1999 rather than where they actually are.

    7. Re: Google Maps by AngryOnions · · Score: 1

      Verizon will be releasing that patch next year. (snark)

    8. Re: Google Maps by Dhericean · · Score: 2

      Each satellite transmits its location (ephemeris) as well as the exact time in each 30 second message. This means that the GPS device does not need to calculate the location. Though the ephemeris updates every 2 hours, a value is considered valid for 4 hours.
      The Almanac, a list of the status and rough location for each satellite, is also part of the message and takes over 12 minutes for complete transmission (25 messages). It is used to help determine which satellites to look for on acquisition amongst other things, though this is not essential with modern equipment.
      This means that the date is not used to adjust the position information as that is part of the message itself. The alert is nothing to do with general GPS stopping working, but rather anything that depends upon the GPS signal to get the UTC time being at risk (an operation requiring the Almanac).

      The information is from the Navigation Message section of the Wikipedia article on GPS Signals (https://en.wikipedia.org/wiki/GPS_signals#Navigation_message), which is very detailed.

      --

      Gamma Testing - Where testing is extended to the full user community (AKA Shipping the Program)
  16. Re:Stupid n1gger GPASS by Anonymous Coward · · Score: 0

    Except none of the current GPS satellites are from the 70s.

  17. Re: Stupid n1gger GPASS by Anonymous Coward · · Score: 0

    Ok, why do we learn about its bugs and defects today? Every piece of ugly shit has a gps chip by now.

  18. Re:Stupid n1gger GPASS by Anonymous Coward · · Score: 0

    But the protocol ans message format was designed in the 70's, so even if the satellites are newer, they still have to be compliant with the initial protocol specifications.

  19. Re:Stupid n1gger GPASS by AmiMoJo · · Score: 4, Interesting

    With Unix they didn't really pick 32 bits as being "good enough", it was just the largest they could easily handle at the time.

    With GPS they probably just assumed that the military would update or replace receivers when necessary. Civilian use wasn't a major concern, and due to the cost of the equipment they probably didn't consider the use-case where every cheap $10 smart device from China has a GPS receiver in it.

    --
    const int one = 65536; (Silvermoon, Texture.cs)
    SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
  20. Trigonometry, anyone? by Anonymous Coward · · Score: 0

    Was it that difficult to use trigonometry for a GPS? What on Earth has any timestamps anything to do with it*? I've got a few of "old" devices (pre3, n9)... I will use their map apps to what happens vs my current phone.

    * Logs, okay. One, may be, from the satellite `IT' pov.

    1. Re: Trigonometry, anyone? by Anonymous Coward · · Score: 2, Informative

      You don't know the angle to the satellites. What you know is the run time difference of the signal. You have to compute the distance from that, compensate for things like the impact of gravity and after all that, you can do compute the intersection of the spheres.

  21. Re:Stupid n1gger GPASS by kurkosdr · · Score: 2

    Some programmers are STILL designing stuff with the assumption something won't still be there 40 years later. The DVB standard has a roll-over date in 2038 (that's a project created in 1992 no less!) and Go has UnixNano which has a rollover date in 2262 (because of course the graybeards that gave us the original 2038 bug and unsafe arrays couldn't build a decent language the third time). BTW you don't need a 64-bit number to have dates that go beyond 2038. You may need 2 or 3 32-bit numbers too It's all a matter of formatting. All these time storage bug were a result of massive lack of foresight. Also, Go uses a single 64-bit value to count nanoseconds from epoch (*sigh*). Now that's some lack of foresight that you don't see every day.

  22. The 13-bit week number is actually a bug IMHO by Terje+Mathisen · · Score: 5, Informative

    I have been a member of the NTP Hackers team for 25+ years: As many of you probably know most reference clocks on the Internet are based on GPS timing receivers. The last time we had a week rollover a small percentage of Stratum 1 servers went temporarily offline, or they were marked as "falsetickers" due to announcing a date which was nearly 20 years wrong. Most servers were either unaffected or got back online shortly after.

    The key here is that 1024 weeks is a short enough time span that most competent developers will realize that their (embedded or otherwise) product might still be in operation during the next rollover so they have to handle this, while a 13-bit week counter is so long (8192 weeks or 157.5 years) that it is likely that many will simply forget about the issue until it comes back to bite everyone in 2137. :-(

    BTW, there are _many_ ways to handle rollovers like this, the easiest is probably to compile in the build date in your firmware and then simply make sure that the date calculated from the week number is greater than this, adding blocks of 1024 (or 8192) weeks if needed. Another option, if you have any kind of non-volatile memory, is to write the current date to permanent storage regularly, like once a month or once a year.

    Terje

    --
    "almost all programming can be viewed as an exercise in caching"
    1. Re:The 13-bit week number is actually a bug IMHO by Anonymous Coward · · Score: 1

      until it comes back to bite everyone in 2137. :-(

      The satellites will not be operating by that time. Why do you think this is a bug?

      In addition, lets say for some reason they boost the orbits of all the GPS satellites by that time so they don't degrade to unusability or death....if they can do that for 1000s of satellites in the 22nd centure, why wouldn't we have the technology to work around a few 130+ year old servers who spit out the bad time?????

      This is seriously the craziest comment I've heard from someone who seems relatively intelligent in a LONG TIME. Bravo.

    2. Re:The 13-bit week number is actually a bug IMHO by Anonymous Coward · · Score: 3, Interesting

      This isn't about hardware (satellites), but the protocol. Whenever new satellites are launched, they should work with the existing devices and new devices have to work with the existing satellites. This means we can easily be stuck with the same protocol for many generations of hardware. Think about IPv4 vs IPv6.

      The Roman empire had really dirty roads and in order to cross them without getting wet/dirty, they made pedestrian crossings, which were a row of stone blocks, which were raised. For wagons to pass they had to fit in the gaps meaning they had to make a standard distance between wheels. They picked one based on the size of a horse, or rather the size of two horses side by side. This meant all wagons in Rome had to match the roads, then roads elsewhere had to match the wagons coming out of Rome and it turned into an empire wide standard for both wagons and roads. Fast forward to the 18th century. England is still using the roads built by the Romans. Somebody realized it was inefficient if wheels kept getting stuck and a level surface would allow more efficient transport. Wagons then started traveling on wooden bars. However the wheels kept falling off the bars, which was solved by adding guard rails to the side. A road with guard rails became known as a railroad. Later the rails were made out of iron, the shape changed and steam was used instead of horses. Each time something new was built, it had to work with the existing fleet of wagons and rails meaning there is no point in time where it was obvious to change everything and as a result modern trains are pretty much backward compatible with the trains from the Rainhill trials in 1829. This means if you sit in a bullet train traveling at half the speed of sound and think the train is too narrow, you should blame the Roman horses for being too narrow.

      Assuming your standard to be as short lived as the hardware you are building is rather dangerous because there are countless examples of standards lasting forever because once everything matches a certain standard, then you tend to be stuck replacing the hardware one piece at a time meaning the new hardware has to apply to the same standard. Being concerned with a serious flaw in 2137 is a valid one.

    3. Re:The 13-bit week number is actually a bug IMHO by Anonymous Coward · · Score: 0

      BTW, there are _many_ ways to handle rollovers like this, the easiest is probably to compile in the build date in your firmware and then simply make sure that the date calculated from the week number is greater than this, adding blocks of 1024 (or 8192) weeks if needed.

      Except that last doesn't work, Mr. Mathisen. Imagine you built your gadget in Week 52, counting from, say, Jan. 1st., 2000, therefore Jan 1st, 2001. 1077 weeks later, after it has rolled over and counted up again to week 53, your 'greater than' test passes, and your gizmo decides it's Jan. 8th, 2001, where in fact it's more like late April 2024... Oops.

      AC

    4. Re:The 13-bit week number is actually a bug IMHO by Anonymous Coward · · Score: 0

      This means if you sit in a bullet train traveling at half the speed of sound and think the train is too narrow, you should blame the Roman horses for being too narrow.

      Nice story, but it isn't true.

    5. Re:The 13-bit week number is actually a bug IMHO by Aristos+Mazer · · Score: 1

      So we should add to the standard a clause that says "20 years before the new epoch, for one solid minute, all devices must send a junk packet that says: 'DOOM IS COMING! The 157 years are up! Read the spec to learn more!" Enough people will be frustrated by this failure that someone will dig into it and realize that they have 20 years to come up with a new version. With the computing power of 157 years from now, it should be easy... unless they're all watching cat videos.

    6. Re:The 13-bit week number is actually a bug IMHO by Anonymous Coward · · Score: 0

      Not only did that link debunk and then state "partly true", it also focuses exclusively on America, something which isn't the case in what you replied to.

      First of all, regardless of the size of horses it doesn't change the fact that the replica steam locomotives from the 1820s and 1830s can run on modern tracks and connect to modern locomotives. In fact usually the only changes made to the schematics are lower chimneys due to bridges and overhead wires as well as some modern safety like safety valves. The American John Bull from 1831 ran just fine in 1981 on modern tracks.

      This means regardless of what snopes says, the argument that the standard last much longer than the hardware is still very valid and it's not unthinkable that the standard for the current satellites will be around for many generations of satellites.

      As for the size of the horse vs wagon, snopes actually states the same as what you replied to, which is the wagons were made for the roads and the roads were made for the wagons. Whenever a new one arrived, it had to match this. This is very true for England (not all of UK, England specifically in this case) because the Romans had built some roads so durable that they were still in use even when the railroad grid became national. Odds are that they reused the size because they had experience with that size. They didn't have engineers to calculate everything and simulate strength on computers prior to building like we have today. Instead they have come up with working designs through trial and error and if your economy depended on your wagons not breaking, you would really look for existing wagons which worked when carrying the expected load and then copy that design because the copy would likely also work without breaking. How would the axles respond to being made longer? Nobody knew and apparently nobody were willing to risk money when they knew they could just use a standard length and it would just work.

      Snopes made a mistake in calling this false because the core of the story is valid and they even admit that. What they debunk is that Stephenson got inspired by the Hadian Wall (something I never heard before). In fact Stephenson didn't invent the railroad gauge. He reused the gauge of the existing horse drawn railroads in the area, something snopes failed to mention. In fact it's very likely that the standard was passed down through the generations where each generation had no idea where it came from, but it's like "we already did it like this and it works".

      Yes there are multiple railroad gauges, but there is a reason why one of them became known as "standard gauge" (1435 mm). It's not only the oldest, it is the one used for country wide railroad networks in most countries and using something else for something other than local is rare. Russia picked 1524 mm because they have a history to military visits from Europe meaning they planned for not allowing such armies free railroads. It worked during WW2 where Germany was slowed by the labor intensive work of changing the gauge of the track. Narrowgauge exist as well, but it's usually in isolated locations where the ability to turn sharply is very important, like curving through existing cities to mountains. New Zealand use 1067 mm exclusively for this reason and so does most of Japan. It is generally viewed as inferior though due to lack of high speed stability. Japan has the fastest narrowgauge tracks with a top speed of 110 km/h (68 mph) while most lines are noteworthy slower than that. The lower weight and speed restrictions means standard gauge really is the option of choice if you have a choice.

      Snopes also debunk that all railroads use the same gauge as there historically was multiple gauges. Just think about that statement for a moment. The number of historical gauges doesn't matter if the question is "where did the currently used gauge come from?". For each gauge, at some point somebody decided to use it for the first time and odds are that there is a unique explanation for each measurement. Some are simple

    7. Re:The 13-bit week number is actually a bug IMHO by Anonymous Coward · · Score: 0

      You sound awesome enough for an interview.

      Do you want to be on a stellar engineering team?

    8. Re:The 13-bit week number is actually a bug IMHO by Areyoukiddingme · · Score: 1

      You sound awesome enough for an interview.

      Do you want to be on a stellar engineering team?

      You do realize that entire tale about railroad gauges being the same width as Roman roads is apocryphal and contradicted by the evidence, right? Around the world there have been more than 90 different narrow gauges deployed and more than 40 broad gauges. Many of them enjoyed widespread usage for decades. Hell, so-called "standard gauge" is only used by 55% of the railroads in the world today. Even the original horse drawn railways in England in the late 1700s had widely varying gauges, from under 4 feet up to 5 feet, despite involving literal horses.

      The coward's observations about the stickiness of protocols are perfectly valid though.

  23. So let me get this straight by cyber-vandal · · Score: 1

    After the widely publicised Y2K debacle, avoiding a similar scenario wasn't considered by GPS manufacturers at about the same time?

    1. Re:So let me get this straight by drinkypoo · · Score: 2

      My Garmin GPS 12 units predate Y2K substantially, you insensitive clod! And they're my only standalone GPS-without-map units. The last firmware update was in 2003. I presume they're about to be rendered useless, which is sad to me because they're reasonably sensitive, have serial output, and support DGPS.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    2. Re:So let me get this straight by Anonymous Coward · · Score: 0

      They should work fine for navigation and positioning, but the date/time displayed may be incorrect.

    3. Re:So let me get this straight by drinkypoo · · Score: 1

      They should work fine for navigation and positioning, but the date/time displayed may be incorrect.

      In that case, everything is fine. Now I only have to worry about my neo6m GPS modules, one of which I actually want to use as a time source. It's got a PPM output. But it's probably also counterfeit because I'm cheap :p

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
  24. Re:Stupid n1gger GPASS by Megane · · Score: 1

    NeXTstep (and by extension OS X) uses a double float seconds since 1970 in its NSDate class. This not only avoids the Y2038 (and Y10000) problem, but gives you microsecond accuracy for dates that are inside the current era. There is also no floating-point round-off error for any whole number of seconds because they are the base unit.

    --
    #naabhaprzrag, #sverubfr-000, #agi-fcbafberq, negvpyr[pynff*=' negvpyr-ary-'] { qvfcynl: abar !vzcbegnag; }
  25. Re:Stupid n1gger GPASS by kurkosdr · · Score: 1

    And as usual the best technology didn't make it. Oh well, at least this state of affairs will keep us computer people employed.

  26. Re:Stupid n1gger GPASS by kurkosdr · · Score: 1

    Missed the OS X part. Sometimes I forget significant part of OS X is NextStep. Anyway, still a minority OS.

  27. Your alarm clock might stop working at midnight! by Anonymous Coward · · Score: 0

    I have a timekeeping device next to my bed that uses just two bits and one trit (ternary digit) for the hour, so it goes back to zero every 12 hours. So far it has worked well without any firmware updates. Provided I remember to wind it up. I guess the people who designed it were cleverer than the people who designed GPS.

  28. Not perceived as fundamental limets by Junta · · Score: 1

    In the case here, assumption was that GPS firmware would know which window of 20 years would make most sense. A GPS designed to be remotely viable over a large timespan would generally have to have persistent writable storage for map data, so storing the current general 20 year window should be feasible.

    Similarly, I seem to recall some man page back in the day defining the timestamp as being in terms of the 'current' epoch and explictly saying the epoch would change. Of course I don't think any agreement was made on how to denote the current epoch so I don't know what was expected of developers in terms of handling that tidbit in that man page. I suppose they presumed a consensus would be eventually reached and software could be updated to deal, since the hardware they were working on would definitely not be making it to 2038 anyway, so an epoch change is the least of their worries in terms of problems to solve to be runnable software in 2038.

    --
    XML is like violence. If it doesn't solve the problem, use more.
  29. Why though? by stealth_finger · · Score: 1

    Why does it even need to send a week number? Don't they just do the time and satellite number, and they are all in as fixed a position as they can be so you just get 3+ signals and triangulate. Easy peasy. Where does week number come in and why is it relevant?

    --
    Wanna buy a shirt?
    https://www.redbubble.com/people/stealthfinger/shop?asc=u
    1. Re:Why though? by pjt33 · · Score: 1

      It's part of the time, which is actually date and time.

    2. Re:Why though? by AmiMoJo · · Score: 1

      My understanding is that it's to do with the way the almanac data describing the satellite orbits is transmitted. They send data for one point in time and the receiver extrapolates from there for the next 7 days. So the week number is associated with almanac data packages, and there is one package per week.

      The data rate is extremely low (50 bps) so this trades some accuracy (as the predictions are never perfect and the error increases over time) for the ability to receive the data for all the satellites in a reasonable period of time. That allows a receiver to start from cold in a few minutes.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    3. Re:Why though? by CaptainDork · · Score: 1

      I'm really scared.

      I used to have a straight day job, 9-5.

      I'm planning to embrace the gig economy and the week will be unpredictable.

      --
      It little behooves the best of us to comment on the rest of us.
  30. car manufacturers may charge $250-$500 for update by Joe_Dragon · · Score: 2

    car manufacturers / dealers may charge $250-$500 for update

  31. Re:Who uses GPS? by Anonymous Coward · · Score: 0

    Ah, yes, the ever present "we're holier then thou" attitude of others outside America who think they are better then us. *Shrug* However, it's always better not to care what others think, if you do you end up becoming a slave to their perceived intelligence.

     

  32. Comparing sizes by slipped_bit · · Score: 1

    "10 bits should be enough for anyone" - US DOD

  33. 2038 wasn't a bug by Anonymous Coward · · Score: 0

    Space was seriously precious back then (a couple of meg of ram was huge, most systems were in the 128k to 256k range for memory), they chose 32 bit even though it wasn't easy to handle on lots of machines to give enough time for future versions to update it without hitting a wall immediately. And lo and behold unix time was updated to 64 bits years ago, so 2038 isn't an issue. The only unix things that will hit that wall are things that are either not dynamic (scripting language) or can't be recompiled with the 64 bit time_t size. With regards to Go, that is perfectly fine foresight, 250 years is plenty of time to change things as needed. You seem to be making the assumption that the world is static and unable to change. For all we know Go won't even be used in 100 years, let alone 250. Of modern languages only a handful have made it to 40 years still retaining wide usage (c, cobol, fortran, lisp variants, ...)

    And by the way using 2 32 bit numbers is the same as using a 64 bit number, just more of a pain in the ass to handle.

    1. Re:2038 wasn't a bug by WaffleMonster · · Score: 1

      And lo and behold unix time was updated to 64 bits years ago, so 2038 isn't an issue. The only unix things that will hit that wall are things that are either not dynamic (scripting language) or can't be recompiled with the 64 bit time_t size.

      Some have addressed the problem long ago. For example Microsoft fixed visual studio over a dozen years previous to have time_t be 64 bit for 32-bit and 64-bit software.

      Others have elected to do nothing. time_t is still 32 bit in present day 32-bit Linux systems.

  34. Bingo by ISoldat53 · · Score: 1

    Buzzword Bingo - Glider edition.

    1. Re:Bingo by Falconhell · · Score: 1

      Fair comment. :)

  35. Re:Who uses GPS? by Anonymous Coward · · Score: 0

    Why listen for ~24 satellites when you could combine their signals and listen to ~60?

  36. Re: Stupid n1gger GPASS by AngryOnions · · Score: 1

    I believe this is similar to the Y2K problem in computers (I am admittedly not an expert), the fix for which delays another event until 2038. That bug isn't about bad programmers, it's about programmers using a register size that seemed reasonable and worked within the limits of the hardware they had at the time.

  37. Floating point for time by hawkfish · · Score: 1

    NeXTstep (and by extension OS X) uses a double float seconds since 1970 in its NSDate class. This not only avoids the Y2038 (and Y10000) problem, but gives you microsecond accuracy for dates that are inside the current era. There is also no floating-point round-off error for any whole number of seconds because they are the base unit.

    The problem with using floating point for time is that the precision varies with distance from the epoch. Over the course of a century, this comes to 100 * 365 = 36500 or over 15 bits for representing (say) the number of days, which reduces the precision for fractions of a day by the same amount.

    Conversely, if you want ns precision, 64 bits will only give you ~20,000 days, which is less than a century. But 128 bits will give you ~10^20 years at ns precision. Which should cover the big bang to the effective heat death of the universe...

    --
    You will not drink with us, but you would taste our steel? - Walter Matthau, The Pirates
    1. Re:Floating point for time by Megane · · Score: 1

      precision varies with distance from the epoch

      We got ~68 years from 32 bits. Start with a 64-bit float, take 8 bits for the exponent, and you have 24 bits left for the fractional accuracy. 2^10 is about 1024, that's about a microsecond near the epoch, with 4 bits left over, so you get microsecond accuracy for another 64 years x 15, or 960 years. I'm going to guess that even millisecond precision is still sufficient as a general timestamp format. This is supposed to replace a timestamp of whole seconds, after all. The fractional part would be scaled from an internal clock in the computer, which might not have true millisecond precision anyhow. And there is no floating point math inaccuracy for whole seconds, because those are the integer portion of the float.

      You would have to go a long time before those 24 bits get used up. Quick back-of-the-envelope is 68 years x 1024 x 1024 x 16, or just over a billion years, before the seconds start to skip. Not quite the heat death of the universe, but I think there are a few bigger problems before that happens. It's certainly a much better use of the extra bits than "duh just make it a long long" and waste 30 bits every time. All that would do is "merely" extend the problem out to ~300 billion years.

      tl;dr: You haven't made a case for needing that much precision, over that time scale, in a timestamp.

      --
      #naabhaprzrag, #sverubfr-000, #agi-fcbafberq, negvpyr[pynff*=' negvpyr-ary-'] { qvfcynl: abar !vzcbegnag; }
    2. Re:Floating point for time by tap · · Score: 1

      Say I take a timestamp and add one nanosecond to it. That will increment the timestamp if I test near the start of the epoch. But eventually it will be far enough from the epoch that one nanosecond falls off the end of the mantissa and now this fails.

    3. Re:Floating point for time by Anonymous Coward · · Score: 0

      So time stops!

  38. Planes, Trains, Automobiles... by Anonymous Coward · · Score: 0

    I don't think I will buy a plane ticket on April 6 if GPS everywhere is going to fail.

  39. Re: Stupid n1gger GPASS by Anonymous Coward · · Score: 0

    There's no reason for a programmer to code fir something that is expected to happen after his retirement.

    For most uses, isLeap = (year % 4) == 0 is good enough :-)

  40. Re:Stupid n1gger GPASS by WaffleMonster · · Score: 0

    With Unix they didn't really pick 32 bits as being "good enough", it was just the largest they could easily handle at the time.

    They didn't pick 32 bits they picked 31.

  41. Re:Stupid n1gger GPASS by AmiMoJo · · Score: 1

    Signed int is 32 bits. They went with signed because it makes it possible to detect overflows because the number goes negative, although interestingly that's not actually guaranteed by the C spec which says it is technically undefined.

    --
    const int one = 65536; (Silvermoon, Texture.cs)
    SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
  42. Re:Stupid n1gger GPASS by WaffleMonster · · Score: 1

    Signed int is 32 bits.

    Relevance?

    Y2038 exists because people elected to use only 31-bits to address time.

    Using 32-bits to address time delays run out until 2106.

    They went with signed because it makes it possible to detect overflows because the number goes negative

    This line of thought was a bad idea then. Today it amounts to nothing short of willful negligence.

  43. Re:Stupid n1gger GPASS by Darinbob · · Score: 1

    32 bits works even longer if you make it unsigned. For uses where you don't have to worry about things in the distant past, this is fine and trivial to implement. This is really helpful for the hordes of 16-and 32-bit embedded systems out there. Certainly 64-bits would be better for newer products, or anything between 33 and 64 bits (say you're on an 8bit cpu and would prefer 5 bytes instead of 8). You can also tweak the epoch start time to not be 1/1/1970 as well, if you know your time format will only stay local to the device, then converting between the device time and Unix time is a simple addition.

    For something like GPS where you have data transmitting over the air then going to 64-bit is a waste of bandwidth. If you're talking to a Mars rover, then the extra bits are a serious disadvantage. So instead you rely on having good documentation of the format and that you can convert to other time formats as needed. Since we've known that GPS times will rollover in a relatively short period of time (ten years is shorter than many expected product lifetimes) you would assume that the receivers know how to deal with this. The problem is not that everyone needs to update firmware, but that you need to check if you have a halfway decent GPS receiver versus a piece of junk designed by noobs.

  44. Re:Stupid n1gger GPASS by Darinbob · · Score: 1

    They originally used this format for file timestamps, so it was unlikely to ever have file's created or modified before 1970... It was after this point that people started wanting to use this format for all sorts of uses for which it was not suitable. Ie, I worked on a medical device that initially used this signed 32-bit time format for medical records; but that was a problem since you couldn't express some patient's date of birth, whoops.

    Much of the problems come from blind reliance on third party libraries, or naivete about domain knowledge. They expect that they don't have to worry about such issues if they only call the appropriate library. It's only later that they discover that the library wasn't intended for what it was being used for. I am seriously amazed at how many experienced programmers don't know much about time and yet seem to think that it's simple and that anyone can do it.

  45. Re:Stupid n1gger GPASS by Darinbob · · Score: 1

    I don't think the time formats had a lack of foresight. They were used for particular uses where it made sense. What broke was when people took the original signed 32-bit file time format to use for other purposes. Ie, purposes other than the file time on a specific PDP filesystem implementation. But it slowly got standardized in many file systems, the function calls dealing with time got standardized, and the file timestamp format started being used for things other than file timestamps. The original Unix system is no longer in use, their assumption was entirely correct and it isn't around still after 40 years later except as simulations.

  46. gps is old garbage, cia infested by Anonymous Coward · · Score: 0

    any normal person and tech has switched to glonass long ago ,gps is for plebs

  47. Re: The Issues With Unsigned Time by Cardcaptor_RLH85 · · Score: 1

    The problem with unsigned time were mentioned by another commenter here. There are medical applications that use signed 32-bit time for patient dates of birth. That's a problem in and of itself since some of those patients were born before December 13, 1901 (back when the software was originally written at least, this isn't a problem anymore). However, there are certainly still people who were born before January 1, 1970 tooling around. For them, you'll need negative numbers to represent dates of birth in UNIX time.

  48. Re: The Issues With Unsigned Time by Darinbob · · Score: 1

    I made the date of birth comment... But for some products it doesn't matter. I'm working on one where time means "right now", and unsigned long works great for most of that. Some security layers are using 64-bit time. If I had designed the thing, I'd probably make sure that any external view of time was done in signed 64-bit; internally signed time would get rid of some pesky typecasts but otherwise there's no need for 64-bits there.

    You sound as if you just want one format for all time uses. Except that it doesn't work, it doesn't take into account microsecond resolution that many applications need or even smaller in some domains. Different domains have different uses for time and trying to cram it all into a single standardized format doesn't always work.

    Already we have to work with multiple time formats. I run across stuff I have to interface with that uses 2010 as the time base, stuff that uses 16-bits for the time-of-day (with the silly 2-second resolution that MSDOS had), stuff with no concept of daylight saving's time, and so forth. So having to deal with time is a part of job in some segments of embedded devices.

  49. Re:Stupid n1gger GPASS by Anonymous Coward · · Score: 0

    The macOS X epoch is actually 12am, 1 Jan 2000 :-)

  50. Re:Stupid n1gger GPASS by Anonymous Coward · · Score: 0

    Sounds like one of those width of a horse's ass situations.