Routing attributes

First, let me thank you for making OSM data so easily available to upload to my Legend HCx.
I have downloaded some UK data this morning for the first time and transferred it to my GPSr. Next, I have put in a destination and applied GoTo to check the validity of a calculated route. Now I have some questions:

  1. Do you and others who create routable files use the same attributes/algorithms within OSM to create the routable data?
  2. Does the GPSr itself have any input into the route calculation to improve or worsen the result?
  3. When a user discovers an apparent nonsense in the calculated route, are there known criteria which are used in the route calculation that might be checked and amended in OSM as necessary?
  4. So that the styles of the roads, for example, might be overridden using GenTyp to create one’s preferred appearance, can the structure and content of the downloadable files be viewed anywhere?
    In appreciation,
    Bob Hawkins

OSM does not provide the algo’s to the GPS, only the data. There are three applications that are able to generate Garmin images which are Mkgmap and GroundTruth, both OSS created with OSM in mind and cgpsmapper (in conjunction with osm2mp) which is a commercial application that has nothing to do with OSM. Each of these applications translate the OSM data slightly different.

The different GPSr and MapSource/RoadTrip applications all appear to have slightly different routing algo’s so you rarely get the same result between different GPSr and applications. You also have several options on the GPSr to influence the routing like transport type, u-turn and toll restrictions etc.

Yes, obviously wrong routes have many probable causes, like disconnected nodes, wrong oneway or access rules, faulty turn restrictions etc. The best way of tracking down is to create ever shorter routes until you find the section(s) of road that appear to have faulty data and then check that using an OSM editor.

The source data is ofcourse the OSM weekly planet dump. The date of the planet dump is the version number you see on the website. The Garmin images can also be viewed or edited using an editor like MapEdit but I have no experience with tools like that.

I thank you for your response. I wonder what criteria are used when calculating a route. Further to my point 3. is it the case that both highway values, such as primary, secondary and tertiary and maxspeed values are used together in the route calculation? I can imagine problems arising if, for example, OSM in one area contains maxspeed keys and speed values whereas an adjacent area does not. It must be in everyone’s interest that we who contribute to OSM understand the implications of our input. I believe this must apply most particularly to routing and I want to be able to rectify what is wrong with my local area as much as possible.

I have no knowledge of the Garmin algo’s or image internals. What I do know is that the gosmore routing application (used at has default average speeds for each way type for each transport type which can be overridden by adding the maxspeed tag. The maxspeed tag does not affect cycle and foot speeds.

Each road in an IMG file that supports routing contains two pieces of information for the routing: the road class (eg: motorway, primary) and the speed class. My understanding is that when deciding the route the software prefers higher road classes and then adjusts for the speed classes. So both are need for good routing.

Certainly when mkgmap runs it uses the highway tag to decide the road class. It then does one of two things for the speed class. If maxspeed is defined then it uses that to set the speed class directly. If maxspeed isn’t defined then mkgmap uses a default according to the road class. When I looked at this the defaults looked reasonable to me for most cases, however, where the speed limit is below the typical speed limit for a particular road class then setting maxspeed in OSM will result in better routing. I guess that setting the maxspeed for all roads would improve the situation further because it could handle differences in maxspeed for different countries (as mkgmap default need to be an average for the world).

For those interested mkgmap will assume max speed is in km/h unless the maxspeed ends with mph (eg. “maxspeed=30mph”).


I’m also trying to debug routing diretives given by Legend Hcx, together with France routable maps from
I frequently find (and solve through JOSM editing) problems like roundabout in reverse direction, or “unglued” highways.
Other common problem is a motorway_link with missing oneway=no when it is in fact usable in both directions.

But I also bump on a problem (for a long distance trip) that I don’t know how to solve. I localized the approximate point up to where the routing was ok and where it starts to go “wrong”. (In this case, the “wrong” is that the Etrex goes back to its default PROMed map and ignores the detailled OSM maps). I found nothing special on the highway where is starts to go wrong (nothing unglued or wrong oneway), except that its seems to be approximately where it is crossing “tile” border (I’m not sure if the word tile is correct: I mean that France is splitted into 8 big “tiles” because it is too large).
Has any one seen this type of problem? And how to solve it?