Solution to N810 GPS problems?
February 4, 2008
I’ve been playing with a possible solution to the time-to-fix problems of the Nokia N810 GPS, and it looks good: Getting a fix used to require 5-15 minutes even in very good conditions. Today I have experienced fix times between 30 seconds and 3 minutes — even from the window which was previously almost impossible.
The solution? Don’t have a 86400 second error in GPS time keeping.
I’m not kidding: there’s a leap year bug in gpsd which makes it add an extra day to all timestamps between Jan 1st 2008 – Feb 28th 2008. All gps-related code apart from gpsd is closed source so I can’t tell for sure, but I’m guessing this false time is used when the gpsdriver is initialized with the “last known position data”.
The evidence is just anecdotal, and this could be just a fluke. If anyone else wants to try and confirm, my patched testing packages are available. The first fix after installing should still take a long time, but I expect the following fixes to be faster. Please comment if you do any tests.
EDIT: Nokia osso-gpsd maintainer says this in the bug:
The analysis that the leap year bug would affect fix times is wrong.
Based on the comments here I’m assuming it’s not just placebo that we’re all seeing, so I’ll have to investigate a bit further.
EDIT 2: Well, not only was I probably wrong, but the package prevents system upgrade. I’ve removed the patched packages and have original 1.0-25 up, please install that if you tried my patched version.
February 4, 2008 at 8:32 am
Fantastic !!!!!
The first time fix delay was so bad before that up to now i always used an external bluetooth gps.
I just tried this package and get a first time fix value of 40 secs !!
That’s really great and makes me take full advantage of the internal gps.
Thanks a lot!
That’s another example of the power of opensource!
Best regards
Uwe
February 4, 2008 at 11:11 am
I really want this to be true but I can’t test it. I’ve down loading from the link you provided but my N810 (thus OS2008) tells me it’s an “incompatible application package”.
Also, aren’t successive GPS fixes supposed to be quicker? That’s how all GPS things work. They find out where the satellites are during the first fix, and then they know where they’ll be for the next few hours. That’s the origin of the cold start vs warm start times.
February 4, 2008 at 11:15 am
Nice, works a lot better now in a quick test. The fix time was less than a minute, even from the window.
Thanks,
Jürg
February 4, 2008 at 12:35 pm
Craig, it’s a valid package but Application Manager does not support installing random packages by default… I use the shell but “red pill mode” in Application Manager should work too.
and yes, this is about “successive fixes”. Like I said in the original post:
> I’m guessing this false time is used when the gpsdriver
> is initialized with the “last known position data”.
February 4, 2008 at 17:20 pm
Just installed your packages. I’ll go out to test it as soon as possible :) Thanks for now!
February 4, 2008 at 19:16 pm
Brilliant … tried it out this morning and it seems that the performance is much improved.
Thanks for working this out!
February 4, 2008 at 22:12 pm
I also believe you maybe looking at ‘hot’ fix ‘cold’ fix situation. My bluetooth gps does a ‘hot’ fix from inside my living room in 50 seconds! If ‘cold’ fix even outside it takes about 3 minutes. I think you should go to a new location (miles)away and try a fix?
February 4, 2008 at 22:34 pm
You’d have to go more than a few miles away to break a hot-fix, it needs to forget which satellites to listen for, wait a day and you’ll get a true cold start up time.
jku, could you tell me more about shell installs of deb files? I’m new to Linux and have only used the Application Manager so far.
February 4, 2008 at 23:11 pm
Craig, the scope on that question is a bit wide for this comment :)
Basically you’ll need to get root access on the machine (this has security implications so be careful). Then you’ll login as root remotely or using xterm on the device, and use “dpkg” to install .debs or “apt-get” to install from repositories.
Marius covers the “getting root access” part here: http://www.gossamer-threads.com/lists/maemo/users/32180?page=last . Remember, doing the wrong things as root may harm your OS so badly it needs a reinstall (and yes, “wrong things” may include installing .debs from random blogs ;))
February 4, 2008 at 23:56 pm
YES! r0x0r! This fixed gpsd gives my N810 significant better times until a fix. I get also a fix at the window of my living room. I never got a lock there.
May the source be with you all the time! ;-)
Thanks!
February 5, 2008 at 0:15 am
Thanks jku. I’ve got root sorted already and I can look up dpkg. Once I have the program name I can usually figure the rest. CLIs are great an all, but discovering things like that is never going to be as intuitive as a GUI.
February 5, 2008 at 0:39 am
Very nice patch. Worked very well from home: gps fix in 15 to 20 seconds. I haven’t tested it on a trip.
Antonio
February 5, 2008 at 1:28 am
great…now if they could get it on a toothbrush…
February 5, 2008 at 1:48 am
wow, major improvement. I just put it by the window and times it. 3mins 15seconds from starting Maemo-mapper I had a fix. And it’s been over a week since I did anything GPSy on my device. It makes the on-board GPS usable at last!
February 5, 2008 at 8:22 am
Awesome work, Jussi!
February 5, 2008 at 11:29 am
Thanks Jussi, I am at work but will be trying this tonight, like many people I found the internal GPS was so slow at getting a fix that I had all but given up on using it. Hope this solves the problem, thank you for all your efforts.
February 5, 2008 at 12:22 pm
What is the GPS type in N810 ? Is it the same like E90 ? Is it Sfir III ?
February 5, 2008 at 12:53 pm
It is a TI GPS chip, same as the one in E90. Neither of these devices has Sirf3.
February 5, 2008 at 13:51 pm
please help me,
i found vversion 1.0-25 on my n810 and don’t know how to install the patch. how should i do this?
thanks a lot.
dietmar
February 5, 2008 at 14:05 pm
dietmar,
This is not an upgrade in the normal sense — just a package I made available so others could test whether it works. I do not intend to offer end-user support or anything, so you should know what you’re doing if you install it.
That said, You need to either be in “red pill mode” in application manager or install using the command line. See earlier comments.
the bug should disappear after leap day (for four years anyway), so maybe just waiting a month is an option?
February 6, 2008 at 11:24 am
So, actually Nokia recognizes that this is a problem and the GPS is supposed to work faster? That’s good news too, as I guess we could expect an official fix soon. In the meanwhile, thank you very much for your effort, great work!
February 6, 2008 at 13:15 pm
I’ve installed the fix but it doesn’t appear to have made much of a difference. I have managed to get a (warm) fix from my window which I hadn’t done previously but it was slooooow.
February 6, 2008 at 18:37 pm
**WARNING**
When1 I installed the package linked above, my apt got messed up and I needed to reinstall the original osso-gpsd package in order to use apt-get upgrade and similar commands.
I actually had to rebuild my osso-gpsd package from source using scratchbox because I couldn’t find a prebuilt version of the package.
Just be careful.
February 6, 2008 at 19:45 pm
Thanks Owen, updated the post and posted 1.0-25 debs.
Sorry folks, didn’t intend the trouble. It seems there’s no clean way to update Maemo system packages: osso-system-version depends on a specific version of osso-gpsd.
February 11, 2008 at 5:28 am
I’m a little confused about the patch? DO you have to apply each pkg on top of each other or just the latest one?
February 11, 2008 at 11:07 am
Robert, if you haven’t installed anything, please don’t do anything.
If you have installed a testing package (version 1.0-25-jku0) previously, you can install version 1.0-25 to get rid of the testing version.
February 11, 2008 at 12:04 pm
Great news!
Does this mean that after Feb 28 gps fix will become extra fast even without your patch?
February 11, 2008 at 13:04 pm
Denis, as I’ve said on several forums (like in the follow-up post http://vilunki.wordpress.com/2008/02/06/i-failed/), I don’t think fixing the leap year bug helps the fix time issues…
I can’t explain the observed performance difference, but I don’t believe gpsd is to blame here.
February 12, 2008 at 0:18 am
jku,
Just so I understand what you are saying here is your fix doesn’t really fix it? Anyone know if Nokia is actively working on this?
February 12, 2008 at 2:08 am
Robert,
I think I was pretty clear: I do not think the leap year -patch improves fix times. Something else might have affected it (many people are convinced), but placebo is a strong possibility also.
Leap year bug is fixed in the next releaseaccording to osso-gpsd maintaine (nice for 2012 I guess). Nokia has not said they’re working on fix time improvements, but that proves nothing as they never say anything.
February 15, 2008 at 8:24 am
jku,
I just used the GPS today. Man, it takes a good minute or so for the device to get a satellite lock or whatever its doing before it displays the moving map.
March 21, 2008 at 23:18 pm
my gps will not pick up any signals or showw any adresses I saved
March 25, 2008 at 5:38 am
It doesn’t make sense to me that gpsd would affect fix times.
gpsd does not talk to the chip, it just translates NMEA to
a portable format and allows multiple consumers to connect at once.
I had noticed that my N810 takes longer to get a fix than my slightly old Garmin GPSmap76, but once locked, it is able to keep the fix with a worse signal (indoors).
AFAIK what talks to the chip is gpsdriver; viz
# dpkg -s gpsdriver
Package: gpsdriver
Maintainer: Henrik Saari
Version: 0.5.2
Description: binary driver for GPS5300 gps chip
A driver betwee GPS5300 chip and libgpsbt
TI’s blurb such as it is suggests that this is an
all-in-1 chip and that it talks over a serial link directly. I’m not sure how it remembers its last position
which would affect the speed with which it can get a fix.
With my Garmin, somewhat old as I say, the docs said it
needed an approximate time and position to know where to start looking, and the better you could give it the faster it would get a fix.
http://focus.ti.com/pdfs/wtbu/ti_navilink_4_gps5300.pdf
May 15, 2008 at 15:47 pm
thank for information, N810 GPS, and it looks good
June 13, 2008 at 16:40 pm
[...] There is now a fix for this issue. Follow the link to the bottom of this blog post. http://vilunki.wordpress.com/2008/02/04/solution-to-n810-gps-problems/ Possibly related posts: (automatically generated)Mobile GMaps v1.38.04 Is OutNokia N810 GPS In [...]
June 27, 2008 at 0:26 am
Jussi,
Now that Diablo is out, do you know if this GPS fix delays issue has been resolved?
Thanks
Quadir
June 27, 2008 at 14:32 pm
Diablo does not fix the problem. Still the same.
June 27, 2008 at 15:36 pm
Quadir, There is some a-gps support, so in theory things should be getting better. I haven’t looked at how it works yet…
November 18, 2010 at 13:47 pm
Package did not allowed me to install with message “incompatible application package”.
I got it installing through terminal. First, got root privilegies, then, downloaded package, and used “dpkg -i {location-of-file}/osso-gpsd_1.0-25_armel.deb” and it started to install… AND, it showed that I have 1.0-29 version of osso-gpsd (what was error mentioned previously), that means, this 25 version downgrade. Now, testing this one, and seems, nothing have changed. Now I will try to get back my 29 version :P
May 9, 2013 at 14:26 pm
Thanks in support of sharing such a nice thought, paragraph is good, thats why
i have read it completely