How to create free maps for your Garmin GPS unit
These pages are very old (I haven't looked at them since 2011, and it's now 2020). I am leaving them here because there is still (based on my web logs) some interest in the contents. However, I make no promises as to whether any of the contents is still correct. I imagine a lot of it is very out of date. Use at your own discretion.
Back to our normal programme
I've put together a number of different pages on this topic, which covers how to take data from OpenStreetMap and turn it into a Garmin file which you can load into your GPS unit. If you've never done this before, I'd suggest working your way through them in order.
Tutorials & guides
- Basic step-by-step guide to map creation - A newbie guide
- Guide to mkgmap style files - How to customise styles
- Guide to TYP files - What they are, how to edit them and use them in mkgmap
- Advanced guide to splitter
- Walk through my compilation process step-by-step
- How to improve OSM data using mkgmap output
Information & FAQs
- Comprehensive list of mkgmap/splitter options and other goodies - This is a "scrapbook" where I keep any nuggets of info I discover on the mkgmap mailing list or elsewhere. Updated 14th November 2012
Downloads & links to 3rd party software
- Maps for the GCC region Download pre-built gmapsupp.img files for Garmin devices for the GCC countries Updated 2nd December 2012
- Downloads I've provided the various customised files I use to compile maps with mkgmap Updated 2nd December 2012
- Useful software Things to make your life easier
- OSM_generate Software to generate grids of POIs / polygons
- Legend Legend for my TYP file and Mapsource style
- Screenshots of my style/TYP files in action
- Screenshots & IMG downloads of default Garmin types
I wrote these pages to try to help newcomers to mkgmap, because whilst there's a lot of information for it, it's not particularly well organised. Please please please send any suggestions or comments to help me improve things.
You can reach me at
Sorry for the obfuscation - you can guess why I've done it.