Version 1.1

These files will hopefully allow you to have fully automated Pocket Queries coming in via email and processed into your file format of choice.

Table of Contents:


The formats this script can output to:

GeoNiche - requires EasyNiche, see GeoNiche
CacheMate - requires cmconvert, see CacheMate
EarthComber - requires EasyNiche, see EarthComber
Google Earth - requires EasyNiche, see Google Earth

GPSBabel is also required, see GPSBabel.


First off, what do these scripts do? Basically they take any Pocket Query I have set up on and convert them into multiple file formats. This is done automatically by using procmail and a set of scripts. So at any time, the latest data files are available for me to sync/copy/whatever to my Treo 680 for use with my Bluetooth Holux 236 GPS unit and GeoNiche software. As you can see in the formats section, I also utilize other software to go along with geocaching to preparation for going out to field use.

Right now there are some immediate admissions to make.. This program relies heavily on GeoNiche, in particular its excellent command-line (and GUI) converter EasyNiche. If you don't own GeoNiche, you can't convert to EarthComber or Google Earth with this script as it is. If you really need this functionality, I could help you out, but you'll want to read the caveats sections in those two particular format areas.

Also need to mention that you will need to edit the geocache_regen script to match your areas to get the most out of the scripts.. However, if you don't, the script should create data files for it anyway, albeit with some generic defaults.

What I am doing is combining three different Pocket Queries into one master GPX file and using GPSBabel to remove the duplicates to create a nice master GPX file.  Then I use data from a Pocket Query for a 30 mile radius around my house for my local caches, then I also create data from Pocket Queries for the other areas I travel to. The end result is that I have several data files output which allows me some fairly fine grained control over what data I have loaded on my Treo, but the data is all available to me at any time if I'd like to load it from my SD card.

This script basically parses whatever Pocket Query that goes into it and outputs whatever formats you want and are able to do. With GeoNiche and EasyNiche combined, I am able to mark the waypoints in different colours, different routes (to make it easy to remove the caches later to save ram), etc. I wish I could also do this with Google Earth but I have yet to get that to work. As you look through the script, it's pretty easy to identify where I set the route name and colors. Also for each cache you can determine if you want to use the categories or a set category. As with most things you'll see here, most of this applies to GeoNiche more than any other format.

Basically you grab the files and move the files in bin to an appropriate directory, and add the procmailrc rule to your existing .procmailrc, or create a new one using it. You'll need to edit the files in bin if you need to change anything the script does or the location of the scripts or output files. And you will need to do so.. I have tried to make this as painless as possible, but it's still going to be complicated. Sorry. If you want to process a handful of simple Pocket Queries without too much data manipulation, these scripts can be edited to do that very easily. However anything more complicated (such as what I do to filter out the results) are going to require some work.

The original pieces of these scripts came from and I thank Tyler Akins for making the scripts available. Since I have worked on the original scripts heavily in order to meet my personal needs, I have decided to "publish" them for others to see.


How I actually use the data


For GeoNiche, I use a script which copies the files to my SD card in a few separate directories for import into its "Sharing" functionality. You can read up on how this works on the GeoNiche website, however it goes pretty simple. I run the script to sync the data, I load the data off the SD card, I merge it into ram. At this point, the caches and logs are updated, as well as any specifics on the caches. An example of this would be that the waypoint markers are colored to match my queries, such as my DNF's are marked dark cyan, my Todo list is cyan, normal local caches are white, disabled caches are red, my finds are marked green, etc.. Right now EasyNiche doesn't allow you to set if the cache is checked or unchecked (to show on the map) but at least I can glance and see if a cache is red and know it's likely disabled currently. One thing to note about GeoNiche; don't bother to edit the Notes as they'll get over-written next merge. Hopefully a future version of GeoNiche will address this by having separate Notes and Cache Logs.


It's been 4-5 months since I used CacheMate, so you'll have to look on the website on how to import data until I update this section. I recall it was pretty easy to do. :) CacheMate is pretty popular, so I've left the functionality into the script for others to use.

Earth Comber

Using the Earth Comber Updater you can upload your own GPX files to the EarthComber website, move them to groups from your Inbox, and organize them however you like. Then the files get synced back as "My Groups". The details on how you do this are all on the EarthComber website, but here are some examples.. Importing GPX, JPG of workflow to move spots to Groups, the FAQ and Quick Start Guide.

Google Earth

The simplest way to describe how to use the Google Earth data is to use the "Open" functionality within Google Earth, rename the waypoints folder that comes in, and move it into your Places. You can change the color or icon by right-clicking on the main folder, or for each cache if you like. However, the best way I've found to update the data is to delete the whole "folder" then re-import it, so extensive modification to the cache info is a waste of time for me, as next time I update the modifications are lost.


Basically this just outputs HTML to a folder, so I suggest if you're using apache, you make this somewhere within your webroot. If you're using it locally or for Plucker usage.

Format Details


GeoNiche is the excellent Palm OS software available from which allows you to use your GPS-enabled or Bluetooth-capable Palm as an excellent GPS unit. The capabilities are extensive, you must read the webpage to appreciate all of the available features. This is my top pick for Geocaching.

The purchased copy of GeoNiche contains an excellent Java program called EasyNiche which allows you to pull data from directly, but more than that, it allows you to process files on the command line, which we utilize heavily to process the output files in this script. Unfortunately, as you can see in the section at the top, nearly all of the formats in this script rely on EasyNiche. I might see in the future if there is a way to lessen this dependancy, but I'll explain in the individual sections why they need EasyNiche.

EasyNiche must be installed in the $GPSHOME/sw/ folder. I cannot attach it to this zip for obvious reasons; it is part of the paid GeoNiche distribution. Simply copying the EasyNiche.jar file into this folder will work, assuming you have a Java Runtime Environment.


CacheMate is an excellent GPS and Geocaching program available from which comes at a very reasonable price, albiet not my personal choice for Geocaching. However, Cachemate is an excellent choice if you are wanting to go paperless without using the Palm itself as the GPS unit.

Conversion into Cachemate format requires cmconvert which is a free utility available here.


EarthComber is a free mapping program with Points of Interest, excellent maps, textual directions, location database, etc.. I can't say enough good things about EarthComber. You can upload your own Points of Interest to the EarthComber website via EarthComber's built in "Spots" functionality that allows you to mark places on the map, but also allows you to upload your own GPX files using the Earth Comber Updater used to download the maps and data files. Using this, I have all of my Geocache information in EarthComber ready for filtering and navigating. While GeoNiche is an excellent program, if I'm navigating from cache-to-cache, EarthComber lets me figure out which street is best to park on or how to get somewhere.

Wanted to note here that my Geocaching data on the EarthComber website is private data and shared with noone, so I do not feel this violates any of their policies. I hope this position is accurate, as I find EarthComber an excellent resource for Geocaching.

One caveat; when uploading GPX files to the EarthComber website, if I do it from the GPX files which come in with the Pocket Query the cache name is actually the waypoint, so instead of seeing a cache's "friendly name" on the EarthComber application (and webpages) I see its waypoint name. If I process the file through EasyNiche, this is corrected. I'm not sure of the exact reasons behind this as I haven't compared the XML, it "just works" for me after. Unfortunately this means that EarthComber depends on GeoNiche to be processed. If I find a way around this, I'll happily fix it as currently EasyNiche from GeoNiche is ran twice in order to process for EarthComber and that process is a little slow. Also, it'd be nice for people wanting EarthComber (and Google Earth) processing who don't own GeoNiche.

Google Earth

Google Earth is an excellent road/satellite/geography application I hope you're already aware of.. :) I use it for referencing where a new cache is, and also for planning "cache routes" where I want to take a run through town and pick up some new caches. If you haven't used it yet, get it..

Similar to the caveat in the EarthComber section, if I convert the GPX files to KML directly with gpsbabel, the cache names are shown as the "unfriendly" waypoint name, so I filter through EasyNiche to fix this. Hopefully I can work around this sometime, just to save myself some time in processing.


GPX2HTML is a neat php script which creates an indexed webpage of the caches in the particular GPX file. I actually don't use it much, but it could be handy for some folks.


Last, but certainly not least, is GPSBabel which allows me to combine, filter, and format some of the GPX files into different areas, excluding some caches, only keeping caches within a certain radius, etc..


You can download the files here.


Have fun, and please try to debug things if you have trouble, but failing that, you can feel free to contact me via my profile page.

You are visitor number 5997

Click here to register.