Repolode
zjs81

zjs81/meshcore-open

Open-source Flutter client for connecting to MeshCore LoRa mesh radios over BLE, USB serial, or TCP for off-grid messaging.

Stars
652
Forks
147
Open issues
109
Last commit
19 hours ago

What is it?

MeshCore Open is a cross-platform app for communicating with MeshCore LoRa mesh radios. It connects to a radio over Bluetooth Low Energy, USB serial, or TCP, and supports peer-to-peer direct messages, public and private channels, and contacts, letting people exchange messages without cellular or internet infrastructure.

Beyond messaging, the app shows a live map of mesh nodes with filtering by node type and time range, displays routing paths and SNR signal metrics, and includes a repeater hub with CLI access and remote management for repeater nodes. Channel messages can carry compressed images, and the app offers optional on-device translation.

Built with Flutter and Dart, it runs on Android, iOS, Linux, Windows, and macOS, and as a web client in Chrome using Web Serial for USB connections. The web client does not support BLE or TCP.

Key features

  • 01Direct messaging and public, private, and community channels
  • 02Connects to radios over BLE, USB serial, or TCP
  • 03Live map of mesh nodes with filtering by type and time
  • 04Routing path views and SNR signal tracking
  • 05Repeater hub with CLI access and remote management
  • 06Offline map tiles via a configured Stadia Maps source

Use cases

  • Off-grid messaging in areas without cellular or internet coverage
  • Monitoring and administering MeshCore repeater nodes
  • Visualizing a community mesh network on a map
  • Using a phone or laptop as the client for a LoRa radio

Quick start

  1. 1

    Clone the repository

    git clone https://github.com/zjs81/meshcore-open.git
  2. 2

    Enter the project directory

    cd meshcore-open
  3. 3

    Install dependencies

    flutter pub get
  4. 4

    Run the app

    flutter run

Things to know

  • Requires a MeshCore radio running companion firmware to connect.
  • Building from source requires the Flutter SDK with Dart ^3.9.2.
  • Web client works only in Chrome-based browsers over USB, and needs HTTPS when self-hosted.
  • Notification replies are available only on Android; iOS, desktop and web lack them.

Topics

FAQ

What is meshcore-open?
Open-source Flutter client for connecting to MeshCore LoRa mesh radios over BLE, USB serial, or TCP for off-grid messaging. MeshCore Open is a cross-platform app for communicating with MeshCore LoRa mesh radios. It connects to a radio over Bluetooth Low Energy, USB serial, or TCP, and supports peer-to-peer direct messages, public and private channels, and contacts, letting people exchange messages without cellular or internet infrastructure.
Is meshcore-open free to use? What license does it have?
meshcore-open is open source under the MIT license. Check the license terms before using it in commercial products.
Is meshcore-open still maintained?
Actively maintained. The last commit to meshcore-open was on Nov 6, 2026.
What can I use meshcore-open for?
Off-grid messaging in areas without cellular or internet coverage Monitoring and administering MeshCore repeater nodes Visualizing a community mesh network on a map Using a phone or laptop as the client for a LoRa radio
How do I install meshcore-open?
Clone the repository: git clone https://github.com/zjs81/meshcore-open.git Enter the project directory: cd meshcore-open Install dependencies: flutter pub get Run the app: flutter run
Where can I get meshcore-open?
The source code and installation instructions are on GitHub: https://github.com/zjs81/meshcore-open

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects