Note1: user boomerbubba was extremely helpful in thinking this through
Note2: Engadet finally posted a link to this workaround after three separate articles in which they completely botched testing of the Epics GPS and showed a total lack of knowledge of GPS systems. Thankfully their otherwise unfortunate readers of their poor "journalism" can at least now get a workaround as well.
I have three epics and have been testing GPS functionality for two weeks with quite a number of controlled tests.
As we know there is a problem with old "assistance" (the "a" in aGPS) ephemeris and almanac data in cache. this data can start expiring in a few hours and ephemeris will fully expire in about 8 hours.
The result is that sometimes
users will experience the following symptoms in a GPS fail: the Epic will "see" sufficient satellites (4 to 11) but doesn't "use" them (expired ephemeris) or will see no satellites while under clear skies (expired almanac, rarer).
Although some user actions or program identified (eg reboot),and unidentified, can apparently flush the old data out of cache so that the network renews it with valid data, this isn't programmed by Samsung correctly and users intermittently are stuck with bad data in cache preventing lock. I have tested a workaround and it works
TESTED AND FUNCTIONING WORKAROUND:
Enter GPS debug/settings application by typing *#1472365#
click "Setup" tab
click "position mode"
Click "starting mode
Enable "Cold Start"
Epic GPS will now call on data network for fresh valid ephemeris and almanac at every programing invocation of GPS and aGPS fixes will be very fast (usually less than 10 seconds).
There one downside. while cold start will be effectively warm start in aGPS mode (good). That is it will work very nicely in the presence of a 3G or 4g data connection. But absent data connection
, ie in Standalone GPS mode, you will be always cold starting (starting with empty cache), meaning fixes will be 5 to 14 minutes if you are not on the network. If you are going to be off the network for a while you can simply set to warm start from same menu.