MeshCore
Public

Getting Started with MeshCore: Setup and First Steps

AdminOctober 20, 2026

Prerequisites

Before starting with MeshCore, gather the following:

  • Compatible LoRa hardware (Heltec LoRa32 V3 or LILYGO T-Beam recommended)
  • USB cable for flashing
  • Python 3.8+ installed on your computer
  • Git for cloning the repository
  • Step 1: Get the Firmware

    Clone the MeshCore repository and prepare the build environment. Use PlatformIO to handle the toolchain setup and dependencies automatically.

    Step 2: Build and Flash

    Select your board target and flash using PlatformIO. For Heltec LoRa32 V3, use the heltec_v3 environment. For LILYGO T-Beam, use the tbeam environment. The firmware will compile and flash automatically.

    Step 3: Initial Configuration

    After flashing, connect to your node via serial terminal at 115200 baud. Basic configuration includes:

    • Set your frequency region (e.g., US915)
    • Set your node name
    • Set transmit power (dBm)
    • Save configuration and reboot

    Step 4: Connect a Second Node

    To test your MeshCore network, you need at least two nodes:

  • Flash a second board with MeshCore firmware
  • Configure it with a different node name but the same region
  • Power both nodes on within range of each other
  • Watch the serial output as they discover each other
  • Step 5: Send Messages

    Use the serial console to send messages between nodes. You should see the message arrive on the receiving node serial output.

    Step 6: Test Store-and-Forward

    One of MeshCore key features is store-and-forward messaging:

  • Power off NodeB
  • Send a message from NodeA to NodeB
  • The message is queued on NodeA
  • Power NodeB back on
  • The stored message is automatically delivered
  • Network Planning Tips

    • Node Placement: Higher elevation means better range. Rooftop or window-mounted nodes work well.
    • Relay Nodes: Dedicated relay nodes placed between distant endpoints dramatically improve connectivity.
    • Power Management: For solar-powered permanent nodes, MeshCore low power consumption is an advantage.
    • Monitoring: Use the serial console to monitor routing tables and message delivery status.

    Troubleshooting

    • No communication: Verify both nodes are set to the same region/frequency
    • Poor range: Check antenna connections and consider an external antenna upgrade
    • Build errors: Ensure PlatformIO and all dependencies are up to date

    Next Steps

    • Deploy a permanent outdoor relay node
    • Experiment with different radio parameters (spreading factor, bandwidth)
    • Explore the MeshCore API for building custom applications
    • Contribute to the project on GitHub