Updating a repeater

From NodeNet
Revision as of 10:13, 18 March 2026 by Douwe (talk | contribs)
Jump to navigationJump to search

How to update your node =

Physical update

Connect to your computer and update.

Over the Air update

With Over The Air (OTA) updates you can flash the lates MeshCore firmware to your node using Bluetooth.

Unfortunately, you probably first need to flash your node with different bootloader firmware. In this case we do this for the Sensecap Solar P1. But you can find this firmware for other nodes in the [Adafruit Bootloader Repository](https://github.com/oltaco/Adafruit_nRF52_Bootloader_OTAFIX) on Github.

Install adafruit-nrfutil

In order to install the firmware, you first need to install the `adafruit-nrfutil` on your computer.

To install the utility, run the following command:

pip3 install adafruit-nrfutil

IF all is fine you should see:

Successfully installed adafruit-nrfutil-0.5.3.post16 ecdsa-0.19.1

Download the Firmware

After that you need to download the firmware for the Solar P1.

Note: the file is named: Seeed Studio XIAO nRF52840 BLE (and Seeed SenseCAP Solar Node).

It is currently available here:

[1]

After downloading, you don't need to unzip it. Navigat eyour terminal to the folder where you saved the firmware using cd.

For example

$ cd ./Downloads/

Make sure that the node is in DFU mode.

For Mac

You can do this by - Connecting the node over USB to your Mac - opening a Chrome browser and navigating to [the flasher app](https://flasher.meshcore.co.uk/) - selecting your device from the list - choose any mode (like repeater) - press the big purple button that says DFU.

The browser then asks you to connect to your node. And the purple button should change to "DFU MODE ACTIVE".

You can now return to the terminal and check which port the node is connected to using

ls /dev/cu.usb*

Now run the following command to flash the firmware:

NOTE! Make sure that the file name of the zip is identical to the one you downloaded and replace the XXXX string of the usbmodem with the number you found in the previous step.

adafruit-nrfutil --verbose dfu serial --package xiao_nrf52840_ble_bootloader-0.9.2-OTAFIX2.1-BP1.2_s140_7.3.0.zip -p /dev/cu.usbmodemXXXX -b 115200 --singlebank --touch 1200
</pre

==== On Linux ====
_needs to be added_

==== On Windows ====
_needs to be added_

Run the following command to flash the firmware:
<pre>
adafruit-nrfutil --verbose dfu serial --package [write_the_actualname_of_the_file_you_downloaded_here.zip] -p /dev/ttyACM0 -b 115200 --singlebank --touch 1200

If all is correct you should see this:

Upgrading target on /dev/cu.usbmodem101 with DFU package /Users/douwe/Downloads/xiao_nrf52840_ble_bootloader-0.9.2-OTAFIX2.1-BP1.2_s140_7.3.0.zip. Flow control is disabled, Single bank, Touch 1200
Touched serial port /dev/cu.usbmodem101
Opened serial port /dev/cu.usbmodem101
Starting DFU upgrade of type 3, SoftDevice size: 152728, bootloader size: 39000, application size: 0
Sending DFU start packet
Sending DFU init packet
Sending firmware file
########################################
###############
Activating new firmware

DFU upgrade took 20.776023864746094s
Device programmed.

Flashing Steps

  • Open Meshcore Flasher.
  • Select the "Sensecap Solar P1".
  • Put the Solar P1 in DFU mode.
  • ERASE FLASH (Unfortunately, settings and history are lost).
  • Flash the (pre-last, not the newest) Meshcore firmware.
  • The device will reboot.

OTA (Over the Air - Using Bluetooth to Upgrade Firmware)

  • Open the Meshcore client (on your phone).
  • Connect the companion device.
  • Select the Solar Node in the device list.
  • Open "Remote Management".
  • Go to "Command Line".
  • At the prompt, type: Start ota.
File:Ota img.png
Start OTA
  • It will respond: OK - mac: xx:xx:xx:xx:xx:xx.
  • Now open the "Nordic Semiconductor DFU" app.
  • Select the ZIP file containing the firmware you want to update.
  • Select the device.
  • Bluetooth will be turned on.
File:Dfuapp.png
DFU App
  • Select the Solar P1 (check if the MAC address corresponds with the MAC address you got from the Remote Management command).
  • Press "Start".
File:Fwupfault.png
Firmware Upgrade - First Attempt
  • Mostly, the first attempt fails...

Retry the Upgrade

  • Open the DFU app again.
  • Select the device (which is now called "XIAO-DFU").
  • Press "Start".
File:Fwupgrade.png
Firmware Upgrade Progress
File:Fwup.png
Firmware Upgrade Complete
  • Wait and monitor the progress until it says "Completed".
  • The node will reboot into the freshly installed firmware.