Multi-transport routing engine
Any network.
One gateway.
MeshSat is not a network. It is a routing layer between networks — mesh, satellite, cellular, and IP. One device, one set of rules, every transport.
curl -fsSL https://get.meshsat.net | sudo bashA routing fabric for disconnected networks
Messages enter from any transport and exit through any other — with policy, compression, encryption, and failover applied automatically.
See routing in action
A single message can traverse multiple transports with automatic failover.
Example: Distress message from a Meshtastic node
A field team member sends an SOS. MeshSat evaluates routing rules and dispatches across available transports:
Message arrives from Meshtastic radio over serial
Primary route: compressed with SMAZ2, sent via Iridium SBD to operations center
Failover: if satellite is below horizon, SMS the same message to emergency contacts
Parallel: position forwarded as Cursor-on-Target XML to ATAK-equipped rescue teams
Parallel: message logged to MQTT for web dashboard and webhook integrations
MeshSat dispatches across all routes in under a second. Satellite delivery depends on constellation visibility and queue depth. Rules, failover priority, and transform chains are configured per interface.
How it works
Three steps to a multi-transport gateway.
Plug in devices
Connect radios and modems via USB. MeshSat auto-detects hardware and configures serial protocols.
Define routing rules
Set access policies, failover groups, and transform pipelines from the web dashboard.
Messages flow
The dispatcher routes across transports with failover, compression, encryption, and delivery tracking.
Built for the field
Every feature exists to solve a real problem in disconnected environments.
Control where messages go
Route by sender, portnum, channel, or content. Block, rate-limit, or redirect traffic with fine-grained access rules.
Shrink messages before they fly
Three compression tiers adapt to each link. A 200-byte mesh message becomes 40 bytes over satellite — saving credits and airtime.
Swap hardware without reconfig
Plug in a new modem, unplug the old one. MeshSat detects the change and rebinds interfaces automatically. No downtime.
Send only when satellites are overhead
Pass prediction queues messages for optimal visibility windows, saving power and avoiding wasted transmissions.
Never lose a message
Dead letter queue with intelligent backoff retries failed transmissions. Delivery ledger tracks every message across every hop.
Know when something is wrong
Dead man's switch, polygon geofences, and channel health scoring alert you before problems become emergencies.
The cost math
One gateway serves your entire team. No per-device satellite subscriptions.
Traditional approach
One satellite device per person
- 10 team members × Iridium device = $3,500-6,000
- 10 subscriptions × $50/mo = $500/mo
- No message routing between devices
- No custom policies or failover
MeshSat approach
One gateway, many mesh nodes
- 1 MeshSat gateway = $150-400
- 10 Meshtastic radios × $30 = $300
- 1 satellite subscription = $50/mo
- Full routing, failover, compression, encryption
Meshtastic nodes communicate over LoRa for free. Only messages that need to leave the mesh hit the satellite link — and MeshSat compresses them first.
11 transports
Every transport is a first-class interface with its own MTU, cost model, and transform pipeline.
| Category | Transport | Status |
|---|---|---|
| Mesh | Meshtastic LoRa | Stable |
| Satellite | Iridium SBD 9603N | Stable |
| Iridium IMT 9704 | Stable | |
| Cellular | SMS / Data (A7670E) | Stable |
| Wireless | ZigBee 3.0 (CC2652P) | Beta |
| IP / Network | MQTT | Stable |
| Webhooks | Stable | |
| APRS (Direwolf KISS) | Beta | |
| TAK / Cursor-on-Target | Beta | |
| Routing | Reticulum TCP (HDLC framed) | Stable |
See it in action
Embedded Vue.js dashboard with multiple views. Runs on the device, no cloud required.

Dashboard — Iridium signal, MQTT traffic graph, cellular status

Pass Predictor — satellite visibility timeline with signal correlation

Topology — live mesh network visualization

Bridge — forwarding rules with gateway connection status
MeshSat Hub — Fleet management platform
The Bridge is one device. The Hub manages hundreds — with authentication, multi-tenancy, and three satellite constellations.
Multi-constellation satellite routing
Send messages through Iridium or Globalstar — and let the Hub pick the cheapest, fastest, or preferred route per device. Automatic failover between constellations.
Enterprise authentication
Four auth modes: local accounts (Argon2id), bearer tokens, or full OAuth2/OIDC with TLS certificate pinning. API keys with RBAC (viewer/admin/owner) and per-key expiry.
Multi-tenant isolation
Multiple organizations share one Hub instance with strict data isolation. Tenant context from JWT claims or headers. Each tenant sees only their devices, messages, and rules.
SOS escalation chains
Configurable multi-step notification chains: push notification → SMS → email → phone call. Dead man's switch triggers alerts on missed check-ins. 90+ notification backends via Apprise.
Three deployment modes
Standalone (SQLite + MQTT, single server), Cluster (MariaDB Galera + Redis + NATS, active-active HA), or Kubernetes (Helm charts, lease-based leader election).
Tactical integrations
TAK/CoT gateway for ATAK teams, APRS-IS IGate for amateur radio, WireGuard VPN mesh, Tor hidden service, MPTCP concentrator, and Reticulum routing across all satellite backends.
Devices, messages, map, escalations, dead man's switch, geofences, OTA updates, audit log, cluster health, backup/restore
Full Swagger docs. Device CRUD, message send/receive, webhook management, rate limiting, config versioning, backup/export
AES-256-GCM per-device keystores. PGP-encrypted email gateway. Tamper-evident Ed25519 hash-chain audit log
Token bucket with burst, daily, and monthly caps. Cluster-wide via Redis. Override limits per device
MeshSat Android — Your phone is a gateway
No Pi, no cables. Three transports from your pocket.
MeshSat Android turns any Android phone into a standalone mesh-satellite-cellular gateway. It connects to a Meshtastic radio over BLE, an Iridium modem over Bluetooth SPP, and uses the phone's native SMS — all at once.
Three independent radio paths. Forward messages between any combination with configurable rules.
Bridge two isolated LoRa mesh networks over cellular. AES-256-GCM encrypted — the carrier sees only ciphertext.
On-device ONNX Runtime encoder. 92% compression on field messages — critical for 340-byte Iridium SBD payloads.
One button sends your distress message on all three transports simultaneously, 3x with 30-second intervals.
6-hour graphs for mesh RSSI, Iridium signal bars, and cellular dBm. Know your link quality at a glance.
Material 3 dark theme. Kotlin + Jetpack Compose. Minimum Android 8.0.
Reference hardware
Two tested configurations. Build your own from any supported components — these are starting points, not requirements.
Full Field Kit
Waterproof Pelican case with all transports.
- Raspberry Pi 5 (8 GB)Gateway host
- Heltec LoRa V4Meshtastic (868/915 MHz by region)
- RockBLOCK 9603Iridium SBD satellite
- LILYGO T-Call A76704G LTE cellular
- INIU 25000mAhUSB-C PD power
Compact Kit
Pocket-sized, high-bandwidth satellite.
- BananaPi BPI-M4 ZeroARM64 (4 GB + eMMC)
- XIAO ESP32-S3 + SX1262Meshtastic radio
- RockBLOCK 9704Iridium IMT (100 KB)
- PiSugar 3 + 5000mAh LiPoUPS HAT with battery

What MeshSat is not
Honesty builds trust. MeshSat is very good at what it does — but it doesn't do everything.
Not a replacement for Starlink
MeshSat routes low-bandwidth messages (text, positions, telemetry). If you need video calls or web browsing, use Starlink. MeshSat works where Starlink doesn't — battery-powered, pocket-sized, no dish.
Not real-time voice or video
Satellite and mesh links have high latency and low throughput. MeshSat is optimized for store-and-forward messaging, not streaming. Think SMS, not FaceTime.
Not a standalone LoRaWAN gateway
MeshSat uses Meshtastic for mesh (which runs its own protocol over LoRa). It's not a LoRaWAN network server. For LoRaWAN, use ChirpStack — then bridge it to MeshSat via MQTT.
Who uses MeshSat
From mountaintops to open ocean.
Search & Rescue
SOS escalation chains, dead man's switch, real-time position tracking, TAK/CoT integration for ATAK-equipped teams.
Humanitarian / NGO
Low-cost, self-hosted communication for remote field operations. No vendor lock-in, no subscription fees for the Bridge.
Expedition & Research
Satellite-backed data relay for remote sensor networks, wildlife tracking, weather stations, and glacier monitoring.
Maritime
Ship-to-shore messaging via Iridium with LoRa mesh for inter-vessel coordination. Geofence alerts for exclusion zones.
Emergency Preparedness
Community mesh networks that stay connected when cell towers fail. Automatic failover from cellular to satellite.
IoT / Remote Monitoring
ZigBee sensor networks bridged to satellite for pipeline monitoring, agricultural sensing, or infrastructure telemetry.
Pricing
The Bridge is free and open source. The Hub manages fleets.
How MeshSat compares
Most off-grid communicators do one thing. MeshSat routes across all of them. MeshSat competes on flexibility and openness, not certification — it is pre-release open-source software, not a certified commercial product.
| Feature | MeshSat | Garmin inReach | ACR Bivy | goTenna Pro X2 |
|---|---|---|---|---|
| Transport count | ✓ 11 | 1 (Iridium) | 1 (Iridium) | 1 (mesh) |
| Multi-transport routing | ✓ | ✗ | ✗ | ✗ |
| Mesh networking | ✓ LoRa + ZigBee | ✗ | ✗ | ✓ |
| Satellite messaging | ✓ Iridium | ✓ Iridium | ✓ Iridium | ✗ |
| Max satellite message | 100 KB (9704) | 160 chars | 160 chars | N/A |
| Custom routing rules | ✓ Policy engine | ✗ | ✗ | ✗ |
| Open source | ✓ GPLv3 | ✗ | ✗ | ✗ |
| Self-hosted / no cloud | ✓ | ✗ Garmin cloud | ✗ ACR cloud | ~ Relay only |
| API / integrations | ✓ 280+ endpoints | ~ MapShare | ✗ | ~ SDK |
| Web dashboard | ✓ | ✗ App only | ✗ App only | ✗ App only |
| Subscription required | No | Yes $15-65/mo | Yes $20-50/mo | Yes |
| Hardware cost | ~$150-400 (DIY) | $350-600 | $300 | $2,000+ |
Ready to deploy?
Install MeshSat Bridge on any Linux machine in under two minutes. Free, open source, no cloud dependency.