Flashing MeshCore Firmware
Flashing MeshCore Firmware
MeshCore firmware can be installed via the web flasher (easiest), the CLI tool, or OTA (over-the-air) for updates on already-running devices. All methods are covered below.
Method 1: Web Flasher (Recommended)
The web flasher at flasher.meshcore.io requires a Chromium-based browser (Chrome or Edge). Firefox does not support the WebSerial API and will not work.
- Open flasher.meshcore.io in Chrome or Edge.
- Connect your device via USB. Use a data-capable USB cable. Charge-only cables (common with power banks) will not expose the serial port. If the device does not appear, try a different cable first.
- Hold the BOOT button while plugging in (ESP32 devices) or double-tap the reset button (nRF52 devices) to enter bootloader mode.
- Select your device type from the dropdown.
- Select the firmware variant:
- Companion — pairs with a phone app over BLE or USB
- Repeater — autonomous relay node, no interaction needed
- Room Server — store-and-forward message hub
- Click Flash. The process takes 1–2 minutes. Do not disconnect during flashing.
- After flashing completes, configure the device via the MeshCore app or CLI.
Method 2: CLI Flashing
The MeshCore CLI tool allows flashing and configuration from a terminal. Useful for bulk deployments or when the web flasher is unavailable.
pip install meshcore-cli
Connect via serial (USB):
meshcore-cli --serial COM3 # Windows meshcore-cli --serial /dev/ttyUSB0 # Linux/macOS
Connect via BLE:
meshcore-cli --ble connect
Connect via TCP (remote node on same network):
meshcore-cli --tcp 192.168.1.100:4403
Method 3: OTA Update (ESP32 devices only)
For devices already running MeshCore firmware, OTA updates avoid needing a USB connection.
- In the MeshCore app, open the Command Line for your device.
- Type:
start ota - The device will create a Wi-Fi hotspot named MeshCore OTA.
- Connect your phone or computer to the MeshCore OTA Wi-Fi network.
- Open a browser and navigate to http://192.168.4.1/update
- Upload the new firmware file (.bin). Wait for the device to reboot.
Method 4: OTA Update (nRF52 devices)
nRF52-based devices use the Nordic DFU protocol for OTA updates.
- In the MeshCore app, type
start otain the Command Line. - Use the nRF Device Firmware Update app (available for Android/iOS).
- Set packet count:
- RAK4631: use 10
- Heltec T114: use 8
- Select the firmware .zip DFU package and transfer.
Bootloader Entry by Device
| Device | Method |
|---|---|
| Most ESP32 devices (V3, V4, T-Beam) | Hold BOOT button while connecting USB |
| nRF52 (T-Echo, RAK WisBlock, Wio series) | Double-tap reset button quickly |
| LilyGo T-Deck variants | Depress trackball while connecting USB |
| Heltec V4 | May need CH340 USB-serial drivers installed first |
Post-Flash Configuration
After flashing, the device needs basic configuration before it will function on the network:
- Set device name (used to identify you in the mesh)
- Set region/frequency (ensure this matches your local regulations — 915 MHz for North America)
- Set TX power (default is usually fine; reduce for indoor testing)
- For Repeater variant: set the repeater name and ensure auto-start is enabled