Ipynb to edit out ALPR exposed roads from PBF files. This can then be converted into an OBF file for use in OsmAnd.
Other variations:
⭐ For those that want weighted routing with penalties. There is now bbr-weights
⭐ There is also the Comaps branch for producing a pbf file that works with Comaps (repo). Also some tips to get the pbf converted to an mwm and working here. It should also work with Organic Maps due to the similarities with Comaps.
OsmAnd is available for iOS as well, although I have not tested.
bigbrouter.webm
I wrote a step by step guide showing the whole process. Link here
TLDR:
- Download env Requirements. Download pbf map data from geofabrik or other providers
- Prep the pbf data with the pbf-prep.ipynb
- Process the data with big-b-router.ipynb
- Plug in the output to OsmAndMapCreator
- Transfer OBF file to phone and import with OsmAnd
Tested with:
conda create -n gis-py312 -c conda-forge geopandas folium pyrosm pyosmium notebook ipyleaflet osmium-tool
- notebook
- geopandas
- folium
- pyrosm
- pyosmium/osmium (pyosmium in conda-forge, but osmium in pypi ; very confusing)
- ipyleaflet
- The paid Osmand+ (G-Play) option if you need/want Android Auto
- Osmand~ from F-Droid and mounting the phone (Osmand~ has extra features compared to the G-Play version)
- Lastly, if you really want Android Auto AND do not want to pay, I would recommend Comaps (G-Play). Although, I should warn that the setup process for comaps is harder and the routing can be suboptimal.
Comparison matrix:
| Application [🟢Rec] | Free? | Navigation/Re-routing | Works offline | Android Auto | Easy? |
|---|---|---|---|---|---|
| Osmand (G-Play) | ✅ | ✅ | ✅ | ❌ | ✅ |
| 🟢Osmand+ (G-Play) | ❌1 | ✅ | ✅ | ✅ | ✅ |
| 🟢Osmand~ (F-Droid) | ✅ | ✅ | ✅ | ➖2 | ✅ |
| 🟡Comaps (G-Play) | ✅ | ✅ | ✅ | ✅ | ❌3 |
| Comaps (F-Droid) | ✅ | ✅ | ✅ | ➖2 | ❌3 |
- Osmand+ (Maps+) costs ~15$/year or 70$/once, giving AA/Carplay access (sometimes goes on sale)
- It seems like it is possible to enable AA by pretending/faking the app is installed through G-Play. You will likely need a rooted device with Gapps, and to use Kinginstaller. If "rooted" or "Gapps" doesn't make sense to you, then I would advise against doing this.
- Comaps uses a different mapgen, which is in the comaps branch. Getting the comaps repo setup for map conversion is difficult, but I have some helpful advice
- Maybe scaling up mapgen and distributing map files
- Impossible without OpenStreetMap data & contributors
- pyosmium / osmium - nothing else worked for editing osm data and keeping/returning it as a pbf
- OsmAnd and OsmAndMapCreator
- pyrosm for reading pbfs to geopandas
