While it is not a requirement for using the Acadiana Mesh, it is strongly encouraged that everyone who is capable set up a Meshcore repeater. The repeater devices are the backbone of the mesh and the more we have the stronger the mesh becomes. Some may say "I don't have a high place to put a repeater". Know that a low repeater is far better than no repeater at all. Setting up a repeater is an easy process as well. This page will serve as a guide for getting your repeater flashed and ready to mount.
Flash the repeater using MeshCore firmware flasher.
Go to MeshCore USB Config and configure:
| Setting | Value |
|---|---|
| Frequency | 910.525 MHz |
| Bandwidth | 62.5 kHz |
| Spreading Factor | 9 |
| Coding Rate | 7 |
Send Advert to broadcast to the mesh⚠️ CRITICAL: Your repeater will not work properly without syncing the clock first!
Repeaters default to a clock time of 15 May 2024 on every reboot unless connected to a computer.
Why this matters:
How to sync the clock:
Settings tab → Scroll to Sync Clock → Tap itAdvert to send an updated advert💡 Note: You must re-sync the clock after every power cycle or reboot unless your repeater has GPS.
Once logged in and the clock is synced, configure via the command line:
Common settings:
set agc.reset.interval 500
set multi.acks 1
set advert.interval 239
set flood.advert.interval 19
set guest.password
set path.hash.mode 1
set loop.detect minimal
set txdelay 1.0
>_ — Command Line tabOK responsetxdelay value otherwise you are complete.| Setting | Value | Default | What it does |
|---|---|---|---|
agc.reset.interval |
500 | 0 (disabled) | AGC reset every 500 seconds (~8 min) to prevent sensitivity drift |
multi.acks |
1 | 0 (disabled) | Send redundant ACKs for better delivery reliability |
advert.interval |
240 | 0 | Local advert every 2 minutes (neighbors only) |
flood.advert.interval |
29 | 0 (disabled) | Network-wide advert every 19 hours |
guest.password |
(blank) | (none) | Blank password allows community members to query repeater status |
path.hash.mode |
1 | 0 | 2-byte path hashes — reduces collisions, improves routing accuracy |
loop.detect |
minimal | off | Rejects flood packets that appear to be looping |
Why These Settings?
¶ AGC Reset Interval
The Automatic Gain Control (AGC) in LoRa radios can drift in busy RF environments. Setting
agc.reset.interval 500resets it every ~8 minutes, keeping sensitivity optimal.¶ Multiple ACKs
Sending redundant ACKs (
multi.acks 1) significantly improves delivery confirmation reliability for direct messages.¶ Advertisement Intervals
- Local advert (239 min): Zero-hop broadcast to immediate neighbors only — keeps neighbors aware of your node without flooding the network
- Flood advert (19 hrs): Network-wide broadcast. The 29-hour prime interval rotates through different times of day, avoiding patterns where adverts always fire at the same time
The flood advert interval is intentionally set to a prime number (19 hours). A prime interval never divides evenly into 24 hours, the advert naturally rotates through different times of day, ensuring more even coverage and avoiding patterns where adverts always occur at the same time.
¶ Path Hash Mode
Mode 1 uses 2-byte stamps (65,536 unique values) instead of the default 1-byte (256 values). This virtually eliminates hash collisions in the Acadiana network, keeping path records accurate and routing reliable.
¶ Loop Detection
loop.detect minimalprotects the mesh from packet storms caused by misbehaving repeaters circulating the same packet repeatedly.
What to include:
Example:
Rob - Lafayette (W5XXX)
5dBi antenna, Heltec V3, solar powered
Rooftop
Choose the profile that matches your repeater's role and position in the Acadiana mesh network to determine the proper txdelay value. Most users will fall into the STANDARD profile category for home based nodes and will not need to modify the value given in the common settings section above.
| Profile | Elevation | Neighbors | Typical Location |
|---|---|---|---|
| ⚫ BACKBONE | Variable | 1-2 | Point-to-point link, dedicated backbone |
| 🔴 CRITICAL | Highest | 20+ | Tower, tall building, hilltop |
| 🟠 LINK | Mid | 15-20 | Elevated position, ridge |
| 🟡 STANDARD | Average | 5-10 | Suburban roof, elevated home |
| 🟢 LOCAL | Low | 1-3 | Indoor, ground-level, low roof |
| 🔵 MOBILE | Variable | Variable | Vehicle, portable, hiking |
| 🟣 BRIDGE | Variable | Variable | ESP32 node bridging two LoRa segments via ESP-NOW |
Role: Dedicated backbone link between two specific high-value nodes.
When to use: Your repeater is part of a dedicated point-to-point backbone link.
set txdelay 0.25
Role: Highest elevation, most neighbors, backbone of the mesh.
When to use: Your repeater is on a tower or tall building with clear line-of-sight to 20+ nodes.
set txdelay 0.3
Role: Connects critical nodes to local coverage.
When to use: You can see some critical nodes and some local nodes (15-20 neighbors).
set txdelay 0.6
Role: Average positioning, serves local area.
When to use: Typical deployment on an elevated suburban roof with 5-10 neighbors.
set txdelay 1.0
Role: Low elevation, few neighbors, serves immediate area.
When to use: Indoor repeater or low rooftop with 1-3 neighbors.
set txdelay 1.4
Role: Moving repeater that extends coverage dynamically.
When to use: Mounted in a vehicle or carried while moving through the mesh.
set txdelay 2
Role: Links two physically separated LoRa mesh segments over ESP-NOW WiFi.
When to use: Your ESP32 node bridges two LoRa segments that cannot hear each other directly.
set txdelay 0.25
set bridge on
set bridge.delay 1000