Someone shows up in our Discord every couple of weeks with a fresh Heltec in their hand and asks the same question. MeshCore or Meshtastic? They’re hoping for a clean answer. They never get one from me, because the question doesn’t have one.
It’s not that the protocols are tied. It’s that they’re built for different network shapes. The “which is better” framing collapses two perfectly good answers into one bad one. The right answer depends on what you’re trying to build, not which firmware is technically superior.
I run both across NodakMesh. The shop nodes, the building installs on tall commercial buildings around the metro, the car repeaters, the Atlavox Beacon up on the tower. Some of them speak MeshCore. Some speak Meshtastic. Both belong here. The longer I run this network, the less interesting the protocol war gets, and the more interesting the question underneath it gets.
The Question Behind the Question
Both protocols solve real problems. They just solve different ones.
Meshtastic was designed so you could flash a board, walk outside, and be on the air with no permission and no coordination. That’s not a weakness. It’s the entire point. A new node fits into the network without anyone having to know it’s there. Bring two friends, you have a mesh.
MeshCore starts somewhere else. It assumes the network has shape. Repeaters live in known places. Clients ride them. The first message to a contact floods to find that contact, and every message after that follows a learned path through specific repeaters. It’s not better. It’s a different starting assumption.
The Reddit threads are mostly two people talking past each other because they’re answering different questions. Run the wrong protocol for your situation and you’ll have a bad time, regardless of which one is technically superior.
How They Actually Route
Meshtastic uses a managed flood. A packet goes out, every node within range rebroadcasts it, and copies ripple across the mesh until they reach the destination or burn through the hop limit. The device role you pick decides how aggressively your node participates, but the underlying model is rebroadcast. Simple. Reliable at small scale. Brutal on airtime as density grows.
The honest bottleneck on a Meshtastic mesh isn’t range. It’s air. LoRa is half-duplex on a single shared channel, and every retransmission is one more transmitter fighting for that channel. Add fifty active nodes in a city and the mesh isn’t more capable, it’s louder. Collisions climb. Useful throughput drops.
MeshCore takes the other side of the tradeoff. The first message to a contact floods exactly the same way, but the reply gets recorded as a learned path through specific repeaters. Every message after that runs unicast along that path until the path breaks. When a repeater drops or conditions shift, MeshCore retries a few times and then re-floods to discover a new route. So the model isn’t “flood once and never again.” It’s “flood to learn, follow the path, re-flood when reality changes.” Most of the time, that means dramatically less rebroadcast traffic than a pure flood network. We’ve walked through how the path field actually works before, and the v1.14.0 firmware added multibyte path hashes that let regional networks scale past a few hundred repeaters without ID collisions.
Neither approach is magic. Meshtastic struggles when density outruns the airtime budget. MeshCore struggles when there’s no infrastructure to carry the traffic. The strengths and the failure modes are mirror images of each other.
What This Looks Like in Practice
Tower climber installing the Atlavox Beacon, a MeshCore repeater, in Fargo, ND.
The same three patterns show up over and over.
The casual neighborhood mesh, ten or fifteen nodes, no infrastructure, friends and curious neighbors. Meshtastic wins this one. Nobody is going to climb anything. Nobody is running a repeater on solar. The flood works fine at low density and the setup tax for MeshCore is not worth it.
The regional network with coordinated repeater sites and real coverage goals is the other end. Deterministic routing and store-and-forward do work that flooding cannot. This is the pattern MeshCore was built for, and it’s what NodakMesh leans into for its backbone. The Atlavox Beacon up on the tower, the building installs, the car repeaters that move the network around the metro. They’re nodes, but they’re also infrastructure, and MeshCore treats that distinction as load-bearing.
Then there’s the mixed reality, which is what NodakMesh actually is. Both protocols on the same band, in the same region, serving different users. That third pattern is the one that’s missing from every other post on the topic. Nobody has to pick a tribe.
Room Servers, Store-and-Forward, and Why a Mesh Becomes Useful
The piece that does not get talked about enough is what happens when the recipient is not online.
On a basic mesh, your message goes out, finds nobody home, and dies. That’s fine for two friends in the same room. It is not fine for anything else. Real networks need somewhere for traffic to wait.
MeshCore handles this with room servers. They are store-and-forward boxes. A message hits the room server, sits there until the recipient comes back online, and gets delivered the next time they connect. The room server can also act as a public bulletin board, a place to drop a note that anyone can read. If you’ve ever touched packet radio, this is the BBS reborn for LoRa. Same shape, different decade.
Meshtastic has its own store-and-forward server module, but it lives further from the center of the platform. The cultural weight is on real-time messaging.
The reason this matters is the use case. A driver passing through a coverage gap, an EmComm shadow during a long outage, a mobile node that drops in and out as it moves between buildings. None of those work without somewhere for traffic to wait. Store-and-forward is the thing that takes a mesh from a cool toy to a network that someone can actually depend on.
What MeshCore Actually Costs

The brochure for MeshCore is the deterministic routing and the room servers. The honest version is that all of that needs people who will put nodes on rooftops and tall buildings, deal with antennas, run solar, and care about coverage on a map.
If your local community does not have that energy, MeshCore will feel worse than Meshtastic, not better. The whole protocol is structured around infrastructure that has to actually exist. No infrastructure means no learned paths, no room servers, no backbone. Just a slower flood with more steps to get there.
This is not a protocol problem. It is a community problem, and it shows up everywhere MeshCore gets compared to Meshtastic without context. The cost of running a serious MeshCore mesh is not mostly in dollars, though there are some of those. It is in time. It is in social capital. You have to organize people. You have to ask building owners and site operators if you can put a node up. You have to keep the lights on.
Meshtastic has none of that overhead. Flash, walk outside, you’re done. That’s a real advantage, and it is the thing the technical-superiority arguments forget.
Why MeshCore Feels Right to Ham Operators
I will say this up front. I’m not licensed yet. The ticket is on my list. So this is an outside read, written from the perspective of someone who has spent enough time around licensed operators to see what is going on, but hasn’t sat for the test.
From that vantage point, the fit between MeshCore and the ham radio world is hard to miss. Repeater clubs have existed for half a century because for a real subset of those operators, building the infrastructure is the hobby. The radio is the excuse. Coordinating a site, picking an antenna, climbing for a mount, keeping a repeater on the air through a winter. That work is the thing.
A licensed operator who has already coordinated a 2-meter repeater, run a Field Day, or stood up an EmComm net does not need much explanation about why MeshCore is structured the way it is. Repeater sites in known places. Coverage goals on a map. The distinction between a backbone link and a leaf client. None of that is foreign to a club that has been running an analog repeater for twenty years.
That is not the only audience. Plenty of operators with no license run great MeshCore sites. The reason ham culture matters here is that the protocol’s assumptions feel native to anyone who has ever been part of a group that maintained shared infrastructure. The work is familiar, even when the hardware is different.
Real gratitude here, because none of NodakMesh’s tower or building footprint exists without help from the licensed operators who let us put nodes on their sites and the climbers who got them up there. The protocol does not run itself.
How to Actually Decide
Skip the matrix of who-should-use-what. There are three questions to ask, and they will do most of the work.
Do you want to use a network, or build one? Both are legitimate. Using means flashing a board, joining whatever is already there, and sending messages. Building means antennas, repeaters, and other people. Meshtastic optimizes for the first. MeshCore optimizes for the second.
Is there infrastructure here, or are you starting from zero? A protocol that depends on repeaters feels broken in a place that doesn’t have any. Look at the canonical protocol comparison and your local map before you decide. If your area has MeshCore repeaters within reach, you’re inheriting a network. If it doesn’t, you’re either building one or you are better off on Meshtastic until someone does.
Are you solving for one weekend, or for the next five years? Quick experiments want the easiest possible setup. Long-haul builds want something the next operator can keep alive. Different timeframes, different protocols.
Both Belong on the Same Network
NodakMesh runs both. Different users, different needs, same band, same region. The smart move for any regional community is to stop arguing about which firmware wins and let people run what fits the network they are trying to build.
If you are picking a protocol, the answers above will get you most of the way there. If you are already running one and curious what the other looks like in practice, come hang out with us on Discord. Plenty of people on both sides.
Comments
Related Posts

MeshCore Split: Andy Kirby's Response
Andy Kirby posted a video response to the MeshCore split. Here's his stated position on the trademark, his role, and the AI question.

Reading the MeshCore Disclosure From the Field
A heap overflow in MeshCore was fixed in v1.14.0 without an advisory. The exploit primitive, the impact tiers, and why disclosure still matters.
Atlavox Affiliate Partnership: Handhelds and Solar Nodes
NodakMesh joined Atlavox's affiliate program. The M1 handheld, Beacon solar node, Beacon Preconfigured, and DIY case on our devices page.