Deep Dive

Meshtastic vs. MeshCore on NTX Mesh

NTX Mesh is technology-agnostic. We care about reliable, decentralized mesh networking that keeps working even if the internet or cell towers don't. This page explains how mesh networking works at a high level, and the practical differences between Meshtastic and MeshCore so you can pick the right tool for your use case.

TL;DR; ELI5

The Short Version

ELI5

Think of sending a whisper across a playground. With Meshtastic, everyone passes your whisper along, so the "chain" can move and grow as people move around, but they stop sharing your message after it's passed through 7 people. With MeshCore, only special helpers (repeaters) pass the whisper, but they can pass it to up to 64 more helpers.

By default, with MeshCore those helpers also talk faster and there are fewer side conversations that might delay your whisper. On Meshtastic, the other people talk slower and are having side conversations that have to finish before your whisper can be shared, slowing down the rate at which your whisper makes its way through the crowd.

TL;DR;

Meshtastic works well when people and links are moving (friends at an event, a hike, a bike ride). Regular nodes help by rebroadcasting, so coverage can shift and grow as people move. MeshCore works well when you can place fixed repeaters on rooftops or hills. Phones connect through companion radios; companions do not rebroadcast, so repeaters are what grow the mesh.

Meshtastic at a glance

Default role is CLIENT, which rebroadcasts in most cases. Great for ad-hoc, moving groups with no fixed infrastructure. Default hops 3 (max 7), LongFast preset, richer telemetry.

MeshCore at a glance

Default end-user firmware is Companion, which does not rebroadcast — only repeaters relay. Up to 64 hops, narrower 62.5 kHz preset, minimal telemetry by default, very responsive.

Main differences

Hop limits
Meshtastic default 3 (max 7); MeshCore up to 64.
Who rebroadcasts
Meshtastic clients help relay; MeshCore companions do not. Only repeaters relay.
Telemetry
Node info, battery, temperature, etc. MeshCore pushes rarely and allows manual pulling. Since November 2025, Meshtastic pushes less than it used to, but still significantly more than MeshCore.
Responsiveness
MeshCore feels considerably faster with default config; Meshtastic can be manually tuned to similar results.
Background

Mesh Networking in 30 Seconds

Self-healing + multi-hop
Messages can traverse multiple radios ("hops"). If one link disappears, the mesh finds another path.
Flood routing
On low-power radios, many systems use a simple "managed flood" where nodes selectively rebroadcast packets without maintaining big routing tables.
Direct paths
Some systems learn a path during the first flood, then send future messages via a more efficient "next-hop" route, falling back to flood if the path breaks.
Roles & Routing

Default Roles & Behavior

Meshtastic
Default role is CLIENT, which does take part in rebroadcasting in most cases. This helps ad-hoc, moving groups connect even without fixed infrastructure.
MeshCore
Default end-user firmware is Companion (USB/BLE app companion). Companions do not rebroadcast other people's packets; Repeaters handle forwarding. This concentrates airtime on purpose-built, well-placed infrastructure nodes.

Meshtastic shines for non-geostationary groups (e.g. a ski hill or a bike ride with moving parties). MeshCore is optimized for large-scale meshes with infrastructure nodes (repeaters) placed on high points.

Routing strategies

Meshtastic
Managed flood. Since v2.6, Direct Messages use next-hop routing: flood to discover, then optimized relays for subsequent DMs.
MeshCore
Flood-then-direct by design: the first message floods to learn a path; later messages embed the learned path; if that route fails after a few retries, the node automatically falls back to flood.
Hop Limits

How Far a Message Travels

Meshtastic
Default Max Hops = 3 (configurable to a max of 7).
MeshCore
Internal max hop limit = 64.

Implication for NTX Mesh: Hill/valley terrain often needs many relays. Seven hops can be a hard ceiling for Meshtastic across the whole metro, while MeshCore's higher limit gives more headroom.

Telemetry & Airtime

Background Traffic on the Mesh

Meshtastic
As of firmware v2.7.15, some device telemetry broadcasts are disabled by default. If devices manually opt in, they periodically transmit telemetry, position, and node info on timers (defaults roughly 30 min, 15 min, and 3 hours). As device counts increase, Meshtastic decreases broadcast frequency to reduce congestion. On very large meshes, background telemetry can consume valuable airtime, and it should only be enabled when necessary.
MeshCore
Avoids frequent network-wide telemetry by default. Repeaters can send periodic adverts (local or flood) on long intervals, and you can tune or disable them to conserve airtime.

For NTX Mesh — where the goal is region-wide messaging (not sensor telemetry) — MeshCore's default traffic profile typically leaves more airtime for actual messages, though recent Meshtastic firmware updates have begun to narrow the gap.

Radio Presets

Presets, Throughput & Interference

Both systems use LoRa (Chirp Spread Spectrum), where bandwidth, spreading factor (SF), and coding rate (CR) trade range for speed and airtime.

Meshtastic defaults
The standard preset is LongFast, which (in the US) uses 250 kHz bandwidth and a conservative SF/CR mix. It's robust, but airtime per message is relatively high, especially over multiple hops. You can switch to faster presets (e.g. MediumFast/ShortFast) or custom narrow bandwidths; Meshtastic supports special narrow values like 31.25 kHz and 62.5 kHz when manually configured.
MeshCore defaults
In the US, the default preset is a narrower bandwidth (62.5 kHz) with moderate SF/CR to slot between noisy parts of the US 902–928 MHz ISM band, improving SNR and airtime efficiency while maintaining city-scale coverage.

In real NTX-area testing, the narrower default MeshCore configs have produced noticeably snappier delivery (often sub-second for nearby peers, and sub-2-second for 9-hop routes) compared to default Meshtastic presets. Your mileage will vary by terrain, antenna quality, and infrastructure density, but the airtime math generally favors higher data rates plus less background traffic.

Choosing

When to Use Each

Choose Meshtastic

If you want a "bring-a-radio, it just works" experience for roaming groups, mapping, and rich telemetry modules, with minimal setup and no guaranteed infrastructure.

Choose MeshCore

If your aim is a resilient, city- or region-scale messaging network with fixed repeaters (see the DIY Solar Repeater Parts List), where end-users don't rebroadcast by default.

Side by Side

Quick Comparison

Topic Meshtastic MeshCore Notes for NTX Mesh
Default behavior CLIENT rebroadcasts when needed Companion does not forward; Repeaters do MeshCore reduces edge-node airtime; invest in good repeater sites.
Broadcast routing Managed flood Flood (for discovery & fallback) Both robust under mobility; MeshCore expects infra for scale.
Direct messages Next-hop routing since v2.6 Learned direct path with fallback to flood Both learn paths; reduces duplicate airtime when stable.
Max hops (default / max) 3 / 7 Configurable, internal max 64 More headroom for citywide reach.
Telemetry cadence Regular NodeInfo. Telemetry/Position disabled by default. As of November 2025, auto back-off on congested meshes; "Push" model Minimal by default; "Pull" model Leaves slightly more airtime for chat on MeshCore.
Radio presets LongFast (250 kHz) 62.5 kHz BW with tuned SF/CR Narrower BW can fit between interference.
Typical responsiveness Good at small scale; can slow as hops + telemetry rise Very responsive with infra + higher data-rate configs Our field tests show faster multi-hop messaging on MeshCore.
Best fit Ad-hoc, highly mobile, telemetry-heavy scenarios City-scale, repeater-backed, messaging-centric scenarios NTX Mesh is biasing toward MeshCore for the citywide link layer.
Sources

References & Footnotes

Managed flood
Meshtastic uses Managed Flood Routing for broadcast messages to avoid heavy route maintenance on low-bandwidth radios. Why Meshtastic Uses Managed Flood Routing.
Next-hop routing
Meshtastic v2.6 adds next-hop routing for Direct Messages: flood to discover, then optimized relays. Mesh Algorithm docs · 2.6 preview.
MeshCore routing
Flood-then-direct: flood to learn, embed path, fall back to flood if direct fails. Key concepts · Packet handling · Explainer.
Device roles
Default role is CLIENT, which "rebroadcasts packets when no other node has done so." Meshtastic Device Configuration.
MeshCore philosophy
"Repeaters route; edge nodes don't pollute the airwaves." MeshCore Philosophy.
Companion protocol
Companion Radio Protocol (USB/BLE) connects apps to radios; it is an edge/client firmware, not a repeater. MeshCore Wiki.
Repeater CLI
Repeater/Room Server CLI (e.g. set repeat on, set flood.max {hops}, set advert.interval {minutes}, set flood.advert.interval {hours}). MeshCore Wiki.
Hop limits
Max Hops defaults to 3 and "can't be greater than 7." Meshtastic LoRa Configuration. MeshCore internal max hop limit = 64. MeshCore Wiki FAQ.
Broadcast intervals
Default broadcast intervals and auto-backoff as meshes grow. Mesh Algorithm overview · Telemetry module reference.
LoRa / CSS
LoRa = Chirp Spread Spectrum; SF/BW/CR drive data rate vs. range/airtime. Semtech AN1200.22 "LoRa Modulation Basics".
Modem presets
Meshtastic modem presets (LongFast, MediumFast, ShortFast, etc.). Protobuf enum docs · Why your mesh should switch from LongFast · Special bandwidth values.
MeshCore bandwidth rationale
Narrower BW + lower SF can fit between ISM-band interference and yield better SNR/airtime. MeshCore FAQ.
MeshCore adverts
Communities commonly configure long flood-advert intervals (e.g. ~12 h) to conserve airtime. CLI reference · Issue #919.
Example settings
Example community settings (US/CAN): 910.525 MHz, 62.5 kHz BW, SF7/CR5. Ottawa Mesh.
Meshtastic telemetry change
Meshtastic v2.7.15 disables some telemetry broadcasts over LoRa by default; nodes must opt in. Firmware release notes.

Questions or edits? Open a PR on NTXmesh.org's repo or ping the NTX Mesh chat.