Ohio Valley Mesh field guide

Set up your mesh node

Choose Meshtastic or MeshCore, install the matching app and firmware, then apply the current Ohio Valley regional baseline.

Connect, plan, and get help

Apps, tools, and official communities

Install the app that matches the firmware on your node. Meshtastic and MeshCore use separate apps and cannot connect to each other’s firmware.

Meshtastic

Phone and tablet apps

Pair with a Meshtastic node over Bluetooth to send messages, view nearby nodes, and manage settings.

MeshCore

Companion apps

Use these with a node flashed with MeshCore Companion firmware. They do not connect to Meshtastic firmware.

Meshtastic browser tool

Web Client

Configure and use a Meshtastic node from a computer through a supported Bluetooth, USB, or network connection. Chrome or Edge provides the broadest device support.

Official communities

Project Discord servers

Use the current community links maintained by each active project for software help and broader project discussion.

Terrain and link planning

Estimate a site before you install it

Use planning tools to compare proposed roof, ridge, tower, and valley locations before mounting equipment. Simulations are useful estimates, not coverage guarantees; confirm every plan with an on-site radio test.

Official Meshtastic tool

Meshtastic Site Planner

Place a proposed transmitter, enter its power, frequency, antenna height and gain, then simulate terrain-aware coverage or inspect a point-to-point path. It is the best starting point for a Meshtastic installation.

Community MeshCore tool

MeshKit Site Planner

MeshKit compares a proposed 915 MHz MeshCore location with known repeaters using terrain line of sight, Fresnel-zone clearance, link budget and reach estimates. MeshKit is not an official MeshCore service, and full site-planning features may require its Pro trial or purchase.

22 dBmTransmit power
906.875 MHzUS LongFast, slot 0
2.3 dBiStock 915 MHz blade antenna
Actual heightTransmit antenna above ground
-130 dBmConservative receiver sensitivity
1.5 mTypical handheld receiver height
2.3 dBiExample receiver antenna gain
50 kmInitial simulation range

Meshtastic starter profile: These values model a basic US RAK4631 solar node such as the WisMesh Repeater Mini with its stock blade antenna. Enter the antenna’s real height above local ground. Confirm the frequency reported by your node if OVMesh changes its channel plan. Battery size and solar-panel capacity do not affect the RF prediction. Terrain tools do not fully model buildings, foliage, interference or installation losses.

Meshtastic setup

Start with the shared regional settings.

This is the current OVMesh public-network setup. Follow each step in order, especially the antenna warning, Bluetooth security, Channel 0, MQTT, and hop-limit checks.

OV Mesh baseline

Recommended radio settings

United StatesRegion
LongFastPublic primary
0Frequency slot
5Hop limit
EnabledOK to MQTT

Important Hardware Warnings (Read First)

If you are assembling your device yourself:

You absolutely must verify battery polarity. Batteries and connectors are not standardized across every device and vendor, and polarity can vary. If you connect the battery backwards, you can instantly fry the board. Vendors generally will not refund or warranty damage caused by reversed polarity.

Do not apply power to the device unless the antenna(s) are attached. Transmitting without an antenna can damage the radio hardware. Vendors generally will not honor warranty claims for damage caused by powering or transmitting without an antenna connected.


Flash the Firmware First

  1. Open Chrome or Edge.
  2. Go to flasher.meshtastic.org.
  3. Plug your device into your computer using a data-capable USB cable.
  4. In the flasher, select your device type from the list.
  5. Select the current stable firmware option shown by the flasher.
  6. If the flasher offers a full erase or factory erase option, use it for a clean start.
  7. Click Flash and follow the prompts to select the correct USB device when your browser asks.

Some devices require a bootloader or programming mode. Try these common methods:

Then retry the flash process.


Windows USB Driver Instructions (Only If Needed)

If Windows does not detect your device properly, or the flasher cannot connect, you may need a USB-to-serial driver (most common with ESP32-based devices).

  1. Plug in the device.
  2. Open Windows Device Manager and look for:
    • A new COM port, or
    • An unknown USB device
  3. Identify the USB serial chip used by your device (common: CP210x or CH9102/CH34x families).
  4. Install the matching Windows driver using the official links provided in the Meshtastic documentation.
  5. Unplug and replug the device.
  6. Confirm a COM port appears in Device Manager.
  7. Retry the Meshtastic Web Flasher.

Connect to Your Node After Flashing

After flashing, connect using one of these methods:


Apply OV Mesh Baseline Settings (United States Only)

Do these steps in the Meshtastic app or web client.

Set these first:

Use only these device roles unless you have a legitimate a special case. OVmesh can help you make that determination.

Choose one:

Optional roles only when they match your purpose:

Do not use:

These modes are for rare tower-level deployments. Used incorrectly, they can increase airtime, increase collisions, and make the mesh worse for everyone.

Do this immediately:

This prevents random nearby devices from pairing to your node and changing your configuration.

Channel setup: public primary

Channel 0 is the shared public LongFast channel. Keeping the public channel primary makes a new node immediately interoperable with the regional mesh.

Channel 0 (Primary, public)

Optional private channels (Secondary)

MQTT permissions: In the LoRa settings, enable OK to MQTT. In each channel’s settings, enable both Uplink and Downlink, including the public primary channel and any private secondary channels.

Keep the public defaults: Do not replace the LongFast key AQ==, and leave the frequency slot at its default value of 0.


Private Channel Key Guidance (Optional)

The public primary LongFast key (AQ==) is intentionally shared and should remain unchanged. Rotate only the key for an optional private secondary channel if:

After rotating a private secondary-channel key, update that same channel on every trusted device that needs access.


Final Sanity Checks

Before you call it done:

  1. Confirm Region is set to United States.
  2. Confirm preset is Long Range Fast.
  3. Confirm frequency slot is 0 (default).
  4. Confirm OK to MQTT is enabled.
  5. Confirm max hops is 5.
  6. Confirm your device role is Client or Client Base (or Client Mute if you intentionally want it quiet).
  7. Confirm Bluetooth has a fixed password.
  8. Confirm Channel 0 is LongFast with key AQ== and role Primary.
  9. Confirm every configured channel has both uplink and downlink enabled.
  10. Send a test message on Channel 0 to confirm you can talk to nearby nodes.
  11. If you configured an optional private secondary channel, send a test message there to confirm all authorized devices share the same private key.

That’s it. Your node is now flashed, secured, and configured to work properly with the Ohio Valley Mesh.

MeshCore setup

Choose the job before you flash the node.

MeshCore uses separate firmware for user nodes and infrastructure. A Companion node does not relay other users’ traffic; dedicated Repeaters provide the forwarding layer, and Room Servers can hold shared posts for later retrieval.

OVMesh MeshCore baseline

Recommended radio settings

USA/CanadaRecommended preset
910.525 MHzFrequency
62.5 kHzBandwidth
SF7 / CR5Spreading factor / coding rate
ohio-valleyDefault region scope
Coordinate in DiscordPermanent infrastructure
OVMesh MeshCore status: Meshtastic remains the primary mesh platform across the Ohio Valley. OVMesh has begun deploying dual Meshtastic and MeshCore radios at selected locations to establish initial MeshCore coverage and evaluate regional demand. MeshCore Companion nodes are welcome. Coordinate permanent Repeaters, Room Servers, and other shared infrastructure through the OVMesh Discord before deployment.

1. Choose a MeshCore role

The firmware role changes what the node does. Flash the role you actually need rather than treating infrastructure firmware as an upgrade.

Everyday user

Companion node

Connects to a phone or computer over Bluetooth, USB, or Wi-Fi depending on the firmware build. It sends and receives messages but does not repeat other users’ traffic.

Infrastructure

Repeater

Forwards MeshCore packets between users and other Repeaters. Use fixed power, a suitable antenna, useful height, and coordinated regional settings.

Persistent conversations

Room Server

Hosts a shared room and stores posts so users can retrieve unseen messages later. Repeating can be enabled separately when that is part of the deployment plan.

Telemetry

Sensor node

Reports measurements or alerts from remote sensors. Use deliberate reporting intervals so the node does not consume unnecessary airtime.

All-in-one device

Standalone node

Runs a local screen and controls, such as supported T-Deck-style hardware, without requiring a phone for normal messaging.

Developer use

KISS modem or custom app

Provides a packet-radio interface for supported integrations, command-line clients, automation, and purpose-built applications.

2. Set up a Companion node

Flash the firmware

  1. Attach the correct antenna before applying power.
  2. Open the official MeshCore Flasher and select the exact supported hardware.
  3. Choose the latest stable Companion firmware that matches the connection you intend to use: Bluetooth for most phones, or USB/Wi-Fi for a supported computer or network-connected workflow.
  4. Flash the node and let it restart completely.

Connect the client

  1. Install a supported MeshCore client for iOS, Android, web, or desktop.
  2. Connect to the Companion node using the interface built into its firmware. Many Companion builds provide only one interface at a time.
  3. Give the node a clear, non-sensitive display name.
  4. Protect access to the node and safeguard any private keys, contacts, channels, and exported QR codes.

Join the regional mesh

  1. Select the MeshCore USA/Canada (Recommended) preset: 910.525 MHz, 62.5 kHz bandwidth, SF7, and CR5.
  2. Set the default region scope to ohio-valley. Use the exact lowercase spelling and hyphen.
  3. Do not copy Meshtastic LongFast settings into MeshCore; the two platforms do not interoperate.
  4. Allow the node to discover nearby advertisements, then add the intended contacts, channels, Repeaters, or Room Servers.
  5. Send a short test message and confirm the reply path before depending on the node away from home.

3. Deploy a Repeater

Coordinate first

  • Discuss the proposed location in the OVMesh Discord before putting a permanent Repeater on the regional network.
  • Companion nodes do not require coordination; this policy applies to permanent infrastructure intended to serve OVMesh.
  • Confirm that the site fills a real coverage need and will not duplicate or disrupt better-positioned infrastructure.
  • Use a legal transmit power, an appropriate antenna, weather protection, stable power, and safe mounting.

Flash and configure

  1. Flash the exact hardware with current stable Repeater firmware.
  2. Keep it connected by USB and open the official MeshCore configuration tool or serial console.
  3. Use the USA/Canada recommended radio preset and the ohio-valley region scope.
  4. Name the node OVMESH-RPT-CITY-ST, using the two-letter state abbreviation. Shorten long city names as needed to remain within the device-name limit.
  5. Set a strong administration password and the coordinated advertisement intervals.
  6. Set map coordinates only at the precision appropriate for the site and owner.
  7. Reboot after radio changes, send an advertisement, and confirm that authorized Companion nodes can discover and use the Repeater.

4. Deploy a Room Server

Current OVMesh status

  • OVMesh has not yet designated an official regional MeshCore Room Server.
  • Coordinate any proposed Room Server through the OVMesh Discord before presenting it as shared OVMesh infrastructure.
  • The planned official naming format is OVMESH-ROOM-REGION; the regional server would use OVMESH-ROOM-OHIOVALLEY.
  • Decide separately whether a Room Server should also repeat traffic. Do not enable repeating automatically.

Flash and test

  1. Flash current stable Room Server firmware for the supported hardware.
  2. Configure the USA/Canada recommended preset, ohio-valley region scope, administration password, guest or read-only policy, coordinated name, and optional location.
  3. Restart the node and advertise it.
  4. From a Companion node, log in, post a test message, disconnect, reconnect, and confirm that unseen posts can be retrieved.
  5. If repeating is intentionally enabled, verify both room behavior and routing behavior during a controlled test.

5. Final MeshCore checks

Companion checklist

  • Correct Companion firmware and connection type
  • USA/Canada recommended preset: 910.525 MHz, 62.5 kHz, SF7, CR5
  • Default region scope set to ohio-valley
  • Clear node name with no sensitive details
  • Contacts or channels added intentionally
  • Test message sent and reply confirmed

Infrastructure checklist

  • Deployment coordinated in the OVMesh Discord
  • Correct Repeater or Room Server firmware
  • Infrastructure follows the OVMESH naming convention
  • USA/Canada preset and ohio-valley region scope
  • Strong administration password
  • Stable power, antenna, enclosure, and placement
  • Advertisements, discovery, messaging, and remote administration tested