When networks fail, what survives becomes islands. MeshSat connects them.
One message.
Every way out.
Open source software that carries messages between mesh radios, satellite links and mobile networks. Run it on a Linux gateway or a phone, and connect systems that cannot reach each other on their own.
Hub open. No fleet running on it yet, never used in a real emergency.
The satellite leg failed and the message still arrived, in three systems the mesh cannot reach on its own. Routes, failover order and transform chains are configured per interface.
See it working
The introduction first, then two field kits on the bench passing a message from one mesh to the other, over APRS radio and then over SMS. Nothing loads from YouTube until you press play.
Networks fail into islands
A disaster rarely silences every system at once. It cuts the links between them: radio keeps working inside one agency or one cell, the phone network goes, and what one team knows does not reach the team that needs it.
It has happened before
Hurricane Katrina, US Gulf Coast. In many cases responders in different agencies could not talk to each other because of incompatible frequency assignments. A military helicopter had to drop a message in a bottle to warn them of a gas leak. FCC panel report
Floods in the Ahr valley and the Eifel, Germany. 34 emergency radio base stations were affected. In fallback mode radio kept working only inside each station's own cell, and links beyond it were patched case by case, for example with gateway connections. Landtag Rheinland-Pfalz, Drucksache 18/1947
Lahaina wildfire, Maui. The county's public safety radio system appears to have worked throughout, but police could not hear fire channels and fire could not hear police, and unreliable cell service left private water tankers uncoordinated. FSRI report for the Hawaii Attorney General
Blackout in Spain and Portugal. Public phone and mobile networks failed, and Portugal's distribution operator fell back on satellite phones. Spain's grid operator could still make calls but could not reach the distribution control centre in Seville, and restoring supply in Andalusia was paused. ENTSO-E expert panel report
What joining them looks like
Two teams on two meshes, no internet
mesh_0toaprs_0tomesh_0Run kit to kit on 12 September 2026 over APRS, then over SMS. See the field-kit film above.
A valley with no signal, an office far away
mesh_0toiridium_0The satellite leg is verified over a real Iridium link, March 2026.
A volunteer radio net and a command post
aprs_0totak_0Both interfaces are field tested. This route has not been run end to end yet.
Built for the people who work between those islands: search and rescue teams, civil protection and emergency management, humanitarian organisations, amateur radio emergency groups, expeditions, maritime crews and remote industry. None of them runs it yet; the field programme that starts in November 2026 is its first real test.
Every system plugs into the same router
Each one is an adapter behind the same interface, with its own MTU, cost model and transform pipeline, and a rule can route from any adapter to any other. The code on each channel says where it really stands, not what we hope: only LIVE runs on our hardware today.
mesh_0Meshtasticaprs_0APRScellular_0SMSiridium_0Iridiumzigbee_0ZigBeetcp_0Reticulum- HF dataCOMING SOON
- TETRACOMING SOON
routerrules, transform chains, failover order, cost
tak_0TAKmqtt_0MQTTwebhook_0Webhooks
| Category | Channels |
|---|---|
| Satellite | LIVE Iridium IMT (9704), Iridium through a MeshSat node CODE Iridium SBD (9603N) |
| Radio | LIVE Meshtastic LoRa, APRS, Cellular SMS and data, WiFi CODE 10 m HF gateway COMING SOON HF data, TETRA Direct Mode, Wi-Fi HaLow, Own 2G cell |
| Wired | COMING SOON Fiber, Single-pair copper |
| Short range | CODE ZigBee, Bluetooth LE, RNode and KISS radios |
| IP and Hub | LIVE Hub link, MQTT, TAK, Reticulum CODE Webhooks |
| Receive only | LIVE Jamming watch CODE Cell broadcast alerts BENCH DCF77 time signal |
- LIVE runs on our prototype hardware today
- CODE in the Bridge, not running on a kit
- BENCH on our bench, not in a kit yet
- COMING SOON on its way to the bench, nothing tested
- FUTURE PLAN planned, nothing bought
Multi-bearer bonding over a paid satellite link is not validated yet, and the jamming detector has only ever seen ambient noise. The repository sets out the full list of what has and has not been proven.
Use the cheapest path that still works.
An Iridium line costs tens of euros a month plus credits per message, billed in 340 byte blocks. Give one to every person in a team and the bill scales with headcount. That price shapes every routing decision.
One paid link, shared
A team carries cheap mesh radios. One gateway holds the expensive satellite line. Everyone reaches the outside through it, so cost stops scaling with the number of people.
Free bearers first
Every interface declares a cost. The router prefers the free ones, mesh, packet radio, Bluetooth and WiFi, and only reaches for satellite or SMS when nothing free is up.
Fewer bytes when it does
Anything leaving on a metered bearer is compressed first. SMAZ2 runs in under a millisecond on short text, which matters when you are billed per block rather than per byte.
Sent when the sky is right
Pass prediction from SGP4 orbital elements holds traffic for visibility windows instead of burning battery retrying against a satellite that is below the horizon.
MeshSat is free software under the GPLv3. Development is supported by SIDN fonds, and a six month field programme starts in November 2026.
What it runs on
Start with a Linux host and one USB mesh radio. Add satellite, SMS or sensors when you need them; configure a route for each link.
Minimum setup, optional additions and build guides
| Part | Role |
|---|---|
| Raspberry Pi 5 (8 GB) | Host. ARM64, or any x86_64 Linux with Docker and USB serial. |
| LILYGO T-Echo / Heltec LoRa V4 | Meshtastic mesh radio at 868 or 915 MHz. |
| RockBLOCK 9603 or 9704 | Iridium satellite. SBD at 340 bytes, or IMT at 100 KB. |
| LILYGO T-Call A7670E | 4G and 2G cellular, for SMS and data. |
| CC2652P dongle | ZigBee coordinator. |
| UPS and battery | Because the interesting cases are the ones where mains power has gone too. |
The dashboard is embedded in the binary and served from the device. No cloud dependency, no account.
The hardware has its own repository, meshsat-fieldkit: build guides for the two V1 kits, and the unbuilt V2 design for a Peli 1450 case. V2 is still under engineering review, not ready to order.
What it is not
Starlink is connectivity, Meshtastic a local mesh, Reticulum a network that runs over any bearer, TAK a shared map of the situation. MeshSat replaces none of them. It carries messages between them.
Not a Starlink replacement
MeshSat moves text, positions and telemetry. If you need video calls or the web, use Starlink. This is for the cases a dish cannot serve: battery powered, pocket sized, no mains.
Not voice or video
Satellite and mesh links are high latency and low throughput. This is store and forward messaging. Think SMS, not a phone call.
Not a LoRaWAN network server
The mesh side speaks Meshtastic, which is its own protocol over LoRa. For LoRaWAN, run ChirpStack and bridge it in over MQTT.
Not an emergency service
A research prototype, not a replacement for 112, 911 or any national emergency number. Nothing here is certified and nothing here has been used in a real emergency.
Try it
One command on a Linux machine with a radio plugged into it. A single device is enough to start, and anything missing is logged as a warning rather than an error.
curl -fsSL https://get.meshsat.net | sudo bash[OK] Running as root [OK] Architecture: aarch64 [OK] Created /meshsat/data [OK] Generated /meshsat/docker-compose.yml [OK] Image pulled [OK] MeshSat Bridge started Dashboard: http://192.168.4.20:6050 Data dir: /meshsat/data USB devices will be auto-detected. Plug in your Meshtastic radio or satellite modem.
Bug reports from people running hardware we have not tried are the most useful thing you can send. The supported-device list is short because it only names what we have physically run.
MeshSat Android
An ordinary Android phone becomes the gateway, with no Pi. Paired with a pocket MeshSat node, one Bluetooth link reaches both the mesh radio and the Iridium modem, and the full APK edition adds SMS through the phone's own SIM. Satellite messages wait in a queue for the next pass, which the phone predicts with no internet.
On Google Play the app comes without SMS, because Google's policy does not allow it there. The APK is the full app. The two cannot update each other.
Run the Hub on your own servers, or try it on ours
The control room for every kit, phone and pocket node you run: one map, every message, the routes between networks, and who gets called when someone presses SOS. The kits never need it to pass a message. The code is the same either way; what changes is who runs it and how many devices you can register.
The same screens on your server or on ours. Captured on hub.meshsat.net on 21 September 2026, with phone numbers, IMEIs and kit hostnames blurred.
On your own servers
The same code that runs hub.meshsat.net, on hardware you control.
- Devices and bridges
- as many as you set
- Cost
- free
- Account with us
- none
- Runs as
- one server or Kubernetes
- Backups, upgrades, security
- yours to run
On our servers
The Hub is open. Create an account and we review it before it goes live.
| Plan | devices and bridges | Cost |
|---|---|---|
| Free | 4 | included |
| Crew | 24 | 9 euro a month |
| Fleet | 100 | 29 euro a month |
| More | 100+ | talk to us |
A device you have registered keeps working on any plan. A smaller plan only stops you adding more, and an SOS is never affected.
Your airtime stays yours. Connect your own Cloudloop, Twilio and Rock7 accounts; we never resell satellite or SMS minutes.