Kurviger 1.12.3 (Beta)

Kurviger 1.12 (Beta) is on Google Play (instructions):

- Navigation: offline routing (GraphHopper) (Pro)

Offline routing is now available in Kurviger:

  • Route planning: all routing calculations fallback to offline routing profile when there is no online connection.
  • Navigation: offline partial rerouting is calculated from user’s location to the route (based on rerouting mode).
    Offline reroute section joins the rest of the existing curvy route and navigation continues on the merged route.
    Every other “rerouting” nav activity should work similarly offline, like avoid road block or skip next waypoint.

Offline routing requires the presence of offline graphs (folders of routing data) for each region.
There are available offline graphs for each region in our new download server (like offline maps).
Unpack the downloaded zip in mobile device and load the graph via application’s routing menu.

Likewise the Mapsforge server also provides worldwide offline graphs.

You can also create offline routing graphs with desktop Cruiser:

  • Download any osm/pbf file from Geofabrik for your region.
  • Select “Speed mode” or “Flexible mode” and check the “Car” in the menu “Routing | Graph options”.
    “Speed mode” offers faster offline routing on mobile, though graph creation is slower on desktop.
  • Create the graph via menu “Routing | Create graph”: select any downloaded osm/pbf file and then an empty folder for graph output.
    Depending on region size and available memory, can increase Java heap size (Xmx) in bat / sh files and run Cruiser with them.
  • Move the created graph folder in mobile device and load the graph via application’s routing menu.

Offline routing currently has the following properties:

  • Offline routing calculations use the fastest profile (no curvy algorithms).
    If Robin can implement them to work offline on mobile, then I can add them.
  • No straightforward cross border offline routing yet (limitation of library).
    Depends also on input osm/pbf bounds (Geofabrik usually provides countries).
    Or use special region wide graphs: Alps, DACH (Germany+Austria+Switzerland).
  • I’ll also add BRouter offline routing, which doesn’t have these limitations.

Available in menu “Routing | Open data”.

- Import: change track color, width, style

You can change the track color, width and style (solid, dashed) for the imported route overlays.

Available in “Settings | Routing”.

- GPS logging: change track style (Pro)

You can select solid or dashed line style for the recorded GPS tracks.

Available in “Settings | GPS logging”.

Kurviger 1.12.1 (Beta) is on Google Play (instructions):

- Navigation: routing service option (Pro)

You can select explicitly the routing service among:

  • Kurviger (online)
    GraphHopper (offline)
  • Kurviger (online)
    BRouter (offline)
  • Kurviger (online)
  • GraphHopper (offline)
  • BRouter (offline)

Available in “Settings | Routing | Routing service”.

- Navigation: speed based auto zoom (Pro)

An implementation of speed based auto zoom is available, blended with visible distance factor and limited by min/max user options.

Available in “Settings | Navigation | Auto zoom mode”.

- Import: open kurviger files as overlays

You can now open kurviger files with all available modes, as overlays and / or for routing.

- App: info screen for loaded data (Pro)

A detailed info for all loaded map and routing data can appear on demand.

Available in menu “Tools | Info”.

Kurviger 1.12.2 (Beta) is on Google Play (instructions):

- Stability improvements

Kurviger 1.12.3 (Beta) is on Google Play (instructions):

We offer BRouter as another offline routing service (with cross border routing support).

Please read the detailed installation instructions in feature topic:

We’re looking forward for your feedback about the new version and we wish you a nice Kurviger experience! :motorcycle: :racing_car:


Sounds great and I’m looking forward to test it as soon as possible.

Regards, Nico

1 Like

Does this mean that rerouting will be calculated always offline, even if online connection would be available?
Meaning, that the rerouted part - back to the existing curvy route - would be always “fastest”?


No, when there is available internet, the (re)routing uses Kurviger server and curvy profiles.

When there is no internet, a “fastest” partial rerouting is done back to the existing curvy route.

1 Like

You can test offline routing at home if turn off internet or enable airplane mode on your Android devices.

wow, this sounds like an awsome big advantage :slightly_smiling_face: :upside_down_face: :smiley:… hopefully the weather gets better soon, so I can test it on the road.

I don’t see the kurviger 1.12 yet for downloading. Do I understand right that I extract the graphs into a subfolder of the maps folder and then can load them with routing
–> open data? Every country in an own subfolder there? Can I load them all at once or several countries at the same time like for maps?

1 Like

well you deserve 21324 coffee machines !!! Always when you loose faith that light comes ( nothing religious in that :slight_smile: )


It must have been published by now.

Each graph zip file contains inside one folder with offline routing data and you can extract it anywhere.

Unfortunately that is not currently supported by GraphHopper routing library.

Instead can use special region wide graphs, like Alps or DACH (Germany+Austria+Switzerland).

In the future I will see also BRouter offline routing to be integrated in Kurviger.
(which doesn’t have that limitation)

Perfect answer, thanks a lot. This is really a benefit in Kurviger. For problems solution are provided or advised. :+1:

It works!! I’m happy :grinning: :yum:… and unhappy at the same time … :disappointed_relieved: :weary: :sob: … but unhappy only because it’s pissing down outside and I can’t try it directly with the bike under my lederhosen… :hugs:… the weather doesn’t get better before next weekend.


Danke für das Update. Meine Frage dazu, müssen die Offline-Routendaten aktualisiert werden oder reicht es diese einmalig herunterzuladen?

Thanks for the update. My question, do the offline route data have to be updated or is it sufficient to download it once?

1 Like

Kurviger 1.12 (Beta) with offline routing seems being published by Google Play and should be available now for everyone.

We generate new offline maps and offline routing data regularly.

You can update more often the routing data, which are more important for planning / navigation.

An automatic download / update of maps + graphs will come in the future,
probably as in-app subscription feature, since its development is not trivial.

1 Like

Geht klar, danke.

All right, thanks.

In former versions there was a hint (bubble) which offline-maps are loaded.
I couldn’t find any hint which maps have been loaded anymore. Did I miss something?

It’s disabled for now, thinking for a more suitable way to present such info without (annoying) messages on app start. Also users will start asking for loaded graph info now (and other such info in future).

1 Like

That is indeed a fundamental step in Kurviger’s evolution! GREAT!!!
Congratulations! Uli

1 Like

Loading graph data and offline routing works great on my Huawei P20 Pro (running Android 9). But unfortunately it doesn’t on my Moto G3 (running Android 6) which is my motorcycle navigation device: I always get an “invalid routing data” message if trying to open the graph data.

I’m using the data from the “dach.zip” and checked twice that the downloaded data isn’t corrupted (first downloaded it directly from the smartphone and then on my PC and transferred it onto the phone). I even made a binary compare between the data on my Huawei and the Moto (both are the same). And I tried two different ways to store and load the graph data: on the internal memory (approx. 7GB free space left) and on the external SD card (approx. 22GB free space left).

Any hints what could be wrong? Could it be that it’s the old Android version (so far I had no problems while using Kurviger on that phone)?

Please see also the discussion here in offline routing feature topic.

Cannot know what happens with those large routing data on more weak devices,
though smaller graphs seem working fine.

Need to reproduce it somehow.
Can be memory or storage problems or something else…