# MeshMapper — MeshCore Wardriver

> Wardriving app for MeshCore devices to map mesh network coverage. (iPhone/iPad app by CHRISTOPHER CARL SCHNOBB.)

- Source: https://appshunter.io/ios/app/meshmapper/id6758073991 (this page in markdown: same URL + `.md`)
- Developer: [CHRISTOPHER CARL SCHNOBB](https://appshunter.io/developer/1870410772)
- Category: Utilities
- Price: Free
- Rating: 4.69/5 from 13 App Store ratings · 4 written reviews indexed
- Age rating: 4+
- Requires: iOS 13.0 · 34 MB
- Languages: English
- Released: 2026-02-17
- Data updated: 2026-08-27
- Monetization: free
- User reviews in markdown: https://appshunter.io/ios/app/meshmapper/id6758073991/reviews.md

## What is MeshMapper?

MeshMapper is a wardriving app for MeshCore mesh network devices. Connect to your MeshCore companion device via Bluetooth, send GPS-tagged pings to discover nearby repeaters, and contribute coverage data to the community mesh map.

FEATURES

• Bluetooth Low Energy connection to MeshCore devices
• Real-time GPS tracking with automatic ping mode
• Discover and track mesh network repeaters
• View signal strength (RSSI/SNR) for each repeater
• Automatic upload to MeshMapper community database

Help map mesh network coverage in your area and contribute to the growing MeshMapper community!

## Key features

- Bluetooth Low Energy connection
- Real-time GPS tracking
- Discover mesh network repeaters
- View signal strength (RSSI/SNR)
- Automatic community database upload

## Recent user reviews (4 of 4)

All indexed reviews: https://appshunter.io/ios/app/meshmapper/id6758073991/reviews.md

### 3/5 — It is not possible to upload data to meshcoretel.ru

*2026-06-11*

It is not possible to upload data to meshcoretel.ru

### 3/5 — Works most of the time.

*2026-05-29*

App will sometimes not connect to internet or unconnect to vehicle Bluetooth. Controls are alittle confusing with auto pinging.

### 5/5 — Vital tool for Understanding Meshcore

*2026-03-22*

This app makes visible how the Meshcore network works in real time and in your neighborhood. See how your repeater is working, troubleshoot transmitter/antenna issues and feed your OCD by encouraging you to turn the map green!

### 5/5 — Cool Data. Fun Experience

*2026-02-27*

Super fun to open up and watch in my peripheral while driving around. The data is pretty useful for planning out and building the mesh too

## Frequently asked questions about MeshMapper

### What is MeshMapper used for?

MeshMapper is a wardriving app designed to connect with MeshCore companion devices. It helps users discover nearby mesh network repeaters, track their signal strength, and contribute this data to a community map to help visualize mesh network coverage.

### How does MeshMapper use GPS?

MeshMapper utilizes real-time GPS tracking to automatically tag pings sent to discover repeaters. This GPS data is crucial for accurately mapping the location of mesh network repeaters and their coverage areas.

### Is MeshMapper free to use?

Yes, MeshMapper is available for free. The app does not have any in-app purchases or advertisements, making it completely free to download and use.

### What devices is MeshMapper compatible with?

MeshMapper is designed for iOS devices, including the iPhone and iPad. It requires a Bluetooth Low Energy connection to a MeshCore companion device to function.

### How often is MeshMapper updated?

The latest version of MeshMapper is 1.2.0, which was last updated on March 18, 2026. While specific update frequency isn't detailed, the app has seen recent development.

### What is the age rating for MeshMapper?

MeshMapper has an age rating of 4+. This indicates it is suitable for users of all ages, with no content restrictions.

### How does MeshMapper contribute to the community?

Users can contribute to the MeshMapper community by allowing the app to automatically upload discovered repeater data. This collective data helps build a comprehensive map of mesh network coverage in various areas.

### Does MeshMapper require an internet connection?

While MeshMapper uses GPS and Bluetooth for discovery, an internet connection is required for the automatic upload of coverage data to the MeshMapper community database. Discovery and signal strength viewing can be done offline.

## Version history (last 5 releases)

### 1.3.0 — 2026-06-26

Major release — map engine fully rewritten, in beta since April.

New Features
- New vector tile map engine (OpenFreeMap) with Liberty as the default layer
- Offline Maps: download regions for offline wardriving with queued downloads and automatic tile caching
- TCP and USB Serial device connections alongside Bluetooth
- Privacy-first wiretag replaces GPS coordinate broadcasting (off by default)
- Multi-hop TX echoes grouped under their parent ping with color-coded outcomes
- RX hop path: tap any RX marker to see the full mesh path as tappable repeater chips
- Session History: view past sessions on the map or as noise floor graphs
- Repeater marker clustering with tap-to-expand spiderfy
- Tap repeaters and coverage tiles on the map for details, matching the web UI
- Grid mode tap details now match the web UI
- Unified focus mode across pings, repeaters, and tiles with minimizable detail bar
- Flood Traffic toggle with regional admin policy sync
- Zone transfers auto-register your device silently
- Stale repeaters hidden from map based on per-region threshold
- Duplicate repeater ID warnings with amber indicators
- Radio settings captured for backend data filtering
- Offline sessions downloadable via share sheet
- Landscape control panel minimize button

Offline Uploads Reworked
- Multi-region drives upload in one go with no manual retries
- Each ping placed into the correct region's map by GPS location
- Upload summary shows per-region ping breakdown
- Pings far outside any region reported as "too far" instead of silently lost
- Sessions persist after upload with download still available

Improvements
- Auto-follow zoom is one-shot: zooms in once, then only pans
- Ping buttons respond instantly on tap
- Significant battery and performance improvements

Bug Fixes
- Fixed phone heat and battery drain during long sessions
- Fixed Crashes on launch and resume from background
- Fixed BLE reconnect delay (4+ min → under 10s)
- Fixed TCP background handling on both platforms
- Fixed Anonymous mode getting permanently stuck after BLE disconnect
- Fixed TX pings silently dropped when driving new areas
- Fixed offline upload failures and legacy session uploads
- Fixed focus mode jumping to (0, 0) for unlocated repeaters
- Fixed GPS marker drift in heading mode
- Fixed auto-ping stopping on zone transfers
- Fixed zone admin overrides persisting across zone changes
- Fixed preferences being wiped on startup
- Numerous additional stability and UI fixes

### 1.2.2 — 2026-04-20

### New Features
- Zone grace period for region transitions: driving between zones no longer disconnects you. The app pauses pinging and shows an "Out of Zone" overlay with the nearest zone name, distance, and a 5-minute countdown. Once you enter the next zone, pinging resumes automatically without reconnecting.
- Client-side zone transfers during active wardriving. When you cross into a new zone (e.g., BOS → PVD), the app handles the transfer directly: releases the old session, acquires a new one, updates channels and scopes, and resumes auto-ping automatically. A "Changing Zone..." overlay shows during the transfer with a cancel option.
- Color vision deficiency support now extends to map coverage tiles. When a color vision type is selected in Settings, the tile server returns adjusted coverage squares to match your palette. Supports protanopia, deuteranopia, tritanopia, and achromatopsia.
- Custom API endpoint forwarding: optionally forward your wardrive data to a third-party HTTPS endpoint alongside MeshMapper. Configure in Settings > API Endpoints with your URL and API key. Supports clipboard import for quick setup, optional device public key prefix and IATA zone code in payloads. Best-effort, never blocks wardriving. Full docs at https://wiki.meshmapper.net/app_third_party_api/.
- Ping Focus Mode: tap any ping marker to see which repeaters heard it. Draws dotted lines color-coded by signal quality with distance tags, fades unrelated markers, and zooms to fit. Works for all ping types. Ambiguous repeater matches get a white border outline. Dismiss to snap back to your previous view.
- Chomper GPS marker: a new marker style in Settings > GPS Marker. Cyan color, wide mouth that faces your direction of travel and rotates with heading.

### Bug Fixes
- Fixed noise floor graph showing wildly incorrect values (e.g., 13,000+ dBm) on certain devices. Some firmware versions return oversized BLE responses on the same response code as radio stats. Added frame validation to reject these responses.
- Tapping a repeater ID in the ping focus popup now shows distance from the ping location, not your current GPS position.
- Offline upload now shows "GPS required" instead of the misleading "Advert your device on the mesh" when GPS is disabled. Only GPS and network connectivity are needed, not a device connection.
- Improved error handling for malformed mesh packets. Corrupted packets with oversized path lengths now produce a clear diagnostic message instead of an unclear RangeError.
- Seeed Xiao nRF52840 boards are now automatically recognized during connection. Previously required manual power level selection on every connect.
- Repeater info popup no longer shows "Repeater data not available" for the entire session after a network timeout. A failed fetch is now automatically retried on the next zone check.
- Tapping a repeater ID chip no longer gets stuck on "Repeater data not available." Now fetches on demand with a loading indicator and tap-to-retry. Works in offline mode too.
- Zone check retry loop no longer continues after enabling Offline Mode. Retry timers and maintenance polling are now cancelled immediately.
- Zone check no longer gets stuck at "Checking Zone..." if the repeater list fails to load. The zone check now completes immediately and repeaters load in the background.
- Top-heard display and API payload now only track direct single-hop TX echoes for more accurate signal readings.
- Fixed iOS App Store upload rejection (ITMS-90683) caused by unused permission macros in the build. Only location and notification permissions are now included.
- Fixed power level hint on the Map tab incorrectly directing users to Settings instead of the Connect tab.

### Improvements
- Enhanced offline sessions display.
- Improved error logging when the API returns unexpected HTML responses (e.g., CDN/proxy error pages). Now logs a clear diagnostic instead of a raw FormatException.

### 1.2.0 — 2026-03-18

Highlights

Multi-Byte Path Hash Support
MeshMapper now fully supports MeshCore firmware v1.14.0+, expanding repeater IDs from 256 (1-byte) up to 65K (2-byte) or 16M (3-byte). Hex badges with dynamic sizing, square repeater markers, admin-enforced byte modes per region, passive multi-byte detection, and automatic conflict remediation for duplicate IDs.

Trace Mode
TX pings can now target a specific repeater instead of broadcasting to all repeaters. Designed for testing a single repeater's reach and coverage.

Discovery Drop Reporting
Failed discovery requests can now be reported as failed pings to help map dead zones and noise floor gaps. Enable it in Settings (off by default). Regional admins can enforce this region-wide.

More New Features
- Repeater markers now rotate with the map and stay upright
- Auto-ping stops after 30 min of no movement, saving battery and radio
- Repeater picker for Trace mode: browse nearby repeaters by name, hex ID, distance, and active status
- Live repeater snapshot: top 3 responded repeaters from your last ping, updating live

Changes
- Redesigned Connection tab for clarity
- Sound moved from control panel to Settings
- TX/RX and Trace now have independent byte settings
- "Path Bytes" renamed to "TX Bytes" with new "Trace Bytes" dropdown

Improvements
- Auto-ping shows "Skipped Xs" when movement is insufficient
- Hybrid mode defaults to enabled for new and existing users
- Minimum ping distance now configurable for TX and discovery pings
- Option to keep #wardriving channel after exiting a session
- CARpeater ID filter supports multi-byte regions
- Failed traces show as grey discs on the map
- Redesigned Log and Settings tabs
- Increased font sizes and improved readability
- Text scale clamping for accessibility settings

Bug Fixes
- Fixed GPS subscription leak doubling events on startup
- Fixed Hive corruption silently dropping entire wardrive sessions
- Fixed online/offline auth flows failing for unregistered devices
- Subscription leak fixes (thanks @robekl)
- Heartbeat retry with exponential backoff on network failure
- Session deadline tracking and offline queue preservation on expiry
- Discovery pings now use correct hop byte count in multi-byte regions
- Location permission flow no longer skips enforcement (#11, @robekl)
- Stale auto-ping timers cancelled on disconnect (#10, @robekl)
- GPS zone check errors no longer retry every 5 seconds while stationary
- Fixed offline pings lost on app kill or background (auto-saves every ~60s)
- Trace mode now correctly supports multi-byte repeater IDs
- Fixed zone capacity showing stale slot counts
- Fixed zone check flooding when driving with no network
- Fixed offline upload race condition that could crash BLE connection
- Various additional stability and layout fixes

Note: If your session ends uncleanly while in multi-byte mode, your radio will stay in multi-byte mode until you manually change it back.

### 1.1.1 — 2026-03-03

What's New in v1.1.1

Regional Flood Scoping
If a region has configured scopes on their repeaters, a MeshMapper regional admin can now set the scope of Active/Hybrid Mode TX pings. This limits flood messages to a specific channel, stopping wardriving pings from flooding past boundaries defined by the local mesh. Discovery pings are unaffected.

Anonymous Mode
New privacy option that renames your device to "Anonymous" for all mesh pings. Other wardrivers can no longer see your companion name. Your public key still handles geo-auth, but sessions and pings aren't stored with it on the server.

Auto Tile Refresh
Map tiles now refresh automatically after a successful upload, so new coverage appears near real-time.

Faster Uploads
TX and discovery pings upload on a 5-second timer, replacing the old batch system.

CARpeater Filter Improvements
Multi-hop CARpeater packets now report coverage from the underlying repeater instead of being dropped. A new toggle lets you disable the RSSI CARpeater filter in Wardrive Settings.

Offline Mode
Start wardriving immediately when zone check fails due to no internet.

Admin Controls
Regional admins can now enforce hybrid mode and set minimum ping intervals per-zone.

Bug Fixes
Fixed race conditions in API queue, tile refresh, and ping handling
Fixed map tiles not loading at low zoom on iOS retina displays
Fixed heard repeaters panel not scrolling for larger lists
Fixed stale BLE device name being used instead of current one
Fixed CARpeater filter order of operations and RX hop detection
Fixed wildcard scope #* not being recognized, causing incorrect packet types to be sent. Zones with no regional scope return #* as the wildcard, but the app only matched *, causing it to derive a TransportKey and call setFloodScope() with the literal string. This resulted in all TX pings being sent as TransportFlood (0x00/0x14) instead of regular FLOOD (0x01/0x15).

Performance
Memory capped to prevent bloat on long sessions
Replaced force unwraps with safe null checks to prevent crashes
Listen windows reduced from 7s to 5s
Disconnect now uploads immediately

Improvements
Debug logs are now enabled by default
Upload logs now presents a dialog prompting the user to provide context for the upload. Replaced the cloud icon with a dedicated upload button beside "Delete All" under Debug Logs.

### 1.0.1 — 2026-02-17

First production release! Version bumped to 1.0.1 to align with Apple App Store and Google Play Store versioning requirements.

## Related topics

[meshcore wardrive](https://appshunter.io/ios/topics/meshcore-wardrive) · [meshmapper](https://appshunter.io/ios/topics/meshmapper) · [meshcorescanner](https://appshunter.io/ios/topics/meshcorescanner) · [meshcore](https://appshunter.io/ios/topics/meshcore) · [mesh network](https://appshunter.io/ios/topics/mesh-network) · [meshcore one](https://appshunter.io/ios/topics/meshcore-one) · [meshcapade me](https://appshunter.io/ios/topics/meshcapade-me) · [meshcore update](https://appshunter.io/ios/topics/meshcore-update)

---

*Data collected daily from the US App Store and indexed by [AppsHunter](https://appshunter.io/). User reviews are verbatim App Store reviews. Ratings, prices and chart positions refresh continuously; this snapshot is from 2026-08-27.*
