# Choosing Your Protocol and Channel

## Choosing Your Protocol and Channel

The two dominant LoRa mesh protocols for community networks are **MeshCore** and **Meshtastic**. They are not interoperable - nodes must use the same protocol to communicate.

### Protocol Comparison

<table id="bkmrk-featuremeshcoremesht"> <thead><tr><th>Feature</th><th>MeshCore</th><th>Meshtastic</th></tr></thead> <tbody> <tr><td>Infrastructure model</td><td>Dedicated repeaters + companion nodes</td><td>Peer-to-peer; any node can relay</td></tr> <tr><td>Room servers</td><td>Yes - built-in store-and-forward</td><td>No full equivalent (an optional Store &amp; Forward module on a PSRAM node is a partial analog, not a room-server/bulletin board)</td></tr> <tr><td>MQTT gateway</td><td>Community brokers (e.g. letsmesh.net, meshmapper.cc)</td><td>Official public broker (mqtt.meshtastic.org)</td></tr> <tr><td>Regional scoping</td><td>Yes - operator-defined region labels (lowercase alphanumeric + hyphen, max 29 bytes) hashed to 2-byte transport codes; no official registry or ISO standard</td><td>No</td></tr> <tr><td>App</td><td>MeshCore companion app</td><td>[Meshtastic app](https://wiki.meshamerica.com/books/hardware-guide/page/meshtastic-app) (iOS/Android)</td></tr> <tr><td>Hardware compatibility</td><td>Commonly ESP32 and nRF52840 boards with SX1262 radio (e.g. Heltec V3, RAK4631, T114, T-Beam); some SX1276 boards are also supported. Verify the current board list at flasher.meshcore.io / docs.meshcore.io.</td><td>ESP32 and nRF52 boards</td></tr> <tr><td>Large existing network</td><td>[RegionMesh](https://wiki.meshamerica.com/books/north-american-networks/page/regionmesh) (a growing national MeshCore network; see the live map at regionmesh.com for current coverage)</td><td>Meshtastic worldwide (meshmap.net, a community map - the official map link is on meshtastic.org)</td></tr> </tbody></table>

### General Guidance

- If your area has an existing **RegionMesh** presence or you want to contribute to a nationwide infrastructure, choose **MeshCore**.
- If your community already uses Meshtastic or you need nRF52 hardware compatibility, choose **Meshtastic**.
- Running both is possible but means operating two separate device fleets (the protocols cannot share a radio), which adds operational complexity.

### Channel Selection for MeshCore

Most North American MeshCore networks use the **USA/Canada preset**: 910.525 MHz / 62.5 kHz BW / SF7 / CR5 (as of 2026-06). This is the default for RegionMesh and many other communities; confirm current settings with your local network before deploying, as presets are periodically revised.

If your area has a pre-existing local MeshCore deployment on different settings, match those settings to join that network. Check locally first - then default to the USA/Canada preset.

### Channel Selection for Meshtastic

- **LongFast preset** is the documented Meshtastic default and the most widely used (as of 2026-06); some communities migrate to MediumFast/MediumSlow as they grow.
- Default channel key: `AQ==` (the publicly known default key, base64 for the single byte 0x01 - default-channel traffic is readable by any Meshtastic node)
- Hop limit: 3 (default; increase only if you have specific reason to)

Do not use a custom channel key unless your community has a specific reason to create a private channel. Using the default key ensures maximum interoperability with travelers and other local nodes.