From Navit's Wiki
Revision as of 11:39, 5 December 2012 by Usul (talk | contribs) (Display Options: table for graphics<->GUI dependencies)
Jump to: navigation, search

Navit is highly modular and customizable. This page aims to point out the most common options which a first-time user may want to change - power users may want to consult the full list of options.

Setting up Navit is done by editing a configuration file called "navit.xml".Editing this file in a text editor is simple, it's just a plain text XML file, that can be edited with any editor. Just remember to turn off 'save UTF8 byte mark' in Preferences or navit may complain very much on the first byte of the file.
The file is splitted into sections within a hierachie:


Navit comes preshipped with an default navit.xml that is stored at various locations (depending on your system):

  • in ~/.navit/navit.xml : e.g : /home/myusername/.navit/navit.xml (This is probably to best place to customize your settings!)
  • in /usr/share/navit or /etc/navit

Navit will apply settings in the following order:

  • in the current directory (used on Windows)
  • location supplied as first argument on the command line, e.g.: navit /home/myusername/navittestconfig.xml (Used mainly for development)
  • in the current directory as navit.xml.local (Used mainly for development)

Configurable Sections


Common options such as units, position, zoom and map orientation, ... be configured in this section.

General options.


A large number of display properties can be configured, including desktop or touchscreen-optimised GUIs, on-screen display items and complete control over menu items.

Display options.


A number of vehicles can be defined within Navit, depending upon the device and/or operating system in use. Vehicle profiles for routing (eg: car, pedestrian, bicycle...) are also completely configurable.

Vehicle options.


You can use maps from a variety of sources, any number of maps can be configured and enabled at any one time.

Maps options.


Maps are displayedaccording to the rules defined in the layout. All aspects of the layout are configurable, from POI icons to colours for a particular type of highway.

Layout options.


There are many more options, including debugging, specific plugins, speech announcements, trip logging, ...

Advanced options.

General Options

Settings which affect Navit's general behaviour are located within the <navit .. > tag. In a default installation, this is found on line 31 of navit.xml. By default, the navit tag is set as follows:

<navit center="4808 N 1134 E" zoom="256" tracking="1" orientation="-1" recent_dest="10">

Some common attributes are discussed below. For more advanced features, see the full list of options.

Initial map position

On Navit's very first startup, it needs a center to look at on the map. By default this is set to Munich in Germany, which is conveniently covered by the sample map created on installation.

center="4808 N 1134 E"

Latitude and longitude are multiplied by 100 (here Munich is at 48.08N 11.34E in decimal degrees). Coordinates must use the WGS-84 projection. You can use decimal degrees

center="[-][D]D.x[x]... [-][D][D]D.x[x]" 

where D = degrees and x = fractions of a degree. You can also use decimal minutes

center="[D] N/S [D][D]DMM.yyy E/W"

where D = degrees, M = minutes and x/y = fractions of a minute. You can use N or S to denote North or South, and E or W to denote East or West. Lastly, you can use hexadecimal coordinates

center="[-]0xX [-]0xX"

To determine a specific latitude and longitude for your location you can use

After Navit has started for the first time, it will write its current location to center.txt (located in the Navit home directory) and ignore the current center value.

When Navit starts, it will display the map at a pre-defined zoom. The default zoom level is 256. The lower the value, the closer you will be zoomed in.


For those using the SDL GUI, a level of 128 is recommended.


Note that once Navit has started, the zoom level can be altered using OSD or menu items.

Use the orientation attribute to orient the map in either the direction of travel, or oriented North. .To orient the map in the direction of travel:


or to orient North:


Orienting the map North whilst in 3D mode will provide visually confusing results, and is not recommended. When in 3D mode, it's best to have the map oriented in the direction of travel.


Navit has the ability to autozoom the map in or out dependent upon your speed.


To de-activate autozoom:


3D pitch

Navit has the capability to display either a 2D map (bird's eye perspective) or a 3D map (some amount of tilt looking to the horizon). Navit's default configuration is to startup in the 2D perspective but it is possible to specify that Navit start with a 3D perspective. The amount of tilt is specified by setting the value of pitch.

The pitch value defines default camera tilting, with a value from 0 to 359. Note that usable values lie between 0 and 90 where 0 is bird's eye perspective looking down and 90 is human perspective looking forward. Also note that values closer to 90 will slow down map drawing, because the line of sight gets longer and longer and more objects are seen.

For example, the following added to the navit tag will force Navit to start with a pitch of 30 degrees:


Imperial units

By default, Navit use the metric system of measurements when displaying or announcing distances, speeds etc. However, you can configure Navit to display and announce these values in imperial units. Simply add an imperial attribute to the Navit tag, and set its value to 1, as shown below:


Speeds should now be displayed in units of miles-per-hour, whilst distances are converted to miles (large distances) and feet (small distances).

Display Options

The Navit display is highly customisabl and consists of the following components

  • Graphics driver (appropriate engine for your system, to draw everything)
  • GUI (enables user interaction and map display)
  • OSD (shows widgets on map screen)

Graphics Driver

Different technologies can be used, to let Navit draw it's visual components. Not all might be available at your specific system

The current list of available graphics drivers:

  • android, for the Android port
  • cocoa, for the iPhone port
  • gtk_drawing_area, usually most appropriate on Linux desktop systems
  • sdl, render inside an X window, or direct to the Linux framebuffer, with min dependencies on external libraries.
  • win32 - useable with gtk or internal GUIs for Windows systems only.

Experimental/less maintained drivers:

  • qt_qpainter, render inside X window or on top of Qt Palmtop Environment.
  • opengl, rendering via OpenGL
  • gtk_gl_ext, rendering via OpenGL using GTK+ OpenGL extension
  • gd, rendering using the GD Graphics Library

They can be activated and configured as following:

<graphics type="gtk_drawing_area"/>

As mentioned, it's usually best to leave this as whatever the default is within your navit.xml, and only mess around with it if you know what you are doing, or have been told to by one of the developers.

General User Interface (GUI) Type

You can now choose which type of GUI you would like to use with Navit. Not all GUIs work with all Graphics drivers

  • internal
  • GTK
  • cegui -outdated, replaced by GUI internal
  • qml - frozen, see Gui QML qt_qpainter graphics driver.
GUI android cocoa gd gtk_drawing_are gtk_gl_ext opengl qt_qpainter sdl win32
GTK Yes Yes
internal Yes Yes Yes Yes

Generic GUI Options

There are some options available for the gui tag which are used by all the GUI types. These include:

  • fullscreen - Enables Navit to start in fullscreen mode.
  • pitch - The pitch value to pitch the map to when selecting 3D mode from the menus.
  • dimensions - w="1024" h="600"

The following example uses the internal GUI, and starts Navit up in fullscreen mode, and will pitch the map to 35 degrees when 3D mode is selected from the menu. Note that to start Navit in 3D mode by default, change the pitch value in the navit tag:

<gui type="internal" enabled="yes" fullscreen="1" pitch="35">

Internal GUI

Example of Internal GUI with OSD

The first GUI is embedded in Navit core and is primarily aimed at touchscreen devices, or those devices with small screens (such as netbooks). However, this GUI also works very well on desktops and laptops.

<gui type="internal" enabled="yes">

A number of options specific to the internal GUI are available. These include:

  • font_size - Base text size to use within the internal menu.
  • icon_xs - The size that extra-small style icons should be scaled to (e.g. country flag on town search).
  • icon_s - The size that small style icons should be scaled to (e.g. icons of internal GUI toolbar).
  • icon_l - The size that large style icons should be scaled to (e.g. icons of internal GUI menu).
  • menu_on_map_click - Toggles the ability to bring up the menu screen when clicking on the map. See the internal GUI page for more information.

An example gui tag using the previous options is shown below:

<gui type="internal" enabled="yes" font_size="250" icon_xs="48" icon_s="48" icon_l="64">

More options are discussed on the Internal Gui and the full list of options.


Example of GTK GUI

The second GUI is called gtk, and is most useful for those users who wish to use a traditional windowed GUI. This is one useful to desktop use.

<gui type="gtk" enabled="yes" ... />


A number of options specific to the gtk GUI are available. These include:

  • menubar - enable/disable the menubar
  • toolbar - enable/disable the toolbar
  • statusbar - enable/disable the statusbar

<gui type="gtk" enabled="yes" menubar="1" toolbar="1" statusbar="1"/>

Vehicle Options

It's important to understand the separate but linked Navit concepts of a vehicle and vehicleprofile.

A vehicle defines the source of positional data (such as a USB GPS device), and how to present that data to the user on the map.

Maps Options

Layout Options

Advanced Options

The rest of this webpage is meant for advanced/power users who'd like to fiddle a little more under-the-hood. The average user can safely ignore this section!