Getting Started with Dixie Mesh

Dixie Mesh is a community-run LoRa mesh network for Southern Utah, built on MeshCore. This guide walks you from an unboxed radio to a working node on the mesh in about 10–20 minutes.

If you’ve never touched a LoRa radio before, don’t worry — no soldering, no ham license, and no command line required. If you get stuck, jump to Still unsure? at the bottom.

Ways to participate

There are three roles a node can play. You can change roles later, so pick whatever fits how you’ll use it today.

New here? Set up a Companion first. Once you’re comfortable, consider putting a Repeater somewhere with a clear view of the valley — that’s the single most valuable thing you can do for Dixie Mesh.

Encryption and visibility

A quick reality check before you start:

For anything sensitive, use direct messages or a private channel with a key you share only with the people who need it.

What you need to get started

Supported hardware

You have two paths: buy a pre-built node that’s ready to use out of the box, or build your own from a supported board.

Pre-built / ready-to-use

These are just two of the many options available for easy purchase:

Build your own

Rolling your own node can be a lot of fun — and it’s often cheaper. If you have access to a 3D printer it’s even better: there are tons of community-designed cases out there, so you can print an enclosure tailored to your board, antenna, and battery (or design your own).

MeshCore runs on a range of inexpensive LoRa boards. For Southern Utah you want a board for the US 915 MHz band. Popular, well-supported choices include:

Make sure any board you buy is the 915 MHz (US) variant. An 868 MHz (Europe) board will not work on the Dixie Mesh frequency.

Antennas and placement

The antenna matters more than almost anything else.

Flashing and initial setup

  1. Plug your board into your computer with the USB-C data cable.
  2. Open the MeshCore Web Flasher: flasher.meshcore.io
  3. Select your board model from the list.
  4. Choose the firmware for the role you want:
    • Companion (BLE) for a phone-paired messenger.
    • Repeater for an always-on relay.
    • Room Server for a hosted group chat.
  5. Click Flash and follow the browser’s prompt to select the serial port. Wait for it to finish — don’t unplug mid-flash.
  6. For a Companion, install the MeshCore app (Android / iOS), then pair with your radio over Bluetooth.

Dixie Mesh conventions

So every node can hear every other node, we all use the standard MeshCore USA/Canada preset. Set these exactly:

Setting Value
Frequency 910.525 MHz
Bandwidth 62.5 kHz
Spreading Factor 7
Coding Rate 5

In the MeshCore app you can simply pick the USA/Canada (Recommended) preset and it will fill these in for you.

Public channel

The default public channel is named Public and uses MeshCore’s standard public key, so it works out of the box on every node:

8b3387e9c5cdea6ac9e5edbaa115cd72

Naming your node

Pick a name that helps people find you on the map and tells repeaters from companions at a glance.

Region Scopes

As the Intermountain West mesh has grown, repeaters now support Region Scopes — routing labels (like stg or ut) that control which parts of the mesh a repeater participates in. A repeater only forwards packets that match its allowed region list and drops everything else at the boundary, which keeps local airtime clear and lowers the chance of congestion.

Dixie Mesh sits in the imw → ut → s-ut (Southern Utah) → stg (St. George) branch of the region tree. For the full tree, see the Region Trees reference (PDF).

Repeater Configuration

Every Dixie Mesh repeater should be configured with the same regions: ut, s-ut, and stg, plus imw so it participates in the Intermountain West public channel. Set the default region scope to s-ut. The only difference is how you handle unscoped traffic:

If your repeater sits on the boundary and receives traffic from outside s-ut, it is especially important that you deny unscoped traffic. To do that, use the following command:

region denyf *

Video walkthrough: configuring region scopes on a repeater from the MeshCore app.

You can also configure region scopes from the repeater’s command line (CLI/console) with the following commands:

region def imw ut s-ut stg
region default s-ut
region save

Companion Configuration

On your companion, scope the Public channel to imw if you want to participate in the full Intermountain West public channel. Otherwise, set it to ut for just Utah, or s-ut for the Dixie Mesh area.

Verifying your node works

  1. Say hello on the public channel. Open the Public channel and send a message. If someone replies, you’re on the mesh.
  2. Check who you can hear. In the app, look at the contacts/nodes list — any nodes that appear are within reach (directly or via a repeater).
  3. Use the built-in tools. From a repeater or companion you can run a ping or trace to a known node to confirm the path and see how many hops away it is.

Quick “is my signal getting out?” test: Join the #test channel, send a test message, and watch the app. It will show whether your message was repeated by a repeater — if you see it relayed, your signal is reaching the mesh. The #test channel is the polite place for this so you’re not cluttering the public channel.

No responses? Don’t panic — see below.

Still unsure?

That’s completely normal. A few things that fix most first-time issues:

Welcome to Dixie Mesh. Get a node up, get it high, and help the network grow.


Helpful references: the MeshCore documentation and the MeshCore FAQ.