MeshCore 500 kHz FCC compliant

4 Sep 2026 3 min read No comments MeshCore
Featured image

NOTE: The MeshCore500.org domain name is a courtesy hold for the greater MeshCore community. Contact NotAndy@MeshMap.me for information.


Why Some Mesh Communities Are Switching to MeshCore 500 Khz

Some MeshCore communities—particularly in the United States—are switching to the 500 kHz bandwidth configuration primarily for FCC regulatory compliance. [1, 2]

1. Legal and Regulatory Compliance

Under United States FCC regulation 47 CFR 15.247(a)(2), digital modulation systems (like LoRa when not using frequency hopping) operating in the unlicensed 902–928 MHz ISM band must maintain a minimum 6 dB bandwidth of at least 500 kHz. [2]

While MeshCore’s original recommended regional presets defaulted to narrower bandwidths (such as 62.5 kHz or 125 kHz) to maximize range, these configurations are technically non-compliant for standard unlicensed operation in the US. Mesh networks are transitioning to 500 kHz to prevent community members from unknowingly operating illegal radio setups. [1, 2, 3]

2. Throughput and Data Transfer Speed

Widening the bandwidth to 500 kHz significantly increases the data rate. In dense or highly active urban mesh networks, a 500 kHz channel allows packets to transmit much faster, lowering “air utilization” and reducing collisions on the network. [4, 5]

3. Offsetting Range Loss with Spreading Factor

Widening the bandwidth traditionally decreases the radio’s sensitivity and link budget. To counteract this, communities switching to the 500 kHz compliance standard typically adjust their Spreading Factor (SF) to 11 or 12. According to developers and testers on the MeshCore GitHub, combining a 500 kHz bandwidth with SF11 yields a comparable link budget to narrower non-compliant settings, allowing communities to stay legal without severely sacrificing their hardware’s long-range communication limits. [2, 5, 6]

ABSTRACT: “A gentle FYI for casuals interested in Meshtastic / MeshCore in the the USA: the default radio settings promoted by both these services are actually outside the parameters permitted by the FCC for unlicensed spread-spectrum operation… continue



MeshCore500 Configuration

For US-based networks adjusting to the FCC-compliant MeshCore 500 kHz configuration standard, the recommended node parameters are carefully chosen to offset range loss while staying legally compliant. [1, 2, 3]

The exact recommended settings for a MeshCore 500 node are outlined below:

📡 Core Radio Settings

ParameterRecommended ValueContext & Purpose
Frequency910.525 MHzThe standard base operating frequency used by North American MeshCore networks to maintain broad community compatibility.
Bandwidth (BW)500.0 kHzThe legally required minimum 6 dB bandwidth for digital modulation systems under FCC 47 CFR § 15.247.
Spreading Factor (SF)11 (or 12)Because widening the bandwidth drops receiver sensitivity, SF11 or SF12 is used to claw back that link budget and maximize long-range performance.
Coding Rate (CR)5 (or 8)While 5 is the traditional MeshCore default for faster data rates, many communities upgrade to 8 on 500 kHz networks to add massive forward error correction (FEC) for weak signals.

🧭 Routing & System Settings

  • Path Hash Mode:2-Byte (Required)
    • Why: Under Settings → Experimental Settings → Default Path Hash Size (or via the terminal using set path.hash.mode 1), you must configure the network to 2-Byte. The older 1-byte standard does not provide enough unique identifier variations for modern flood routing protocols, especially on high-capacity 500 kHz networks where multiple nodes might overlap. [4, 5]


Community Preferred Configuration

The new MeshCore 500 “Community Preferred” configuration is modeled after high-throughput, legally compliant presets. It optimizes airtime by using a wider bandwidth while maintaining long-range connectivity. [1, 2, 3]

The standard node configuration settings for a MeshCore 500 Long Turbo deployment are:

📡 LoRa Radio Configuration

ParameterRecommended ValuePurpose & Performance Impact
Frequency 902.250 MHzA new preferred base frequency for some North American MeshCore networks.
Bandwidth (BW)500.0 kHzFulfills FCC 47 CFR § 15.247 digital modulation minimum bandwidth rules while heavily dropping airtime.
Spreading Factor (SF)11Recovers the link budget loss caused by the wide 500 kHz bandwidth, maintaining excellent long-range capabilities.
Coding Rate (CR)4 (or 5)CR4 provides max forward error correction (FEC) for weak/noisy signals, though some high-speed setups default to CR5.

🧭 Routing Protocol Settings

  • Path Hash Mode:2-Byte (Required)
    • Why: Under your device’s experimental or default path hash size settings, this must be set to 2-Byte (or set path.hash.mode 1 via CLI). This provides the network with enough unique identifier entropy to correctly handle flood routing and prevent transmission loops over a high-capacity 500 kHz infrastructure. [4, 5]


[1] https://meshtastic.org

[2] https://github.com

[3] https://github.com

[4] https://www.meshcore.ch

[5] https://nashme.sh

[1] https://github.com

[2] https://www.reddit.com

[3] https://www.reddit.com

[4] https://www.meshcore.ch

[5] https://michmesh.com

[6] https://docs.meshcore.io

[7] https://nodakmesh.org

[8] https://www.regionmesh.com

AI responses may include mistakes.

[1] https://news.ycombinator.com/item?id=46422221

[2] https://github.com/meshcore-dev/MeshCore/issues/945

[3] https://wnymeshcore.org/why-meshcore

[4] https://www.regionmesh.com/meshcore-performance-tuning/

[5] https://nashme.sh/getting-started/meshcore/

[6] https://www.regionmesh.com/meshcore-performance-tuning/

Gemini
Author: Gemini

Share:

Leave a Reply

Your email address will not be published. Required fields are marked *