Sort by » date activity comments

8 blog posts tagged with dfu

by shibbs

Porting the OTA DFU to your Custom App (SDK 12 +)

How to implement the Nordic OTA protocol in your own phone App

This document is meant to be useful if you are implementing DFU updates within in your own smartphone app, and want to do it yourself, rather than rely on trying to turn nrf toolbox into a library that your app calls. In a previous app we did just that, but it was a nightmare, and the nrf toolbox has since changed its structure a lot, making it even harder to do this now.

Our app is a cross-platform javascript app, and in the past we had built our...

by Jason

Auto-DFU Lite for MacBook

The Auto-DFU Lite for OSX is Available on the App Store.

image description

Remark: Support the Legacy DFU service Only.

by jeremysf

nRF51 DFU command line OSX app (sample)

OSX command line application for performing an nRF51 device firmware update:

This is a simple command line program I wrote based on Nordic's documentation and their RF Toolbox sample app.

My goal was to better understand the nRF51 DFU process and to have a simple command line program I could use from build scripts to update projects of mine during development and testing.

For anyone interested in using this as a starting point for their own learning, main.c and NDDFUSampleController are what you would replace with your own...

by Øyvind Karlsen

Creating zip package for DFU


This blog will aim to give you an understanding of the zip package required to perform a Device Firmware Upgrade of your device. This blog will apply to the newest tools available to do this, including the SDK, the mobile app, or the master control panel for Windows.

This blog is based on this document on creating the INIT file for DFU found on github.

Required Tools


With a bootloader in place, it is possible to perform a Device Firmware Upgrade of either the...

by Hung Bui

Compatibility between DFU bootloader and DFU master

We have been receiving quite a few questions about the compatibility issue between the bootloaders from different SDK versions and the DFU master such as nRF Master Control Panel, nRFToolbox, etc.

In this post, we will try to explain and give you information on what tool you should use on each version of the DFU bootloader.

Our suggestion is always to use the latest version of the DFU bootloader and the DFU tools.

[Update 29 Nov 2016] From SDK v12, we released the new "Secure DFU bootloader" which is not backward compatible with the DFU bootloader in previous SDK versions...

by Hung Bui

A presentation on how nRF51 DFU works


I attached here some slides that we used in our technical seminar for Device Firmware Update.

Download the presentation here: DFU_SDKv8.0_Pub.pdf

The presentation covers:

  • What DFU is and what bootloader does
  • Two types of DFU, single bank and dual bank update
  • Some animation explaining how DFU works on both cases
  • How do we do Softdevice update
  • DFU's commands sequence chart

It was heavily based on the SDK documentation you can find here. There are much more detailed information in the documentation.

I exported the presentation to pdf, with splitting for animation, so it should be best...

by Hung Bui

Common FAQs on DFU

image description

If you are looking for a place to get started with DFU, please have a look at this presentation here and the tutorial here.

In this post, we cover some in depth Q&A topics regarding Device Firmware Update.


A. What happens if something fails when doing DFU, would my device ever get bricked ?

B. How the vector table be forwarded when doing DFU ?

C. How do we do buttonless DFU ?

D. Why bonding could be an issue with DFU ?

E. How do I program the original application via programmer (JLINK), not by DFU bootloader ?

F. I can't...

by scytulip

Keil in-line program through DFU BLE

I am investigating Master Emulator API and found something interesting that can help you program your device through BLE DFU in Keil. This method calls the python script used in MCP. If you can use MCP DFU to program your device, it will also works for your Keil. BTW, this method emulates the exact BLE DFU procedure and the application is available just after a successful upload. No modification on bootloader or application code is required.


A device (like PCA10000) running Master Emulator.


  1. Download and install the newest IronPython (Python with .Net support) from