This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

DFU without bootloader

Hi - I have been unsuccessful using Master Control Panel 3.10.0.14 on win10 to send a new application to a pca10028 with running initial application that supports DFU. What am I doing wrong?

Here is what I am trying:

  • Use nRFgoStudio 1.21.2.10 to erase the device, download sd110 v8, download initial app (Keil compiled)

SDK10/examples/ble_peripheral/app_ble_hrs/pca10028/s110_with_dfu/

  • Use MCP to discover device "Nordic_HRM"
  • Connect, discover services HRS+BAS+DIS+DFU
  • click DFU button and select a new app with hex or zip file e.g. SDK10/examples/dfu/ble_dfu_send_hex/test....nrf51/dfu_test_app_hrm_s110.hex
  • The indicator is stuck at 0%
  • Disconnects with "Error during firmware upload. Disconnected from device while waiting for response for START DFU."

Attached is the log from MCP. mcp_log1.zip

I get the same error with every initial and new hex file combination I try. I also get the same error using SDK11 and S130. What am I doing wrong?

In contrast if I use nRFgoStudio to also download a bootloader (e.g. SDK10/examples/dfu/ble_dfu_send_hex/test...nrf51/dfu_test_bootloader_b.hex ) then I can successfully send hex or zip files. However I want to use buttonless update with an app that has DFU service.

Parents
  • You need to flash both the bootloader and the application with DFU support in order to be able to perform DFU.

    Both the bootloader and the application with DFU support will advertise the same service, but they do not have the same capabilities.

    An application with DFU support will only branch to the bootloader when it receives the start DFU command is sent to the DFU control point. Its the bootloader that does the actual update, i.e. receives the init packet, the data packets and writes the firmware to flash.

    Best regards

    Bjørn

Reply
  • You need to flash both the bootloader and the application with DFU support in order to be able to perform DFU.

    Both the bootloader and the application with DFU support will advertise the same service, but they do not have the same capabilities.

    An application with DFU support will only branch to the bootloader when it receives the start DFU command is sent to the DFU control point. Its the bootloader that does the actual update, i.e. receives the init packet, the data packets and writes the firmware to flash.

    Best regards

    Bjørn

Children
No Data
Related