• Zron@lemmy.world
      link
      fedilink
      English
      arrow-up
      11
      ·
      8 months ago

      If you have a modern receiver, like any smartphone from the last 10 years, gps is accurate to a couple of meters.

      It’s only a couple of meters for a few of reasons: necessity, speed, and scale.

      It’s not necessary for most users to have centimeter precision for gps. Most uses for GPS is for humans to find a place, most humans have eyes, or can at least read braille signs. So if you’re looking for a pizza place and your gps says you’ve arrived, you can look around and see that the pizza place is 3 meters down the road.

      Speed, because you can get really accurate locations out of gps, but your receiver would need to refine your location by talking to many satellites many times, which isn’t needed for most users as just knowing if you’re on the right street and the right side of the street is enough. Many communications would mean it takes a long time for the gps device to determine a precise location, which is frustrating for your average user.

      And scale, it’s a really big planet, and there’s a finite number of gps satellites. The less satellites in your network, or the less they’ll talk to your receiver, means less accurate data and a less accurate location.

      TLDR: most people don’t need sub meter precision from their gps, so it’s simply not provided to most people.

    • SkyezOpen@lemmy.world
      link
      fedilink
      English
      arrow-up
      5
      ·
      8 months ago

      How inaccurate are we talking? Selective availability used to fuzz location by 30 meters which is insane.

    • cynar@lemmy.world
      link
      fedilink
      English
      arrow-up
      5
      ·
      8 months ago

      The main limitation now is actually the atmosphere. As the air heats and cools, it expands and contracts. This changes the amount of air the signal is passing through. Since the speed of light in air is slightly slower than vacuum, the effective position accuracy is reduced.

      There is a fairly simple correction, you need a static reference. If you have a fixed receiver, then pass its readings to the dynamic one, then you can correct for errors. Combined with inverse kinematics you can get sub centimeter resolution quite reliably.