Tools / UF2 Web Flasher

UF2 Web Flasher

Update firmware on boards that run an Adafruit-style UF2 bootloader — no software to install. Over USB: the page reboots the board into its bootloader via Web Serial (the standard 1200-baud touch) and writes your .uf2 onto the bootloader drive. Over Bluetooth: it performs a full over-the-air update (Nordic legacy DFU) from a .zip package via Web Bluetooth.

1 Choose the firmware file

2 Reboot the board into its bootloader

Plug the board in over USB, then click. A serial-port chooser appears — pick the board. The board restarts and shows up as a small USB drive (named something like …BOOT).

Board doesn't support the 1200-baud touch?

Some firmware exposes a console command instead. This sends at 115200 baud:

Or put the board into bootloader mode by hand (double-tap its reset button) and skip to step 3.

3 Install

Click, then select the bootloader drive in the folder picker (it contains INFO_UF2.TXT) and allow the page to save into it.

B Update over Bluetooth (no cable)

For boards whose firmware exposes the Adafruit/Nordic DFU service. Pick the DFU .zip package (containing firmware.bin + firmware.dat), then connect: first to the running device (the page sends it into DFU mode), then to the bootloader (advertising as AdaDFU) when the second chooser appears.

Not supported on macOS. Chrome on macOS talks BLE through CoreBluetooth, which drops the connection while the bootloader is busy erasing and writing flash — and a legacy-DFU transfer cannot resume mid-image, so it can never finish. Use Chrome on Android, or a phone DFU app (nRF Connect, Bluefruit LE Connect), which is the path these bootloaders are tuned for. On macOS, use the USB steps above.

Expect a long pause on the first step. The bootloader erases the whole application before it answers — up to a couple of minutes on a large image, with no progress in between.

If an update fails partway, the board is not bricked — but its old firmware is already erased, so it stays in bootloader mode (usually a blinking LED) instead of restarting. Run the update again with “device is already in DFU mode” ticked. Nothing else on the device is touched, and a wired update still works.

Do it manually (any OS, any browser)
  1. Put the board into bootloader mode: open its serial port at 1200 baud and close it (many boards), type the firmware's DFU/bootloader console command (if it has one), or double-tap the reset button.
  2. A USB drive named something like …BOOT appears, containing INFO_UF2.TXT.
  3. Drag the .uf2 file onto that drive. The drive removes itself when flashing finishes and the board restarts on the new firmware — a copy error at the very end is normal.