A Car Navigation System for Linux and UNIX (and PocketPC too)


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

Introduction

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). It 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.

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 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). The RoadMap "editor" project, maintained by Ehud Shabtai, does support navigation -- the data used in that project supports the feature.

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. Future versions of the US Census bureau data will be supported as well (usually a 1 or 2 months after the data has been released).

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.


Credits

The original RoadMap was (and still is) 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) is developed and supported by Ehud Shabtai (eshabtai at gmail dot com). 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 (pascal dot martin at iname dot com)
(c) Copyright Latchesar Ionkov, 2003
(c) Copyright Stephen Woodbridge, 2004
(c) Copyright Ehud Shabtai, 2005 (eshabtai at gmail dot com)
(c) Copyright Paul Fox, 2006, 2007




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 SourceForge.net Logo