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

nRF52810 Secure BLE DFU on IAR - not connecting

Dear all members,

I understand that Secure BLE DFU official support is only for SD132, but I am developing a product for nRF52810 which can only run SD112 and I want to be able to update the application via BLE DFU (SD and Bootloader update requries dual bank and there is not enough memory on 52810). I am currently developing on an nRF52832 Development Kit emulating an nRF52810, running SoftDevice 112 v5.1.0, and using the IAR IDE. 

I am trying to change the IAR bootloader_secure_ble example in SDK 14.2 to work on the nRF52810 based on the following link: https://devzone.nordicsemi.com/f/nordic-q-a/27185/52810-how-to-use-dfu

So far I have failed. I have mimicked the link answer exactly and changed the 3 files. The example compiles, and runs (I see "Waiting for events" in Debug mode). The DK advertises as DfuTarg in the Nordic nRF Connect and nRF Toolbox. But when I try to connect to the DK using nRF Toolbox, it hangs and finally says "Error: Device disconnected unexpectedly." The J-Link RTT Viewer shows no new messages. I don't understand why this is happening. I assume that if the link says that the 52810 DFU works for Keil, SES, & GCC then IAR should as well. Can anyone help?

Thank you,

Saad

Parents
  • Hi Saad,

    I've ported the 52832 bootloader project in SDK 15 to the nRF52810, please see attachment below. Hope this helps.

    Some notes:

    • DWARF format was changed from version 4 to 3 for the uECC build to make it compatible with IAR(build settings will be updated in a future SDK release).  Format version is set by adding "-gdwarf-3" to the list of compiler options. 
    • IAR linker settings were updated to reflect new memory layout
    • Added some ifdefs to comment out API calls not supported by s112 , code changes are listed in the diff file included in attachment.

    nRF5_SDK_15_52810_bootloader_iar_keil_ses_gcc.zip

    Edit:

    , I've updated the example to include support for GCC and SES. This has been done manually, so there's a chance that I have overlooked something.  

Reply
  • Hi Saad,

    I've ported the 52832 bootloader project in SDK 15 to the nRF52810, please see attachment below. Hope this helps.

    Some notes:

    • DWARF format was changed from version 4 to 3 for the uECC build to make it compatible with IAR(build settings will be updated in a future SDK release).  Format version is set by adding "-gdwarf-3" to the list of compiler options. 
    • IAR linker settings were updated to reflect new memory layout
    • Added some ifdefs to comment out API calls not supported by s112 , code changes are listed in the diff file included in attachment.

    nRF5_SDK_15_52810_bootloader_iar_keil_ses_gcc.zip

    Edit:

    , I've updated the example to include support for GCC and SES. This has been done manually, so there's a chance that I have overlooked something.  

Children
Related