A ScotMesh microReticulum node can be told, from its own NomadNet page over the mesh, to open a short update window. The firmware is too big to send over LoRa, so someone still has to be near the node with a phone, but nothing needs plugging in and the node keeps its identity, settings and admins.
SenseCAP Solar Node P1Bluetooth window, 20 minutes. Flash with Nordic's DFU app on a phone. How →
Heltec V2 / V3 / V4, Wireless Tracker V2, XIAO ESP32S3, T‑Beam Supreme, T‑DeckWiFi window, 20 minutes. Upload from a phone or laptop browser. How →
T‑Beam, T3S3, LoRa32 v1 / v2 / v2.1, RNode NG 2.0 / 2.1, Feather ESP32, generic ESP32, RAK4631, RAK3401, T‑EchoOne firmware slot: update over USB with the flasher. Why →
You need to be an admin of the node (your identity on its remote‑management list, set in the flasher's Configure step or added by another admin), and the node needs at least 30 % battery or a charger.
SenseCAP P1 · Bluetooth
1. Get the DFU app
Either of Nordic's free apps does it. nRF Device Firmware Update is the simpler one; nRF Connect for Mobile also works (its DFU button is on the device page).
Download rnode_firmware_seeed_solar_node_p1.zip from the latest release. Keep it as a zip; that is what the DFU app expects.
3. Open the window from the node's page
Open the node's NomadNet page in Nomad Network or MeshChatX and identify to it.
Admin → Device → Restart & update → Bluetooth update → Yes, start. The link works once, for two minutes.
The node restarts and advertises as SenseCAP P1 DFU for 20 minutes. It is off the mesh until the update finishes or the window closes.
4. Flash it
Stand within Bluetooth range (a few metres; closer is better through a box).
In the DFU app choose the zip, then pick SenseCAP P1 DFU from the scan list and start. The transfer takes about a minute.
The node restarts into the new firmware, checks it, accepts its new hash and comes back on the mesh by itself. Reload its page: the footer shows the new version.
If nobody connects within 20 minutes the node just restarts normally. If a transfer fails partway, the old firmware is untouched: start it again from the app, and if the node has stopped advertising, open a new window from its page.
ESP32 boards with two firmware slots · WiFi
1. Get the firmware onto your phone or laptop
Download the board's zip from the latest release (for example rnode_firmware_heltec32v3.zip) and unzip it. You will upload the .bin inside it, the one named rnode_firmware_…bin, not the whole zip.
The page shows a one‑time WiFi password. Write it down; it is shown once. The node restarts as a WiFi access point called ScotMesh‑Update for 20 minutes, off the mesh.
3. Upload
On the phone or laptop, join WiFi ScotMesh‑Update with that password. It has no internet; stay connected if the phone offers to switch away.
Open http://192.168.4.1 in a browser (plain http).
Choose the .bin and press Update. Keep the page open for the 30–60 seconds it takes; it says Updated. when the image has been written and verified.
The node restarts into the new firmware and comes back on the mesh by itself. Reconnect your phone to its usual WiFi.
If nothing is uploaded in 20 minutes, or the upload fails, the node restarts unchanged and you can open a new window.
A WiFi update leaves the node running from its second firmware slot. That is fine for this flasher, which always resets the slot choice. If you later update by hand with esptool or rnodeconf, write boot_app0.bin at 0xE000 as well as the firmware, or the board keeps booting the old slot and refuses to start transport.
Single-slot boards · USB
Why some boards can only be updated over USB
An over‑the‑air update needs somewhere to put the new firmware while the old one is still running. Boards with 8 MB or 16 MB of flash have two firmware slots; the 4 MB boards (T‑Beam, T3S3, LoRa32, RNode NG, Feather, generic ESP32) have one, and their bootloader can only be reached over USB. The nRF52 boards other than the P1 (RAK4631, RAK3401, T‑Echo) run the original microReticulum pages, which have no update window.
For those, plug the board into a computer and run the flasher; it keeps the node's identity and settings across the update. Tick Start from scratch on the Flash step only if you want a fresh node with a new identity.