Configuration/Full list of options

XML structure

The image below details the complete xml tag structure for the default navit.xml. The colour scheme of the image is designed to give an impression of what is and what isn’t required (both for Navit to run succesfully in the first place, and to have a functional navigation system) - those tags in blue are required, whilst those in green can be regarded as optional.
640px

Full options

config

Attribute

Units

Values

Notes

Example

language

“en_US”, “en_GB”, “pl_PL”, …

Enables manual setting of the locale. For example, langu age="en_US" will force Navit to consider the host device as being setup for USA English, and the town search will automatically revert to towns in the USA. This is useful if your device is from another country, or you are travelling in another country. The locale code is made up of the language (lowercase) and the country (uppercase) codes. For language codes, see ISO 639-1; for country codes, see `ISO 3166-1 Alpha2 < http://en.wik ipedia.org/wi ki/ISO_3166-1 _alpha-2>`__. Note that you can combine the languages and countries as you wish: lan guage=”de_FR” will result in German interface and voice announcements and search defaulting to France.

language="en_US"

debug

Attribute

Units

Values

Notes

Example

name

“gui_internal”, “navit:do_draw”, “global”

Set the debug level for a Navit module. “name” is the module name; optionally, the name of a function in that module can be appended with a colon (:). The modules correspond to the directories of Navit’s source code tree (the module name is set in the Makefile.am in each directory, by a statement “-DM ODULE=XXX”). A dditionally, there are some special module names: Setting a debug level > 0 for ” timestamps” will enable printing of timestamps in debug messages. Setting “segv” to 1 will print backtraces on segmentation faults, setting it to >1 will start gdb. Finally, “global” sets the global debug level (applies to all modules; this is the same as using the command line option -d).

name="gui_internal"

dbg_level

“error”, “warning”, “info”, “debug”

The debug level to set for the component given by the “name” attribute. The higher the debug level, the more debug output will be printed. The default debug level is “error”, which will only print error messages.

dbg_level="info"

level ( deprecated)

numeric debug level (0-3)

Equivalent to “dbg_level”, only using a number instead of the level’s name. “dbg_level” should be used instead, to make the c onfiguration easier to read.

level="3"

graphics

style=”text-align:left;” | Insert inbetween ... tags

Attribute

Units

Values

Notes

Example

type

``gtk_dr

awing_area`` | q t_qpainter | qt5 | sdl | opengl | win32 |

android

cocoa
gd
null

Type of graphics to use for display.

type="gtk_drawing_area"

x

pixels

numeric

Application window x position on the screen.

x="10"

y

pixels

numeric

Application window y position on the screen.

y="10"

w

pixels

numeric

Application window width.

w="600"

h

pixels

numeric

Application window height.

h="400"

back ground_color

color

Background color for screen portions overlapped by the system UI ( and later, currently meaningful on Android only)

color="#00000060"

qt5_widget

qml
qwidget

Qt5 widget technology. Only meaningful if using qt5 graphics with both technologies enabled on build.

qt_widget="qml"

qt5_platform

See Qt5 d ocumentation

Qt5 platform plugin to use. Only meaningful if using qt5 graphics.

qt5_platform="xcb"

gui

style=”text-align:left;” | Insert inbetween ... tags

Attribute

Units

Values

Notes

Example

type

gtk

internal` | qml | cegui

Type of user interface to use

type="internal"

enabled

yes / no

Enable this user interface. This attribute enables you to define multiple user interfaces within navit.xml (i.e. multiple ...tags), and quickly switch between them by changing the enabled status.

enabled="yes"

font_size

Pt fractions

1 - ∞

The base text size to use for text and labels in the menus. This only applies when type=" internal"

font_size="350"

icon_xs

pixels

1 - ∞

The size that extra-small style icons should be scaled to (e.g. country flag on town search). This only applies when type=" internal"

icon_xs="32"

icon_s

pixels

1 - ∞

The size that small style icons should be scaled to (e.g. icons of internal GUI toolbar). This only applies when type=" internal"

icon_s="96"

icon_l

pixels

1 - ∞

The size that large style icons should be scaled to (e.g. icons of internal GUI menu). This only applies when type=" internal"

icon_l="96"

keyboard

true / false

Whether to display Navit’s internal keyboard in search. Set to false if you want to use your device’s physical keyboard or the OS on-screen keyboard instead of Navit’s on-screen keyboard.

keyboard="false"

fullscreen

0 / 1

fullsc reen="1": Start Navit in fullscreen mode

fullscreen="1"

menubar

0 / 1

Toggle display of the menu bar. This only applies when t ype="gtk"

menubar="1"

menu_o n_map_click

0 / 1

Toggles the ability to bring up the menu screen when clicking on the map. When using m enu_on_map_ click="0" it is recommended to use an OSD button with the command ``gui. menu()` <O SD#Navit_co mmands>`__, or else you can’t get to the menu screen! This only applies when type=" internal"

menu_on_map_click="0"

o n_map_click

navit command

You may specify a command to execute when entering internal gui by clicking on the map. The example provided allows to enter directly to operations related to the clicked map point. This only applies when type=" internal"

on_map_click='menu("#MapPoint")'

toolbar

0 / 1

Toggle display of the toolbar. This only applies when t ype="gtk"

toolbar="1"

statusbar

0 / 1

Toggle display of the status bar. This only applies when t ype="gtk"

statusbar="1"

skin

hid e_impossibl e_next_keys

0 / 1

When searching a country/ town/street using the on-screen keyboard, instead of h ighlighting possible keys based on current search result, hide impossible keys. P articularly useful when using a rotary encoder or cursor keys to operate the keyboard, as there are less keys to traverse. This only applies when type="i nternal".

hide_impossible_next_keys="1"

log

for type="textfile_debug". Insert inbetween ... tags for all other types.

Attribute

Units

Values

Notes

Example

type

nmea
gpx

textfile |

binfile

Type of log to output.
``ty
pe=”nmea”``:

outputs data as NMEA messages (the data format used by most GPS

receivers).

ype=”gpx”``:

outputs GPX XML files (e.g. for upload to Ope

nStreetMap). | type=" textfile":

creates a text file that can be used as a

`textfile <

textfile>`__ | type= "binfile":

outputs a binary map file for use within Navit

type=”textfi le_debug”``:

outputs a debug text file.

type="gpx"

enabled

yes / no

Enable logging. This attribute enables you to define multiple log types within navit.xml (i.e. multiple ...tags), and quickly switch between them by changing the enabled status.

ena bled="yes"

data

filename

The name for the logfile. There is support for date and time p

laceholders: | %Y:

Current year

%m: Current month
%d: Current day
%%i: Next sequential logfile number (to make the filename unique)

` data=”%Y%m% d-%%i.gpx”`

overwrite

0 / 1

Toggle to choose whether an existing tracklog of the same name gets:
``over
write=”0”``:

Appended to, or

``over

write=”1”``:

overwritten

ove rwrite="1"

flush_size

bytes

0 - ∞

The file is kept in memory and will be committed to disk if the size reaches the ``
flush_size``

limit.

``flush
_size=”0”``:

Writes the tracklog to disk

immediately. | When used

in

combination

with ``f

lush_time``,

whichever limit is reached first triggers a disk write.

flush_size ="1048576"

flush_time

seconds

0 - ∞

The file is kept in memory and will be committed to disk after ``
flush_time``

seconds.

``flush
_time=”0”``:

Writes the tracklog to disk

immediately. | When used

in

combination

with ``f

lush_size``,

whichever limit is reached first triggers a disk write.

flush _time="90"

attr_types

position_ti me_iso8601` | position _direction | posi tion_speed | p rofilename | posit ion_radius | posit ion_height | position _sats_used | pos ition_hdop

Com
ma-separated

list which determines what

information

will be stored in the log file (in addition to the position, and only if supported by the GPS receiver). This only applies when ``

type=”gpx”`` | See

`Configur

ation <Confi guration>`__

for

descriptions

of each type.

``attr_t

ypes=”positi on_height,`` |

direction”``

osd

tags. See OSD for comprehensive information on on-screen display settings.

Attribute

Units

Values

Notes

Example

type

The type of OSD item to display. See O SD for a list of currently supported OSD types.

type ="button"

enabled

``yes`` / no

Whether the OSD item is enabled, i.e. should be displayed.

enab led="yes"

enable _expression

any valid expression

When the
expression

evaluates to true (i.e. a nonzero value), this OSD item will be visible, else it will be hidden.


Expressions

use the syntax described in `OSD#co

mmand <OSD# command>`__

and can use the

attributes

in `O

SD#Attribut es <OSD#Att ributes>`__

(currently

not an

exhaustive

list).

Not all OSD elements honor this command. Those that do currently (as of r5904) include
button,

`

compass`,

text, ``n

avigation_n ext_turn``.

OSD items that ignore this attribute include

image.

``ena

ble_express ion=”route. route_statu s&amp;48”`` | will

cause the OSD item to be displayed only while routing.

osd_co nfiguration

Any integer

When ``nav

it.osd_conf iguration``

ANDed with this OSD item’s

``osd_conf

iguration``

is nonzero, the item will be visible, else it will be hidden.

If both

``osd_conf

iguration``

and

``enable_e

xpression``

are set for the same OSD item, only

``enable_e

xpression``

will take effect and

``osd_conf

iguration``

will be ignored. If you need both, you can add a condition to your

enable_ex pression,

taking advantage of the fact that ``o

sd_configur ation=”2”``

is

equivalent

to ``en

able_expres sion=”osd_c onfiguratio n&amp;2”``.

o sd_configur ation="2"

x

Pixels or percent of screen width

-∞ – ∞
0 – 100%

Distance between screen margin and left border of the OSD item. Positive sizes are relative to the left side of the screen, negative values are relative to the right side of the screen (in that case, be aware to factor in the width of the OSD item. If you want to place an item, which as an width of e.g. 60px, on the right edge of the screen, the tag would be `` x=”-60”``). Numbers followed by a percent sign are interpreted as the respective percentage of available screen width.

x="42"

y

Pixels or percent of screen height

-∞ – ∞
0 – 100%

Distance between screen margin and top border of the OSD item. Positive sizes are relative to the top of the screen, negative values are relative to the bottom of the screen (in that case, be aware to factor in the height of the OSD item If you want to place an item, which as an height of e.g. 60px, on the bottom edge of the screen, the tag would be `` y=”-60”``). Numbers followed by a percent sign are interpreted as the respective percentage of available screen height.

y="42"

w

Pixels or percent of screen width

0 – ∞
0 – 100%

Width of the OSD item. Numbers followed by a percent sign are interpreted as the respective percentage of available screen width.

w="42"

h

Pixels or percent of screen height

0 – ∞
0 – 100%

Height of the OSD item. Numbers followed by a percent sign are interpreted as the respective percentage of available screen height.

h="42"

vehicle

tags.

Attribute

Units

Values

Notes

Example

name

v ehiclename

Name of the vehicle being defined. This can be any name you like, but it’s usually best to provide descriptive names, perhaps depending on the gps source, or the type of vehicle.

name=" Car gpsd"

profilename

p rofilename

The name of the vehicle profile (see below) to use for routing and an nouncements for this vehicle.

profilen ame="car"

source

Source of GPS data. See Configurat ion for the available options.

sourc e="gpsd://l ocalhost"

active

0 / 1

Makes the vehicle the active vehicle in Navit - i.e. all its options are used for routing, view centering and map redraws. Note that a vehicle must be enab led="yes" before it can be made ac tive="1".

a ctive="1"

baudrate

baud rate

0 - ∞

Baudrate of the com port of a WinCE device. Required if `` source=”win ce:COMx:”`` (where x is the COM port of the gps device). The baud rate should be 4800 in most cases.

baudra te="4800"

enabled

``yes`` / no

Enable the vehicle. This attribute enables you to define multiple vehicles within navit.xml (i.e. multiple
...

tags), and quickly switch between them by changing the

enabled

status or by using the menu options within Navit.

If there is no `
enabled=`

tag, the vehicle is au

tomatically

enabled.

enab led="yes"

follow

gps updates

0 - ∞

Specifies how many GPS updates to wait before map is refreshed. Since most GPS-modules have an update rate of 1Hz, “gps updates” is likely to be equivalent to “seconds”. A value of zero means vehicle will leave the edge of the map before the map is refreshed.

f ollow="1"

lag

0 - ∞

Vehicle position ex trapolation - it specifies how many tenths of a second the gps lags behind and counteracts with an position ext rapolation, to set the cursor at the right position. Also, it affects the speech a nnouncement distances . 10-20 are recommended values.

` lag=”10”`

gpsd_query

gpsd query

Command to send to gpsd. Required if ``source

=”gpsd://lo calhost”``,

otherwise this is not used.

The string used in the example is
sufficient

for use in Navit.

gpsd_que ry="w+xj"

tracking

tags.

Attribute

Units

Values

Notes

Example

cdf_histsize

metres

0 - ∞

Cumulative displacement filter. Currently not used by Navit. See ` 1 <http://juli en.cayzac.name /code/gps/>`__ for what it would do.

cdf_ histsize="4"

route_pref

0 - ∞

Benefit bonus for the calculated route. Increasing this value help to stay on track while receiving a inaccurate gps position. Default is 300. Use 1000 to 3000 if the device skip from track

route _pref="1000"

vehicleprofile

tags.

Attribute

Units

Values

Notes

Example

name

profilename*

The name of the vehicle profile. This name is used by the p rofilename attribute inside the vehicle tag.

`` name=”car”``

flags

hex value

The flags (as defined in AF_* in a ttr.h) which needs to be set to be able to pass this road. See Vehicle profile flags for a c omprehensive list of bit values.

flags=" 0x4000000"

flags_ forward_mask

hex value

The bits the flags_fo rward_mask has set in addition to flags, a way must not have set in order to be used in forward direction. More technically: the flags of a way are ANDed with this mask, if the route uses the way in forward direction. The result must match flags otherwise the way must not be used. E.g. flags_ forward_mask =”0x4000000” and flags_ forward_mask =”0x4000002” means a road may be used in forward direction if it is a ONEWAYREV (See Vehiclepro fileFlags).

flags_for ward_mask="0 x40000000"

flags_ reverse_mask

hex value

Identical to flags_fo rward_mask for ways in the reverse direction.

flags_rev erse_mask="0 x40000000"

route_depth

Sets which roads to consider for routing. The string consists of ` `order``* ``:``*` `rectsize`` tuples, separated by commas. Order of the tuples is in significant, and the number of tuples is not limited.

  • ``order``

    is the order (depth) of roads to consider. Only roads with the same or a lower order will be

    considered.

    The highest order is 18.

  • *`

`rectsize``*

is the size of the rectangle in which these roads will be

considered.

A simple number means a square around each waypoint

(including

position).

A number followed by a percent sign means a rectangle around all

waypoints,

enlarged on each side by the given

percentage

of the longer side (e.g. for a 100×20 km

rectangle,

10% will add an extra 10 km on each side, resulting in a 120×40 km

rectangle).

The default (for car) is to consider all roads (i.e. up to order 18) within 10 km (10,000 m), roads up to level 8 within 40 km and roads up to level 4 on the whole route, as well as 25% around it. See `Routing
<Routing>`__

for more details.

Caveat: increasing the size of rectangles or raising the road order will increase the number of roads that need to be examined to calculate a route. This will increase the time and memory needed to calculate routes. It may cause longer routes to fail due to low memory. As a
workaround,

you can try:

``route_d

epth=”4:25%, 6:1%,8:40000 ,18:10000”`` | This saves

memory by creating two rectangles around the route: the “outer” one with default values (25% margin, depth 4), and the “inner” one with a minimum margin of 1% and a higher depth. Some e

xperimenting

may be needed, but a depth of 6 for the inner rectangle has worked for creating long (~1000 km) routes over long sections of ``highw

ay=primary``

with 512 MB of RAM.

ro ute_depth="4 :25%,8:40000 ,18:10000"

route_mode

0 - 2

``route
_mode=”0”``:

A

utomatically

select between an on-road route and an off-road route (if the off-0road route is shorter than the distance to the next street from the current position plus the distance to the next street from the d

estination). | route _mode="1":

Always use an on-road route.

mode=”2”``::

Always us an off-road route

rout e_mode="0"

static_speed

km/h

0 - ∞

If the speed between positions from two gps updates is larger than st atic_speed Navit will accept the new position. This tag (and the stati c_distance tag) can be helpful to avoid unnecessary map updates, caused by the inaccuracies of GPS.

static _speed="5"

sta tic_distance

metres

0 - ∞

If the distance between positions from two gps updates is larger than stati c_distance Navit will accept the new position. This tag (and the st atic_speed tag) can be helpful to avoid unnecessary map updates, caused by the inaccuracies of GPS.

static_dis tance="25"

roadprofile

tags.

Tag

Attribute

Units

Values

Notes

Example

i tem_types

Types of ways for which this ro adprofile is valid. Way types can be found in`ma p_items < http://wi ki.navit- project.o rg/index. php/Confi guring_Na vit/map_i tems>`__.

it em_types= "steps"

rou te_weight

km/h

0 - ∞

The weighting which the routing algorithm should give this road type. A large route _weight will force the routing algorithm to choose that road type over others when ca lculating a route. This value is also used to calculate the route time remaining IF maxspe ed_handli ng="2".

ro ute_weigh t="150"

speed

km/h

0 - ∞

Used solely for ca lculating the estimated time of arrival.

spe ed="50"

maxspeed

km/h

0 - ∞

When driving, Navit will use the m axspeed of the road type to inform the driver of the current speed limit using the speed_wa rner. m axspeed will only be used if there is no OSM speed data for that road. This data is not used for routing calc ulations.

maxspe ed="50"

announcement

tags. Although included in the default navit.xml, ``announcement`` tags in ``roadprofile`` are currently not honoured. Please use the ``announce`` tag within ``navigation`` (see below).

Attribute

Units

Values

Notes

Example

level

0, 1, 2

Type of oral announcement to make. For example, level="2" means an announcement such as “turn left soon” will be made; level="1" is “turn left in x metres”; level="0" is “turn left now”.

level="0"

d istance_metric

metres

0 - ∞

Distance from the upcoming manoeuvre to perform the announcement.

distance _metric="25"

announce

tags.

Attribute

Units

Values

Notes

Example

type

Types of ways for which this announcement is valid

type="street_0 ,street_1_city"

level0

metres

0 - ∞

The distance at which the final announcement is made (i.e. ‘Turn left now’).

level0="300"

level1

metres

0 - ∞

The distance at which the intermediate announcement is made (i.e. ‘Turn left in 1km ‘).

level1="1000"

level2

metres

0 - ∞

The distance at which the first announcement is made (i.e. ‘Turn left soon’).

level2="2000"

unit

m

Units to use for the distances in the above levels.

unit="m"

speech

tags.

Attribute

Units

Values

Notes

Example

active

0 1

Whether speech should be enabled on startup. (Speech can always be enabled or disabled via ` OSD <OSD>`__ or a menu item.)

`` active=”0”``

type

android cmdline dbus espeak iphone speec h_dispatcher

Types of speech output to use

type ="cmdline"

data

Command for speech output. Navit sp eech_cmdline interfce has sufficient changes applied with svn #4459. For examples and discussion see Configura tion.

data="fl ite -t %s"

cps

0 - ∞

Speed at which Navit should speak in characters -per-second.

cps="15"

language

The language which built-in espeak on WinCE devices should use.

lan guage="de"

path

The path to voices data directory to be used by built-in espeak.

path="/ home/user/es peak-data"

voc abulary_name

0 if street names should not be announced, 1 is default (announce).

vocabular y_name="0"

vo cabulary_nam e_systematic

0 if systematic street names should not be announced, 1 is default (announce).

vocabula ry_name_syst ematic="0"

vocabula ry_distances

0 if speech driver can pronounce only 1,2,3 ,4,5,10,25,5 0,75,100,150 ,200,250,300 ,400,500,750 as numbers, 1 is default (speech is able to pronounce any number).

vo cabulary_dis tances="0"

sample_dir

For spe ech_cmdline, defines path where pre-recorded samples are stored. If you use this, it’s expected that data attribute points to some program able to play sound file passed as its argument. See Configura tion.

sampl e_dir="/path /to/waves"

s ample_suffix

For spe ech_cmdline, if sample_dir is defined, defines extension to append to sentence part to get pre-recorded sample file name.

sample_suf fix=".wav"

mapset

tags.

Attribute

Units

Values

Notes

Example

enabled

yes/no

Enable this set of maps. Multiple mapsets can be defined in navit.xml, but only one mapset can be enabled at-a-time. Each mapset, however, can include multiple maps.

`` enabled=”yes”``

map

tags.

Attribute

Units

Values

Notes

Example

type

mg
binfile
textfile
csv

Type of map. mg = Ma rco_Polo_Gros ser_Reiseplan er; binfile = OpenStr eetMap; textfile = `Navit textfile < Navit_textfil e_format>`__; csv = ` csv <csv>`__.

typ e="binfile"

enabled

yes/no

E nable/disable this map. A mapset can include multiple maps.

en abled="yes"

data

filename

Path to the map file.

data="/ media/MapsNav it/osm.bin"

maps

tags.

Attribute

Units

Values

Notes

Example

enabled

yes/no

Enable all maps of a certain folder like *.bin

`` enabled=”yes”``

layout

tags.

Attribute

Units

Values

Notes

Example

name

layoutname*

Name of the particular layout

n ame="Car"

daylayout

layoutname*

Defines which layout to use at daytime, if this layout is the default layout during the night.

daylay out="Car"

nightlayout

layoutname*

Defines which layout to use at night, if this layout is the default layout during the day.

ni ghtlayout=" Car-dark"

color

(hex trip let)

color

Default background color of the map.

color= "#ffefb7"

font

font-face

Default font-face to use for road and POI names.

fo nt="Liberat ion Sans"

active

0/1

Set the layout as the default using ac tive="1". Added in .

a ctive="1"

order_delta

0-∞

Increases the zoom level at which items are rendered. FIXME.

order_ delta="1"

cursor

tags. Cursor position is controlled by

Attribute

Units

Values

Notes

Example

w

pixels

Width of cursor.

w="26"

h

pixels

Height of cursor

h="26"

itemgra

tags.

Attribute

Units

Values

Notes

Example

speed_range

km/h

0 - ∞

Range of speeds within which to show the specific geometry of the subsequently defined cursor. ``speed
_range=”-2”``:

subsequent geometry will be displayed at speeds <= 2km/h.

``speed
_range=”3-”``:

subsequent geometry will be displayed at speeds >= 3km/h.

``speed_r
ange=”6-10”``:

subsequent geometry will be displayed at speeds between 6 and 10km/h inclusive.

spee d_range="-2"