GPS rework: Please test and report on software fix prior to attempting any hardware fix

-stacy slm3095om at Millions.Ca
Wed Aug 6 18:30:27 CEST 2008


Andy Green wrote:

> These are really interesting, thanks.
> 
> | d i   min /  avg / max
> | 0 0  35.20/ 55.33/144.30   <===
> | 0 1  37.39/ 77.76/315.76
> 
> | 3 0  36.07/ 42.07/ 47.82   <===
> | 3 1  97.46/173.09/359.69
> 
> These relative numbers are a bit counterintuitive... it might be worth
> trying it again from a "very cold boot" but with the script
> 
> for DRIVESTRENGTH in 3 2 1 0
> 
> and seeing if the bias to a worse max moves accordingly.

So I broke the first rule of testing, and changed a bunch of things and 
then reran the test.

First, instead of doing a power off/power on of the GPS, I used Andy's 
handy dandy UBX construction kit to issue a cold restart to the chip. If 
I understand the documentation correctly, this will wipe everything from 
the GPS's memory and do a hardware reset; that should take care of any 
concerns about residual fix information surviving a power cycle.

Second, as Andy suggested, I reversed the order of DRIVESRENGTH values.

And finally, I left WLAN enabled (mainly because I did a reboot of the 
FreeRunner and then ran the test).

Here are the results:
d i   min /  avg /  max
0 0  36.41/ 51.53/ 84.83
0 1  40.41/ 59.13/128.33
1 0  36.98/ 45.45/ 51.03
1 1  40.94/ 63.74/111.77
2 0  31.43/ 45.08/ 52.31
2 1  32.57/ 57.50/ 76.06
3 0  32.10/ 43.75/ 57.98
3 1  40.34/ 61.71/ 96.67

BTW, the magic incantation to generate the cold restart is

ubxcs  b5 62 06 04 04 00 ff ff 00 00 > coldstart.ubx

Then to issue the command,

cat coldstart.ubx > /dev/ttySAC1
grep '$GPTXT,01,01,02,u-blox' -q -m 1 /dev/ttySAC1

The grep command looks for the powerup message from the GPS to make sure 
that there is no RMC sentence sitting in a buffer somewhere.

-stacy




More information about the community mailing list