nRF51 SDK - S130 SoftDevice
 All Data Structures Functions Variables Typedefs Enumerations Enumerator Groups Pages
Switching to bootloader/DFU mode

After programming both DFU bootloader and application on the device and starting the application, you can switch to bootloader/DFU mode at any time by writing to the control point of the DFU Service.

The following flow chart shows the process of switching from a BLE application to bootloader/DFU mode:

ota_dfu_buttonless.png
Switching from running an application to bootloader/DFU mode

First, you must write the value 0100 to the CCCD for the DFU Control Point characteristic to enable DFU notifications. Next, you must write the value 01-XX (where XX is the code for the type of image, see DFU Control Point) to the DFU Control Point to start a DFU procedure. The application will then disconnect and reset into bootloader/DFU mode. Note that no acknowledgement will be sent when writing to the Control Point, but the application sends a GAP disconnect on the link to tell the peer that the link is closed. You can then transfer the firmware image.

For more information about the message format and available commands, see DFU Control Point.