Skip to main content

Updating Meshtastic Firmware

Why Update?

Meshtastic releases updates frequently, delivering bug fixes, new features, and performance improvements. For best compatibility with other nodes on the mesh, keep nodes on the current major version (2.x) and within a few minor releases of the latest stable. Note that nodes running the old 1.x firmware cannot communicate with 2.x nodes at all - the two major versions are not radio-compatible. Running a very old firmware version may cause incompatibility with nodes that have updated.

Checking Your Current Version

Open the Meshtastic app and navigate to the Node Info panel for your node. The firmware version string is displayed there (e.g., 2.5.12.abcdef).

Finding the Current Release

Meshtastic releases firmware regularly on GitHub at github.com/meshtastic/firmware/releases. Each release includes a changelog. The web flasher at flasher.meshtastic.org always offers the latest stable release automatically - you do not need to find the binary yourself when using it.

Update Methods

1. Web Flasher (Easiest)

  1. Open flasher.meshtastic.org in Chrome or Microsoft Edge (WebSerial is required; Firefox does not support it).
  2. Connect your device to your computer via USB.
  3. Select your board type from the dropdown.
  4. Click Flash. The flasher downloads and writes the latest stable release.

Configuration is preserved in most updates: a standard Update flash leaves your saved configuration intact, while the "Full Erase and Install" option wipes it. However, major version upgrades occasionally reset configuration - see the section below.

2. Bluetooth OTA (Over-the-Air, nRF52 boards)

Some nRF52 hardware supports over-the-air firmware update via Bluetooth - but this is not done from the Meshtastic app itself. It uses Nordic Semiconductor's DFU apps and an -ota.zip firmware file. RAK boards such as the RAK4631 support OTA; the T-Echo only supports OTA if it has an updated bootloader (older T-Echo bootloaders lack OTA support). Steps:

  • Download the firmware package for your board ending in -ota.zip from the Meshtastic releases page.
  • On Android, install Nordic's nRF Connect app (the OTA procedure currently requires an older release, version 4.24.3). On iOS/iPadOS, install Nordic's nRF Device Firmware Update (nRF DFU) app.
  • In the Nordic app, connect to your node, select the DFU option, and choose the -ota.zip file to push it over Bluetooth. Many ESP32 boards do not support Bluetooth OTA and must be flashed over USB.

3. Arduino / PlatformIO (Developers)

Developers who want to build from source or apply custom patches can use PlatformIO with the Meshtastic firmware repository. This method requires a development environment and is not needed for routine updates.

Configuration Preservation

Most firmware updates preserve your configuration. However, major version upgrades (e.g., 2.x → 3.x) occasionally include breaking changes that reset config. Before updating any critical infrastructure node, record:

  • Channel name and PSK (or export the QR code)
  • Modem preset (e.g., LONG_FAST, MEDIUM_SLOW)
  • Device role (Router, Repeater, Client, etc.)
  • Any custom position or telemetry settings

Check the release notes for your target version before updating.

Updating a Remote Node

If your node is an nRF52 board with Bluetooth OTA support and is within Bluetooth range, you can update it remotely using Nordic's nRF Connect / nRF DFU app (see the Bluetooth OTA section above) without a USB connection. Caution: a failed OTA can leave the device non-working (bricked) until you can physically reach it and reflash over USB, so avoid OTA for hard-to-reach infrastructure nodes. For headless nodes deployed out of Bluetooth range, or boards that do not support OTA, physical access and USB are required.

Rolling Back

If a firmware update causes problems, you can flash the previous version using the web flasher - select the exact version from the version dropdown instead of accepting the default latest. Keep a note of the version that was working on your infrastructure nodes so you can return to it quickly if needed.