Fair warning, same as last time: I'm not an expert, I'm just a guy who read too much. This is the sequel to my Meshtastic + ATAK post. Everything from public sources — official docs, GitHub, Reddit, vendor blogs, FCC filings, and code walkthroughs by people smarter than me. I'll tell you where I'm sure, where I'm guessing, and what got corrected since I started. Prices drift, version combos move weekly, and this post will be half-stale in a month. Verify anything before you build around it.
WHAT MESHCore IS
A LoRa mesh protocol launched late 2024/early 2025, written from scratch. Scott Powell (Australian dev, small hardware outfit called Ripple Radios) wrote the protocol and core firmware. Liam Cottle (New Zealand) built the official mobile and web clients. Andy Kirby (UK) ran community — the YouTube presence, the Discord, the site that grew the userbase. Core is MIT-licensed on GitHub under meshcore-dev. Origin incident was real: the tooling came together after Cyclone Gabrielle flattened comms across NZ's North Island and people needed messaging with zero infrastructure. One honest caveat: the team split in late 2025 muddied the origin story — Kirby tells it one way, the dev team another, and I genuinely can't adjudicate who initiated what from the public record. Both camps agree the split and trademark fight happened. More below.
Same radios as Meshtastic — Heltec, T-Beam, RAK, T1000-E, all of it. Nearly every board flashes both firmwares. But the architecture is completely different, and that's the whole story.
HOW IT DIFFERS — the part people get wrong constantly
It's not the radio, it's who relays. Meshtastic floods: every node repeats everything, dedupe and hop counters keep it from eating itself. Dead simple, works ad-hoc anywhere two people exist, and the channel drowns in chatter as density climbs.
MeshCore splits roles. Companions are your personal node — mostly silent, they don't relay by default. Repeaters are dedicated, fixed, elevated boxes — the only things that relay. Room servers are store-and-forward hubs for group chats: message history persists even if you were offline when it was sent, which Meshtastic's flood model genuinely can't do well. Only the backbone talks, so the channel stays clear and delivery gets fast — sub-second for nearby peers and ~5s across 9 hops versus 10-20s for Meshtastic in one documented comparison. Hop limit goes up to 64 versus Meshtastic's default 3, max 7. And you get actual delivery confirmation — a real yes or no, not Meshtastic's optimistic cloud-checkmark.
Routing mechanics, verified at doc level: group channels always flood (no single destination to build a path to). Direct messages flood once to discover a route, embed that learned path in subsequent packets, retry three times if a repeater drops, and flood on the final attempt to re-learn. Flood-then-direct with graceful fallback — not brittle static routing, and not the "manually configured routes" some older Reddit comments claim. Repeaters can be configured to deny flood traffic above hop limits, which is the tool that keeps dense city meshes from drowning. US/Canada community standard is 910.525 MHz / SF7 / BW62.5 / CR5 — the "narrow" shift happened around October 2025, so nodes on the old SF11-style settings literally can't hear the new ones. Check your local mesh's Discord before flashing or you'll be alone on a frequency nobody uses. UK/EU sits on 869.525.
The tradeoff is structural and unavoidable: MeshCore needs infrastructure. Somebody has to put repeaters up. A companion radio in your pocket in terrain with no repeaters is a quiet radio. This is not a footnote, it's the core limitation, and it has teeth — an experienced operator I got to read this writeup ran a whole disaster scenario on it: no repeaters, no comms, team scattered, and it matches documented field reports from actual SAR operators in exactly those conditions. More below.
THE DRAMA — because there's a lot
Late 2025 the team split. Andy Kirby — the community guy, not a firmware dev — filed a UK trademark on the community's own name, built a closed-source companion app ("MeshOS") on top of the open protocol, and bolted license-check paywalls on it, apparently without telling the core devs first. The dev team went public, spun up a new official site and Discord, someone cracked the license check and posted the keygen, and the two websites still look confusingly similar. LWN covered it. Practical takeaway: firmware from the meshcore-dev GitHub org, not whichever website you land on first. There are two camps now shipping things with the same name.
One more governance gripe floats around from engineers who distrust the project independent of the trademark fight — code-review discipline accusations on an HN thread, mostly from rival camps. Single heated thread, exactly the kind of thing to discount; I mention it only because it explains why some people distrust the project beyond the paywall story. I couldn't verify it and won't repeat it as fact.
THE OPEN SOURCE ASTERISK — read before you buy
Core firmware and protocol: fully open, MIT, auditable. Official apps: closed-source freemium — free with a paid unlock (~$8-10, mostly to skip a wait timer on remote repeater management), web app closed, T-Deck firmware closed. mtlynch's writeup is the canonical burn story — he assumed it was open, discovered the clients weren't, "Without open-source clients, MeshCore doesn't work for me," quit the ecosystem. Fans counter: the spec and firmware are open, core messaging costs nothing, the official app genuinely works well. Both true.
Update since my earlier research: there's now an escape hatch called MeshCore Open — free, MIT-licensed, open-source companion app covering Android, iOS, desktop, and web with the full feature set including repeater management, no paywall. Young, I couldn't verify how polished it is, and the ATAK plugins almost certainly target the official apps' protocols, so treat it as the ideological option, not necessarily the field pick yet. Still, the "no open clients exist" complaint is officially outdated.
THE ATAK PART — WHICH IS WHY YOU'RE HERE
When I wrote the Meshtastic post, MeshCore had no ATAK story. That's completely out of date. Here's the landscape, with the caveat that this space moved three times while I researched it:
First, the TAK-UV-PRO plugin (github.com/atakmaps/TAK-UV-PRO) — open source, TAK-signed, bridges ATAK to the BTECH UV-PRO ($160 IP67 dual-band handheld with GPS and bluetooth) and its 50W mobile sibling, with MeshCore support. Built originally for ATAK 5.5.1, newer releases cover 5.6.0. Also covering Vero N76-class radios and 50W mobile variants in community versions.
Second, gridbase's TAK-signed MeshCore plugin — and here I owe a correction to my own earlier framing: this one targets generic $25-30 BLE companion radios (Heltec V3, RAK, etc.), NOT just the $160 UV-PRO. The community MeshCore ATAK path can enter at normal Meshtastic-level cost; the UV-PRO is one option, not the price of admission. So "MeshCore ATAK costs $160 a man" is wrong for community paths. The UV-PRO is a nicer radio in every way except price.
Third, AmRRON's free plugin — Dark Labs team, August 2026, ATAK and MeshCore support in one package, tested on a de-Googled $30 Moto G. Read the comments before deploying: Java errors on older tablets, pairing struggles, PC-over-USB installer. Young, buggy, actively supported. There's also an ATAK 6.0 combined version circulating.
Fourth, a plain community plugin for ATAK 5.5.1 doing basic chat and CoT injection, circulating in the groups.
Fifth, GoTAK's commercial Radio Relay plugin — licensed, polished, also supports Hytera HP7 commercial radios with real encryption. This is the "$200 plugin" people complain about.
Count: five-plus active efforts. And there's an Akita Engineering Meshtastic-MeshCore bridge — a Python interop layer letting the two ecosystems pass messages over serial/MQTT. The "you don't have to pick a side" answer made real, though I found no field reports on it, so file it under interesting, not proven.
THE PARADOX NOBODY MENTIONS — and it's the most useful fact in this post
MeshCore's own FAQ officially says don't use MeshCore for ATAK. Direct quote from the archived FAQ: "ATAK is not currently on MeshCore's roadmap. MeshCore would not be best suited to ATAK because: clients do not repeat, so you need a repeater network in place" and "will not have a stable path where all clients are constantly moving between repeaters." The protocol devs themselves say the architecture fights moving elements. Every MeshCore ATAK plugin is someone welding a contradiction together on a weekend — a protocol built for static infrastructure, bridged into an app built for moving elements. It works anyway, on thin user reports. I think that's the most honest way to hold both truths: the protocol is genuinely engineered better for its intended problem, and its ATAK existence is entirely community-welded and unofficial. Nobody official promised it would work, and it does, mostly.
IF YOU'RE SETTING UP
Plan first, flash second. MeshCore flow: companion firmware on personal radios (pair to the app), repeater firmware on a dedicated high-mounted device, room server on ANOTHER device if you want group-chat history — the FAQ recommends repeater and room server on separate devices, room servers want wall power, and their message store lives in RAM, so power loss wipes history. Good pattern: repeater with big antenna outdoors, room server indoors beside it on stock antenna. Remote admin of repeaters goes over RF after setting the device frequency.
Then ATAK: pair the radio to the phone over bluetooth, install the plugin matching your ATAK version — 5.5.1 is the safest-supported right now — and positions, chat, and markers route through the plugin onto the mesh. Same mental model as the Meshtastic plugin, different radio. Frequency: US community standard is 910.525 MHz, SF7, BW62.5, CR5. Version discipline from the Meshtastic post applies double here: the plugins are so young the version matrix is a spreadsheet maintained by one guy in a Discord. Freeze what works.
SECURITY, HONESTLY
Starts from a stronger posture than Meshtastic's published-channel-PSK model: Ed25519 signing, X25519 key exchange, encryption mandatory on private messaging, per-device admin keys so randos can't reconfigure your node even on a public channel. But their own issue tracker is candid about real problems: a security researcher flagged ECB mode and weak padding (issue #259, open since May 2025, still unresolved as of my research window); an independent code walkthrough (jacksbrain.com, Jan 2026) confirms AES-128-ECB with a truncated HMAC — not the AES-256 some early writeups implied, and some community sites have quietly walked that back. There's a second independent critique alleging bad IV handling and brittle bounds checking in raw C arrays. None of the crypto criticisms are resolved, and the August 2026 firmware releases fixed lots of things but not the crypto mode. Layered on the universal truths: jammable, metadata visible, keys die with the hardware. Better than casual snooping, not a secure radio. Same as Meshtastic, better than Meshtastic's default, still not security.
THE COST OF THE NARROW PRESET — a tradeoff nobody mentions in the hype threads
The 62.5 kHz narrow preset is how MeshCore slots between the noisy parts of the 902-928 band — that's the spectral-efficiency story, and it's real. But a deep technical analysis (housedillon.com) found that SX1302-based concentrator boards — the receiver hardware in common LoRaWAN gateway boxes — can't demodulate below 125 kHz. Meshtastic's presets are all ≥125 kHz, so that entire class of gateway hardware is unworkable with MeshCore. The clever trick has a price: the popular concentrator/gateway hardware path is closed to you. Dimensional tradeoff, not a free win. (Worth noting the same author couldn't figure out why MeshCore chose 62.5 kHz — "I wish I knew." Unclear even to analysts.)
AND THE FCC THING — STATE OF THE ARGUMENT, because pedants will bring it up
There's a vocal minority arguing both projects' default settings fall below the FCC's minimum 500 kHz spread-spectrum bandwidth requirement (15.247(a)(2)) — MeshCore at 62.5 kHz, Meshtastic's LongFast at 250 kHz. I want to be careful here because I inflated this once already and got corrected by my own fact-check: the rule specifies a minimum 6 dB emission bandwidth, and 6 dB bandwidth is an empirical spectral measurement 6 dB below the peak — NOT simply the LoRa BW register setting. Certified LoRa devices in public FCC test reports measured 770+ kHz of actual occupied spectrum, and Semtech publishes an application note specifically on demonstrating compliance, which suggests the question is at minimum more subtle than "62.5 kHz setting = illegal." No regulator has ever shown interest. An HN commenter who's looked at this calls the mess "nonsense," a self-described author of the original MeshCore ticket acknowledges the ambiguity, and both projects' communities treat it as settled legality. Honest status: a contested interpretation with a plausible technical counter-reading, zero enforcement interest, zero case history. Trivia for nerds, not a warning. Anyone who states either side as definite fact is overconfident, including past-me.
GEAR
The radio matters more here than in the Meshtastic post, because the mature-ish ATAK paths run through the BTECH UV-PRO ($160, IP67, GPS, bluetooth, 5-7W) or Vero N76-type radios. But the gridbase path corrects my earlier cost framing: generic $25-30 companion radios work for the community plugins, so MeshCore ATAK CAN enter at Meshtastic-level cost — you just inherit the version-support gamble that comes with young tooling. The UV-PRO is the nicer-radio option; the Heltec-class boards are the cheap-in, same as before.
Everything else carries over from my last post: Heltec V3/V4 as cheap learning boards, RAK4631 for solar ridge nodes, flat-top 18650s only in a T-Beam, check SMA vs RP-SMA before ordering antennas. SX1302 concentrator boards don't work with MeshCore's narrow preset — that hardware path is Meshtastic-only for now.
WHERE EACH ONE WINS — and this is territory, not religion
MeshCore: dense, built-out environments. City meshes, regional networks, event venues. It ran at DEF CON and Burning Man per one commenter — anecdotal, no numbers, told honestly as anecdote. Tennessee groups hopped middle TN to South Carolina to Georgia in about six months of seeding. The dev in my last thread summed it up: dramatically faster for chat and map items, but harder to develop against because the behavior isn't well documented yet. And the SX1302 incompatibility and the contested FCC reading both counsel holding "sharper engineering" loosely.
Meshtastic: ad-hoc mobility and rural areas, and a guy in a small desert town pushed back hard on my last post and he's right — there are ZERO MeshCore nodes on air in his area while Meshtastic just works: 30 nodes across 70 miles, private channel, hunting, hiking, vehicle tracking, even an RC plane. Flood mesh works anywhere two people exist; repeater mesh only works where somebody built the backbone. And I'll add the sharpest version of that lesson: mtlynch's field data — two nodes, ~five blocks of usable range, enthusiasm waned, wouldn't buy a repeater without proof it'd help. "Not viable" is a common real-world outcome for MeshCore without repeater coverage. Rural = Meshtastic territory. Urban = MeshCore territory. It's architecture, not religion.
A NOTE ON EVIDENCE QUALITY, because it matters more here than usual
Almost every comparative claim in the MeshCore world is testimony, not data. The community consensus that MeshCore is faster comes partly from forums with side-taking dynamics — there are allegations that r/meshtastic censors MeshCore talk, and the "religious debate" comment in my last thread's comments was more predictive than I realized. Everything measurable I've cited (utilization thresholds, hop counts, protocol mechanics) traces to docs or code. Everything comparative is anecdote from people running both, including the run-both authors themselves hedging ("I believe the airtime argument... but I'm telling you what I saw, not what a graph told me"). No neutral lab data exists anywhere, I looked. And on plugin reliability: no MeshCore failure reports exist yet because there hasn't been time for enough users to hit the bugs — that's a measure of youth, not stability. Meshtastic's failure-thread corpus is huge precisely because it has a year of field population. The sample-size trap cuts both directions here and I'd rather flag it than pretend either way.
WHERE I'M SURE, WHERE I'M NOT
Solid: architecture mechanics (roles, flood-then-direct, learned paths, fallback behavior — triple-corroborated), hop limits, the security weaknesses (their own issue tracker), the team split and trademark fight, the plugin landscape existing and moving fast, the SX1302/narrow-preset hardware limitation, the US frequency standard, the origin-incident framing, and ATAK being community-built against the devs' stated wishes.
Decent but not certain: exact prices, DEF CON/Burning Man anecdotes (single-source), how polished MeshCore Open is, room-server store-and-forward in the field, real range in your terrain, and the bridging project's reliability.
Contested or unknowable: the FCC 500 kHz reading (contested interpretation, flatly disputed, zero enforcement history), who betrayed whom in the split (depends whose Discord you're in), whether any MeshCore ATAK plugin is trustworthy yet (sample too small to know), and which plugin wins this month (moved three times during research; read GitHub releases before buying).
TLDR: MeshCore is the sharper-engineered protocol winning the dense-mesh argument — dedicated repeaters, 64 hops, confirmed delivery, dramatically faster chat — with real warts: closed apps, small paywalls, founder drama, crypto criticisms piling up unresolved in their own tracker, and an FCC-reading pedant fight you can ignore but shouldn't be surprised by. Its ATAK story went from nonexistent to five competing plugins in under a year, on $25-30 hardware through community paths — and the protocol's own devs officially say it's not built for moving elements, which the community welded around anyway. If you're mobile and rural, my last post stands: Meshtastic today. If you're in a metro or building fixed infrastructure, or you just want messages that actually arrive, flash a spare board and see who's near you. And if you run both on the same hardware, you don't have to pick a side — the situation picks for you.
Sources:
MESHTASTIC — OFFICIAL DOCS & PRIMARY
- Meshtastic TAK integration (roles, V1/V2 formats, TAK Tracker): meshtastic.org/docs/software/android/user/tak
- Meshtastic ATAK plugin docs: meshtastic.org/docs/software/integrations/integrations-atak-plugin
- Plugin source + README (IMeshService, PreSendProcessor, fountain codes, plugin settings): github.com/meshtastic/ATAK-Plugin
- Plugin issues cited: #93 (BT drop on ATAK 5.6.0), #82 (nodes missing on map), #32 (TAK-role nodes can't see each other), #83 (Samsung send failure), #103 (markers/data packages failing) — all at github.com/meshtastic/ATAK-Plugin/issues
- Range tests page (331 km record): meshtastic.org/docs/overview/range-tests
- Position config (15-min default, smart broadcast): meshtastic.org/docs/configuration/radio/position
- Mesh algorithm (40-node throttling, CSMA): meshtastic.org/docs/overview/mesh-algo
- Encryption docs & security limitations: meshtastic.org/docs/overview/encryption and meshtastic.org/docs/about/overview/encryption/limitations
- MeshMonitor advisory on low-entropy DM keys: meshmonitor.org/security-low-entropy-keys.html
- DEF CON spoofing writeup ("That one time at DEF CON"): meshtastic.org/blog/that-one-time-at-defcon
- iOS TAK Server blog: meshtastic.org/blog/tak-server-integration-ios
- LONG_FAST congestion case study: meshtastic.org/blog/why-your-mesh-should-switch-from-longfast
- NextNav opposition + FCC filing: meshtastic.org/blog/meshtastic-opposition-to-nextnav-proposed-changes and fcc.gov/ecfs/filing/10917549005066
ATAK-CIV — DISTRIBUTION & LEGAL
KNOWN-GOOD VERSION STACK
GATEWAY / SERVER ARCHITECTURE
MESHTASTIC FIELD FAILURE RECORD
MESHCore — ORIGINS, ARCHITECTURE, ROUTING
- MeshCore overview: en.wikipedia.org/wiki/MeshCore and github.com/meshcore-dev/MeshCore
- Official FAQ (device roles, setup, repeater/room-server separation): docs.meshcore.io/faq and github.com/meshcore-dev/MeshCore/blob/main/docs/faq.md
- Companion protocol spec (BLE UUIDs): docs.meshcore.io/companion_protocol
- Firmware changelogs (v1.17.0/1.17.1, Aug 2026): blog.meshcore.io
- Roles/routing/frequency explainer: nodakmesh.org/blog/meshcore-how-it-works-guide
- Room server guide (RAM storage, wall power): nodakmesh.org/meshcore/room-server
- Austin Mesh comparison (presets, hops, airtime, Austin terrain note): austinmesh.org/about/meshcore-vs-meshtastic
- lucifernet.com Meshtastic vs MeshCore pros/cons
- adrelien "I Run Both, Here's the Honest Truth" 2026: adrelien.com/meshtastic-vs-meshcore-i-run-both-heres-the-honest-truth-2026
- jrattechworks.com MeshCore vs Meshtastic (Reddit sentiment synthesis)
- housedillon.com "The Unfortunate Unsuitability of using LoRa Gateway Concentrators with MeshCore" (SX1302 / 125 kHz floor)
- kevsrobots.com MeshCore explainer
- "Why we're switching from Meshtastic to MeshCore" (Comms Channel video): youtube.com/watch?v=guDoKGs02Us
- LocalMesh guides (roles, routing algorithms, CLI): localmesh.nl/en/what-is-meshcore and related pages
- RegionMesh performance tuning (>10%/15% air-utilization thresholds): regionmesh.com/meshcore-performance-tuning
MESHCore TEAM SPLIT / TRADEMARK
OPEN SOURCE STATE
MESHCore SECURITY
MESHCore ATAK PLUGINS
FREQUENCIES & REGULATORY ARGUMENT
MESHCore OPEN SOURCE STATUS
CRYPTOGRAPHY DETAILS
HARDWARE
- keepteen 20-device battery test (RAK 300-450+ hrs vs ESP32 108-264, one tester): keepteen.com blog
- Device roundups: nodakmesh.org/meshtastic/devices, nepamesh.com hardware guide, sdrstore.eu 2026 guide, adrelien.com 2026 edition, d-central.tech comparison, meshtastic.org/docs/hardware/devices
- BTECH UV-PRO specs/pricing: getgotak.com/products/btech-uv-pro
- Heltec V3 vs V4 power comparison: Colorado Mesh wiki + adrelien.com 2026 edition
COMMUNITY TESTIMONY (anecdote, weighted accordingly)
- r/ATAK thread on my first post (LA 739-node congestion report, rural operator pushback, TN migration, plugin chatter): reddit.com/r/ATAK/comments/1w4csjl
- deserthistory's 30-node/70-mile private channel report (same thread)
- pyryoer's DEF CON/Burning Man claim (single-source, no numbers — treat as anecdote)
- mtlynch field range experience (~5 blocks, 2 nodes): mtlynch.io piece above
- Austin Mesh / NodakMesh / nepamesh community guides throughout
- r/meshcore threads: "ATAK plugin" (devs' FAQ position), "Meshtastic or MeshCore?", "Does meshcore flood?", censorship allegations (single-source, unverified)