Welcome to the future

June 23, 2008

Few things are cooler than being able to work on interesting new stuff. Other people immediately building wild things on top of that work, however, is even cooler.

So, I worked briefly in the GUPnP project, making bindings for Vala. Before I managed to blog about it (hey, midsummer and all…) Zeeshan had ported gupnp-media-server to Vala and Jorn Baayen had built gupnp-media-renderer!

so… what does that mean for people who do not speak UPnP fluently? It means that I just used my N810 Mediastreamer to select the song Måndagsbarn by Veronica Maggio (a flac file on my laptop) for playing on my living room stereo set. Pretty cool, eh?

Now guess how many configuration steps were needed for all three devices to work together?  None, it just worked. Very cool.

Maybe it’s not comparable to the rocket backpack we’re all waiting for and maybe I’m just easy to impress, but I still found Ross‘ response to all this very appropriate: “Welcome to the future!”

PS: Did I mention it also works for video and images? Well, it does!

PS2: Some of the stuff mentioned here has not been released yet and may still change (at least gupnp-media-renderer is in svn only). The GUPnP framework on the other hand is ready and stable: See the documentation for API reference and tutorials.

In other news, Tampere is a host city candidate for GUADEC+Akademy 2009. Go Tampere!

(old) news

May 8, 2008

Forgotten this blogging thing altogether… well, here goes:

Geoclue 0.11

Geoclue 0.11 was released. I’m fairly satisfied with it and would love
comments from application developers. Some highlights:

  • Refined API. Easier to use and includes some nice additions like async-method calls (no more freezing UIs).
  • Usable Master provider:
    Geoclue Master provides Address and Position data using the best available geoclue provider. Master may not be industrial quality yet, but it is IMO usable (testing is more than welcome).
    See documentation for usage examples.
  • A couple of new providers:
    Gsmloc — uses a cell phone, libgammu and http://gsmloc.org to get a position. No signals though.
    Localnet — uses router MAC address and a local file to get an address. Excellent for often visited places.

Get Geoclue as a tar-ball or via git:

git clone git://anongit.freedesktop.org/git/geoclue

OpenedHand is hiring

Several open positions: We’re looking for people with kernel, OpenEmbedded, GTK+, Clutter, UI design and graphic design skills (not necessarily all in the same person). Take a look.

Guadec 2008

Looks like I will be in Guadec talking about Geoclue! This will be joint operation with Iain and Bergie, and we’ll cover Geoclue, Gypsy and location-aware applications in general. I’m really looking forward to the whole event: I’ve wanted to go for a couple of years, but never really had the chance.

Kesäkoodi is a “Google Summer of Code”-like program for Finnish students (university and univ. of applied science).  Bergie just reminded me that the project plan deadline is Feb 20th — that’s next week.

The project areas are not defined beforehand, but some “areas of special interest” are mentioned:

  1. social media
  2. location and context sensitivity
  3. mobile apps
  4. system management
  5. operating systems

About #2 and #3: I’ve got the feeling this summer would be a good time to work on Geoclue. We’ll have the new API finished Real Soon Now™  (promise), and there should be lots more developer interest when we reach summer.

If you’re studying in Finland, have some coding skills and are interested in a location-related programming project, stop by #geoclue irc channel (on irc.gimp.org) or ping me on jabber. Do stop by even if you don’t have a specific idea — maybe we can figure something out…

I failed

February 6, 2008

After getting feedback from osso-gpsd maintainer and some more testing, I think that I was probably seeing a placebo effect with the gpsd leap-year fix — the patch does fix the leap-year bug but I  believe the fix time improvements were statistical anomalies and placebo. Bruises the ego to admit I was fooled, but that does fit the evidence best.

Not only that but in my attempt to be a responsible (non-maintainer) packager I’ve also done a mistake: I made my testing package version 1.0-25-jku0 to show that it’s not the original 1.0-25 version. This installs just fine, but later on upgrading will fail because osso-software-version depends on the exact version 1.0-25 :(

I strongly suggest everyone who installed my testing package to install version 1.0-25 from the same place (I don’t think it’s actually available from anywhere official). Like the version number implies, this is the non-patched version so your GPS time will be a day off until March. Really sorry for the trouble folks and thanks to Owen Williams for notifying me about the problem.

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.

I’ve been trying to test the GPS on my newly-arrived N810. So far I have not succeeded in getting a fix from my window. Time-To-First-Fix while walking outside (with very good view of the sky) has been 5-10 minutes.

This is not what I had been hoping for. It seems I’ll still be carrying an external GPS with me, at least sometimes — just like like I have to carry a camera with me if I want to take half decent photos, even though my phone has two cameras in it. Good gadgets seem to be difficult to make. Good convergence gadgets are still, in my opinion, mostly an unproven theory.

Otherwise I’m very satisfied with the device: it feels really solid, and I’m still amazed how they fit the keyboard into a device smaller than the N800.

Not SiRF III? 

Anyway, about the GPS: There were rumours around the internet that the chipset is SiRF III, but this does not seem to be the case. Internettablettalk forum member ag2 found this string in /usr/sbin/gpsdriver:


GPS5300 is a gps-on-a-chip for OMAP based phones from Texas Instruments. From their product brochure (emphasis mine):

The GPS5300 NaviLink 4.0 solution enables a rapid time to first fix (TTFF) from weak satellite signals… .


  • Can someone confirm the chipset details?
  • Assuming we do have a GPS5300 on the tablets, does “rapid” have an alternate meaning in Dallas? Maybe it’s just that everything is bigger there, even time-to-first-fix.

cool geoinfo stuff going on

November 13, 2007

Several interesting news reached my sensory organs today:

Gypsy released
Iain Holmes just released Gypsy, a more elegant GPS daemon for a more civilized time. Full API documentation, a tutorial and even experimental packages are available (shocking, I know).
Gypsy is a good match for mobile devices if you ask me, and to that end I’ve tested it with N800 and a Nokia LD-3W bluetooth GPS — works fine.

Experimental user position support for Pidgin
I haven’t tested this proof-of-concept yet, but it is interesting: Geoposition sharing for pidgin on maemo. Doesn’t use geoclue but doing so might save several hundred lines of code…

Jaiku client released with source code
Henrik Hedberg released Mauku 0.3 (Jaiku client for Maemo) a few days ago. The source code is now available at Garage. Hmm, I smell a small geoclue project here… stay tuned.