Offline Anti-ALPR routing and navigation for your phone.
Ipynb to edit out ALPR exposed roads from PBF files. This can then be converted into an OBF file for use in OsmAnd.
Finished OBF file demo
bigbrouter.webm
OsmAnd is available for iOS as well, although I have not tested.
Usage
I wrote a step by step guide showing the whole process. Link here
TLDR:
- Download Requirements (env), 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
Requirements
Tested with conda create -n gis-py312 -c conda-forge geopandas folium pyrosm pyosmium notebook ipyleaflet osmium-tool
cli tool:
python env:
- notebook
- geopandas
- folium
- pyrosm
- pyosmium
- ipyleaflet
Updates
I got maps working in Comaps, so its time to compare all the options.
My recommendation is either:
Osmand~ from F-Droid and mounting the phone (Osmand~ has extra features compared to the G-Play version)
or
The paid Osmand+ (G-Play) option if you need/want Android Auto
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)
- Have not done this, but it seems like it is possible to enable AA by pretending/faking the app is installed through G-Play. You most likely need a rooted device to use Kinginstaller
- Comaps uses a different mapgen in the comaps branch. Getting the comaps repo setup for map conversion is difficult, but I have some tips that might help [link not here yet]
Future Ideas:
- Working on getting the mapgen to work with routing.xml files for weighted routing. The weights would also be togglable and adjustable within the driving profile. (this would only be for osmand)
Credits
- 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
