Download Bootloader Package
To update the bootloader you need a .zip file containing the latest version of the bootloader. The most common bootloader .zip files are linked below. For .zip files for other boards, look for the .zip files here that begin with the name of the board you want to update.
Pick the download below for the board that you have. If you have a different board, look for the right .zip file for the board you have at the link just above.
Download adafruit-nrfutil
You will also need the utility program adafruit-nrfutil, which has slightly different names on different platforms.
adafruit-nrfutil for Linux
On Linux, you can download and install adafruit-nrfutil by doing:
pip3 install --user adafruit-nrfutil
adafruit-nrfutil for macOS
On macOS, if you have python3 and pip3 installed, you can install via pip3, as above for Linux. Otherwise download the zip file adafruit-nrfutil-macos...zip from the link below, and then extract the file adafruit-nrfutil from the zip file.
Then make adafruit-nrfutil executable by doing:
chmod +x adafruit-nrfutil
adafruit-nrfutil for Windows
Download the .zip file from this link, and extract the file adafruit-nrfutil.exe.
Update Bootloader
To update the bootloader, first connect the board, and then double-click the RESET button to get the ...BOOT drive to appear.
Updating on Linux
Run a command similar to the one below in a shell window. Substitute the name of the .zip file you downloaded above for the file given below.
adafruit-nrfutil --verbose dfu serial --package feather_nrf52840_express_bootloader-0.8.0_s140_6.1.1.zip -p /dev/ttyACM0 -b 115200 --singlebank --touch 1200
Updating on macOS
Find out the device name for the connected board, by doing:
ls /dev/cu.*
The device name will be something like /dev/cu.usbmodem411
. Use this command, substituting the device name you've discovered. Substitute the name of the .zip file you downloaded above for the file given below. and the name of the .zip package you downloaded above. If you are running it other than where you downloaded adafruit-nrfutil-macos, change the path to the command accordingly. If you installed it via pip3, it's just called adafruit-nrfutil, and it should be in your PATH
.
./adafruit-nrfutil-macos --verbose dfu serial --package feather_nrf52840_express_bootloader-0.8.0_s140_6.1.1.zip -p /dev/cu.usbmodem411 -b 115200 --singlebank --touch 1200
Updating on Windows
Use this command in the folder where you downloaded the other two files above. You'll need to specify the correct COM port, instead of COMxx
. Look in Device Manager->Ports for the name of the COM port (it will be listed as a "USB Serial Device" on Windows 10) after you have double-clicked the RESET button. Substitute the name of the .zip file you downloaded above for the file given below.
adafruit-nrfutil.exe --verbose dfu serial --package feather_nrf52840_express_bootloader-0.8.0_s140_6.1.1.zip --port COMxx -b 115200 --singlebank --touch 1200
Output when Updating
When you run the adafruit-nrfutil program, you will see output similar to this (it will vary slightly depending on your OS).
Upgrading target on COM29 with DFU package C:\Users\halbe\Desktop\update-feather-nrf52840-bootloader-0.8.0-windows\feather_nrf52840_express_bootloader-0.8.0_s140_6.1.1.zip. Flow control is disabled, Single bank, Touch 1200 Touched serial port COM29 Opened serial port COM29 Starting DFU upgrade of type 3, SoftDevice size: 151016, bootloader size: 39000, application size: 0 Sending DFU start packet Sending DFU init packet Sending firmware file ######################################## ######################################## ######################################## ######################################## ######################################## ######################################## ######################################## ######################################## ######################################## ############ Activating new firmware DFU upgrade took 21.119003295898438s Device programmed.
Once done, click the RESET button again - the bootloader will be running!
Text editor powered by tinymce.