Highlights
Meshtastic 2.8 support
-
Added support for Meshtastic firmware 2.8.0 and newer.
-
Implemented compact initial node database loading followed by background position and telemetry replay.
-
Preserved the legacy connection flow for older firmware versions.
-
Added firmware compatibility validation for device settings.
-
Added support for new Meshtastic 2.8 features:
- Mesh Beacon;
- packet signature policies;
- new protobuf fields;
- repeated configuration fields.
-
Added validation for legal region and LoRa preset combinations.
-
Added licensed-operator mode validation for applicable regions.
-
Added Mesh Beacon limits for message length, interval, and channel index.
-
Limited long node names to 24 UTF-8 bytes on Meshtastic 2.8.
-
The deprecated UA_868 region can no longer be selected for new configurations.
-
Improved configuration snapshot import, export, and editing.
-
Updated the built-in documentation in English, Russian, and German.
Maps and OpenStreetMap policy compliance
-
Removed bulk downloading of selected areas from tile.openstreetmap.org.
-
Removed background prefetching and offline tile downloads.
-
MeshApp now requests only tiles visible in the current map viewport.
-
Queued requests are discarded when their tiles leave the viewport.
-
Limited concurrent tile requests to two.
-
Added HTTP/2 support.
-
Implemented HTTP-compliant caching:
- Cache-Control;
- Expires;
- ETag;
- Last-Modified;
- conditional requests;
- 304 Not Modified handling;
- a seven-day fallback cache lifetime.
-
Added support for configuring an alternative interactive tile provider.
-
Added an identifiable User-Agent
-
Preserved support for connecting a pre-existing tile directory in z/x/y.png|jpg|jpeg format for offline use.
-
MeshApp does not download or update connected offline directories through OpenStreetMap servers.
For offline maps, use tiles obtained from a provider whose terms explicitly permit offline use.
Bluetooth LE
- Improved PIN entry handling during device pairing.
- Stale PIN dialogs are now dismissed when a new request arrives.
- The pairing dialog closes automatically after disconnection, connection failure, or completion.
- Prevented duplicate handling of completed pairing requests.
- Improved native BLE resource cleanup after disconnection.
- Improved pairing behavior in graphical and terminal modes.
Chats and notifications
- Notification preferences are now applied independently to each remote RPC connection.
- Muted channels and direct-message conversations no longer produce remote system notifications.
- The muted state is applied correctly to remote chat snapshots.
- Improved chat data transfer over RPC.
Linux and Flatpak
- Fixed the Linux system tray icon.
- Added complete Ayatana AppIndicator integration for Flatpak.
- Fixed the application icon in DEB packages.
- Added a correct desktop entry for Linux packages.
- Fixed emoji rendering in Linux window titles.
- Improved window title and icon updates through native Linux APIs.
- Fixed connection form flickering during list updates.
- Stabilized transitions between connection states.
Startup and packaging
- Enabled native access for regular, packaged, and self-update launch paths.
- MeshApp now automatically restarts with the required JVM permissions when they are missing.
- Command-line arguments are preserved during this restart.
- Updated Gradle to 9.6.1.
- Updated GraalVM Build Tools to 1.1.4.
- Reorganized and documented the build configuration.
- Improved user-preference isolation in tests.
- Stabilized asynchronous tests.
Diagnostics
- Heap dumps with the .hprof extension are now preserved in pending diagnostic bundles.
- Cleanup of old diagnostic data no longer removes bundles containing heap dumps.
- Improved preservation of diagnostic data for out-of-memory failures.
Fixes
- Fixed application and system tray icons on Linux, DEB, and Flatpak.
- Fixed connection list flickering.
- Fixed handling of multiple consecutive BLE PIN requests.
- Fixed pairing dialogs remaining open after errors or disconnection.
- Fixed local notification preferences not being applied to remote RPC chats.
- Fixed heap dump retention after application crashes.
- Improved configuration compatibility between different Meshtastic firmware versions.
Important behavior change
The OpenStreetMap area download feature has been removed to comply with the Tile Usage Policy (https://operations.osmfoundation.org/policies/tiles/).
Interactive map viewing remains available at all supported zoom levels. A pre-existing tile directory can still be connected for offline use.