MeshSat: Meshtastic-to-Iridium Satellite Bridge with Pass Prediction
Open-source gateway bridging Meshtastic LoRa mesh networks to Iridium satellite via SBD. One device gives an entire mesh network global satellite backhaul for about EUR 15/month. Runs on Raspberry Pi as a Docker container, auto-detects USB hardware, includes a web dashboard with satellite pass prediction. GPLv3.
MeshSat is a bidirectional bridge between Meshtastic mesh radios and Iridium SBD satellite modems. Messages from LoRa mesh nodes get forwarded to satellite, and satellite replies come back to the mesh. It runs as a standalone Docker container on any Linux machine with USB-connected devices.
The gateway includes configurable bridge rules so you can filter what gets forwarded to satellite by node, channel, or message type. This prevents position beacons and telemetry from burning satellite credits while making sure important messages get through. Failed transmissions go into a dead-letter queue with automatic retry.
A built-in satellite pass predictor uses SGP4 orbital propagation with CelesTrak TLE data to schedule transmissions around predicted Iridium pass windows. This matters in obstructed environments like mountain valleys or urban canyons where the modem would otherwise retry blindly. The dashboard overlays predicted passes with actual signal history to show correlation.
The positioning system supports three sources with graceful degradation: primary GPS, Iridium geolocation (free with every SBD transmission, roughly 1-100km accuracy), and a custom fallback. This means the device can predict satellite passes even without GPS after its first successful transmission.
Hardware access is handled through a hand-rolled protobuf codec and AT command engine talking directly to the serial ports. USB devices are auto-detected on startup via sysfs VID:PID matching. No manual port configuration needed.
Tested end-to-end on Raspberry Pi 5 with a Lilygo T-Echo (Meshtastic) and RockBLOCK 9603 (Iridium). Messages verified flowing both directions through the Iridium constellation.
Stack: Go 1.24 backend, Vue.js 3 dashboard, SQLite database, SSE for real-time updates. Multi-arch Docker image (ARM64 + x86_64).
Operating costs: EUR 15/month line rental, about EUR 0.30 per message. No annual contract.





Diskussion (0 Kommentare)