Off-Grid Mesh Networking: My Meshtastic Projects & the Road to MeshCore

One of my ongoing projects is building out low-power LoRa mesh nodes as part of a larger effort to establish resilient emergency communications for Murray County, Georgia and the surrounding areas. When cell towers and internet go down — storms, power outages, or just the terrain of the southern Appalachians getting in the way — a self-healing mesh of small, inexpensive radios can still move messages around the county with no infrastructure at all.

These nodes run Meshtastic, an open-source mesh networking platform built on off-the-shelf LoRa radios operating in the license-free 915 MHz ISM band. No license is required to use it, which makes it a great complement to my ham radio (KD2HGI) and GMRS (WSGJ715) work: family, neighbors, and CERT volunteers can all participate without passing an exam. My nodes are part of Mountain Mesh, a community-owned network covering North Georgia and East Tennessee, running the MediumFast modem preset the network standardized on.

Each node below links to its live telemetry page on the Mountain Mesh Meshview server, where you can see battery levels, channel utilization, neighbor signal reports, and packet traffic in near real time.

📡 Solar Node — “KD2HGI – Solar” (SPSN)

Live telemetry: view.mtnme.sh/node/892283060

  • Hardware: RAK4631 (RAK WisBlock, Nordic nRF52840 + SX1262 LoRa)
  • Node ID: !352f28b4
  • Power: Solar panel + battery, fully off-grid
  • Role: Client

This is the workhorse of my setup and the proof-of-concept for what county-wide emergency infrastructure needs to look like: a node that runs forever with no wall power. The RAK4631 was chosen deliberately — its nRF52840 microcontroller sips power compared to ESP32-based boards, drawing only a few milliamps at idle. Paired with a modest solar panel and battery, it rides through cloudy Appalachian winter weeks without dropping off the mesh. The Meshview link above shows the battery and voltage graphs, so you can watch the solar charge cycle for yourself. A node like this, placed on a ridge or tower, is the template for permanent relay sites that keep working precisely when the grid does not.

🏠 Home Node — “KD2HGI-Home” (HGI2)

Live telemetry: view.mtnme.sh/node/3679992308

  • Hardware: Heltec LoRa 32 V3 (ESP32-S3 + SX1262)
  • Node ID: !db5839f4
  • Role: Client Mute

The home station is my always-on base node and the one I use day to day for messaging and monitoring the mesh. The Heltec V3 is one of the most common entry points into Meshtastic — cheap, well supported, with a built-in OLED display. It runs in the Client Mute role, meaning it sends and receives normally but doesn’t rebroadcast other nodes’ traffic. That’s intentional good citizenship: with the Solar Node a stone’s throw away already relaying for the neighborhood, having a second node repeat the same packets would just add congestion to the shared channel. On a mesh, sometimes the most helpful thing a node can do is stay quiet.

🔧 Temp Node — “KD2HGI-X1” (SPX1)

Live telemetry: view.mtnme.sh/node/3254551548

  • Hardware: Seeed Studio XIAO ESP32-S3 with SX1262 LoRa
  • Node ID: !c1fc83fc
  • Firmware: Meshtastic 2.7.15
  • Role: Client, on the Murray CERT channel

This one is my test bench. The Seeed XIAO S3 is a thumbnail-sized board that shows just how small and cheap a functional mesh node can get — ideal for go-bags, vehicle kits, or handing out to volunteers. It currently runs on a dedicated Murray CERT channel, part of the groundwork for giving Murray County’s Community Emergency Response Team its own encrypted coordination channel that rides on the same public mesh hardware. Being the “temp” node, it’s also where new firmware releases and configuration experiments get tried before anything touches the two production nodes.

Why This Matters: Emergency Communications for Murray County

The goal behind all of this is bigger than three nodes. Murray County and its neighbors sit in mountainous terrain where cell coverage is already spotty, and a single storm can take out what coverage exists. A mesh network changes the math: every node added makes the whole network stronger, messages hop node-to-node without any central tower, everything is battery- and solar-friendly, and the hardware costs less than a family dinner out. Text messages and GPS positions get through on a fraction of a watt.

The vision is a backbone of solar-powered relay nodes on high ground connecting the valleys, with inexpensive pocket nodes in the hands of CERT members, ham operators, and interested neighbors. In a disaster, that’s a county-wide text messaging system that needs nothing from the grid. On a normal Tuesday, it’s a fun hobby network for hikers and tinkerers — which is exactly what keeps it maintained and ready.

What About MeshCore?

MeshCore is a newer LoRa mesh firmware that I’m now experimenting with alongside Meshtastic, and it’s worth explaining why — because the two take opposite approaches to the same problem.

Meshtastic is optimized for ad-hoc, self-organizing networks: every node floods packets to its neighbors, with a default of 3 hops (7 maximum). Zero configuration, works instantly, great for a spontaneous group. But flooding means every added node adds noise, which gets inefficient as a network grows.

MeshCore is optimized for planned infrastructure. It defines distinct node types — Companions (end-user devices), Repeaters (dedicated relays), and Room Servers (nodes hosting persistent group chats) — and instead of flooding every message, it discovers a route once and then sends future traffic directly along that learned path. It supports up to 64 hops, enough to chain repeaters across an entire region without congestion. The two protocols are not cross-compatible, but they run on the same hardware: the RAK4631, Heltec V3, and XIAO S3 boards above can all be reflashed to MeshCore in minutes.

For an emergency communications backbone — deliberately placed hilltop repeaters, a persistent CERT room server, predictable routing — MeshCore’s architecture is a strong fit, and that’s exactly what I’m evaluating it for. The likely future is both: Meshtastic for the broad, zero-setup community mesh that anyone can join, and a MeshCore repeater backbone for structured emergency traffic across Murray County and beyond. Since the hardware is interchangeable, nothing invested in either is wasted.

Get Involved

Want to put a node on the map? A basic Meshtastic starter board costs around $25–$40, and setup takes an evening. Check out Mountain Mesh for the North Georgia / East Tennessee community, recommended hardware, and channel configuration — every node in the hills around Murray County makes the network stronger. If you’re local and interested in the emergency communications side, get in touch.