Can You Find Me Now?

A substantial thread on the XDA forums over GPS-related woes for people using the Samsung Galaxy S i9000 has left users of the device puzzled for nearly two weeks across Europe and Asia. Now, there are similar threads for the currently available American versions, the Vibrant and Captivate, that are quickly increasing in length as well.

So, what is this problem? The Galaxy S (for some users) has difficulty locking onto enough GPS satellites to maintain an accurate fix on the user’s position. This translates to unusable GPS car navigation apps, inaccurate map readings, and generally makes using any GPS-enabled application a less-than-enjoyable (and inaccurate) experience.

This problem doesn’t affect all users: it seems more likely to trouble those in locations where GPS satellites are scarce, or in areas where the phone needs to regularly switch satellites to maintain an accurate location readout (remind anyone of a certain phone’s antenna issues?). For persons living in cities with very strong GPS coverage or few physical barriers to GPS signal, there may be no issues at all.

What’s Up With That?

Theories on the root of these GPS frustrations vary; some have suggested Samsung’s Galaxy S uses an inferior GPS chip that can track (track, not lock) only 8 GPS satellites at once, whereas most HTC devices are capable of 12, and that this hurts the Galaxy S’s ability to choose optimal satellites as its position changes. Others claim the Galaxy S can see plenty of satellites, but will only lock onto one or two at a time out of the 8 or more discovered (by comparison, my own Nexus One quickly locks to 10 out of 10).

The latter is seeming more and more likely as user input on XDA mounts; and that means (hopefully) a software glitch. But even with the level of frustration of users and the severity of the issue, Samsung has remained silent on the bug thus far. A few users have posted their “fixes” for this issue on XDA, though thus far this one is getting the most positive feedback:

Some users have suggested enabling “Skyhook” in the hidden GPS settings menu. It may “smooth out” your GPS and compass, though it cannot provide any more actual signal strength. Instructions below:
  1. Dial this number into your phone and hit call: *#*#1472365#*#*
  2. A menu will appear with a checkmark option to enable Skyhook, check it. Do not change anything else.

This “fix” does not work for everyone (it’s not clear it even works for the majority), but it’s easily reversible and worth a try for that reason alone. Many others have suggested updated firmware has alleviated the issues as well. To that end, there is chatter that some new AT&T Captivates are shipping with an updated firmware version that may address the GPS issue.

Is It A “Feature?”

After doing a little armchair postulating, I think I have come up with an explanation for this behavior. Clearly, for some users the GPS on Galaxy S devices works fine. If all users were affected, the response would be substantially larger (and angrier).

GPS is a major consumer of battery life. The more satellites a device tries to lock onto, the more data it is receiving and thus, the more battery power it is consuming. In a move to conserve battery life, Samsung may have chosen to deliberately cap the number of satellites the phone can both track and attempto to lock onto at any given time, resulting in poor GPS performance in areas where signal strength is weak or obstructed. I don’t have any hard evidence to support this claim, but I think it’s a reasonable one to make given what we know thus far. A more detailed explanation of why this might be is in my comment below (and thanks to Isaac for some clarification).

Having GPS issues on your Galaxy S-based device (Vibrant, Captivate)? Let us know.

Credit: XDA Forums

David Ruddock
David's phone is whatever is currently sitting on his desk. He is an avid writer, and enjoys playing devil's advocate in editorials, and reviewing the latest phones and gadgets. He also doesn't usually write such boring sentences.

  • Isaac

    GPS chips don't send information. Only receive. As such, reading multiple satellite signals shouldn't eat too much battery unless you are trying to track the weakest signals available, which would up the amplification needed to process it.

    • David Ruddock

      Good point, they don't transmit information. But I'd argue that the amount of data does substantially increase with the number of locks initially, as the phone builds its GPS almanac (aka cold start) from the satellite signals and attempts to identify optimal satellites. This is the most data-intensive part of GPS: signal acquisition.

      Once locked, the data is, as you said, trivial.

      A little research has also suggested to me that 3 satellites is the minimum for acceptable performance for most GPS devices ("triangulation" effect), and if the Galaxy S only allows 2, there could be issues.

      For things like Yelp, or Places, or even a quick look at Maps, the average user doesn't need quickly updated positioning (except for the compass, which seems to have issues as well); they need to know their current location in a static sense.

      From what I understand about GPS (and my understanding is limited), lock acquisition requires 30 seconds of uninterrupted signal (a whole 1500 bit "frame"), and that's after acquiring GPS signal on the satellite (another somewhat long process if the almanac is being rebuilt every time I would guess).

      If my Nexus One is actively trying to acquire coordinates from 10 satellites, some will probably fail to deliver complete frames in the first 30 seconds window, but enough will provide them so that I get a good coordinate readout.

      If a Galaxy S is trying to grab coordinates from only 2 satellites, if even one fails, there's no comparative point for the first set of GPS coordinates, and so a wildly inaccurate location may be reported (or no location may report). And while moving with only 2 satellites, it seems TRIangulation probably wouldn't work too well.

      I'll update the article to reflect the non-transmission mistake. Also, if my above explanation is rubbish, forget I said anything. :P

      • Isaac

        From my understanding of GPS, what you said is sorta correct and sorta off, but that's actually besides the point. My point (which I cleverly masked by not even mentioning it) was that the power saved from tricks like this is likely to be quite small. Considering the obvious loss of accuracy when tracking only 2 instead of 3 satellites (so obvious I can't believe that anyone calling themselves an engineer would do that on purpose) I'm thinking software bug as the likeliest suspect. The only other thing I can think of is the unavoidable delay when initiating GPS reading on a chip that has no idea where it is (this takes minutes for the reason you mentioned). It's possible that other phones use rough cell tower location first, and then track satellites from there. Perhaps Galaxy S doesn't do this? Or not properly anyway? Even so, shouldn't be a problem after that initial setup assuming you don't turn off the GPS, then fly to India and turn it back on again.

  • Gongonzabar Farbin

    After applying the fix outlined here:
    GPS has been lightning fast and pretty accurate.

    I was driving around some of the backwoods around my house yesterday and Maps and Navigation worked perfectly,

  • anakin78z

    I could be remembering this wrong, but wasn't there a story some time back about how Samsung was not going to be using Google's location services, and instead be using someone elses? Could it be that whatever other location service they picked (which at the time was said to provide more accurate and faster service) is in fact the suck?

    **Looks like I was wrong, and Motorola is switching to Skyhook. But, does anyone know if Samsung is also not using Google location services?**

    • Isaac

      The mapping service shouldn't make any difference for locating, only for navigating. The GPS chip reports a location, and the mapping service shows you a map and/or route. If you can't get accurate coordinates out of it GPS, then the actually mapping part is irrelevant.

  • LinuxNewb

    So far I haven't had any problems with my AT&T Captivate. I'm running FW 2.1-Update1 with Kernel 2.6.29

    When I'm indoors and at work (with Edge) sometimes it has problems finding me, but as soon as I go outside I don't have any problems.

  • FrankR

    Hi, My name is Steve, and all smart phones suffer from this problem. I gave millions of dollars to a testing company to prove my point. I hope to have a funny video by tomorrow so all you lemmings will get off my (free) case.

  • hmose

    Has not anyone put the free GPS NMEA Test app on their phone and looked at the data sentences coming from the GPS chip? If the are accurate then it's not the chip and you can fiddle with what your device does with the information. Try it!!

    PS Does anyone know the chip identity? SiRF III, MTK, proprietary?