NavIT

Rating: 
5
Your rating: None Average: 5 (6 votes)

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 user interface is designed to work well with touch screen displays. Points of Interest of various formats are displayed on the map.

The current vehicle position is read from gps

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 : http://translations.launchpad.net/navit/trunk/+pots/navit

For help or more information, please refer to the wiki : http://wiki.navit-project.org

Maps:

The best navigation system is useless without maps. While others are known to work too, the simplest solution is to use OpenStreetMaps by downloading prepared map from the navit planet extractor. This release is preconfigured to expect a map file at /home/nemo/Maps/map.navit.bin

Routing algorithm

NavIt uses a Dijkstra algorithm for routing. The routing starts at the destination by assigning a value to each point directly connected to destination point. The value represents the estimated time needed to pass this distance.

Now the point with the lowest value is choosen using the Fibonacci heap and a value is assigned to connected points whos are unevaluated or whos current value ist 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.

Screenshots: 
Application versions: 
AttachmentSizeDate
harbour-navit-0.5.1-2.armv7hl.rpm4.33 MB08/05/2017 - 14:14
harbour-navit-0.5.1-2.i586.rpm4.36 MB08/05/2017 - 14:22
harbour-navit-0.5.1-3.armv7hl.rpm4.92 MB21/06/2017 - 23:50
harbour-navit-0.5.1-3.i586.rpm4.95 MB21/06/2017 - 23:50
Changelog: 

*Wed Jun 05 2017 metalstrolch 0.5.1-3
- Enable rotating.
- Create default config from xlst
- Switch to QT font rendering.
- Remove freetype dep.

*Wed May 03 2017 metalstrolch 0.5.1-2
- Use qt5_espeak

*Mon Apr 10 2017 metalstrolch 0.5.1-1
- Almost harbour valid

*Mon Dec 14 2015 metalstrolch 0.5.1-0
- Initial sailfish release
- Initial package.

 

Comments

gaelic's picture

As Navit has not seen updates since 2015, are you considering changing the routing backend maybe to http://www.routino.org? Benefits: it supports different ways of travel like foot, bike, car.

metalstrolch's picture

???

 

NavIT is actively developed ever since, and can route for different Vehicles including pedestrian. So there is no need to replace its backend. What makes you think its outdated?

247's picture

hi there...a question and a little thing i would like to change... :)

the thing i would like to change is the keyboard...a qwerty qould be a lot better than an abcd etc etc

now for the question...i wanted to store the maps on the sd card and tried to edit the xml for doing that, but i cannot find the location where i can change the path...any help on this?

by the way do you plan to give the app a more sailfish look?

metalstrolch's picture

The internal keyboard layout is due to hardware with rotary encoders or just arrow buttons. But there are plans to use Sailfish native Keyboard instead. But this may take some time.

To 1: navit planet extractor maps are automatically created out of openstreetmap data. So feel free to enhance your city in openstreetmap. For other map options have a look at http://wiki.navit-project.org/index.php/Maps , but there are no really good alternatives to openstreetmap at the moment.

To 2: The "default" configuration is at /usr/share/harbour-navit/navit.xml Needs "root" rights to modify. But you can copy it to ~/.navit/navit.xml and adapt changes there. This overrides the default settings completely. Then your changes are not lost if you update navit later on.

Alter the "mapset" tag in navit.xml. Search for map.navit.bin in navit.xml to find it. Be careful with adding multiple maps at a time. Although NavIT supports this, this can break routing if the maps don't fit to each other.

Or the better and simpler solution: Symlink the map from where ever you want it to be to ~/Maps/map.navit.bin instead of just copying it there. This requires no change in configuration at all and is my preferred way in doing this.

To3. I myselve not. But someone else is working on a QML GUI which then may be adapted to Sailfish Silica easily. Unfortunately Sailfish Silica is compatible to nothing, and the focus is on portable QML. 

247's picture

thanks for your fast reply...i'll update my questions since i solved some of them...now the app is correctly showing all the streets...maybe it was a corrupted download so downloaded maps again and now is working...

as for the xml file...i know but i can't find how to point navIT to search for maps in the sd card...i can't find any path to change in the xml file

hope anyway the new interface will be simpler to use :)

keep up the good work anyway :)

metalstrolch's picture

Navit cannot search for maps. All maps need to be enabled in navit.xml. See "mapset" tag.

DrYak's picture

Thank you very much for this port !

I used to enjoy Navit back on my Palm/HP Pre smartphones (also full GNU/Linux like Jolla, but HTML-based instead of QML).

I was hoping to find some free time to do a recompile myself but you beat me to it. :-P

Thank you again for your work !

paolomi's picture

I'm testing navit for some days, it's beautiful, many thanks for having ported it to sailfish os! I've 2 questions:

- how to save settings? now i change settings, then i close navit, but when I run navit again, there are always the default settings. It doesn't remember my settings.

- how to switch portrait / landscape?

Many thanks :)

ps: there is a bug with the button "Quit". If i run navit from command line, the button "quit" works properly, but if I run navit tapping the icon, the button "quit" doesn't work and i have to quit the app with the swipe (top-down).

Bye:)

metalstrolch's picture

NavIT right now is just a QT application. It doesn't cope for many Sailfish specialities yet.

About the quit button: Sailfish OS expects all applications not to quit on their own. So Sailfish does expect the applications to have no quit button. They are to be killed by the window manager (by down swipe or long press). NavIT is still a normal application. So it's quit button does exactly what it should. It quits the application. Unfortunately Sailfish's window manager then keeps the window and relaunches the app if pressed into it. If run from the command line everything behaves as usual. Im looking into how to tell the window manager to quit it as well, but for me this is less important right now.

About settings saving: This is a little bit tricky. While NavIT saves many things immediately when they happen (for example the routing target) other things are saved only when navit is quit (the last shown area on the map) , and again other things are not saved ever. This is not only a problem for Navit on Sailfish, but for navit with internal GUI anywhere. The things saved on navit quit are unfortunately NOT saved when NavIT gets killed by Sailfish window manager. This is the reason for not removing the quit button :).

About landscape mode: Navit does not yet support screen rotating. Since this should not bee too tricky on Qt5 backends, I plan on implementing this. Stay tuned.

Btw. You can set the defaults of most options in the navit.xml configuration file. No GUI for that.

paolomi's picture

Many thanks for your detailed answer :)  Maybe the easier solution on sailfish os is to remove "quit" button and add "save settings" button. However, I'm not in a hurry, I think I'll edit navit.xml, thanks for the tip. :)

Caballlero's picture

Very  good  to see this app here.  Despite all the documentation to configure the map, I can not configure it yet the .xml file.   ??

metalstrolch's picture

No "need" to configure the map in the xml file. Just put your map to /home/nemo/Maps/map.navit.bin and it should work. You may need to create the  /home/nemo/Maps directory to do this.

Caballlero's picture

i did  /home/nemo/Maps/map.navit.bin, but not start up. note: i have ~/.navit empy.

metalstrolch's picture

My suggestion then is to run harbour-navit from the console and check the output for error messages. What device/version are you on?

Caballlero's picture

Jolla c

| SailfishOS 2.1.0.11 (Iijoki) (armv7hl) '--- [nemo@Sailfish ~]$ harbour-navit [D] unknown:0 - Using Wayland-EGL error:speech_qt5_espeak:bool qt5_espeak_init_espeak(speech_priv*, attr**):Sampl e rate is 22050 error:navit:xinclude:Unable to include /usr/share/harbour-navit/maps/*.xml error:map_binfile:map_binfile_open:Failed to load '/home/nemo/Maps/map.navit.bi n'|

metalstrolch's picture

Navit cannot load yor map.

Please check permissions of the map file. You can copy the sample map from /usr/share/harbour-navit/maps to ensure map is right. (sample shows munic, germany) Additional check /usr/share/harbour-navit/navit.xml for mapset tag. Looks as if youve got a typo here.

Caballlero's picture

the map have execution permit , i suspect my map is broken. I think that navit need update all maps.

paolomi's picture

@Caballero

download the map again! I've download 3 times, because the map wasn't fully downloaded and the server doesn't support resume (wget -c doesn't work), so you have to restart download. And check that is fully downloaded.

paolomi's picture

many thanks for navit! :)   is it really gtk+ user interface?

 

by the way, there is a little error in navit.xml:

/usr/share/navit/maps/osm_bbox_11.3,47.9,11.7,48.2.bin

should be

/usr/share/harbour-navit/maps/osm_bbox_11.3,47.9,11.7,48.2.bin

metalstrolch's picture

The Sailfish version is using NavIT's internal GUI on a QML Qt5 graphics backend. It does not have any dependencies to gtk+. In fact this version has only one dependency that is forbidden in Harbour: libfreetype.

Of course NavIT could have a GTK gui, but not for Sailfish.

Thanks for the hint about the config error. I'll fix that in the next release. At the moment the NavIT project is refurbishing the configuration in general, so stay tuned.

paolomi's picture

many thanks for the explanation :)

By the way, the page "interactive help" has been deleted, then fix the description above, remove "If you don't know where to start, we recommend you to read the Interactive Help : http://wiki.navit-project.org/index.php/Interactive_help "

MooCrumpus's picture

Does it match with OSM Scout Server's maps?

metalstrolch's picture

No, NavIT is not tile based and therefore not compatible to OSM Scout. But it does not need internet connection for routing either, NavIT uses mostly its own binary vector map format processed out of OSM data. You can download preprocessed maps from Navit Planet Extractor.

NavIT can use some other map formats as well. See NavIT home page

ferlanero's picture

Thank you for this release! In which folder do we have to place the downloaded maps to NavIT recognizes them? Thank you!

metalstrolch's picture

It is preconfigured for ~/Maps/map.navit.bin but you can change by copying /usr/share/harbour-navit/navit.xml into ~/.navit/ and adapting the mapset tags.

ferlanero's picture

Thank you very much! Works great in a OnePlus X Sailfish port! Thumbs up!