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

Buttonless DFU Example broken

Hi there,

I know you guys are very busy and I appreciate your quick response on Devzone.

I'd like to make a request for a more polished example of Buttonless DFU using SDK 12.1 with nRF52.

We are nearing production and if there's anything I'd like to get in concrete, it's a reliable way to upgrade firmware in the field.

The current example is not working out of the box, and the documentation doesn't offer a complete start to finish of how to upgrade. For example, what should we do after we send a 0x01 to the characteristic?

Thanks, Paul

Parents
  • Hi Paul,

    I guess you got part of the answer from here already.

    What is exactly the issue you are having ?

    After you send 0x01 to the characteristic, would it switch to the DFU bootloader ? Have you done any test with the DFU bootloader to update a new firmware ?

    Note that bonding information is not forward from the application to the bootloader in the current bootloader and experimental buttonless application.

    There are some bug fixes in the current experimental buttonless application, please use this version made by my colleague, Vidar. nRF5_SDK_12.1.0_buttonless_dfu.zip

  • The example in Vidar nRF5_SDK_12.1.0_buttonless_dfu.zip with the following instructions does not work; SD_BL_APP_APP_VALID.hex consists of Bootloader, softdevice, application, and the bootlaoder settings with the app marked as valid.

    Steps to test buttonless DFU:

    • erase chip: nrfjprog -e -f nrf52
    • program merged .hex : nrfjprog --program SD_BL_APP_APP_VALID.hex -f nrf52
    • Reset board : nrfjprog -r -f nrf52
    • Use nrf connect app on android or ios and connect to "Nordic_Template"
    • Enable notifications on the control point, and write 0x01 to enter DFU mode.
    • Go back to discovery mode, and connect to "DfuTarg"
    • Perform DFU with one of the test images. E.g., \nRF5_SDK_12.1.0\examples\dfu\ble_dfu_send_hex\test_images_update_nrf52\dfu_test_app_hrm_s132.zip With my iPhone, I see the same as Daniel77; Nordic_Template and the services he mentioned. When I use Master Control Panel from my computer I see "Nordic_Template" with a write/notify Characteristic. I write 01 00 to the value and rescan, but the Board does not go to bootloader.
Reply
  • The example in Vidar nRF5_SDK_12.1.0_buttonless_dfu.zip with the following instructions does not work; SD_BL_APP_APP_VALID.hex consists of Bootloader, softdevice, application, and the bootlaoder settings with the app marked as valid.

    Steps to test buttonless DFU:

    • erase chip: nrfjprog -e -f nrf52
    • program merged .hex : nrfjprog --program SD_BL_APP_APP_VALID.hex -f nrf52
    • Reset board : nrfjprog -r -f nrf52
    • Use nrf connect app on android or ios and connect to "Nordic_Template"
    • Enable notifications on the control point, and write 0x01 to enter DFU mode.
    • Go back to discovery mode, and connect to "DfuTarg"
    • Perform DFU with one of the test images. E.g., \nRF5_SDK_12.1.0\examples\dfu\ble_dfu_send_hex\test_images_update_nrf52\dfu_test_app_hrm_s132.zip With my iPhone, I see the same as Daniel77; Nordic_Template and the services he mentioned. When I use Master Control Panel from my computer I see "Nordic_Template" with a write/notify Characteristic. I write 01 00 to the value and rescan, but the Board does not go to bootloader.
Children
No Data
Related