Introducing "Azimuth" for Maemo

Here is a small project I've been working on in my copious spare time.

The Nokia N900 is a great device but I felt kinda frustrated not being able to publish my location to my contacts in a way that Empathy can display it. Good news is the N900 uses Telepathy so that's something that can easily be fixed.

Here comes Azimuth a small daemon publishing your location using the Telepathy Location interface. The interface is only implemented in telepathy-gabble at the moment[1]. That means that your Jabber server has to support Pubsub to be able to publish. Unfortunately, Google Talk servers don't[2]; see the Telepathy FAQ for details.

I just uploaded the first version of Azimuth to Extras-devel (thanks Bigon for the package!) so you should be able to easily install it. This is my first Maemo application so I kept it pretty simple for now. Azimuth doesn't enable the GPS itself so you have to start another application using the GPS (as OVI Maps or Map Buddy for example) to publish.

So, if you want to test it you have to:

  • Install Azimuth
  • Reboot your N900 (the package doesn't start it automatically; suggestions about how to fix that properly are welcome[3]).
  • Set your IM presence to online
  • Start an application making use of the GPS

Be aware that once installed Azimuth will always publish your location when an application is using the GPS and your IM accounts are connected!

Plans for future versions include:

  • Add UI (probably a settings widget) to easily enable/disable publishing.
  • Allow Azimuth to poke the GPS for a position every $N minutes/hours
  • Add an option to reduce location accuracy for privacy reasons.
  • Allow using the Cell to get a position?
  • If you have more artistic skills than I have, an icon would be much appreciated.

If you experience issues or have nice ideas for improvements feel free to mail me. You can also use the Garage page if you feel brave enough. :)

Empathy displaying location using libchamplain


[1] XEP-0080 if you're into XMPP

[2] Google, I hate you for this

[3] The trick is to start the daemon as user and not root