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

nRF52805 Secure bootloader with iar embedded workbench.

Hi,

I am using s112_nrf52_7.2.0_softdevice with nRF5_SDK_17.1.0 and iar embedded workbench. I can flash and run the application without any problem but when i try to program secure_bootloader_ble_s112_pca10040e or secure_bootloader_ble_s112_pca10040e_debug I get harfault exception (A coprocessor access error has occurred (CFSR.NOCP) while i am using FLOAT_ABI_SOFT. Here is my linker configuration. 

  • I already have the latest MDK, and I used crypto libs with iar 8 before but with nrf52840 and I fixed these problems, and yes I set the nrf52805.

    The problem is i am not geting anywhere in the bootloader its not even coming to the main. when I program the bootloadrer and get the harfault , I flashed the application, but its geting the same hardfault as well, so i have to erase the chip and reprogram softdevice and the app again.

  • nahro said:
    I flashed the application, but its geting the same hardfault as well, so i have to erase the chip and reprogram softdevice and the app again.

    If you erase the chip, and program SoftDevice and Bootloader, does the bootloader start as normal then?

  • No, I get the same hardfault. Can you send me a hex bootloader to test it? I want to use NRF_BL_DFU_ENTER_METHOD_GPREGRET.

  • nahro said:
    Can you send me a hex bootloader to test it?

    Here you go:

    test_hex.zip

    I also set this in sdk_config.h so that it works on boards without LF crystal:

    NRF_SDH_CLOCK_LF_SRC 0
    NRF_SDH_CLOCK_LF_RC_CTIV 16
    NRF_SDH_CLOCK_LF_RC_TEMP_CTIV 2
    NRF_SDH_CLOCK_LF_ACCURACY 1
    

    nahro said:
    I want to use NRF_BL_DFU_ENTER_METHOD_GPREGRET.

    This is the default behavior (NRF_BL_DFU_ENTER_METHOD_GPREGRET is set to 1 in sdk_config.h), you don't need to modify the source code for this(looks like you have done this looking at the screenshot you posted.)

    PS: You should remove DEVELOP_IN_NRF52832 and NRFX_COREDEP_DELAY_US_LOOP_CYCLES defines when testing on a nRF52805 device.

  • Your DFU works fine and advertising, but never starts the application. Have generated it with IAR 8?  app adress is  0x19000 to 0x28000. Can you attach the IAR project? if you generated it with IAR.

Related