Wow... there is definitely something working here! Figured I'd post my results for all of you who know better what's going on behind the scenes:
Background: I'm running Adrynalyne's latest WM 6.5 ROM (based on the official VZW CF03 upgrade). While my GPS did work, it was not consistent and took several minutes to achieve a lock through Google Maps, iGO8, or GPSToday. If I first locked the GPS outdoors, I could usually bring it indoors and maintain that lock. I never got more than 4-5 active satellites, indoors or out. (Frankly, I have not seen any real differences in GPS functionality between the 'unofficial' CC20 ROM and CF03.)
Today, I did the following:
- Downloaded and installed the three files found in qualcom_gps_tools.zip. I also downloaded a copy of xtra.bin and put a copy in both the root and \windows directories.
- Downloaded gps.txt and merged the entries into my registry (they did not exist previously).
- Ran GPSTool0813.exe. By default, it expects to find the GPS on COM4. So to make things easy, I used the 'External GPS' control panel applet to reset the GPS accordingly (it was formerly on COM8). 'Manage GPS automatically' is also selected.
- Clicked 'Open' on the Settings panel of GPSTool0813. For some reason, this always produces the error "Failed to send NMEA command". (Does anyone know why this happens?)
- Pressed OK to clear the error dialog, and the window on the Settings panel immediately began displaying and scrolling commands.
- Switched to the Satellite tab, and within 10-15 seconds I had acquired locks on nine satellites! Better yet, this was all happening indoors!
- Flipped over to Google Maps, and immediately had a lock on the same nine satellites.
So this sequence is definitely invoking an aGPS capability that's far better than whatever is being provided in the regular CF03 ROM update.
I also tried running
setgps.exe. After confirming that I had a Qualcomm GPS chip, the screen cleared and the program exited. I couldn't see that it made any real difference one way or the other - and am not even sure exactly what it's supposed to be doing?
Finally, I tried running
GPSXtra.exe. After I enabled XTRA, it apparently attempted to download a new copy of xtra.bin -- but it always times out without success. It also seems to be doing something funky with my EVDO connection, because as soon as the program times out my EVDO is reset and reconnected. GPSXtra does appear to see the copy of xtra.bin that I had manually downloaded, because it displays the date/time of that file as well as the valid time remaining. I'm assuming that means I have to manually download an updated copy of xtra.bin before this one expires?
Anyway, that's what I experienced. Obviously, I think we're really on to something here - but I'm not sure whether I'm doing the right things since there are no instructions on what the various options in these programs do. All I can say is that if we could get the functionality of
GPSTool0813 to be automatically executed in the background whenever a GPS-enabled program attempts to open the GPS port, things would be wonderful! Is it possible to reverse-engineer this to understand what it's doing?
Even if I have to manually run GPSTool and clear the error dialog every time I need to use GPS, this is still a huge step forward. Within a matter of seconds, I'm locking on way more sats than I've
ever had before -- and it's even working indoors!