Geocaching tricks

The abilty to get pocket queries from Geocaching.com has opened new doors in planning hunts. Here we'll try to give examples of some of the clever tricks you can play with GPSBabel.
  • Alan Curry has good pages for Geocachers using GPSBabel that include nice tutorials for caching along a route..
  • I want to find caches that cachers A and B have not done that cacher C has found.

    gpsbabel -i gpx -f foundbyc.gpx -f unfoundbya.gpx -f unfoundbyb.gpx -x duplicate,shortname,all -o gpx -F yourlist.gpx

    Translation: We start with Cs list of finds, add As unfound and Bs unfound and then throw out anything thta's in the list more than once, leaving only things found by C and found by neither A nor B.

  • We have a group hunt planned this weekend and would like to hunt only caches that none of us have found.

    gpsbabel -i gpx -f yourarea.gpx -i gpx -f myfinds.gpx -i gpx -f myfinds.gpx -i gpx -f hisfinds.gpx -i gpx -f hisfinds.gpx -i gpx -f herfinds.gpx -i gpx -f herfinds.gpx -x duplicate,shortname,all -o gpx -F todolist.gpx

    Translation: Start with a PQ of the entire area. Merge the 'found' cache lists from each cacher on the hunt. Discard anything that appears on the list more than once. Obviously, if the PQs aren't for exactly the same area/cache type, additional filtering may be needed.

  • I have a Pocket Query and another GPX file, which happens to be exported from Mapsource, but it the important part is it has the GC waypoint ID in the <name> tag. I want to filter the pocket query based on the list of waypoints in the second file. Only points that appear in both files should be included.

    gpsbabel -i gpx -f pq.gpx -f filter.gpx -f filter.gpx -x duplicate,shortname,all -f pq.gpx -x duplicate,shortname,all -o gpx -F out.gpx

    Translation: Start with the PQ. Merge the second set twice. Toss anything that's duplicated. This leaves only the points that appear only in the PQ. Reread the PQ. Toss anything that's duplicated. This leaves only the points that appear in the PQ and the filter.

  • I want to ignore some caches from a PQ that I don't intend to hunt.

    Create a list of caches to ignore in the form of a CSV file, then use the duplicate filter to suppress them. The coordinates can be bogus if you tell the duplicate filter to toss based on shortname instead of coordinates.
    Just create a list of caches to ignore:
    0, 0, GCHT59
    0, 0, GCJTTK
    Then tell GPSBabel to suppress all occurrences of anything that's duplicated thusly:
    gpsbabel -i gpx -f MyPQ.gpx -i csv -f ignorelist -x duplicate,shortname,all -o gpx -F MyPQToHunt.gpx