Routable garmin maps

From OpenStreetMap Wiki
Jump to navigation Jump to search

Experimental routable garmin maps for Germany, Benelux, UK, Ireland, France, Spain, Portugal, Switzerland, Austria & Italy generated using cGPSmapper are now available at [1]. (Site seems not to offer the maps anymore) They are currently available only as MapSource Installers. In the future they will be updated periodically. See discussion at this forum thread

See also mkgmap/routing for generating routable maps using mkgmap.

How to install

How to get the routable maps on your garmin device:


To give some feedback please use the discussion site.


Here you can report bugs:


some screenshots of Germany routable OSM on my Quest

Self-Created Maps

This is a description of a fully automated process from fetching OSM from openstreetmap over creating mp and img to having a routable map on a Garmin device. It may seem lengthy at first, but it is intended that new users understand it at first sight. And each step is more or less trivial.

The description is for Windows XP. Linux users will probably not have too much trouble modifying the workflow.

Part I: Required software

- GroundTruth
- mkgmap
- Sendmap
- osm2mp (if you do not know what subversion is use )
- ActivePerl
(14 MB for the first four plus 82 MB for Perl.) ActivePerl needs to be installed, the other software can just be unzipped.

Part II: Create Folders

To have the batch file at the end of this post running right away, create a folder with a name like "MapManager" (anywhere on your HD) In this folder create subfolders
- GroundTruth
- MKGMap
- Sendmap
and unzip the programs to their corresponding folder.

Part III: Completing Perl

- Go to C:\Perl\bin
- Start ppm.bat
- select "template-toolkit" for adding
- add "template-toolkit" to your perl installation

Part IV: Batch file for the whole process

In "MapManager" create a batch file "ManageMaps.bat" that looks like

set NAME=Chicago
GroundTruth\groundtruth getdata -bu=""
copy output.osm MAPS\%NAME%\%NAME%.osm
del output.osm
cd OSM2MP --nocodepage ..\MAPS\%NAME%\%NAME%.osm > ..\MAPS\%NAME%\
cd ..\MKGMap
java -jar -Xmx384m -enableassertions mkgmap.jar --route --latin1 ..\MAPS\%NAME%\
cd ..
copy MKGMap\63240001.img MAPS\%NAME%\%NAME%.img
del MKGMap\63240001.img
Sendmap\sendmap20 MAPS\%NAME%\%NAME%.img
echo DONE

Part V: Choose a part of the world map

- go to
- select a viewport you want to end up on your Garmin
- click Permalink on the lower right of the page
- select the URL and press Ctrl-C

Part VI: Modify the batch file, start the process, wait

Modify the first line with a name describing your openstreetmap view (i.e. replace "Chicago" with the name of the region of your map viewport) and the third line via Ctrl-v with the corresponding URL. Save "ManageMaps.bat" and start it with a double click in the explorer. If you have your Garmin connected you can return after some time (that of course depends on the size of the map), and if there is "DONE" at the bottom of the cmd window, you can unplug your device and enjoy the map. Anyway, your map will be placed in MapManager\MAPS\NAME, where "NAME" is the value of the NAME variable in the first line of "ManageMaps.bat".

Problems / Issues

  • Non-rectangular map areas are not possible with this method.
  • About zoom level 8 and less do not run with mkgmap on PCs with 0.5 GB RAM
  • Pedestrian and cyclist routing show odd differences on the Garmin. (Could be a problem of test maps.)
  • Any additional options that will improve the result anyway? Any options that will improve it in some cases?