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.

About these ads

40 Responses to “Solution to N810 GPS problems?”

  1. Uwe Koch Says:

    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


  2. 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.


  3. 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

  4. jku Says:

    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”.


  5. Just installed your packages. I’ll go out to test it as soon as possible :) Thanks for now!

  6. Michael Wiktowy Says:

    Brilliant … tried it out this morning and it seems that the performance is much improved.

    Thanks for working this out!

  7. H-Kachal Says:

    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?

  8. Craig Says:

    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.

  9. jku Says:

    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 ;))


  10. 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!

  11. Craig Says:

    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.

  12. Antonio Ca' Zorzi Says:

    Very nice patch. Worked very well from home: gps fix in 15 to 20 seconds. I haven’t tested it on a trip.

    Antonio

  13. frodo441 Says:

    great…now if they could get it on a toothbrush…

  14. Craig Says:

    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!

  15. texrat Says:

    Awesome work, Jussi!

  16. MikeL Says:

    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.

  17. khak Says:

    What is the GPS type in N810 ? Is it the same like E90 ? Is it Sfir III ?

  18. Luarvique L. Luravique Says:

    It is a TI GPS chip, same as the one in E90. Neither of these devices has Sirf3.

  19. dietmar Says:

    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

  20. jku Says:

    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?

  21. Lorenz Says:

    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!

  22. Chris Says:

    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.


  23. **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.

  24. jku Says:

    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.

  25. Robert Says:

    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?

  26. jku Says:

    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.

  27. Denis Says:

    Great news!
    Does this mean that after Feb 28 gps fix will become extra fast even without your patch?

  28. jku Says:

    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.

  29. Robert Says:

    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?

  30. jku Says:

    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.

  31. Robert Says:

    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.

  32. clark Says:

    my gps will not pick up any signals or showw any adresses I saved


  33. 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

  34. pat Says:

    thank for information, N810 GPS, and it looks good


  35. […] 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 […]

  36. Quadir Says:

    Jussi,

    Now that Diablo is out, do you know if this GPS fix delays issue has been resolved?

    Thanks
    Quadir

  37. f44 Says:

    Diablo does not fix the problem. Still the same.

  38. Jussi Kukkonen Says:

    Quadir, There is some a-gps support, so in theory things should be getting better. I haven’t looked at how it works yet…

  39. Deele Says:

    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


  40. Thanks in support of sharing such a nice thought, paragraph is good, thats why
    i have read it completely


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

%d bloggers like this: