GPS performance issues on GTA02v5

Daniel Willmann daniel at
Thu Apr 24 04:03:06 CEST 2008


I think I might have found out why recent GPS performance has been so
crappy. First of all the GPS on my GTA02v5 does work, but it's much
worse than what I was used to. I have checked with openmoko-agpsui from and on average the S/N ratio is
about 5-7dB worse on my 2v5 compared to Stefan's 2v4.
At good conditions, standing outside with little obstructions to the
sky that doesn't make much of a difference. I've had a TTFF of a little
over a minute on the 2v5 and a little under a minute on the 2v4. Where
this does matter, however is under non-ideal conditions (read
real-life), when you are near tall buildings, the GPS antenna is not
aimed directly at the sky, etc. Then the lower signal level will cause
the ephemeris download to be interrupted frequently. I mounted the Neo
(2v5) on the handle bar of my bike, pointing ~45° upward and just
cruised around for a while. The Neo took 7 - 18 minutes until it got
its first fix!
So someone should definitely check if v5 is generally worse than v4 wrt
GPS signal and then we should check why it's worse on v5.

Unfortunately this is only half the problem. The other thing is that
our u-blox module does not have a backup battery attached. This means
that when we cut the power to the GPS module we loose all data so every
time we power the GPS on we basically have to do a cold start and even
optimal TTFF for that is about 40s (I have seen a TTFF of 47s on the
But even like this we can still do better than we do now. I have studied
the Antaris 4 manual and the UBX protocol definition the last couple of
days and there is a multitude of options to help us improve our TTFF as
well as make navigation possible even under adverse conditions.
This does not mean we shouldn't investigate the hardware issue that I
believe exists.

The UBX format allows us to retrieve and send the almanac and
ephemeris data. We could save that before power down and load the data
back into the GPS after powering it up. This and setting the time and
presumed location should be enough to bring the TTFF down to a few
seconds. Another thing we could do is turn on something u-blox calls
FixNow. You can basically tell the GPS to go to sleep and regularly or
on request try to acquire a fix, report that and go back to sleep.
During sleep the antenna and all the stuff dealing with satellite
tracking will be turned off so we'll save some power, too.

We can enable almanac navigation so the GPS can report a fix to us
even before ephemeris is downloaded from enough satellites. This fix
will only be accurate upto a kilometre, but it's still better than
nothing. In conjunction with this we can enlarge the PDOP Mask. The
GPS chip suppresses the position and reports it has lost its fix if the
position accuracy is worse than 100m by default so even if the receiver
knows it's within a 500m radius of this position it wont tell us

I have started playing around with the almanac/ephemeris save and
restore on the u-blox Antaris 4 external GPS mouse I have, but I don't
have any data I trust enough to say that it definitely helps speed up
TTFF. To make this even faster I'll also need to send the current time
and approximate position.

Daniel Willmann
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url :

More information about the openmoko-devel mailing list