Skip to main content

Protocol Comparison Reference

Protocol Comparison Reference

This page provides a detailed technical comparison between MeshCore and Meshtastic — the two most widely deployed open-source LoRa mesh networking platforms. Both run on similar hardware and serve similar goals, but make very different design choices.

Feature Comparison Table

Feature MeshCore Meshtastic
Routing Demand-driven path-based (RREQ/RREP) Flooding with duplicate suppression
Encryption ECDH per-pair AES-256-CTR + PSK for channels AES-256-CTR with shared PSK per channel
Direct messages End-to-end encrypted (node key pairs) End-to-end via PKI (firmware 2.3+)
Infrastructure role Explicit Repeater/Client separation Router/Repeater/Client roles
Node discovery Advertisement packets NodeInfo broadcast flood
Position sharing In advertisements (optional) Continuous broadcast to channel
Scalability Better at high node counts Best under ~100 nodes
Network mapping App shows routing topology meshmap.net aggregates public data
Message storage Room servers (store-and-forward) Store and Forward module
App ecosystem MeshCore app (iOS/Android) Meshtastic app (iOS/Android/web)
Web interface config.meshcore.dev, app.meshcore.nz client.meshtastic.org
Firmware update Web flasher (USB, no OTA) Web flasher + OTA via app
Community size Smaller, more technical Larger, more mainstream
Primary hardware T114, RAK4631, T-Beam All of the above + many more
License Open source (github.com/meshcore-dev) Open source (github.com/meshtastic)

When to Choose MeshCore

MeshCore is the better choice when:

  • You are building dedicated network infrastructure — repeaters on towers, rooftops, or hilltops where the explicit routing architecture pays dividends.
  • Your community already uses MeshCore and you need to integrate with an existing deployment.
  • You want stronger direct message encryption — ECDH per-pair keys provide better isolation than a shared channel PSK.
  • You are deploying a large-scale network (100+ nodes) where flooding would create significant channel congestion.
  • You need predictable airtime — path-based routing makes channel utilization more deterministic and easier to plan for.

When to Choose Meshtastic

Meshtastic is the better choice when:

  • You want the largest ecosystem of compatible hardware, apps, integrations, and community knowledge.
  • You prioritize the easiest app experience — Meshtastic's app is more polished and feature-rich for end users.
  • You need the broadest hardware compatibility — Meshtastic supports a wider range of devices.
  • You are joining an existing local Meshtastic network — interoperability with your community is paramount.
  • Your deployment is smaller in scale (under ~100 nodes) where flooding overhead is manageable.

Interoperability

MeshCore and Meshtastic cannot interoperate. They use different packet formats, different frequency defaults, and fundamentally different routing protocols. A MeshCore node cannot communicate with a Meshtastic node even when operating on the same frequency band — the packets are simply not understood by the other protocol's firmware.

However, the two protocols can coexist: some operators run both, with separate nodes for each protocol, on different LoRa channels within the same frequency band. This allows a single operator to participate in both communities simultaneously.

Community Overlap

Despite the technical differences, there is significant community overlap between MeshCore and Meshtastic operators. Many people run both. Understanding one protocol's design choices makes it much easier to understand the other — the fundamental LoRa physics, antenna theory, channel planning, and deployment considerations are identical. This wiki covers both protocols, and knowledge is shared freely across both communities.