1. Skip to content

Mon, 09 Feb 2009 12:00am

Tech | GPS Development on the Nokia N810

Tech | GPS Development on the Nokia N810

Despite calling myself an "Artist and Technologist", most of my blogging is actually about my arts work. So to make a change I'm going to talk tech for a bit.

I got hold of a Nokia N810 at the weekend. This is a wifi-enabled Internet tablet that runs a version of Linux and contains a GPS receiver. It struck me as a perfect platform for developing location-based services on (such as SoundMappr). I'm already doing iPhone development and, despite being a fantastic platform, all software has to be released through the iTunes store. This makes it somewhat cumbersome when developing software for release to an Open Source community.

What's more, I'm ultimately more interested in developing *web-based* GPS aware applications (not dedicated software programs) and the N810 comes with a decent Mozilla browser, as well as having the potential to host a full web development environment.

So, after unpacking the machine I went about setting up my development environment. First, I found a version of the Apache 2 web server that could be installed on it, then the PHP5 programming language, then the sqlite database system and finally a few editing tools to allow me to write programs. It works great! A complete web-application development system that fits in my pocket.

Next was to get to grips with reading data from the GPS receiver. GPS on Linux was new to me, but I found that the standard way of doing it was to install a GPSd, or "GPS daemon", that communicates with the GPS hardware and passes location data to the applications that need it. This was easy enough to do, I installed the "Navit" system on the N810 which automatically starts the GPSd when you run it. I've since found that other, better, GPSd software is available, but I'll stick with what I know works for now.

Finally was the task of getting the PHP programming language reading data from the GPSd. A search of the internet found a script entitled, appropriately enough, "php-gpsd" which did exactly that. A little bt of fiddling later and I was able to write a web page that ran on the N810 and displayed the current location of the device via the GPS reading.

It all works seamlessly and everything was available as free downloads. My next job is to write a version of my SoundMap player running in a web environment on the N810. I'll naturally be releasing the software as Open Source when I've finished it...

Author: Sean Clark