OSM Scout Server

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

OSM Scout Server is a native offline maps provider. This server can be used as a drop-in replacement for online map services providing map tiles, search, and routing. As a result, together with the map client, a full offline solution is available for map search and navigation (car, bicycle, and walking).

The server can be used to provide:

  • map tiles for other applications;
  • search for locations and free text search;
  • search for POIs next to a reference;
  • calculate the route between two or more locations.

To use the server, you have to start it and configure the client to access it. Poor Maps and modRana have support for the server already with no additional configuration needed.

Starting from 0.7.0 release, maps are distributed online and should be downloaded through provided Map Manager interface.

NB! When Mapbox GL schema is changed (as for 1.4.0), please remove Mapbox GL application caches. For Poor Maps GL, you have to run

rm -rf ~/.cache/harbour-poor-maps-gl

in the terminal.

NB! When a new backend is added, such as with the release of 0.9.0 and 0.10.0, please ensure that you have subscription information updated. For that, in Map Manager, click on "Check for updates", decline updates, and unsubscribe/subscribe each territory that you have subscribed. After that, proceed with the downloads. This is not needed if you don't want to use the added backend(s).

For detailed up-to-date description, please see https://github.com/rinigus/osmscout-server/blob/master/README.md

License: LGPL
Source code: https://github.com/rinigus/osmscout-server

User's guide: https://rinigus.github.io/osmscout-server

Official TMO thread: http://talk.maemo.org/showthread.php?t=97823

Donations: https://liberapay.com/rinigus http://rinigus.github.io/donate-bitcoin

Screenshots show the running server and, as an example client application, Poor Maps accessing the map tiles and calculated route prior to navigation.

Maps are hosted by Natural Language Processing Centre (https://nlp.fi.muni.cz/en/ , Faculty of Informatics, Masaryk University, Brno, Czech Republic) through modRana (http://modrana.org)
data repository.

Map data from OpenStreetMap, Open Database License 1.0. Maps are converted to a suitable format from downloaded extracts and/or using polygons as provided by Geofabrik GmbH.

Screenshots: 
Changelog: 

1.10.0, 1.10.1

  • changed license to GPLv3
  • add support for POST requests
  • add search along route
  • cleanup POI aliases handling
  • added Italian translation [wip]
  • updated translations

1.9.1

  • updated translations
  • fix crash when using libosmscout profile
  • fixes in map matching service
  • add ferries and oneway streets in MapboxGL styles

1.9.0

  • introduction of D-Bus API
  • map matching of the current position as D-Bus service
  • updated translations

1.8.0

  • use Valhalla C++ API
  • expose multiple Valhalla's services
  • add Mapbox GL car styles
  • update translations
  • other small changes

1.7.0, 1.7.1

  • support for aliases in multiple languages in guide search
  • support for POIs without a name in guide search
  • extend API for guide search by specified type and/or name
  • provide the list of currently used aliases
  • sort guide results by distance
  • adjusted lists of imported types for geocoder-nlp
  • other enhancements and bugfixes in geocoder-nlp
  • updated translations

1.6.0

  • addition of QtQuick Controls GUI version
  • update geocoder to libpostal 1.1 API
  • adjust geocoder results sorting
  • changes in Valhalla packaging
  • added nl_BE translation
  • updated translations
  • moved Silica QML into separate folder
  • show map selection only if needed

1.5.0

  • revise warning messages on missing backend data
  • notify about missing modules only if required by selected backends
  • source tree and compilation enhancements

1.4.3

  • Updated translations
  • Fix Mapbox GL style to show rivers
  • Preserving explicit dependency on libsystemd at Sailfish

1.4.1

  • Updated translations
  • Support for multiple Mapbox GL icon packs
  • Addition of Mapbox GL dark style

1.4.0

  • Updated Mapbox GL tile schema
  • Mapbox GL style with English names
  • Document starting and using the server
  • Document details on automatic activation of the server
  • Updated translations

1.3.0

  • Support for multiple map download servers
  • Ensure that Valhalla is started before starting HTTP service
  • Updated translations
  • Added donations link

1.2.0

  • Add support for MapboxGL
  • Updated translations of documentation and application

1.1.0, 1.1.1

  • Add automatic start via systemd socket activation
  • Updated translations

1.0.2

  • Normalize tile indexes if requested out of range

1.0.0, 1.0.1

  • Users Guide in Spanish
  • Addition of Finnish translation
  • Updated translations

0.15.0

  • Revert to older libosmscout
  • Updated translations

0.14.1

  • Geocoder-NLP update
  • Updated translations

0.14.0

  • Add support for English as a secondary language
  • Deleting files during cleanup in separate thread
  • Updated translations
  • Bugfixes

0.13.1

  • Updated translations
  • Bugfix in guide search

0.13.0

  • Introduction of profiles
  • Startup wizard
  • Updated translations
  • Other small changes

0.12.0

  • Add support for Mapnik style and daylight switching
  • Speedup Mapnik backend by removing double scaling of the buffer
  • Updated translations

0.11.1

  • Add guide search support for Geocoder-NLP
  • Guide search looks for type or name when using Geocoder-NLP
  • Support for V2 routing protocol by libosmscout backend
  • Updated translations
  • Other smaller changes

0.10.1

  • Updated translations

0.10.0

  • Valhalla added as a routing engine
  • Routing is supported between different territories when using Valhalla
  • Search is performed for all databases when using Geocoder-NLP
  • Server is distributed using modular approach
  • Two server modules introduced: Route and Fonts
  • Update libosmscout version, 20170521
  • Make storage of libosmscout databases optional
  • Mapnik uses Noto fonts by default
  • Other smaller changes

0.9.5, 0.9.6

  • Mapnik database schema changes to reduce size and speedup rendering
  • Mapnik renderer default style adjustments
  • Updated translations

0.9.0

  • Mapnik added as an alternative map rendering backend
  • Enhance Linux command line support for map subscription

0.8.1

  • Updated translations
  • Fix start error on i486

0.8.0

  • Optimization of geocoder-nlp, changes in geocoder data format
  • Updates from libosmscout upstream
  • Addition of command line options
  • Updated translations

0.7.5

  • Expose map updates to GUI
  • Propose to create a storage folder (suggested by @Feathers McGraw)
  • Updated translations

0.7.2

  • New transalations completed: French, Russian
  • New translations started: Polish, Norwegian
  • Fix buffer overflow during fast download and slow writing

0.7.1

  • Updated translations
  • Improved handling of some network errors during download

0.7.0

  • Maps are provided through CDN
  • Adding Map Manager to download and remove maps on the device
  • libosmscout backend changes, including rendering speedup by @Karry
  • Settings grouped by backend and available via Settings dialog
  • Small enhancements

0.6.2

  • German translation
  • Moving translations to Transifex
  • Start and target description are given when available

0.6.1

  • Updated Spanish and Swedish translations

0.6.0

  • Adding libpostal-based geocoder
  • Update to the latest libosmscout version
  • Updated Spanish and Swedish translation

0.5.3

  • Swedish translation

0.5.2

  • Czech translation
  • Minor update in search

0.5.1

  • Updated Spanish translation

0.5.0

  • Added file and directory selection dialog
  • Support for metric and imperial units
  • Built against libosmscout 0.0.git.20161207

0.4.1

  • Updated Spanish translation

0.4.0

  • Changes for better localization support
  • Spanish translation
  • GUI shows number of jobs in queue
  • Support for routing cost limits
  • Bugfixes in routing (libosmscout library)

0.3.0

  • Decoupling number of parallel processing threads and number of requests
  • Adding GPX output for router
  • Adding ability to log events into session log file
  • Using libmicrohttpd as a http server engine
  • Bugfixes in routing
  • Static linking of libosmscout, marisa, and libmicrohttpd
  • Used versions of the libraries: libosmscout (0.0.git.20161110), marisa (0.2.4), libmicrohttpd (0.9.50)

0.2.1

  • Bug fix in routing target description; small changes in route instructions text

0.2.0

  • Support for route calculation
  • Add settings for transport speed properties
  • Add ability to increase area processed for tile drawing
  • Small enhancements and bug fixes

0.1.0

  • Initial release
  • Support for map tiles
  • Support for location search
  • Support for free text search
  • Support for search of POIs next to a reference point

Comments

lsjmhar's picture

Hi. I have downloaded maps and modrana. When i follow the instructions and select osm scout server no tiles appear on my map. If i pick other map options they work. Any ideas?

rinigus's picture

If you use modRana, you have to set the profile to include raster tiles. For vector tiles, the ones I presume you have by default, you could use WhoGo Maps. They also work with Laufhelden. Note that the vector tile clients are much faster in rendering and have several other features that you may like.

PS: modRana is expected to support vector tiles in future.

lsjmhar's picture

Thanks. I selected that in osm but map still not appearing in modrana.

rinigus's picture

Please note that the documentation is somewhat outdated. I have opened an issue to address it and it will be a bit easier in future. But let's figure out what's wrong with your setup

rinigus's picture

To troubleshoot modRana: After you selected support for raster tiles in the server, did you download the maps? Does OSM Scout Server log say anything?

To test my assumption regarding vector tiles: Have you tried WhoGo Maps? Did it work with that?

crakby's picture

Ok. yes thank you for the hint. Where to go, if I found a wrong alias in German language for a tag?

rinigus's picture

We are planning to merge the tag aliases lists with the map clients. POC for WhoGo Maps is ready, have to polish it and do something similar for modRana. So, in future, you wouldn't have to know the tags before hand...

As for correction: German is at https://wiki.openstreetmap.org/wiki/Nominatim/Special_Phrases/DE

List of all available languages is at https://wiki.openstreetmap.org/wiki/Nominatim/Special_Phrases

 

crakby's picture

In the 'near by search' I have no matches anymore, since last update, if I searching for type 'caravan_site'. In the last version this type showed up.

rinigus's picture

Its easier now: please use 'caravan site' (or if you want to specify full tag, tourism_caravan_site). Full list of tags and their aliases is at https://rinigus.github.io/osmscout-server/tags/

hwansing's picture

I have problems with the automatic start of the server as a service: I have tried to enable "Automatic activation", but there are no systemd socket and service files created (.config/systemd/user/osmscout-server.service and .config/systemd/user/osmscout-server.socket). I have version 1.5.0-10.32.1.jolla at a Jolla 1 phone.

rinigus's picture

Strange, I cannot reproduce it - files are created if needed, activation works. This is on onyx 2.1.4.14. Try to run from terminal and see if there is something printed that can help to debug it

hwansing's picture

Starting from terminal gives:

======================================================================

[nemo@Sailfish ~]$ harbour-osmscout-server
[D] unknown:0 - Using Wayland-EGL
[D] unknown:0 - "Unexpected reply signature: got \"\", expected \"a{sv}\""
[W] unknown:38 - file:///usr/lib/qt5/qml/Sailfish/Silica/private/Util.js:38: TypeError: Cannot read property 'parent' of null

===================================================================

I hope this helps...

If not: Could you mail me the contents of the systemd socket and service files, so that I can create the files by myself?

rinigus's picture

These are general error messages that seem to be coming from Silica layer. So, no help.

The contents of files is available at https://gist.github.com/rinigus/b9fe24551ba8f8e590d94a45761f4a54

With the files in place, it should be possible to enable/disable from OSM Scout Server. If that doesn't work either, then you would have to give corresponding systemctl --user command to enable the socket

However, its realy strange that you have this issue. Maybe something is wrong with permissions?

hwansing's picture

Hmm, permissions ....

.config/systemd/user directory is owned by root, and nemo is not allowed to create files or directories there. Maybe that's the problem?

rinigus's picture

That's surely a problem! I wonder why do you have such permissions. Change them to make owned by nemo and we are golden - all should be possible to do via the server (I mean enable/disable automatic activation )

hwansing's picture

Don't know why I have such permissions, I didn't set them by hand. They were set by the system. Nevertheless, I changed the oowner to nemo:nemo and it works fine. Thanks!

paolomi's picture

Hi :) Thanks for OSM Scout Server!

I'm translating valhalla in order to have localized routing and I want to test it before submitting it, so I ask you: have I to rebuild everything? or are there some tricks? (copy translated file somewhere?)

Thanks a lot

rinigus's picture

Paolomi, hi! Good question, I actually don't know. Note that I haven't updated Valhalla for a while and should do it soon. My main concern is that it may change database format, so I was thinking to synchronize update with new import. But when translation is ready, you should surely ping me when it gets upstream. It will be one more reason to make update.

As for testing, you could probably do it with the latest Valhalla on Linux PC or virtual machine.

paolomi's picture

Hi rinigus :) thanks for your reply.

I've updated italian translation because there is a problem with ordinal values, but they told me that "these are not meant for TTS engines anyway". I've not understood, so I'm asking them what to do. Please, have a look here:

https://github.com/valhalla/valhalla/pull/1167

https://github.com/valhalla/valhalla/issues/1165

 

EDIT: it's ok, now I've understood! It should be ok in the next update. Thanks for everything :)

rinigus's picture

Hi, I have updated Valhalla router (router module) which should include your translation as well. Enjoy!

247's picture

hi there,

so i have downloaded osmscout server and prior to downloading map is downloading me some 700 mb files (eg world coast limits and so on)...what are they?why can't be avoided?it's nice we can use osmscout with poor maps but with here we go i can have voices and my region's map with only 300 mb, it is really needed to download gb's of data?

rinigus's picture

Hi. It depends on the selected profile. If you can (hardware newer than J1), I would suggest to get Mapbox GL based map client WhoGo Maps. The initial download will be smaller for that. These data are world coastlines and address parser data (addresses can be parsed in almost any language).

247's picture

Hi,
I am on j1 and whogo seems to work on that, i have in fact downloaded osmscout to try whogo, since description says that osmscout was needed for offline navigation...anyway i'll take your answer as a no :)

rinigus's picture

Take it as a no for now. The download that you are talking about is coming from language parser. There is a new version of the parser available which may reduce this part. However, I didn't manage to work on it yet.

eatdirt's picture

Hi there,

everything works fine for me, sdcard formatted ext4, but since the last update, I cannot subscribe anymore to "France" as a whole. In the directory listing, I can only see the regions, but no link to get the whole country. Under "Italy", this seems ok, I can get the whole, so it seems to be some server related mising links?

 

Thanks!

Cheers,

Chris.

rinigus's picture

Hi Chris,

I dropped full France and Germany imports. For feedback I asked in the official TMO thread (https://talk.maemo.org/showpost.php?p=1540773&postcount=422) and since there was no general protest, decided to drop it. This makes it faster on my side (less huge imports), reduces double data on the servers (full country + regions). I took 4GB as a border and only these countries were affected.

Please download the regions and they should be automatically available as a joint entry from user's perspective (backends Mapbox GL, Mapnik, Geocoder-NLP, Valhalla). While you will see that reported sum is larger than before, the end space usage should be either the same or at least very similar.

Cheers,

Rinigus

eatdirt's picture

Arf!

I have tried that before, but on Poor Maps, I was only getting one region at a time and not the whole country. I think that is because I am still using "libosmscout" as a rendering. I'll certainly switch to Mapnik then, but from past experience, "libosmscout"  was providing the fastest rendering on Jolla 1. Any chance to make it compatible with region boundaries?

 

Thanks again for the great app!

Cheers,

Chris.

rinigus's picture

Yes, libosmscout backend doesn't support merging in the server. The newer versions of the library do support it, but the version used in the server does not. I have asked for someone to maintain libosmscout backend on it's developers list, but so far, there has been no volunteers. I personally use MapboxGL backend or, sometimes, Mapnik, hence interest on my part is limited and it would be better maintained by someone actively using it.

hwansing's picture

Hi, this app is really amazing, thanks! I had (apparently) the same problems as monkeyisland, the same error messages regarding "database image malformed". I tried to download hole Germany in one database, and that resulted in a 4,3GB big file - lying on a vfat filesystem (sdcard). However vfat is limited to 4GB file size :-)) So you need to format the sdcard as ext4, for example. Regards Holger

monkeyisland's picture

I have to say i also deleted the hole folder on sd card and let osm download the maps again. But no success

Pages