linux tools for geocaching

Hmm, I seem to have turned Mike Beattie on to geocaching. I've been meaning for a while to describe my setup for geocaching using linux, so here goes.

First you need a tool to download cache data. I've found two packages, the one I settled on, and which currently has a deb in Incoming, is geotoad. This lets me query for caches of any type nearby to whereever I am. It can be used interactively, as well as cronned, and it does smart caching to avoid hitting the website too much, so I have a daily cron job that updates a html file and a gpx format dump of all caches within 50 miles of my last recorded locaton. Of course that's put into svn and updated along with the rest of my homedir, so I have it available on my laptop for reference. Note that some uses of geotoad may violate the TOS of the geocaching.com especially if you're not a paying user; caveat emptor.

(I might write later about my opinions of the plusses and minus of having a centralized, for-profit site for geocaching, as well as possible FOAF-like alternatives or enhancements, but that's a different article.)

Anyway, once you've got the cache data, you might want to load it up into the gps or otherwise transform it into any of the seemingly hundreds of different formats. Here gpsbabel is king. Due to a bug in the linux driver for my usb to serial converter, I currently have to use a real serial port (on my desktop machine) to upload cache info to my gps, which can be annoying.

Getting to the cache often involves road navigation, and for this I use gpsdrive. This can display caches (coverted to its own format via gpsbabel), as well as road maps, and with gpsd can put you on the map. The only downside is that the maps themselves are not vector format, but are just images downloaded from online map services. There are some handy scripts that you can use to download very high detail maps of everywhere within (say) 500 miles of your current location, though some uses of these scripts may violate the TOS of varios websites (again..).

I've also recently began to play with using roadmap, which uses vector maps which are freely available based on data from the US Census Bureau. A debian package has been ITPed but not uploaded yet. The great thing about it is you can do address lookups, and it can read out street names as you drive around and has basic support for routes. Still lacking is support for giving on the fly directions to your destination. And its waypoint support is not ideal for geocaching since it's limited to points along roads.

Once I get near to the cache I typically put the laptop away and do the hike with just my gps. Unless water or very strenuous activity is involved I do take the laptop along in my hackpack so I can decrypt hints and make notes. I've written about using hnb for notes before. One final tool that I'm rather amused to be using on a regular basis again now that I'm geocaching is rot13.