Encrypted peer-to-peer chat over Meshtastic LoRa mesh radios.
No internet. No servers. No accounts. Up to 15+ km range.
Everything you need for secure off-grid communication, nothing you don't.
AES-256-GCM with keys derived locally via HKDF-SHA256. Your passphrase never leaves your device, never travels over the air.
Messages travel over LoRa radio mesh — no WiFi, no cellular, no cloud. Works in remote areas, emergencies, and anywhere off-grid.
LoRa reaches 15+ km over open terrain, 2–5 km in urban areas. Messages hop through other nodes to extend range even further.
Runs on Android, Linux (deb/rpm/AppImage), and macOS. Same app, same experience — connect from any device you have.
No sign-up. No phone number. No email. No analytics or telemetry. You and your peer agree on a passphrase — that's it.
Fully open source under the MIT license. Audit the code, build it yourself, contribute improvements. Trust through transparency.
No registration, no key exchange, no complicated setup.
Open MeshGuard, tap Scan for Devices, and select your Meshtastic radio from the list. Enter the BLE pairing PIN (default 123456) when prompted. MeshGuard connects via Bluetooth, reads the device configuration, and loads all nodes on the mesh.
On the mesh network screen, tap the peer you want to chat with. Enter a passphrase you both agreed on beforehand — in person, via a phone call, or any secure channel. MeshGuard derives an identical AES-256 encryption key on both sides. No keys are ever exchanged over the air.
You're connected. Messages are encrypted with AES-256-GCM before leaving your device, then encrypted again by the Meshtastic radio's channel PSK. Double encryption, zero trust in the network. You'll hear a notification sound and see a popup for every incoming message.
Available for Android, Linux, and macOS. Free and open source.
APK for Android 8.0+ (arm64, arm, x86_64)
Enable "Install from unknown sources" for direct APKUbuntu/Debian, Fedora/RHEL, or universal AppImage
deb:sudo dpkg -i meshguard_*.debsudo dnf install meshguard-*.rpm
Universal binary (Apple Silicon + Intel)
Open the DMG, drag MeshGuard to Applicationsgit clone https://github.com/nemke82/meshguard.git
cd meshguard/ui && npm install && cd ..
cargo tauri dev
Requires Rust, Node.js 20+, and Tauri CLI. See the README for platform-specific dependencies.
SenseCAP T1000 · LilyGO T-Beam · Heltec LoRa 32 · RAK WisBlock · Station G2 · and any device running Meshtastic firmware 2.x
Both radios need to be on the same Meshtastic channel and region frequency (e.g. EU868, US915).