RoadMap — A Car Navigation System for Linux, UNIX and Others

In addition to this introductory page, you might want to look at a short note describing current project status.


The following is a short description of RoadMap. More information is available in the documentation distributed with RoadMap.

RoadMap is an open source (GPL) program that provides a car navigation for Linux, UNIX and now Windows CE (a.k.a. PocketPC) and the iPhone/iPod.

RoadMap displays a map of the streets, tracks the position provided by a NMEA-compliant GPS receiver, identifies the street matching this GPS position and announces the name of the crossing street at the next intersection. A trip feature allows RoadMap to display routes, tracks, and provide some basic navigation information (distance to the next waypoint, direction, speed, etc..). Voice messages are generated that duplicate some of the screen information.

It is possible to display a specific area by providing a (complete or incomplete) postal address, the intersection of two streets or an exact position (longitude / latitude).

Most of the map files used by RoadMap are generated from the TIGER files provided by the US Census Bureau, and from the RNF files provided by Statistics Canada, and thus cover northern North America only. There has been recent work on deriving RoadMap data from other sources, including postgis and other shapefile-based formats, but this work is either not on the main development branch, or very experimental. Also there are two ways of using OpenStreetMap ( maps.

RoadMap has been designed to be usable on both a desktop or laptop PC, or on a PDA such as the iPAQ from HP (formely from COMPAQ). It can use either the Gtk 1.2 , Gtk 2.0 or QT (QT3 or QT4) graphic library for its user interface. The Qt interface supports the Sharp's Zaurus PDA. All these machines share the same endianness and can use the maps provided on this site.

The Windows CE (Windows Mobile, Pocket PC, ..) port is a native one and has been tested on several devices.

The on-screen user interface is very customizable. All command actions can be bound to arbitrary menu entries, toolbar buttons, or on-screen icon-like sprites. (Some actions are also bound to keystrokes, but this binding is currently fixed.) The menu layout and the toolbar position and layout can be changed. Popup menus are available (activated by another menu or toolbar button, a right-click, or a long-click). All of these can be used at once, or a minimalist configuration can consist of a screen containing nothing but a map. In that case, a long- or right-click can bring up the "master popup menu".

At this time there are no routing features implemented in the main codebase. The plan for the future is to implement some navigation features similar to those found in commercial street navigation systems. The main limit for implementing routing is the lack of navigation information in the US Census Bureau database (for example one-way street are not indicated). The US Census Bureau has clearly indicated that it does not plan to add these information in the future (the USCB does not need them).

RoadMap usually uses gpsd for the GPS link and can use flite (festival lite) for the voice messages.

RoadMap comes with its own GPS status screen ("RoadGPS"), which provides an overview of the satellites received and highlights those the GPS has a fix on. This status screen allows for placing the GPS device in a position that optimizes satellite reception, even if that means making the GPS device's screen not accessible. Obviously it's also useful with "displayless" GPS units.

RoadMap uses a binary file format for representing the maps that is compact enough to allow the storage of many maps on a Compact Flash or MultiMedia card. For example, the map of Los Angeles county takes about 10 Mbytes of flash space. RoadMap comes with a set of tools to convert the US Census bureau data (both the 2000 and 2002 versions) into its own map format.

When RoadMap starts, it displays a map of the same area that was displayed on the latest session. Clicking on the map screen triggers a "sign" that displays the name of the street, road or freeway (if any) that is the closest to the mouse hotpoint.


The original RoadMap was developed by Pascal Martin. As of 2007, Paul Fox has taken over as "maintainer of the moment". A version of RoadMap for the Sharp Zaurus was developed by Latchesar Ionkov (who wrote the original QT support). The support for the Digital Charts of the World was contributed by Stephen Woodbridge. The version of RoadMap for Windows (PocketPC) was developed by Ehud Shabtai but is now supported by Danny Backx. Paul Fox has added GPX data interchange support for trips, routes, landmark, and points-of-interest. Ehud and Paul have added street labeling and other features as well. Alex Briosi and Oleg Gusev contributed the QT4 desktop port.

(c) Copyright Pascal Martin, 2003, 2005
(c) Copyright Latchesar Ionkov, 2003
(c) Copyright Stephen Woodbridge, 2004
(c) Copyright Ehud Shabtai, 2005
(c) Copyright Paul Fox, 2006, 2007, 2008
(c) Copyright Danny Backx, 2007, 2008

Web storage for the RoadMap pre-compiled maps is courtesy of Digital Omaha Network, a low priced, high quality hosting service provider.
This project hosted by Get RoadMap at Fast, secure and Free Open Source software downloads