Over the last few weeks I’ve been engaged in some technological explorations relating to the presentation of geocaches in various mapping tools – see Memory-Map and Back to BaseCamp – and my success in doing so has lead to a measure of confidence in such things. I probably understand such things at a level well above the average geocacher right now. So it seemed to be a reasonable leap to see whether I could figure out how to extend this work into the display of various attributes on the Garmin Montana. It proved to be a painful exercise. I eventually settled for something that’s better than my previous attempt, but not as good as I wanted.

Not long after I got the Garmin Montana (the first one, which I ultimately lost down a drain in Letchworth) I explored changing the icons to make them more visible against the collection of fairly busy and colourful maps on the device. I was happy with the results (seeĀ Custom Icons) at that point, but a couple of things still irritated me about it.

One irritation was the inability to tell whether a puzzle (or multi, letterbox or wherigo) was solved already of not. Another was the inability to tell which caches are disabled. I regularly spend ages at a site looking for a cache before checking the logs and discovering that the cache has been disabled for some length of time. Sometimes they are there, so I still want them on the GPSr, but I like to know when I start searching that it might not be there.

I tried to have a look at whether it was possible to use the fairly complex schemes of custom icons I’ve implemented in Memory-Map and BaseCamp. What followed was a very frustrating dive into some fairly dark recesses of the internet in an ultimately fruitless search for a way of enhancing what I’d done. After much, pain I found a post on a forum site in which a well-known London cacher had stressed that on the Montana your options are very limited. He suggested the best thing to do, and that’s what I’ve implemented. What he confirmed was :

  • Custom icons on the Montana can only be applied to waypoints, not to geocaches
  • The Montana relies on a fixed relationship between cache type and icon which is embedded in the firmware somewhere, not in a configuration file – the <sym> tag in a GPX file is irrelevant because the Montana doesn’t use it
  • The list of acceptable names for geocache icons is quite limited – it doesn’t cover the full range of geocache types at all, presumably because many of them are rarely available in practice
  • If you provide a Montana with a cache type it doesn’t understand then it defaults to the bucket “Geocache” icon

What this means in practice is that it can’t even represent every single cache type, never mind having variations relating to status. You’ve got to get a bit creative with it. And the way to implement your creativity is to amend the apparent cache type in GSAK before downloading to the device. I guess I kind of knew this already, and had previously been using the “Benchmark” cache type to highlight solved puzzles, and the like. I’d been doing this manually, by changing attributes in GSAK one-by-one. Tedious, and prone to error.

So I wrote a macro for GSAK that changes the apparent cache type as follows, and then changed the custom icons on the Montana to reflect what I’m actually using them for. It’s very bespoke, but it does what I want, or at least the closest I’m going to get to it :

  • Cache In Trash Out Event.bmp -> Used to indicate “owned” caches, represented by something that looks like a star in a green circle
  • Event Cache.bmp -> Used for all event types (CITO, Event, Mega, Giga, GPS Maze) – there’s never enough of them for me to care what type of event each one is
  • Webcam Cache.bmp -> Used to identify disabled and archived caches – there’s so few webcams left that there’s no point in giving them their own icon
  • Virtual Cache.bmp -> Used for both virtuals and webcams
  • Mega-Event Cache.bmp -> Used to highlight caches that have corrected coordinates, represented by an icon that looks like a piece of a jigsaw puzzle
  • All other icons (Trad, Multi, Wherigo, Unknown, Found, Letterbox, Earthcache) are used to represent those cache types where the cache is not corrected, owned or disabled
  • Geocache.bmp -> Used for anything else, so all the “funny” cache types like Lab Caches, Groundspeak HQ, Lost and Found Events, and so on

In the instances where a single icon is being used to represent more than one type of cache, I have just added the cache type onto the end of the name. It’s rarely a thing of significance, to be honest.

If Garmin ever changes the firmware to allow more of the standard geocache types then I’ll revise this scheme, but it doesn’t seem to be high on their priority list.

To implement this, I created yet another pack of icons (shown above), and two macros for GSAK. One macro sets the cache type to the scheme above, recording the original settings into two of the “User Data” fields. The second macro restores the original settings from User Data so that the GSAK database is as it was previously. This is necessary because the GSAK menu option to download to a Montana doesn’t allow any configuration. I now have assumed this is because any configuration wouldn’t be implemented properly on the device.

The little bits of magenta in the icons are there because the Montana translates pure magenta (RGB 255:0:255 or #ff00ff) into “transparent”, so they on the display they look a little neater.

So to execute this method, install the pack of icons onto the \Garmin\CustomSymbols folder of the Montana’s onboard storage (not onto any installed microSD card). In GSAK, run the SetSymbols macro, then download caches to the GPSr using the Send Waypoints, and finally run the RestoreSymbols macro.