Flashing Guide
The web flasher installs firmware over USB using the browser’s Web Serial API. Hardware from LowMesh ships with Meshtastic® firmware—flashing is optional unless you want to update, switch to MeshCore™, or recover a device. This guide explains requirements, bootloader entry, what to expect during a flash, and how to recover from common failures.
Supported browsers and OS
| Requirement | Notes |
|---|---|
| Chrome or Edge (desktop) | Web Serial is not available in Safari or Firefox today for this workflow |
| Stable USB | Prefer motherboard ports, avoid flaky hubs; use a data cable |
| Permissions | First connect prompts for serial port access—allow for the correct COM/tty |
Mobile browsers are not supported for flashing here.
Platform coverage (high level)
- Meshtastic® – Broad support for ESP32, nRF52, RP2040, and more; see Meshtastic Firmware.
- MeshCore™ – ESP32 and nRF52-focused; builds differ (GUI, companion, repeater, etc.); see MeshCore Firmware.
Always pick the exact board or closest match your vendor documents. Wrong images can brick until recovery.
Entering bootloader / DFU mode
Bootloader steps vary by chip and PCB. Use your board’s silkscreen and vendor doc first; these patterns are common:
ESP32 (serial bootloader)
Typical pattern:
- Hold the BOOT (or IO0) button.
- Tap RESET (or power-cycle) while holding BOOT.
- Release RESET, then release BOOT after a short delay.
- The device should enumerate as a serial port ready for esptool-style flashing.
Some boards use auto-reset circuits—if the flasher manages reset automatically, you may not need manual BOOT.
nRF52 (DFU / UF2)
Typical pattern:
- Double-press RESET quickly (UF2-capable boards), or
- Hold DFU while plugging USB, or
- Use a magnetic or button DFU per vendor.
You should see a UF2 drive or a DFU serial device depending on method.
RP2040 (UF2)
- Hold BOOTSEL.
- Plug in USB (or hold BOOTSEL while tapping RESET).
- A RPI-RP2 mass-storage drive appears—drag .uf2 or let the tool write.
Using the LowMesh flasher
- Open Flasher and choose Meshtastic or MeshCore.
- Select device model and firmware version (prefer stable unless you need a fix).
- Connect USB; enter bootloader if required.
- Click the action to connect / flash; choose the correct serial port.
- Wait for verify / done; power-cycle if instructed.
If the UI offers erase or full chip, only use that when you understand recovery—full erase clears calibration or provisioning on some boards.
What happens during a flash
Typical stages:
- Handshake with the bootloader over serial or DFU.
- Erase of flash regions (scope depends on tool and image).
- Write firmware partitions or UF2 payload.
- Verify checksums.
- Reset into application firmware.
Interrupting power during write is the most common way to soft-brick—use a reliable cable and port.
Firmware selection tips
- Prefer stable / release builds for daily use.
- Alpha/beta may add features but break compatibility with older apps.
- Match hardware revision strings (e.g. T-Beam 1.1 vs 1.2) when the flasher lists them.
Troubleshooting (flash-specific)
| Symptom | Things to try |
|---|---|
| No serial device | Different cable/port, manual bootloader entry, reinstall USB driver (OS-specific) |
| Permission denied | Close other serial tools; retry port pick; check OS privacy settings |
| Flash fails mid-way | Different USB port; powered hub with adequate current; try another firmware variant |
| Device loops in bootloader | Reflash correct full image; verify board model |
| Wrong firmware boots | Reflash with correct platform; follow chip-specific recovery |
More scenarios: Troubleshooting. Official references: Meshtastic docs, MeshCore project.