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

SDK12.3 How to use experimental_ble_app_buttomless_dfu project?

Hi,I have some problems in debug with experimental_ble_app_buttomless_dfu project.

First i build the experimental_ble_app_buttomless_dfu project,so i get the app_buttomless.hex.

Second,i build the sucure dfu project ,so i get the bootloader_buttomless.hex

Third,i generate the buttomless_settings.hex via nrfutil,merge bootloader_buttomless.hex and buttomless_settings via mergehex, so i get bootloader_buttomless_buttomless_settings.hex.

Forth,i merge the app_buttomless.hex,bootloader_buttomless_buttomless_settings.hex,and s130_nrf51_2.0.1_softdevice.hex,so i got buttomless_test.hex.

Fifth,i generate the dfu package via nrfutil,so i get buttomless_test.zip.

Sixth,i download the buttomless_test.hex to my board via nRFgo-Stdio.

Seventh,i connect to my board and execute dfu process via nRF Toolbox,my board can enter dfu mode.but always in Enable DFU BootLoader state(Picture_1,Picture_2).

Picture_1.png Picture_2.png

I do not know how to deal with the problem.

Best regard, alivexiaoluo

  • Then you need to figure out why bootloader doesn't work. Please read the laser marking on top of your chip. You may have 128kB flash variant. Check it with the variant matrix here.

    You test the bootloader as shown here. or as my guide here.

  • I use nrf51422ac 256k flash 32k ram. As you said in Step D, Test DFU.D1. Flash bootloader and softdevice. Use nRFGo Studio or nrfjprog or the IDE to flash the softdevice first, then the bootloder. Verify the bootloader start advertising as "DFUTarg".On my custom board i download the booeloader.hex in bootloader_secure project and softdevice it will not advertising.That is the problem lies.I will debug the bootloader_secure project tomorrow.I want to know if my custom board have the 32.768k crystal oscillator,all the problem will be solved? It seems the difference between my custom board and 51DK is that 32.768k crystal oscillator.

  • If you have edited the bootloader to use the internal 32kHz RC then you should be fine. Could you send me the bootloader project you used (and the hex file ) ? I don't see any reason why it wouldn't run.

    You can try to add the 32.768 crystal to see if it works, but i suspect the issue was not because of that.

Related