Skip to main content

How Mesh Routing Works

When two nodes are too far apart to communicate directly, intermediate nodes relay the message. Meshtastic and MeshCore solve this differently.

Flooding (Meshtastic)

When a node receives a packet, it rebroadcasts to all neighbors. Each node rebroadcasts once (duplicate detection prevents loops). The message floods outward until it reaches its destination or exhausts its hop count (typically 3–5 hops).

  • Simple and robust: No routing tables. New nodes work immediately. Self-healing if relay fails.
  • Limitation: One message can trigger 30–50 transmissions across a dense network. Why faster presets (Medium Slow) are preferred in networks with many nodes.

Path-based routing (MeshCore)

MeshCore discovers explicit routes before sending data:

  1. Node A broadcasts a Route Request (RREQ); each relay appends its identity
  2. Destination node D sends back a Route Reply (RREP) along the reverse path
  3. Node A caches the route A → B → C → D and uses it for all subsequent messages to D
  • More efficient at scale: Messages travel only the established path — much less airtime than flooding in large networks
  • Limitation: Route discovery adds latency to first contact. Topology changes require re-discovery.

Which is better?

Both work well in practice. Flooding is simpler and more resilient for small-to-medium networks (under ~100 nodes). Path-based routing scales better for large infrastructure deployments. In practice, your choice is determined by which protocol your local community uses.

The mesh advantage

Every additional node is a potential relay. A hilltop repeater that can hear both a valley and a distant mountaintop effectively bridges those two coverage zones for all messages. A few well-placed infrastructure nodes have outsized impact on total network reach.