This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

DFU SERVICE ON SDK 12

Hi,

I do have a PCA10040 board, I'm using the examples from Nordic.

On the DFU example for SDK 12 I have pressed button 4 and RESET the board to active BOOT .

I’m testing the DFU example for SDK 12 and it seems that I can not have DFU service active in my application.

I would like to set up my environment to enter in DFU mode by software(without using a button during the startup)

I would like to have NUS (nRF UART service) and DFU active in my application,

I did the same tests  with SDK 17 and it works, but as my application was written with SDK12 and I'm trying to minimize the development time.

Thanks in advance,

Carlos

  • Hi Carlos,

    You can use the Experimental: Buttonless DFU Template Application as a reference to add buttonless support to your project. It may actually be quicker to start with this project and add the NUS service if you have just started development.

    Best regards,

    Vidar

  • Hi, I'm testing the BOOTLOADER with DFU,

    I'm using nRF connect on my Android device to send the ZIP files to my PCA10040 card.

    I have some questions:

    1) I noticed that the blue tooth MAC ADDRESS  changes when I'm using the DFU protocol,

    My nRF device MAC ADR is FD:A7:EC:76:BD:51 when I'm using it as UART BLE

    My nRF device MAC ADR is FD:A7:EC:76:BD:52 when I'm using it as DFU

    2) Today I'm using SDK12, but I intend to use the SDK 17 on the future, may I do the SOFTDEVICE, APLICATION  and BOOTLOADER update using DFU BLE from SDK 12 to SDK 17 or I have to use JTAG programmer? 

  • Hi,

    1. The reason for this address change is explained in the docs here: Buttonless Secure DFU Service without bonds. It's basically done to make it appear as a different device while in DFU mode.

    2. Yes, this should work. Below is the nrfutil command you can use to generate a full Softdevice+bootloader+application DFU package to upgrade to SDK 17. What Softdevice FWID to pass to --sd-req and --sd-id depends on which Softdevice variants you use, check SD release notes to find the  FWID for a particular Softdevice variant+version.

    nrfutil pkg generate --hw-version 52 ^
    --bootloader-version <bootloader version> ^
    --sd-req 0x91 ^
    --sd-id 0x0101 ^
    --application-version <application version> ^
    --application APPLICATION.HEX ^
    --softdevice SOFTDEVICE.HEX ^
    --bootloader BOOTLOADER.HEX ^
    --key-file FILE sd_ble_app_dfu.zip

  • Hi,

    I did the test for SDK 12 and it works,

    I will test the SDK17 udate,

    Thank you,

    Carlos

  • Hi, I solved this issue, but the ticket remained open, how can I close this ticket?

    Thanks,

    Carlos

Related