Smol Flashing Firmware

Flashing Boards with Adafruits UF2 Bootloader (SuperMini / XIAO)

Flashing the Bootloader

  1. You can download them here: https://github.com/adafruit/Adafruit_nRF52_Bootloader/releases
  2. For the SuperMini, download update-nice_nano_bootloader-x.x.x_nosd.uf2. For the XIAO, download update-xiao_nrf52840_ble_sense_bootloader-x.x.x_nosd.uf2. (The appropriate non-Sense version does not update the bootloader.)
  3. Connect the device to your computer using a USB data cable.
  4. The device should initially start in DFU mode when new and without a bootloader. The LED should fade on and off.
  5. If the device's LED is not fading on and off, press the reset button twice (or briefly short the RST and GND pins) twice within 0.5 seconds. If the device has existing SlimeNRF firmware, reset it four times.
  6. Navigate to your Downloads folder and copy the UF2 file.
  7. Navigate to the Mass Storage Drive (ex. NICENANO/XIAO-SENSE) from ThisPC.
  8. Paste the file there, and the window should close, causing the device to reboot.

Important

Update the bootloader on your SuperMini and XIAO boards before flashing the firmware; otherwise, there is a significant risk of bricking your device. eByte and Nordic dongles are not included in this category.

Flashing the Firmware using UF2

  1. Connect the device to your computer using a USB data cable.
  2. The device should initially start in DFU mode when new and without a bootloader. The LED should fade on and off.
  3. If the device's LED is not fading on and off, press the reset button twice (or briefly short the RST and GND pins) twice within 0.5 seconds. If the device has existing SlimeNRF firmware, reset it four times.
  4. Navigate to your local Receiver or Tracker repository, then go to build\REPOSITORY_NAME\zephyr\.
  5. Copy zephyr.uf2 file.
  6. Navigate to the Mass Storage Drive (ex. NICENANO/XIAO-SENSE) from ThisPC.
  7. Paste the file there, and the window should close, causing the device to reboot.

Flashing the Firmware using adafruit-nrfutil

This uses the bootloaders serial protocol to flash it using command line tools.
See Adafruit nRF52 nrfutil Github Repo for install and usage instructions.
Recommended: Use a python venv to install the adafruit-nrfutil python tool.

Flashing Dongles with SoftDevice/Nordic Bootloader (eByte/Nordic)

This bootloader will appear as "Open DFU Bootloader" by Nordic Semiconductor. Currently, the only confirmed method for flashing firmware onto these devices is through nRF Connect for Desktop, though it should also be possible to use nRF Util (but it is more complex and practically equivalent).
NOTE: Installing the Segger J-Link is not required for this bootloader.
NOTE: On Linux, nRF Connect for Desktop installs nodeJS tools into ~/.nrfconnect-apps/, nRF Util installs binary tools into ~/.nrfutil/.

Flashing using nRF Connect for Desktop

  1. Open "Programmer" in the nRF Connect.
  2. Press the reset button, and the LED should begin to fade on and off, placing the device in DFU Mode. For eByte dongle, this is the right button. For Nordic dongle, it is the side button (not the round white button).
  3. In the top left corner, select your Device.
  4. Click on "Add File".
  5. Navigate to your local Receiver repository, then select the file located at build\REPOSITORY_NAME\zephyr\zephyr.hex.
  6. Click the "Write button".

Flashing using nRF Util

Not documented yet. Relevant documentation:

Created by Shine Bright ✨, Depact and Seneral