Offline Maps Guide

ezOS includes an offline map viewer for navigation without cellular or internet connectivity.

Maps are stored as .tdmap files on the SD card.

Quick Start

1. Download source data: Get a PMTiles file from Protomaps

2. Convert to TDMAP format:

   cd tools/maps
   pip install -r requirements.txt
   python pmtiles_to_tdmap.py input.pmtiles -o map.tdmap
   

3. Copy to SD card: Place map.tdmap in the root of your SD card

4. Open in ezOS: Navigate to Menu → Map Viewer

Conversion Options

Basic Usage

python pmtiles_to_tdmap.py input.pmtiles -o output.tdmap

Limit to Specific Region

python pmtiles_to_tdmap.py input.pmtiles \
    --bounds 4.0,52.0,5.5,52.5 \
    --zoom 10,14 \
    -o netherlands.tdmap

Options:

Large Regions

For large areas, the conversion saves checkpoints every 500 tiles. If interrupted,

simply run the same command again to resume.

TDMAP Format

The TDMAP format is optimized for the ESP32's limited memory:

File Size Estimates

RegionZoom LevelsApproximate Size
City10-165-20 MB
Country8-1450-200 MB
Continent6-12200-500 MB

Map Settings

Configure the map viewer in Settings → Map:

Troubleshooting

"No map file found"

Ensure map.tdmap is in the root of the SD card and the card is properly inserted.

Slow loading

Large map files may take a few seconds to index on first load. The index is cached

for subsequent accesses.

Missing areas

Check your --bounds parameters. The conversion only includes tiles that intersect

the bounding box.

See Also