[HD2 Android Q&A, Help & Troubleshooting and Genera] Jaiy:
Could you cite the source code reference on which you base this statement, please? You may be right, but the fact that adding or removing the A-GPS configuration in the gps.conf file does change the behavior of the GPS tends to suggest that there is some support in the driver. It may be broken support, but something seems to be there. I am trying to find the actual GPS driver code to examine it, if you have a URL or file reference, I'd appreciate it.

I beg to differ. The code does not loop through multiple NTP servers. The code handles only one server. You can see this in com/android/server/location/GpsLocationProvider.java. Adding multiple NTP_SERVER entries is not going to do as you say. I am not saying it is good to only use one NTP server, I agree that several is better, but your hope that you are adding more servers by adding multiple entries to the file is just not supported by the code. Furthermore, the name region.pool.ntp.org does not resolve to a single NTP server. It resolves to a different IP address each time it is used. Try it... ping us.pool.ntp.org. A bit later ping it again. You'll see a different IP address. The whole point of the NTP pool service is to spread the NTP client load over multiple servers. The NTP pool service automatically detects if a server fails and removes it from the pool. You are trying to use manual configuration for something that has been implemented through the pool service. And the code that you're hoping will give you the different servers doesn't even use more than the first! You're actually breaking things if you list a specific server name in the first entry - if that sever is down you will lose time sync and therefore you will break your GPS because the Android GPS code does not look at your second or other entries. If you use the pool one, and only the pool one, if that server breaks, just restart and it will get a new server automatically.

OK, so AT&T has the same error. No need to propagate it here. Again, read the code in the same file... you will see that "FQDN" is not a valid value here.

I did not say it doesn't work. In fact, I suspect it does... if you're on the T-Mobile data network. The name resolves to different IP addresses based on whether you're on their network or not and my guess is they look at the address you used to decide whether to provide you with the SUPL data (T-Mobile does this for other services, too). If they send you data, my guess is you will experience long or no lock times due to the driver bug.

I saw that. However, you're not configuring a secure SUPL server because you have SUPL_TLS_HOST set to FQDN as above, and FQDN is not a valid server hostname.

There is nothing wrong with a short, generic file. In fact, it is better since it is much less hassle to maintain. You are wrong about that we've been using that setup and it did not work. The stock Gingerbread version includes A-GPS SUPL and XTRA configuration. The version I posted does not include this. That difference is why my shortened version works and the stock one doesn't. It's also why your long file works - you've added non-working configuration for SUPL and thereby you've accidentally disabled the A-GPS.

It's not a matter of opinion!! Read the source code. What works is a matter of fact based on what the code does.

Well, I am an IP network engineer and UNIX programmer with quite some years of experience. You're right about web browser caching but that is completely irrelevant to configuring the GPS on Android. The file xtra.bin that you mention is part of the A-GPS assist layer. It contains the ephemeris data for the GPS satellites. If, as you say, there is no A-GPS support in the driver, having xtra.bin around or not won't make any difference as the file won't be used. If, as I suspect, there is A-GPS support in the driver, but it is broken, using either the SUPL or C2K services to obtain satellite information and then using the xtra.bin file to look up the ephemeris data for the wrong satellites would be a good explanation of why your GPS isn't finding the signals and locking.

The stock Gingerbread file enables A-GPS by configuring a SUPL server and by attempting to download the xtra.bin file. But something in the driver's A-GPS code is broken so it doesn't work.

My version removes the A-GPS configuration so the GPS falls back to non-assisted mode and works, albeit with the initial lock taking a minute or two, which is normal for non-assisted GPS.

Your files work for most folk by sheer luck.