Firmware Updates

Official Espruino boards come in two main flavours, and firmware updates are slightly different for each flavour. See below for instructions.

For non-official board firmware updates, see the Other Boards page for instructions.

NRF52

Bangle.js 2

Bangle.js 2 provides its own firmware update mechanism using the App Loader.

On Bangle.js 2 this is the recommended method (although other methods still work). Simply click on the icon to the right of the Firmware Update app and follow the instructions.

The firmware will upload to Bangle.js, and when it is complete, Bangle.js will restart and install the firmware.

Note: KickStarter Bangles that shipped with 2v10 firmware will have 2v10 bootloaders which need updating before you use the firmware updater. Just follow the instructions on the Firmware Update page to update your bootloader.

Android / iOS App

Install the relevant app...

or:

Now on your device, download the latest stable distribution zip from the Espruino site by selecting your board from the Find a binary drop-down. You can also choose Cutting Edge build for the absolute latest firmware.

Now, you need to put your device into DFU mode using the instructions below. Note that DFU mode usually times out after 30-60 seconds of inactivity.

Entering DFU mode

MDBT42Q / Puck.js
Pixl.js
Bangle.js 1
Bangle.js 2

Performing firmware update

Run the relevant app on your Android/iOS device.

Each app/device is slightly different (they are covered below), but in general you need to connect to a device called DfuTarg, and choose the zip file you downloaded.

Note: If the firmware upgrade fails, please try again. The firmware update process will usually resume where it left off so even if it fails once, you can usually complete successfully on a second attempt.

Device Firmware Update
nRF Toolbox

Note: It has been reported that iOS 15+ devices the NRF Toolbox app disconnects from the Bangle after performing only part of the update process (iOS 12.5 works flawlessly). If this happens to you, you'll have to manually click to start the update multiple times (it will start from where it left off) in order to complete the update.

nRF Connect

Web IDE

It is also possible to use the Web IDE to update firmware. Click Settings (top right), then Flasher and follow the instructions.

However on some operating systems the firmware update process using the IDE can be unreliable. If this happens to you, you can try using another computer, or the Android/iOS App method above.

STM32

These updates are done using a Serial-over-USB connection:

We'd strongly recommend that you use the Web IDE which has a flasher (and firmware download) built-in. Downloading up to date firmware is as easy as clicking the Settings button (top right), then Flasher, then Flash Firmware. To flash a 'cutting edge' or older binary, simply:

If you absolutely don't want or can't do this then do the following on Linux or MacOS:

You can also completely overwrite Espruino's bootloader using the Serial Bootloader instructions, but you'll need a USB-TTL converter for this.

This page is auto-generated from GitHub. If you see any mistakes or have suggestions, please let us know.