Multi‑Hop Routing
Extend range beyond a single radio’s reach. Configurable hop limits keep traffic efficient.
Build resilient, off‑grid communications across Tampa, Saint Petersburg, Apollo Beach, Gulf Shores and beyond.
Start your first nodeMeshCore is a lightweight, portable C++ library that enables multi‑hop packet routing for embedded projects using LoRa and other packet radios. It’s built for developers who want resilient, decentralised networks that work without the internet.
Mission: Build the most reliable and secure decentralised mesh radio system that anyone can use. Focus on security, reliability, and efficiency.
Extend range beyond a single radio’s reach. Configurable hop limits keep traffic efficient.
Ideal for battery‑powered or solar‑powered devices. Minimises energy usage while staying connected.
End‑to‑end encryption, anti‑replay protection, and a self‑healing network guarantee privacy.
Supports Heltec, RAK Wireless, and other LoRa radios. Flash pre‑built binaries via ESPTool.
No central server or internet. The network heals itself after node failures.
Pre‑built example applications and clear docs let you ship a node in minutes.
The Central West Florida (CWF) community has a thriving network of hobbyists, emergency‑response teams and IoT enthusiasts who use MeshCore to stay connected in remote beaches, forests, and during storms. Below is a quick snapshot of the region’s coverage and how you can get involved.
Want to add your own node or help maintain the local deployments? Join the Florida‑Mesh Discord (https://github.com/flmesh) or simply drop by the MeshCore Discord.
set repeat {on|off} command.Use these settings to connect to other nodes in our area. More information can be found in the MeshCore documentation.
| Setting | Value |
|---|---|
| Frequency | 910.525 MHz |
| Bandwidth | 62.5 kHz |
| Spreading Factor | 7 |
| Coding Rate | 5 |
The MeshCore ecosystem is growing thanks to a handful of community‑built tools. Below is a quick snapshot of the most popular open‑source projects you can fork, use or contribute to.
A lightweight tool that forwards warnings, emergencies, or statements sent over the air to a local MeshCore network, without needing Wi‑Fi. It runs on a computer connected to an RTL SDR via USB and to a running MeshCore Companion node via serial or TCP.
CLI tool to interact with a companion radio node (MeshCore client) over BLE, TCP or serial. Supports both interactive mode and scripted commands. Note: only companion radios can be reached (repeater serial interfaces are not supported).
Python library for interacting with MeshCore companion radio nodes.
TypeScript library that decodes MeshCore mesh packets with full cryptographic support, using WebAssembly (WASM) for Ed25519 key derivation.
WebSocket‑based MQTT broker that authenticates clients via MeshCore public keys.
Python script that forwards MeshCore debug / packet‑capture data to an MQTT broker. Requires a MeshCore repeater to be connected to a Raspberry Pi (or similar) that runs Python.
Stand‑alone Python script for capturing and analysing packets from MeshCore Companion radios only. Connects via BLE, serial or TCP, writes structured data to console, file and optionally an MQTT broker.
The following settings are used to connect to the public CWF MQTT broker that feeds the MeshCore coverage map and wardriving data. If you want to contribute your own coverage data or debug logs, add these environment variables to your custom broker client).
MCTOMQTT_MQTT1_ENABLED=true
MCTOMQTT_MQTT1_SERVER=mcmqtt.jntconnections.com
MCTOMQTT_MQTT1_PORT=443
MCTOMQTT_MQTT1_TRANSPORT=websockets
MCTOMQTT_MQTT1_USE_TLS=true
MCTOMQTT_MQTT1_USE_AUTH_TOKEN=true
MCTOMQTT_MQTT1_TOKEN_AUDIENCE=mcmqtt.jntconnections.com
Q: What do you need to start using MeshCore?
A: Everything you need for MeshCore is available at:
NOTE: Andy Kirby has a very useful intro video for beginners.
Hardware
MeshCore is available on a variety of 433 MHz, 868 MHz and 915 MHz LoRa devices. Examples: Lilygo T‑Deck, T‑Pager, RAK Wireless WisBlock RAK4631 (19003, 19007, 19026), Heltec V3, Xiao S3 WIO, Xiao C3, Heltec T114, Station G2, Nano G2 Ultra, Seeed Studio T1000‑E. More devices are added regularly.
For an up‑to‑date list of supported devices, please go to https://flasher.meshcore.co.uk/.
To use MeshCore without a phone as the client interface, you can run MeshCore on a Lilygo T‑Deck, T‑Deck Plus, T‑Pager, T‑Watch or T‑Display Pro. MeshCore Ultra firmware running on these devices is a complete off‑grid, secure communication solution.
Firmware
MeshCore has four firmware types that are not available on other LoRa systems. (The detailed list is on the Firmware Flasher page.)
Companion Radio Firmware
Companion radios are for connecting to the Android app or web app as a messenger client. Two companion radio firmware versions:
Repeater
Repeaters are used to extend the range of a MeshCore network. Repeater firmware runs on the same devices that run client firmware. A repeater forwards MeshCore packets only to the intended destination, not every packet it receives (unlike many other LoRa mesh systems).
A repeater can be remotely administered with a Lilygo T‑Deck running MeshCore firmware with remote‑admin features unlocked, or from a BLE Companion client connected to a smartphone running the MeshCore app.
Room Server
A room server is a simple BBS‑style server for sharing posts. T‑Deck devices running MeshCore firmware or a BLE Companion client connected to a smartphone running the MeshCore app can connect to a room server.
Room servers store message history on the server and push stored messages to users. This lets roaming users come back later and retrieve message history—much like an email server.
When a client logs into a room server, the client will receive the last 32 unseen messages. While a room server can be set to “repeat on”, that mode is not recommended because it lacks the full set of repeater and remote‑admin features that only exist in the repeater firmware.
The recommendation is to run repeater and room server on separate devices for the best experience.
Ready to build your first MeshCore node?
Join the open‑source community on MeshCore Discord (official). For region‑specific chatter, hop into the Florida‑Mesh Discord.