Messing Around With GSAK

GSAK stands for Geocaching Swiss Army Knife, which is a popular tool used for offline manipulation of geocache data. It's an extremely powerful tool, and is available from the GSAK website. In particular, it has a powerful (though somewhat cryptic) macro facility which lets you automate a number of quite complex tasks. I won't go into any of the basics of how to use it, as there are many excellent descriptions elsewhere. Instead I'm just using this page to capture some bits and pieces that I've found useful.

Filtering Out Moveable Caches

The (commonly referred to as GCA) website is an alternative cache listing site for the Australian community, and it supports a number of cache types which aren't available on One of these is the Moveable Cache, which is typically picked up by the finder, then placed in a new location. The collection is recorded using a "Found it" log, and the replacement by a "Note" log with attached coordinates.

This is all fine and well, but when you dump these caches to your GPS, there's no way to know if the cache has just been placed, or has been picked up and is in transit to another location. You can read through the latest logs for each cache, but this is tedious, particularly in an area where there are a lot of moveables.

To filter out a lot of the moveables that are probably in transit, I wrote a quick and dirty GSAK macro, with the main element being the following filter statement:

MFILTER Where=CacheType = 'O' AND Code like 'GA%' AND Name not like 'B&W %' AND Status = 'A' AND Code in (select p from (select lParent p, lLat lat, count(lParent) cnt from logs, (select lParent par, max(lDate) date from logs where lParent like 'GA%' AND lType = 'Found it' OR lType = 'Note' group by lParent) logs where lparent=par AND lDate=date group by lParent) where cnt>1 OR lat = '')

This selects all of the "probably in transit" moveable caches, which I've defined as:

  •  It looks like a moveable (it has a GA code, is of type "Other", and it doesn't start with "B&W")
  •  The last log didn't include coordinates (only looking at logs of type "Found it" and "Noted")

There's the case where there were more than one log on the last day, but rather than try and resolve these cases, I've just thrown them into the "probably in transit" basket.

Once you filter these out, it's up to you what you do with them. Personally I just mark them as disabled so that they're left out when I export to GPS.

"Unloved" Cache Finds

An "unloved" or "forgotten" cache is one which hasn't been found for a while, say 12 months. Sometimes you may have a challenge to find one of these caches (for example here), and it may be useful to search your logs for such cases.

A cacher called "paleolith" has written a comprehensive description of how you can generate a report of your forgotten cache finds.

Previous page: Travel Bugs and Geocoins
Next page: Misc Links