Meshtastic vs MeshCore: I Run Both, Here's the Honest Truth (2026)
An honest, hands-on comparison of Meshtastic and MeshCore. While Meshtastic remains the turnkey, user-friendly king for casual off-grid communication, MeshCore’s smart routing architecture offers superior performance for serious regional infrastructure.
Let me save you some time. If you've been lurking the mesh forums lately you already know there are two camps and they don't like each other much. Post "thinking about trying MeshCore" anywhere Meshtastic people hang out and you get a mix of "why bother, it's not even mature" and a few quiet replies saying "do it, you won't go back." Both reactions are right, which is exactly why most comparisons out there are useless to you.
Most of them slap together a table, crown a winner, and call it a day. That's not how this works once you've actually got the hardware on your bench.
I've been flashing, building, breaking and fixing LoRa nodes on this blog for years. Meshtastic I know cold, I've written guides on everything from DIY nrf52840 builds to BME280 sensors to hosting your own MQTT. MeshCore is the newer kid, and I've been running it for a few weeks now on a couple of devices, a Wio Tracker L1 Pro and a SenseCAP T1000-E, as a companion plus a repeater. Not a year of deployment, but enough hands-on to tell you what the forums get right and what they're parroting.
Fair warning, this one's long. And before you sink time into MeshCore there's some recent drama you genuinely need to know about.
So What Even Is MeshCore?
Fastest way to explain it if you already know Meshtastic: somebody looked at the flood-routing model, decided it doesn't scale, and rebuilt the whole thing from scratch with a different brain.
Quick history, and this part matters more than you'd think. Meshtastic was started by Kevin Hester (geeksville) back in 2019 in the US. MeshCore showed up in early 2025, and here's where it's already murky, depending on which source you read the "founder" is either Scott Powell (the Australian dev behind Ripple Radios who wrote the core firmware), or Andy Kirby (UK, ran the website, Discord and YouTube), with Liam Cottle (New Zealand) building the apps. Sit on that, because who founded what becomes the entire fight later.
The important bit is the architecture. Meshtastic uses managed flooding. A node hears a message, rebroadcasts it, so does the next node, on and on until the hop limit kills it. Dead simple, zero planning, works beautifully for a handful of nodes. MeshCore does something smarter: it floods once to find a path, then sends everything after that straight down the route it learned. Less noise, more control, falls back to flooding if the path breaks.
The way I think about it after living with both:
- Meshtastic is everyone at a party passing your message hand to hand until it reaches the far wall. Brilliant with 10 people. Chaos with 100.
- MeshCore uses designated runners. Your phone-in-pocket node doesn't relay anything, the runners do, and they sit on the rooftops where they actually count.
That one design choice ripples through everything else, so let's walk it.
The Three Node Types, This Is the Whole Ballgame
This is the thing that confused me on day one, and it'll confuse you too if you're coming from Meshtastic. There are three separate firmware types and each does one job and one job only.
Companion goes on the device in your pocket. Pairs to your phone over Bluetooth, handles your messages, and does not relay anyone else's traffic. Zero pollution from your handheld.
Repeater bolts to a rooftop or sits in a window. Its entire job is forwarding packets, efficiently. No chat, no UI, just routing. This is the one I set up alongside my companion, and it's where the model finally clicked for me.
Room Server is the one that made me sit up. It's basically a tiny BBS, it stores message history and hands it to people when they come back into range. Walk out of coverage, miss a bunch of messages, walk back, the Room Server catches you up. Meshtastic has nothing native that does this, and for any group that isn't online at the same time it's a genuinely big deal.
On Meshtastic everything is essentially the same node wearing different hats (CLIENT, ROUTER, REPEATER) that mostly tune how aggressively it rebroadcasts. On MeshCore the roles are real, separate jobs. Honestly it took me a bit to stop thinking in Meshtastic terms, and I'll be straight, that mental shift is part of why MeshCore feels harder than it needs to. More on that below.
One thing that tripped me up and trips up everyone coming from Meshtastic: two companions will talk to each other directly if they're in range, you don't need a repeater for that. The repeater is only there to bridge the gap when they're too far apart to hear each other. The gotcha is that a third companion sitting in the middle won't relay for them, because companions don't rebroadcast. On Meshtastic that middle node would've happily passed the message along. On MeshCore it won't, and if you didn't know the role model you'd swear something was broken.
1. Routing, the Part That Actually Matters
Most technical section, so I'll keep it grounded.
Meshtastic floods broadcasts, every node that hears a channel message rebroadcasts it up to the hop limit. Since v2.6 it got smarter for Direct Messages specifically: floods the first DM to learn the path, then routes later DMs down the optimised next-hop route. Credit where it's due, the DM situation is much better than people give it credit for. But channel traffic, NodeInfo and telemetry still flood.
MeshCore floods the first packet to discover a path, embeds that learned path into following packets so they don't trigger a full-network flood, and falls back to flooding if the route dies after a few retries. Flood-then-direct, by design, not bolted on.
Here's my actual experience, not a forum quote: MeshCore is clearly faster. Messages land quicker, noticeably so, not a "if you squint" difference. Whatever the airtime math says on paper, on my setup it just felt snappier in a way I didn't have to convince myself of. Meshtastic can be tuned closer with faster presets, but out of the box, MeshCore wins responsiveness and it isn't close.
2. Hop Limits, 7 vs 64
Simple one, matters more than it looks.
- Meshtastic: default 3 hops, hard ceiling of 7. You cannot go past 7, period.
- MeshCore: internal max of 64.
On flat ground with dense nodes, 7 is plenty. But the second you're stitching a mesh across hills, valleys and dead gaps, which is what every serious regional deployment is doing, that 7-hop wall is a real wall. MeshCore just doesn't have it. This is one of the specific reasons communities building city-scale networks keep drifting toward MeshCore.
3. Telemetry and Airtime, Push vs Pull
This is the silent battery-and-bandwidth killer on busy Meshtastic meshes and nobody warns you loudly enough.
Meshtastic pushes. Every node periodically fires off NodeInfo, position and device telemetry on timers (defaults around 30 min for NodeInfo, 15 for position, 3 hours for device telemetry). On your private mesh of friends this is lovely, you always see where everyone is. On a 50+ node public mesh it piles up and starts eating the airtime your messages need. Meshtastic auto-backs-off the intervals as the mesh grows, which helps, but it's reactive, it's cleaning up a mess it made.
MeshCore pulls. Repeaters send adverts on long intervals, your companion doesn't auto-broadcast telemetry. You ask for what you want when you want it.
Did I actually notice this? Somewhat. My mesh isn't huge, so I won't oversell it, MeshCore felt a bit quieter, but I didn't have a 50-node monster to really stress it. I believe the airtime argument, and the design clearly favours it, but I'm telling you what I saw, not what a graph told me.
The trade is real either way: if you love watching your nodes live on a map, Meshtastic does that out of the box and MeshCore doesn't, at least not on basic firmware.
4. Radio Presets and Speed
Same LoRa chips, the difference is the defaults each ships with.
Meshtastic defaults to LongFast, 250 kHz bandwidth in the US, conservative spreading factor. Robust, long reach, but airtime per message is relatively high and it stacks over multiple hops.
MeshCore defaults to a narrower 62.5 kHz with a moderate SF/CR tuned to slot between the noisy parts of the band. Better SNR, better airtime efficiency, snappier in practice (matches what I felt above).
You can manually drop Meshtastic to 62.5 or even 31.25 kHz in custom settings, but you have to know to do it and most people never touch it. That's the recurring theme of this whole comparison honestly: Meshtastic gives you every knob, MeshCore makes more of the decisions for you. Which sounds like a point for MeshCore until you actually sit through its setup. Which brings me to the part I have real feelings about.
5. Setup, and Why MeshCore Frustrated Me
Meshtastic wins this. Not close.
flasher.meshtastic.org, plug in, flash in the browser, pick your region, done. Up and running. Are the defaults the best? No. But it's working in ten minutes and there's a tutorial for every device and sensor combo you can dream up. Hand a Meshtastic node to someone who's never heard of LoRa and they'll figure it out. That's a real strength and I won't pretend otherwise.
MeshCore, I'll be blunt, fought me, and I do this for a living. A few things genuinely annoyed me:
The documentation basically doesn't exist. When I got stuck, there was nothing useful to read. For a beginner that's brutal.
Pairing was clunky. Bluetooth felt fussier and less reliable than I'm used to with the Meshtastic app.
The whole mental model is unfamiliar and not polished. Companion vs repeater, the advert/announcement packet thing (I'm still not 100% sure what it's even called), setting up encrypted channels, it all feels different and not especially intuitive. Maybe that's just me being Meshtastic-brained, but still.
The encrypted channel flow is confusing. You can set up an encrypted channel, then you share a code, but it's not clear which channel that code maps to, first, second, third, however many you can even make. There's a public channel and I couldn't easily tell which frequency or channel it actually is. It's just murky.
Too many decisions up front. When I flashed and configured, there were way too many options to wade through. I appreciate that most of them have descriptions, genuinely, but it's decision after decision before you're talking to anyone. Meshtastic: flash, region, go.
The contact screen is a wall. Open a contact in MeshCore and you get a list of info, settings and buttons. For an average user that's too much.
None of this means the tech is bad, the routing underneath is excellent. But MeshCore today feels like a power-user tool wearing a beginner's clothes, and the gap between "flash it" and "actually communicating" is much wider than Meshtastic's. Worth it if you're building something deliberate. A wall if you just want to throw a node in your bag and go.
6. Hardware, Good News
If you've already got Meshtastic gear, you can almost certainly run MeshCore on it. Switching is just a re-flash, you do not need to buy anything new to try the other side. Both run on the same dominant lineup:
- Heltec LoRa 32 V3
- RAK WisBlock 4631
- Seeed Wio Tracker L1 / L1 Pro
- SenseCAP T1000-E
- XIAO ESP32S3 + Wio SX1262
Quick note since I run MeshCore on the T1000-E and Wio Tracker L1 Pro, and I've reviewed both already: my reviews still stand. They're about the hardware, how good it is and the price, and the firmware on top doesn't change that. If it's got a screen you interact with it, just a different UI, but the way you interact is broadly the same between Meshtastic and MeshCore. So between my two MeshCore devices there's no firmware-driven difference worth calling out, it comes down to the hardware itself, which is what those reviews are for.

7. Messaging Features (and Why That's the Whole Limitation)
Meshtastic is the richer platform out of the box, and it's not close. Text DMs, channels, GPS sharing, real sensor telemetry (temp, humidity, pressure, UV with the right sensor), PAXcounter, remote admin, MQTT bridging, the lot. The ecosystem is enormous, there are guides for bolting on earthquake sensors, flame sensors, vibration motors, SOS buttons, custom boot logos. At this point Meshtastic is a genuine platform.
MeshCore keeps the messaging core tight and nails the routing. DMs, room-based group chat through a Room Server, store-and-forward for offline users. That Room Server is the standout, closest thing the LoRa world has to a proper bulletin board, and for a volunteer group or a farm or anyone checking in at different times it beats what Meshtastic offers natively.
But here's the honest framing nobody likes to say out loud: both of these are, at the end of the day, just messaging. Text and (on Meshtastic) some telemetry. That's it. That limitation is exactly why we built FlareSat, to put an actual use case on top of the mesh, live group mapping, shared pins, routes and zones over LoRa, instead of staring at a node list and a chat box. The transport is great. The thing you do with it is where both stock apps run out of road.
8. Apps and Software
Meshtastic has Android (mature, map-heavy), iOS, web, Python CLI, a standalone device UI, ATAK plugin, Home Assistant, documented MQTT. Broad and polished. The Android app especially feels finished.
MeshCore has Android and iOS apps (Liam Cottle's work, free, actively updated), community web clients, the T-Deck UI, and a Home Assistant integration. The app feels less like a map toy and more like a comms terminal for a structured network, which is the point, but as I said above, it also throws a lot at you. Meshtastic wins on breadth and polish, MeshCore wins on being built around how its own network behaves.
9. The Drama You Need to Know Before You Commit
Right, this is the part the other comparison articles are too lazy or too scared to cover, and it directly affects whether you should build on MeshCore. If you're going to invest in repeaters and infrastructure, you deserve to know the project just had a public meltdown.
In April 2026 the MeshCore team split, loudly, in public. Short version, both sides, because there genuinely are two.
The core team (Scott, Liam, plus Recrof, FDLamotte and Oltaco) put out a blog post titled "Why The Split." Three grievances against Andy Kirby:
One, he filed a trademark application for "MeshCore" on March 29 without telling the team.
Two, he'd been using Claude (AI) to "vibe code" large chunks of the ecosystem (standalone device firmware, app, web flasher, config tools) without disclosing it was majority AI-generated. They ran a Discord poll and the community broadly didn't want undisclosed AI-generated code running on their hardware.
Three, a domain and branding mess, Andy controls meshcore.co.uk and the original Discord, so the core team launched meshcore.io as the new official home. Their line: the only real "official" MeshCore is the GitHub repo (github.com/meshcore-dev/MeshCore), and Andy never contributed to it.
Andy's side, because he answered and it's not nothing. He's clear he never claimed to be a core firmware dev, credits the team for the code. His contribution as he frames it: the brand, the logo, the YouTube content, onboarding, manufacturer relationships, basically why a lot of non-technical people found MeshCore at all. On the trademark, he says it was about protecting the public-facing brand, not seizing the codebase, and that "owning a brand" and "owning the code" are different things. His context: trust had been breaking down, the .io site appeared without warning to him, and after he'd built .co.uk into the public face that felt like fragmentation. He admits, his words, "could communication have been better? Probably."
I try not to take sides, but I'll give you my honest read, I think the devs got played dirty here. The people who actually wrote the firmware, hand-coded, by humans, over 85 releases, are the ones who got blindsided by a trademark filing and a branding land-grab. From where I sit, Andy's in the wrong on this one. That's my opinion, not a verdict, go read both posts and decide for yourself.
And the AI part specifically bothers me, more than the trademark even. Not because AI-assisted code is automatically bad, it isn't. It bothers me because it was undisclosed, and because it's in the hands of someone who isn't a software engineer. Firmware that's relaying your emergency-scenario comms is exactly the place you want a human who understands what the code does, not a "hyper moment" of throwing everything at a model for two days. That's the trust issue, and it's a fair one.
So where does it leave you, the person about to flash a node? The reassuring bit: nothing on your hardware changed.The firmware on your nodes works exactly as before. The split is a fight over branding, trademark and what gets called "official," not a fork of the code you're running. Want the core team's path? meshcore.io, the GitHub repo, the meshcore.gg Discord, v1.15 shipped from there in April. Want Andy's T-Deck experience specifically? That's MeshOS at meshcore.co.uk. The trademark, last I checked, was still just an application, filed, not granted.
My honest take: this is a textbook open-source governance failure, the kind that happens when a project hits 38,000+ nodes and 100,000+ app users in 18 months with no legal structure and no trademark clarity. It does not make the routing worse. But it's a real maturity flag, and if you're betting community infrastructure on MeshCore, follow the meshcore-dev GitHub, not whoever shouts "official" loudest. (One more maturity note: a heap overflow was quietly fixed in v1.14 without a formal advisory. Keep your firmware current either way.)
The Real Talk, Which One Is Actually for You
Go Meshtastic if:
- You're new to LoRa mesh and want the fastest path to something that just works
- You're taking it hiking, camping, festival, with people who have zero patience for setup
- You want live GPS tracking and real sensor telemetry out of the box
- There's an existing Meshtastic mesh in your city you want to tap into
- You want ATAK, full Home Assistant telemetry, or Python scripting
- You value turnkey over fine-grained control, which, let's be honest, is most people
Go MeshCore if:
- You're building actual infrastructure, repeaters on rooftops and hills, remote property
- You care about raw performance and a quieter, more efficient mesh
- You want store-and-forward so people catch up when they come back in range
- You're deploying a community or regional mesh that needs to scale past 20-30 nodes without choking
- You're willing to eat a steep, under-documented learning curve to get there
Run both if:
- You're honest that these solve different problems
- Meshtastic for casual and turnkey, MeshCore for the infrastructure and performance side
- You enjoy this enough to maintain two networks, which if you've read this far, you probably do
Sum Up
| Meshtastic | MeshCore | |
|---|---|---|
| Routing | Managed flood (DMs learn paths since v2.6) | Flood-then-learn, embedded path routing |
| Node types | Flat, optional roles | Companion / Repeater / Room Server |
| Max hops | 7 (default 3) | 64 |
| Telemetry | Push, periodic broadcasts | Pull, minimal background traffic |
| Default bandwidth | 250 kHz (LongFast) | 62.5 kHz (quieter, faster in practice) |
| Real-world speed | Fine, tunable | Clearly snappier out of the box (my experience) |
| GPS tracking | Built-in, excellent | Limited by default, fuller on T-Deck/MeshOS |
| Store-and-forward | No native equivalent | Room Server, built for it |
| Setup | Flash, region, go | Steep, under-documented, decision-heavy |
| Docs | Extensive | Basically nonexistent right now |
| App ecosystem | Mature, map-focused, polished | Capable but busy, comms-terminal feel |
| Community | Large, broad, easy to find help | Smaller, technical, recently fractured |
| Project maturity | Since 2019, stable governance | Since 2025, fast but just had a public team split |
| Hardware | Same hardware | Same hardware |
| Cost to try | Free | Free (optional ~£8-10 T-Deck unlock) |
| Best for | Hiking, casual groups, telemetry, beginners | Infrastructure, scale, performance, communities |
Conclusion
MeshCore isn't replacing Meshtastic, and Meshtastic isn't crushing MeshCore. They made genuinely different bets and each is better at different things. The internet wants this to be a winner-takes-all cage match, it isn't.
Meshtastic will appeal to far more people, and it should. It's easier, friendlier, more turnkey, a flash-and-go build with a stable, boring-in-a-good-way project behind it. The defaults and performance are worse, sure, but it works and it works for normal humans. If you're starting from zero this week, start here. I'd tell my own brother to start here.
Me though? Despite the steep, frustrating, barely-documented learning curve, I'll probably stick with MeshCore. The performance is better and the architecture is just smarter for what I want to build. My actual wish is that someone, Meshtastic, MeshCore, anyone, ships a truly turnkey firmware that keeps the fine-grained control for the people who want it but lets everyone else turn it on, throw it in the bag, and start talking. A lot of folks love the deep customization. Most just want it to work.
And remember both of these, at the core, only do messaging. That's the ceiling. It's exactly why we built FlareSat, to give the mesh an actual job beyond a chat box. The transport layer is solved twice over now. What you do with it is the part still wide open.
Flash both. Break both. Then decide what your network actually needs. That's the only comparison that's ever mattered.
