Worldwide routable Garmin maps: URL REMOVED

Lambertus,

Thanks for your maps! I have been using them for a long time with my Garmin Mobile XT.

I am using mkgmap to produce myself some maps too and I have a doubt about addressing: using the same osm file (downloaded from http://download.geofabrik.de/)) and converting to garmin and navikey 7-ways maps formats, it looks like my garmin maps always have far less addresses you can search for!! Even the map downloaded from “http://garmin.openstreetmap.nl/” (osm_generic_gmapsupp.zip) has less addresses to search when compared with the navikey converted file from the same osm source!

I use the following command to generate garmin file:

“java -jar mkgmap.jar --style=default --keep-going --index --code-page=1252 --product-id=43 --family-name=“OSM XX” --area-name=XX --description=“OSM XX” --mapname=12345678 --country-name=BRASIL --country-abbr=BRA --region-name=“XX XX” --region-abbr=XX --copyright-message=OSM-XX --route --link-pois-to-ways --remove-short-arcs --process-destination --process-exits --output-dir=output-mkg --gmapsupp file.osm”

Is there any command I have missed that can fix this situation ?

Thanks again!

Try to add --poi-address --housenumbers
I think you should use preprocessed bounds files to get correct address search, see option --bounds.

Thanks popej for your help!

I have read about boundaries and now made “bounds” for my files and my script is this:

osmconvert mkgmap-splitter\imput\XX.osm.pbf --out-o5m >mkgmap-splitter\imput\XX.o5m

osmfilter mkgmap-splitter\imput\XX.o5m --keep-nodes= --keep-ways-relations=“boundary=administrative =postal_code postal_code=” --out-o5m > mkgmap-splitter\imput\XX-boundaries.o5m

java -cp mkgmap.jar uk.me.parabola.mkgmap.reader.osm.boundary.BoundaryPreprocessor imput\XX-boundaries.o5m XX_bounds

java -jar mkgmap.jar --family-id=‘$family_id’ --family-name=‘$name’ --area-name=‘$name’ --product-id=$product_id --draw-priority=20 --description=‘$description’ --series-name=‘$description’ --mapname=12345678 --country-name=‘$country’ --country-abbr=‘$countryabbr’ --region-name=‘$region’ --region-abbr=‘$region-abbr’ --copyright-message=‘$copyright’ --style=default --bounds=XX_bounds --reduce-point-density=4 --reduce-point-density-polygon=8 --show-profiles=1 --add-pois-to-lines --index --location-autofill=bounds,is_in,nearest --latin1 --min-size-polygon=10 --merge-lines --add-pois-to-areas --preserve-element-order --process-destination --process-exits --poi-address --housenumbers --route --link-pois-to-ways --remove-short-arcs --process-destination --process-exits --name-tag-list=name:en --output-dir=output-mkg --gmapsupp imput\XX.osm

And still have a few addresses to search for!

Could you guys help about this script ? What is wrong with it ?

Thanks again!

Maybe it is related to some bugs in mkgmap, see http://gis.19327.n5.nabble.com/Address-search-city-sometimes-missing-tt5790920.html

Or maybe those addresses are not in OSM at all. Some programms use other data to improve address search. For my maps I use BAG data in the NL’s and since recently CRAB data for Flanders Belgium to find more addresses than available in OSM. OSM.org uses Tiger address data in the US for the nominatim search etc.

Hello
I use maps from http://garmin.openstreetmap.nl/ for Humanitarian Mission. For this reason I ask following question: In which interval (daily, weekly …) are the Maps updated ?
Best regards, JM

See the Map version in lower right corner: 06-01-2014
The map is usually updated every 1 or 2 weeks.

Since map version 18-01-2014 the Garmin maps contain also addresses from Flanders, Belgium.

Lambertus, can you try to implement these parameters automatically, with %mapname% as the country that is being compiled, with the generation date?
In the case of a custom mapset the user has to enter a custom name?

--series-name="OFM-Lite(%mapname%v%date%)"
--description="OFM-Lite(%mapname%v%date%)"

Same for generic and generic_new

One step further is to give the country maps a different unique Famliy ID (ISO 3166 code) and Family name to make it possible to install more maps.
See
http://nl.wikipedia.org/wiki/ISO_3166-1
http://wiki.openstreetmap.org/wiki/OSM_Garmin_ID (to prevent double ID’s)


--overview-mapnumber=%FID%000
--overview-mapname=OFM_%mapname%
--family-name="OFM-Lite(%mapname%)"

%FID% = 23 + ISO country code
%mapname% = ISO country ID

For the OFM Lite of the Netherlands the family name could be OFM-Lite(NLD) with FID 23528 (23xxx with xxx for the ISO code).

Any ideas for numbering/naming the custom maps?

Maps downloaded are now showing street names with the French version even though my GPS is set for English. This happens with Mapsource as well. It was working correctly up until the 12 March 2014 release. That one and the current release showed French names (eg Chemin Cram instead of Cram Road) whenever they were available. I am using the maps for Ontario Canada. If I set the GPS language to French I still get the French names.

John Patchell

I think it is an unwanted side effect of adding name:fr to the name-tag list, see http://forum.openstreetmap.org/viewtopic.php?id=24400
The German city of Aachen, http://nominatim.openstreetmap.org/details.php?place_id=97950220 is now displayed as Aix-la-Chapelle.
In the Netherlands the river Geul gets a french name too (Guelle) and Maas “Meuse” and the city Nijmegen is Nimègue :confused:

So it is not a good solution to add name:fr to the name-tag list. I dont know how to solve the issue of arabic / french names though.

Edit: solution found

Hi,
I’ve downloaded German map and Italy map today. The German map is ok, but the Italy map is not routable. It makes line routes in BaseCamp and in Garmin device, too. Any ideas?

Just had a look at the Italy map, routing works as expected. Maybe you tried a route that was too long or some routing settings were not ok?

Ligfietser, I just read a post on osm-talk mailinglist about the release of a new source of addresses: http://openaddresses.io/

Possibly we could merge this with the OSM streetdata and use these in the Garmin maps? This source also has the address data from Flanders that we imported earlier and a lot of US addresses.

Sources: https://github.com/openaddresses/openaddresses/tree/master/sources

Would be great, in what format are they published?

How would updates from this source (or any other address source) be managed?

I may have a free source for all NZ addresses.

I’m trying to figure that out. It appears it just lists all those different sources and every source uses its own format. If true then processing all these sources is a big task. However, I do see some of these sources have been translated to a ‘standard’ csv file format for which i could easilly write a script that transforms this to osm.xml or osm.pbf.

Well, my current method involves grabbing a fresh planet dump and merge with the Dutch and Flanders addresses. This combined dump is then updated with daily OSM changesets. I guess this in time would lead to double addresses when they originate from two different sources. I’m all ears if you have ideas about a structured method.

What I meant was how would you merge an updated address file into OSM, as there are no diffs available?

Currently I would do the same as described in my post above, but I admit not having spent a lot of time thinking about a better method.

I frequently use this service, and have a few remarks.

Both routable maps have the same identification string “OSM generic routable”, for all tile selections and countries, not making a difference between “old” and “new” styles. This makes it difficult to store more than one map on the device, and switch between them. As a by-product, I cannot say whether I like the new style better…
As the map images are created on request (and kapt in cache for some time) it would certainly be possible to add the country name, and/or in the case of an individually combined map, the creation timestamp?
Also, most pre-built OSM maps for Garmin completely lack information about the planet file they have been derived from - yes, there’s metadata available (for some time, at least, but gone soon after a selective download), and perhaps the space for such data is very limited (about 50 characters?)… it might be a signal to other map makers if such basic identification information could be merged by default.

In any case, I like this service a LOT - and wish to have something similar in MapsForge/OpenAndroMaps format that’s not months old…

Thanks to Lambertus for this brilliant idea - and everyone involved for keeping this website running!

Yes, originally the idea was to replace the ‘old’ generic routable with the ‘new’ but I’m not sure anymore. Alternatively ‘old’ is transformed into a lite version for Garmin devices with little storage (e.g. some Etrex series).

Is there anything specific you don’t like? By specifying the maintainer(s) of the styles can possibly improve them…

For predefined country maps this should be possible and is actually a long standing wish. It only needs my time to implement which is on short supply lately. Regarding custom maps things get much more difficult. For starters: the custom map build program doesn’t know what area has been chosen or how to name it. Another long standing wish is to allow the user to provide his preferred product id, description etc. but A) it makes the process for inexperienced users much more difficult B) requires a large time investment which -as said- I currently don’t have.

As an aside: I recently created a GitHub account so I can upload this forum but could use the same account to manage/share/cooperate the http://garmin.openstreetmap.nl code as well.

Is this really important information? You’d probably know if a map is old or new anyway…

Thanks for the compliments. The other two main contributors are Ligfietser + Beddhist (Mkgmap commandline and styles) and aditionally Oxilion.nl + Harenber (servers) and Greencaps (some special utilities for transliteration and country/tile matching).