3DS Store › Apps › 3ds Google Maps

3ds Google Maps changelog

v2.0 · Apr 15, 2026

What's New in v2.0

Offline Tile Caching

  • Tilepack format — download thousands of tiles on your PC and pack them into a single .tilepack file for your SD card
  • PC download tool (tools/download_region.py) — bulk tile downloader with 8 parallel workers and SHA-256 deduplication
  • In-app Download Region — download tiles for your current map view directly on the 3DS (Settings > Data tab)
  • Auto-loading — the app checks for sat.tilepack and street.tilepack on startup

New Tile Source

  • Esri World Street Map — switchable alongside OSM and Esri satellite in the Tiles settings tab

Other

  • Comprehensive README rewrite with offline caching docs
  • Updated .gitignore

Installation

  1. Copy 3ds_google_maps.3dsx to sdmc:/3ds/3ds_google_maps/ on your SD card
  2. (Optional) Generate tilepacks with python tools/download_region.py and copy them to sdmc:/3ds_google_maps/tiles/
  3. Launch via Homebrew Launcher

v1.0.0 · Apr 3, 2026

🗺️ 3DS Google Maps — v1.0.0 (Initial Release)

A fully-featured interactive maps application for Nintendo 3DS homebrew.

✨ Highlights

• No proxy required — map tiles are downloaded directly over HTTPS on-device using libcurl + mbedTLS

• Dual-screen display — top screen shows the map, bottom screen shows the interactive UI panel

• GPS tracking via your phone — the 3DS runs a TLS HTTPS server; scan a QR code with your phone to stream live GPS coordinates back to the console

🗺️ Map & Navigation

• OpenStreetMap street tiles over HTTPS (tile.openstreetmap.org)

• Switchable satellite imagery via Esri World Imagery

• Place search — search for addresses and places via Nominatim geocoding

• Route planning — enter start & destination, route drawn on the map

• Reverse geocoding — tap “Identify” to find out what’s at the map center

• Favorites — save and recall locations (persisted to SD card)

• Recents — last 10 viewed locations remembered in-session

• Night mode for low-light use

🎮 Controls

• Touch panning — drag on the bottom screen to pan

• D-pad & Circle Pad — directional and smooth continuous panning

• L/R buttons — zoom in/out

• Red crosshair always marks the center of the map

• Debug overlay shows zoom level, tile stats, and FPS

📡 GPS Phone Bridge

• 3DS runs a TLS 1.2 HTTPS server on port 8443 (mbedTLS)

• QR code displayed on the top screen — scan with your phone to connect instantly

• Phone streams GPS coordinates to the 3DS every second via POST /location

• Also supports NMEA TCP client mode (GPS2IP / similar apps)

• Map auto-centers on your live position when tracking is enabled

🗂️ Tile Caching

• SD card cache — tiles saved to sdmc:/3ds_google_maps/tiles/ for instant offline reload

• RAM cache — up to 64 tiles held in memory

• Prefetch ring — configurable ring of tiles prefetched around the current view

⚙️ Settings & UI

• Full settings panel with tabs: View, Tiles, Data, GPS

• Status bar showing current action

• Basic Street View panorama viewer (requires proxy)

🛠️ Build Info

• Language: C

• Toolchain: devkitARM (devkitPro)

• Libraries: libcurl 8.4.0, mbedTLS 2.28.8, libpng, citro2d/citro3d, libctru

• Output: 3ds_google_maps.3dsx

📋 Installation

  1. Copy 3ds_google_maps.3dsx to sdmc:/3ds/3ds_google_maps/ on your SD card
  1. Launch via the Homebrew Launcher
  1. Connect to WiFi before starting

⚠️ Known Issues

• GPS server uses a self-signed cert — browsers will show a security warning (tap “Advanced → Proceed”)

• TLS handshake on Original 3DS takes ~300-500ms (normal)

• Tile downloads can be slow on O3DS (~2-4s per tile at high zoom) — hardware limitation

• libcurl on 3DS uses HTTP/1.1 only (no HTTP/2)

🔮 Planned

• Custom markers and points of interest

• Offline map pack support

• Additional map styles (terrain)