Adjusting the rendering of OSM maps on Garmin Etrex 10

I’m sure that this must have been described before but I have explored OSM exhaustively for how to do this simple adjustment, but not found a solution?

Specifically I’d like to enhance the gpx track as it is produced during a hike, as it ‘disappears’ when passing through woodland trees.

This would allow me to enhance other attributes of the B & W display on Etrex10.

Can anyone point me in the right direction with a link maybe? As an enthusiastic beginner this would be much appreciated.

I don’t understand what you’re asking.

When you talk about rendering a GPS track, are you wishing to see it better on your Etrex or on some other OSM derived map?

If your track ‘disappears’ when passing through trees, how does that relate to OSM? It sounds like a limitation of your GPS receiver. In any case, GPS ‘tracks’ are not ordinarily visible on OSM maps unless you’re using an editor that displays them.

Can you clarify your issue?

Thank you very much for answering my query; I do see where you are coming from so my apologies and I will clarify further.

The B&W OSM maps that I have successfully installed on my Etrex 10 (one at a time of course as gmapbmap.img) are very useful indeed when hiking but they display woodland as ‘many black tree characters’ whose dense contrast make it difficult to see the dotted line track being generated by the GPS. I wanted to alter either the trees to a paler density and/or replace them with say smaller or less dense trees so that I could see the track more clearly. I can reduce the contrast of the trees using the GPS display settings but that also reduces the contrast of the track. Therefore I’m seeking to alter the relative contrast of GPS track versus the map contrast.

On a more general note I wanted to use this problem as a learning opportunity to find out how to modify the default settings of the map contents eg can the trees be displayed differently; paler for instance?

My limited knowledge so far allows me to use mkgmap within a batch file environment as kindly suggested by liegfietser. Therefore is it possible to add a line of code to the batch file to achieve a variation in the default settings - is this called changing the ‘style’?

Specifically could you write me a line of code that would alter a typical OSM map attribute and indicate where in the java batch file it should be inserted? Also where I can find a list of other attribute settings to practice with further.

My apologies if this comes over as verbose but I really want to be clear at this stage so that I can open up this project further.

Many thanks for your input from an enthusiastic ‘beginner’.

First of all, let me say that each Garmin unit is different and handles OSM data differently. I am not familiar with the Etrex series so my answers necessarily will be generic. Plus, I’m pretty much a novice mkgmap user myself and don’t have perfect understanding of how this all works together. You’ll also find that the online help, while there’s quite a bit of it, is not organized in any way and makes it difficult to figure out how to do things.

The changes in rendering you wish to make cannot be done in the batch file AFAIK. That said, there are many command line options for mkgmap that do have an effect on rendering. But I have a few more questions first: how do those same woods/trees areas appear in Basecamp or Mapsource? Are the trees actually an area, that is, a polygon, in OSM?

From what you’ve said, I think what you’re asking about is how to modify the “style” of the woods/trees rendering on your unit. A polygon, or any other OSM object, is rendered according to rules found in a style file and icons or definitions found in a typ file. To make matters more confusing some icons and styles are built-in to the Garmin unit itself and live in its firmware (to any readers that knows more about this than me, please don’t hesitate to contribute). Let me give you an example:

The polygon I defined for natural=wood in my maps is a medium green color which has a hexadecimal code of 0x5000. That definition is contained in a TYP file, whose name and location you specify on the command line, that mkgmap will use as it evaluates the data in your OSM file. The location of the style rules are also specified on the command line that invokes mkgmap. As mkgmap compiles your map it looks at each object and scans through the style file for, in this case, polygons, until it either finds a match or hits the end of the list. The appropriate style directive in my polygon style file is this:

natural=wood [0x050 resolution 18]

Which means, when mkgmap hits an object having the key/value natural=wood it must use the polygon defined with hex code 0x5000 and to display that polygon at resolution 18 and higher. Next mkgmap looks in the TYP file for a match of the hex code. If it finds that hex code it knows how to render that polygon, be it blue or green or crosshatched, whatever. There are other tricky details about polygons that I’m not going to discuss here but suffice to say for now that what you want see on your Garmin display is controlled in this way. There are about 50 polygon definitions in the TYP file I’ve been working on for the past year and all of them have a corresponding style directive. For example, there is one for scrub, one for grassland, one for marsh, etc. Here are a few more:

natural=bay [0x3c00 resolution 18]
natural=beach | natural=sand [0x2e resolution 20]
natural=glacier [0x4d resolution 14]
natural=grassland [0x10b10 resolution 20]
natural=heath [0x2b resolution 20]
natural=marsh [0x51 resolution 20]
natural=mud [0x2f00 resolution 20]
natural=scrub [0x4f resolution 20]
natural=strait [0x3c00 resolution 18]

If you want to change the way these polygons (areas) display you must alter the TYP file accordingly. I use a program called TYPViewer for this. It’s far from perfect but it’s free and it does the job.

All other OSM objects are dealt with in a similar manner. We use several style files: they’re named “points” (for POIs), another is “lines” (for ways), one named “polygons” (as in our discussion) and a few others that I won’t discuss here. Each has an icon or other representation in my TYP file and each has a style rule or directive that controls mkgmap’s actions when compiling a map.

This is a brief intro to what you will need to know if you want to pursue creating your own maps for your Etrex. I have a Montana which is a fairly new GPS having an advanced display that handles colors quite well. I have no idea how to help you with your b&w display ut this might help get you started. Note too that I’ve glossed over many details and I am not an expert. In fact, I just solved a problem with displaying landuse=residential polygons that had me hung up for a few weeks. Sometimes you will make a change in the style file that has ripple effects down the line, sometimes the Garmin firmware will screw you up.

Look over the style manual and options definitions on the mkgmap site at http://www.mkgmap.org.uk/doc/index.html if you haven’t already. Sample style files come along with every download of the mkgmap package. They will be in this subfolder “\mkgmap\examples\styles\default” in the zipped package.

For reference, here is the command line I use for my Thailand maps that is run from a batch file: (By the way, I keep all my custom styles and TYP file in my Dropbox so they’re always backed up)

java -Xmx1000m -jar mkgmap.jar --latin1 --family-id=24983 --name-tag-list=name:en,int_name,name --gmapsupp --description=“Lanna” --country-name=THAILAND --country-abbr=THA --index --location-autofill=“is_in,nearest” --copyright-message=“ODbL by OSM contributors” --link-pois-to-ways --add-pois-to-areas --merge-lines --route --drive-on=left --net --housenumbers --x-split-name-index --check-roundabouts --check-roundabout-flares --process-destination --process-exits --poi-address --precomp-sea=“C:\Users\Dave_2\Downloads\Maps\sea.zip” --style-file=“C:\Users\Dave_2\Dropbox\Mapping\DJS_styles” --generate-sea=land-tag=natural=background “C:\Users\Dave_2\Downloads\Maps\Lanna.osm” “C:\Users\Dave_2\Dropbox\Mapping\24983djs.TYP”

I hope this helps. YMMV

Thanks Dave for this quick reply; there’s loads here for me to think about. It’s obviously more complicated than I’d hoped. Am on the road today so will not be able to reply for a bit. Have noticed that playing around with the contrast and changing the angle of viewing with full illumination shows tracks up better. More blue than black which surprised me on a ‘monochrome’ screen.