navit  0.5.6
About: NavIt is a car navigation system with GPS tracking and a routing engine.
  Fossies Dox: navit-0.5.6.tar.gz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

navit Documentation

Some Fossies usage hints in advance:

  1. To see the Doxygen generated documentation please click on one of the items in the steelblue colored "quick index" bar above or use the side panel at the left which displays a hierarchical tree-like index structure and is adjustable in width.
  2. If you want to search for something by keyword rather than browse for it you can use the client side search facility (using Javascript and DHTML) that provides live searching, i.e. the search results are presented and adapted as you type in the Search input field at the top right.
  3. Doxygen doesn't incorporate all member files but just a definable subset (basically the main project source code files that are written in a supported language). So to search and browse all member files you may visit the Fossies navit-0.5.6.tar.gz contents page and use the Fossies standard member browsing features (also with source code highlighting and additionally with optional code folding).

Build Status CodeFactor

Navit on Android tablet:

navit on android

Navit on Linux based Carputer:



Navit is a open source (GPL) car navigation system with routing engine.

It's modular design is capable of using vector maps of various formats for routing and rendering of the displayed map. It's even possible to use multiple maps at a time.

The GTK+ or SDL user interfaces are designed to work well with touch screen displays. Points of Interest of various formats are displayed on the map.

The current vehicle position is either read from gpsd or directly from NMEA GPS sensors.

The routing engine not only calculates an optimal route to your destination, but also generates directions and even speaks to you.

Navit currently speaks over 70 languages!

You can help translating via our web based translation page:

For help or more information, please refer to the wiki:

If you don't know where to start, we recommend you to read the Interactive Help :


The best navigation system is useless without maps. Those three maps are known to work:

GPS Support

Navit reads the current vehicle position:

  • directly from a file or port
  • from gpsd (local or remote)
  • from the location service of several mobile platforms
  • from udp server (friends tracking) (experimental)

Routing algorithm

Navit uses LPA* (see Lifelong_Planning_A*), a derivative of the Dijkstra algorithm, for routing. Routing starts at the destination by assigning a value to each point directly connected to the destination point. The value represents the estimated time needed to reach the destination from that point.

Now the point with the lowest value is chosen using the Fibonacci heap, and a value is assigned to connected points which are unevaluated or whose current value is greater than the new one.

The search is repeated until the origin is found.

Once the origin is reached, all that needs to be done is to follow the points with the lowest values to the destination.

LPA* is slightly more complex, as it allows partial re-evaluation of the route graph as segment costs change. This is used by the (still experimental) traffic module, which can process traffic reports and tries to find a way around traffic problems. Refer to the Wikipedia page for a full description.