Skip to main content

Frequency Coordination and Channel Planning

When multiple independent mesh networks coexist in the same geographic area, frequency and channel coordination prevents interference and allows for intentional interconnection where desired. Note: this is voluntary self-coordination among unlicensed Part 15 operators, not formal frequency coordination. You cannot reserve a frequency, and channel choices are limited to the fixed slots your preset bandwidth defines within 902-928 MHz.

The 902-928 MHz Band Structure

In the United States, the 902-928 MHz ISM band is 26 MHz wide. LoRa channel bandwidth in Meshtastic ranges from 125 kHz (SF12 Long-Slow) to 500 kHz (ShortTurbo); the common LongFast/MediumFast presets use 250 kHz. Because each transmission occupies only part of the band, many slots can coexist. Note: FCC 15.247(a)(2) digital modulation requires a minimum 6 dB bandwidth of 500 kHz, so compliance for the narrower LoRa bandwidths depends on the device's specific FCC type acceptance. Dense networks in the same area can still cause packet collisions if they share the same frequency slot.

Meshtastic Channel Numbers

Meshtastic derives its center frequency from a frequency-slot number and the preset bandwidth. Slot spacing equals the preset bandwidth — 250 kHz for LongFast (104 US slots), and 125 kHz only for the 125 kHz presets — so 250 kHz is the default spacing, not 125 kHz. Slots span the whole regional band (0-103 for US LongFast); when the slot is left at default it is chosen by hashing the channel name, not by a simple channel index. Note that these frequency slots are distinct from the up-to-8 logical channels (name/PSK), which all share the same frequency.

# US LongFast (250 kHz BW) default frequency:
# 906.875 MHz, which is slot 20 — selected by hashing
# the default channel name "LongFast" (not "channel 0").
#
# Raw formula for an explicit slot n (1-indexed):
# freq = 902.0 + 0.125 + (n-1)*0.25 MHz

# Set the frequency slot explicitly via CLI:
meshtastic --set lora.channel_num 3

MeshCore Frequency Selection

MeshCore uses fixed frequency presets. One commonly used US/Canada preset is 910.525 MHz (as of 2026-06-08; verify against current MeshCore release/docs, as there are multiple US presets at different SF/BW and frequencies — there is no single fixed USA/Canada frequency). Networks in the same area using MeshCore should coordinate to avoid using the same frequency if they don't want to interoperate.

Avoiding Interference with Other Users

The 902-928 MHz band is shared with ISM devices, FHSS systems, baby monitors, cordless phones, and other LoRa networks. If you observe high packet error rates that don't correspond to weak signal strength, interference from another source may be the cause. Use an SDR (Software Defined Radio) to scan the band and identify active signals.

Multi-Network Coordination

When two community networks exist in overlapping geographic areas, coordinate:

  1. Different channel keys with same frequency - Networks stay logically separate even if they occupy the same frequency. Because they share the same frequency slot, they share airtime and can still collide; acceptable for low-traffic networks.
  2. Different frequencies + different keys - Minimizes collisions between your two networks. Note: 902-928 MHz is unlicensed shared ISM spectrum (FCC Part 15); no operator owns a frequency and you have no legal protection from interference by other ISM/FHSS devices. Different center frequencies reduce, but do not guarantee elimination of, collisions. Also note that nodes on different frequency slots cannot hear each other.
  3. Intentional bridging - A dual-radio or dual-channel node that bridges the two networks. Both networks benefit from the other's coverage.

Documentation for Multi-Network Areas

Maintain a local frequency coordination document shared between network operators:

NetworkFrequencyPresetCoverage AreaContact
Portland Mesh906.875 MHzLongFastMetro PDXops@pdxmesh.net
Columbia Gorge Mesh907.125 MHzLongFastHood River/The Dallesk7xyz@arrl.net