Navigation Setup
Map display and routing are two independent features, each configurable as offline or online. You can mix and match freely.
Two independent choices
| Offline (local) | Online (internet) | |
|---|---|---|
| Map display | Local .mbtiles file |
Online tile server |
| Routing | Local Valhalla + routing maps | Remote Valhalla server |
Map Display
The map display setting controls which tile source is used to draw the map on screen. It has no bearing on whether you can navigate - that's routing (below).
Switch between modes: Menu → Settings → Map & Navigation → Map Type
Offline display tiles
Offline display uses a local .mbtiles file (an SQLite database of pre-rendered map tiles). Once installed, it works without any internet connection.
Get a tile file for your region:
- Librescoot OSM Tiles releases, pre-packaged regional extracts optimised for the scooter display
- Or generate your own with maptool
Typical file sizes: city tile file ~2–16 MB, individual German state ~20–140 MB, all of Germany ~680 MB.
To install the tile file, drop it into the maps/ folder of the USB drive in Update Mode (easiest), or copy it to /data/maps/map.mbtiles on the DBC over SSH. The on-device path /data/maps/ is only relevant when SSH'd in — Update Mode only ever exposes the maps/ folder on the USB drive.
Pre-built tile packages currently cover all 16 German states. To use offline maps elsewhere, generate tiles with maptool from any OpenStreetMap extract.
Online display tiles
Online display fetches tiles from an internet tile server as you pan the map. No local file needed, just an active internet connection. Selected automatically if no local tile file is present and the map type is set to Online.
Routing
Routing provides turn-by-turn navigation. It is completely independent of which tile source you use for display. Librescoot uses the Valhalla routing engine.
Local (offline) routing
Local routing runs Valhalla directly on the scooter's dashboard computer. It requires Valhalla routing tiles, a separate dataset from the display .mbtiles file. Routing tiles contain the road graph that Valhalla needs to calculate routes.
Download routing tiles for your region from the Librescoot Valhalla Tiles releases. Per-state .tar archives are available for all 16 German states.
Typical archive sizes: small city-states (Bremen, Hamburg, Saarland) ~20–60 MB, most states ~100–340 MB, Bavaria ~910 MB. The Update Mode drive is limited to 1 GB, so for combinations of display tiles and large routing archives you may need two sessions — see the Update Mode guide.
Transfer the archive to the scooter. The easiest way is Update Mode: drop the *tiles.tar into the maps/ folder of the USB drive that appears, eject, and the scooter installs it automatically. Alternatively, copy it directly to /data/valhalla/tiles.tar on the DBC over SSH. Do not extract the archive either way — Valhalla reads the tar directly via its tile_extract setting. When Valhalla is up and has data loaded, the Navigation menu becomes available on the dashboard automatically.
In Update Mode you only ever see the
maps/ folder on the USB drive — the scooter handles the rest. /data/valhalla/ is the path on the scooter's internal filesystem and only matters when you're SSH'd in. Don't try to create /data/valhalla/ through Update Mode, it won't work.
Pre-built routing tile packages currently cover all 16 German states. For other regions, you can build Valhalla tiles from an OpenStreetMap PBF extract using the standard Valhalla build process.
Remote (online) routing
You can configure Librescoot to use a remote Valhalla server instead of running one locally. The routing endpoint defaults to local (localhost:8002) but can be changed via lsc:
lsc settings set dashboard.valhalla-url https://your-valhalla-server.example/
Use lsc settings list to see the current value.
Transferring files via USB (Update Mode)
Update Mode exposes a virtual drive on your computer over USB Mass Storage. Copy map files to it, eject, and the scooter installs them automatically. See the Update Mode guide for full instructions.
In short: enter Update Mode from Settings → System → Enter Update Mode, connect USB, copy your .mbtiles and/or *tiles.tar files into the maps/ folder, and safely eject.
Verifying it works
After transferring files, confirm navigation is active before riding:
- Open the menu (double-tap left brake). If Navigation Setup is no longer listed, your configuration is complete
- If it is listed, tap it to see which component is still unavailable (routing engine, offline display maps, or both)
- On the scooter over SSH, check Valhalla is running:
ssh -J root@<mdb-ip> root@192.168.7.2 "systemctl status valhalla"
- Test routing directly:
ssh -J root@<mdb-ip> root@192.168.7.2 \ "curl -s http://localhost:8002/status | python3 -m json.tool"
A healthy Valhalla returns{"version": "...", "tileset_last_modified": ...}. If it returns an error, Valhalla has no tiles loaded. Check that/data/valhalla/tiles.tarexists. - Confirm display tiles are found:
ssh -J root@<mdb-ip> root@192.168.7.2 "ls -lh /data/maps/"
You should seemap.mbtiles.
SSH transfer (advanced)
If you have SSH access, you can transfer files directly without Update Mode. The DBC (dashboard computer, at 192.168.7.2) is only reachable via the MDB as a jump host:
ssh -J root@<mdb-ip> root@192.168.7.2
Display tiles
- Copy the
.mbtilesfile to the DBC:scp -J root@<mdb-ip> tiles_berlin.mbtiles root@192.168.7.2:/data/maps/map.mbtiles
- On the DBC, restart scootui-qt to pick up the new file:
ssh -J root@<mdb-ip> root@192.168.7.2 "systemctl restart scootui-qt"
Valhalla routing tiles
Valhalla reads the .tar archive directly — don't extract it. Just place it at /data/valhalla/tiles.tar.
- On the DBC, create the target directory:
ssh -J root@<mdb-ip> root@192.168.7.2 "mkdir -p /data/valhalla"
- Copy the archive directly to its final location:
scp -J root@<mdb-ip> valhalla_tiles_berlin.tar root@192.168.7.2:/data/valhalla/tiles.tar
- Restart Valhalla:
ssh -J root@<mdb-ip> root@192.168.7.2 "systemctl restart valhalla"