Introduction: Make Your Own Maps for GPS and PC for Free

About: I like to explore new things and try out stuff. At the moment I'm in to electronics, BLE and LEDs.

This instructable shows you how to generate your own maps for your (garmin) GPS device and your PC!

Although I'm mostly into Linux now, this instructable shows you how to generate your maps with windows tools. It's just a first shot and I wanted to keep track of what I was doing, because this stuff is really confusing, especially if you are switching from windows to Linux. The good news is, most of the used software is also available for linux, so it's just a small step.

Beside the fact that this is confusing in the first place, I'm limited by the fact that my device only accepts 2GB micro-SD cards. This is not really much if you want to have some data on your device. The bike-map for germany is 1.2GB already, if you would like to add the alps and france or spain you get a problem here. By selecting individual tiles you can reduce the size of the final map to the area you really need.

No need to buy a new device right now. In one or two years from now, Galileo the european GPS will start operation and be much better than the existing.

Step 1: Get the Map Data

Instead of starting from really scratch I started with precompiled maps from this website:
http://openmtbmap.org/download/
There are many others providing the same service and similar outputs. Another famous source for maps is this website: http://wiki.openstreetmap.org/wiki/User:Computerteddy
Here you get a lot of precompiled tiles and also some final maps for upload to GPS-device.

What do we get?
When downloading a map from the first website, you get an installer for windows. But in fact it's just a self-extracting zip file and you can also open the exe with 7zip.
So unpack it into a folder of your choice.

There you have the map data!

PS: I chose the map of south africa because it is quite small and processing very fast, you can do this with any map and any tiles. 

Step 2: Process for GPS Handhelds

This step is very easy, because you only have to execute a batch file with the name: "create_gmapsupp.img.bat".

This batch file uses the programm "gmt.exe" which is also provided to combine the many individual tile files into one big "gmapsupp.img" which can then be uploaded to the device.

The batch asks you a few questions about the map it should produce and then starts combining.

When finished, there is a new 'gmapsupp.img' in the folder.

Step 3: Upload the Map to the Device

To upload the final 'gmapsupp.img' to the GPS device simply copy the file onto a micro-SD card into a folder which is named 'Garmin'.

That's all!

Step 4: Open the Map in QlandkarteGT

The program Qlandkarte GT  is an alternative to the proprietary Mapsource from Garmin, and it runs perfectly on linux too! 

To open a map in Qlandkarte you need to have the *.img tile-files, an overview map and a *.tdb file.

We are lucky because these files came with the original download. So just open the mapsetx.tdb and in the next open-file-dialog chose the mapsetx_mdr.img. Now Qlandkarte should display you some map of south africa. You can zoom in and move the map with the mouse. When you connect a GPS-device to your computer you could even down and upload tracks and routes.

You can see the map in Qlandkarte nearly as it will appear in your GPS-device.

The other *.tdb files belong to maps for elevation lines and other stuff, to display them you mostly have to zoom in a lot.

Step 5: Combining Two or More Maps, Getting New Maps

Why would you want to do this?
I told you I use a rather old GPS-device which has a limit of 2GB for map-data. This isn't really a limit for africa, because there is not much mapping data, but the map of europe currently fills a 8GB card! 
So I have to chose which countries are important for me and combine them to one file. This is what we gonna do now.

I chose to demonstrate this with two african countries because the map data is small and the processing is very fast. To combine germany, austria and swiss can easily take up to 1 hour.

So download another map from the website, like tanzania for instance and unzip it into another folder.
You can also open this map with Qlandkarte the way you did before and look what's inside the map. Tanzania is quite empty though. Only some parts of the country are already mapped. If you go there, join the openstreetmap community and provide some data!  http://www.openstreetmap.org/

Step 6: Combine Maps for GPS-device

Now take the one tile that is there for tanzania and copy it to the previous folder called africa.

Now execute once again the batch file "create_gmapsupp.img.bat" and a new gmapsupp.img is generated. Which is 6MB larger than the previous version.
You can now upload this directly to the GPS device and enjoy it.
Or you combine the maps even for the use with Qlandkarte.

Step 7: Combine the Maps for Qlandkarte

This is a bit more tricky, but if you just follow the steps its no problem.

First get these two programs:
1 MapSetToolKit 1.77

2 cgpsmapper

The first program is free, the second has at least a free version which is enough for our purpose.

Install these two programs and start the MapSetToolkit. Look at the second picture to see what you have to adjust.
Start at point 1 and work downwards:
- chose some output folder
- give the map a name
- give it a unique ID, any 4digit number
- add copyright informations
- select a typ-file, for instance the classical from the first map.
- adjust the folder for the cGPSmapper.exe

Continue to point 2:
- click on 'select img' and open the folder in which you combined the tiles. here it is 'C:\maps\africa\'
- now click on 'select all' and click on 'add'

Now wait a while, depending on how complex your tiles are and how many you have chosen. 5min on a rather new machine are o.k.

Then press start and wait for an hour or so.

Now look into the output folder and find there 'new' tiles and a suitable *.tdb and overview map. Use these to open the combined map in Qlandkarte. It is done! You see two big maps in Qlandkarte.

With this method you can combine any number of tiles into one map until the card is full.

Step 8: Chosing Individual Tiles for Combining

To chose individual maps for combining you need another software called GPSmapedit. You get it here: http://www.geopainting.com/

Just install it and double-click on one *.img file. Now the file should get loaded in GPSmapedit.
Now you see the border of the map. And maybe you already know if you need this tile or not. Otherwise you have to zoom into the map to make more details visible, many small cities are not visible when in a big scale.
Make notes which tiles you want to include into your combined map and delete or move the others out of the main folder.
And to make it even more simple, if you open the *.tdb with GPSmapedit, you see what are the names of the individual tiles that the map consists of.

If you try to open a generated gmapsupp.img in GPSmapedit, you get the message in picture two. The gmapsupp.img is in fact just a combination of the map-tiles and a descriptive typ-file. You can try to open all map-tiles, or if you have not so much memory try to chose individual tiles (pic. 3). The display is as in picture four.
With GPSmapedit you can even edit the map. Well with this name, it's no wonder, or what do you think? ;-)
But that's a story for another instructable...