This tool allows you to update the firmware on Bangle.js 2 devices
from within the App Loader.
Firmware updates using the App Loader are only possible on
Bangle.js 2. For firmware updates on Bangle.js 1 please
see the Bangle.js 1 instructions
Your current firmware version is unknown and DFU is unknown.
The DFU (bootloader) rarely changes, so it does not have to be the same version as your main firmware.
If you have an early (KickStarter or developer) Bangle.js device and still have the old 2v10.x DFU, the Firmware Update
will fail with a message about the DFU version. If so, please click here to update to DFU 2v25 and then click the 'Upload' button that appears.
The currently available Espruino firmware releases are:
To update, click a link above and then click the 'Upload' button that appears.
DFU stands for Device Firmware Update. This is the first
bit of code that runs when Bangle.js starts, and it is able to update the
Bangle.js firmware. Normally you would update firmware via this Firmware
Updater app, but if for some reason Bangle.js will not boot, you can
always use DFU to do the update manually.
On DFU 2v19 and earlier, iOS devices could have issues updating firmware - 2v20 at later fixes this.
DFU is itself a bootloader, but here we're calling it DFU to avoid confusion
with the Bootloader app in the app loader (which prepares Bangle.js for running apps).
Firmware updates via this tool work differently to the NRF Connect method mentioned on
the Bangle.js 2 page. Firmware
is uploaded to a file on the Bangle. Once complete the Bangle reboots and DFU copies
the new firmware into internal Storage.
In addition to the links above, you can upload a hex or zip file directly below. This file should be an .app_hex
file, *not* the normal .hex (as that contains the DFU as well).
DANGER! No verification is performed on uploaded ZIP or HEX files - you could
potentially overwrite your DFU with the wrong binary and brick your Bangle.