Every release, both platforms, no marketing gloss. Full commit-level history lives in the iOS and Android release pages.
iOS 2.41.0
iOSSeptember 8, 2026
Server setup gets flexible: Marti API port, TCP Quick Connect, custom basemaps
Per-server Marti API port. Edit Server gets a "Marti API Port" field next to the streaming and enrollment ports, so Mission Sync and Data Sync work against servers that run their REST API off 8443. Saved servers and shared profiles carry on unchanged. Reported on GitHub (#114).
Quick Connect over plain TCP. The Streaming Protocol row is now a real TCP | SSL selector: TCP mode skips enrollment, defaults to port 8087, warns that traffic is clear-text, and connects directly. Reported on GitHub (#103).
Custom XYZ/WMTS tile basemap: point the 2D map at any tile server, live traffic overlays included. Android parity.
Paired-radio split: a phone plus its paired Meshtastic radio no longer shows as two drifting dots, standalone trackers stay visible. Toggle under Meshtastic settings.
Mesh link-state dot on the Mesh tab: green connected, amber connecting, red failed, grey no device.
Radial menu floats directly on the map, no backdrop, matching Android.
Done buttons on Settings and Servers return to the map.
Android 0.43.0
AndroidSeptember 1, 2026
Community QoL: BLE auto-reconnect and more map
OmniTAK's first external code contribution — every feature in this release was contributed by a field tester who runs OmniTAK at live MilSim events.
Meshtastic BLE auto-reconnect — a dropped radio (battery swap, walked out of range, power cycle) reconnects on its own within ~20 seconds of coming back, screen off included. Tapping Disconnect still means disconnect.
The bottom toolbar auto-hides on the map tab — tap the bottom edge to bring it back — and now draws as an overlay, so showing or hiding it never resizes the map. Every other tab keeps it always visible; Settings toggle to turn off.
New top-info-bar toggle collapses the status row down to just the server connection dot — for phones mounted horizontally on a plate carrier, where every row of map counts.
Mesh node list now shows how long ago each node was last heard, beside SNR and hop count.
Smaller download — a dependency had been silently disabling code shrinking for the whole app; fixed, APK drops 81 MB to 70 MB.
Android 0.42.2
AndroidAugust 31, 2026
Meshtastic radio control fix
In-app channel create/set now actually takes effect on the radio — admin messages are addressed to the attached radio instead of broadcast, which the firmware's admin module ignores.
Position broadcast interval setting now reaches the radio (was written to a deprecated field).
Non-Latin device names (Chinese, etc.) no longer fail silently — names are clamped in UTF-8 bytes.
Android 0.42.1
AndroidAugust 28, 2026
Field-tested: background PPLI and radio visibility
Background PPLI fixed — position keeps flowing with the screen locked, for server and mesh-only devices alike. Driven directly by field-test feedback from a 50-operator MilSim prep.
Paired-radio visibility — radios paired to a TAK client no longer double up their operator's dot; standalone trackers (vehicles, mission objects) stay visible. A link-state dot on the Mesh tab shows connection health at a glance.
LAN server discovery — TAK servers advertising over Bonjour/mDNS show up in Add Server, tap to prefill.
Echelon / unit-size modifiers on MIL-STD-2525 symbols (Team through Corps).
Geofencing — circle and polygon fences with entry / exit / dwell events — plus elevation-profile and line-of-sight foundations, ported from iOS.
Now targets Android 16.
iOS 2.40.0
iOSJune 25, 2026
Off-grid mesh takes a big step forward
Dropped markers now share over the mesh — points propagate to other OmniTAK devices over Meshtastic/MeshCore with no TAK server required.
In-app Meshtastic settings: view, create, and share channels by QR, set broadcast interval, role, and rebroadcast scope — no stock Meshtastic app needed.
Standard TAKPacket encoding for interop with ATAK's Meshtastic plugin.
CoT point age + data-source indicators — see how old a contact's position is and whether it came from the server or the mesh.
Meshtastic connect times out cleanly instead of hanging on “Connecting.”
Landscape map chrome no longer eats the map (plate-carrier orientation).
Certificate enrollment parses /Marti/api/tls/config with a real XML parser — servers emitting attributes in any order now enroll with the correct subject DN.
Android 0.40.0
AndroidJune 26, 2026
Big mesh + situational-awareness update
Off-grid mesh marker sharing over Meshtastic/MeshCore (TAKPacketV2, port 78).
Full radio setup in-app: channels with link + QR sharing, device role, broadcast interval, rebroadcast scope, LoRa region + modem preset, and device name.
Mesh ↔ TAK-server relay (gateway mode) — optional and off by default, bridges CoT both ways, loop-safe and throttled.
CoT point age, optional on-map staleness overlay, and per-point data-source indicator.