[ gpsdrive ] Patches
Paul Martin
pm at debian.org
Thu Dec 18 23:21:09 AKST 2008
On Fri, Dec 19, 2008 at 08:31:19AM +0100, Guenther Meyer wrote:
> Am Donnerstag 18 Dezember 2008 schrieb Paul Martin:
> >
> first, thanks for the splitting!
>
> > The flashing 3D fix correction is:
> >
> > - current.gpsfix = 2;
> > + if (current.gpsfix<2) current.gpsfix = 2;
> >
> it's not really a good idea to fix it that way.
> gpsfix is the flag to store the current gps status, and we should not falsify
> this state just for a gui fix. other functions may rely on that...
It's set elsewhere to three in another function. This function can only set
it to two, never three. If it's been already set to three by another
function, why are we resetting it down to two here?
The GPS status is determined from two different NMEA sentences. One says "I
have a GPS fix", which is used to set gpsfix=2 as above. The other says "I
have a 2D fix" or "I have a 3D fix". If the first sentence has come in and
the display is updated, you get a flash of "2D Fix" before the second
NMEA sentence comes in.
> > > mapnik projection:
> >
> > That's this one:
> >
> see hamish's statement...
The reason is that without this fix, the osm.xml file disagrees with what
gpsdrive requests, and all your roads are drawn about 50km closer to the
equator than the correct position. The closer to the equator your location,
the less the offset.
This projection is also the default used by the current osm2pgsql "SVN
version 0.55-20081217 $Rev: 10464 $".
Agree on a projection, then use it consistently.
> > > dgps:
> > > you introduced a new variable 'satfix' for that. would it be possible, to
> > > include this into 'gpsfix' with a value of 3 for dgps?
> >
> > No, because gpsfix == 3 means a 3D fix. You can have a 3D fix without DGPS
> > and a 2D fix with DGPS. "satfix" was already a local variable storing that
> > value.
> sorry, I meant 4, not 3.
> my experience with gps devices is, that there was always a 3d fix, when I had
> dgps available. but if that's not inevitably the case, your way may be
> better.
For the same reasons that you don't fiddle with the value gpsfix above, you
want to store the DGPS value separately.
=
There's also a bug in "draw line to route destination". If you're over a
certain distance from the destination, the line may be drawn in a seemingly
random direction. I suspect this may be an overflow, but I haven't found it
yet.
Another problem is that gpsdrive hammers the X server. I suspect its
method/frequency of updating the display is less than optimal. This severely
affects battery life.
--
Paul Martin <pm at debian.org>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://lists.gpsdrivers.org/pipermail/gpsdrive/attachments/20081219/a0863228/attachment.bin>
More information about the GPSdrive
mailing list