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

nRFgo Studio ERROR "This hex file has data in Softdevice region"

Hi,

  • We are developing a Bluetooth 2d-3d mouse with OTA -DFU service.
  • The controller we are using NRF52832  QFABB0 it contain 32KB RAM and 256KB of flash memory.
  • SDK we are using is "nRF5_SDK_15.3.0_59ac345" .
  • To work an OTA-DFU application successfully ,we need to flash SOFTDEVICE ,BOOTLOADER AND APPLICATION into the nrf52832.
  • SOFTDEVICE :- "s132_nrf52_6.1.1_softdevice"
  • BOOTLOADER :-(....\nRF5_SDK_15.3.0_59ac345\examples\dfu\secure_bootloader\) some modification done in this ,we made it buttonless and the led pins was changed according to our custom board .
  • APPLICATION :- (.....\nRF5_SDK_15.3.0_59ac345\examples\ble_peripheral\ble_app_hids_mouse) we modified these code with our needs.

ISSUES 

  • I TRIED TO FLASH THE SOFTDEVICE WITH "nRFgo Studio" AND ITS FLASHED SUCESSFULLY. THEN I TRIED TO FLASH THE BOOTLOADER WITH "nRFgo Studio" BUT ITS SHOWING SOME ERROR LOOK THE SCREEN SHORT.

NOTE:- when i flashed the BOOTLOADER  directly from the SEGGER IDE  its  flashing successfully  and its also advertising as "DfuTrag" and the OTA - firware update is taking place successfully too. 

DOUBTS

  1. Why these issues  happening in "nRFgo Studio"?
  2. how can we solve these issue?

note :-I also tried the solutions in error command box in the screen short but then also the bootloader code is not working .

PLEASE ANSWER TO 1 AND 2.

Parents
  • Hi Nandhu

    Sorry, seems I've misinformed you regarding the flash placement of the bootloader. The bootloader should be located at the "top" of the flash, meaning as high a number as possible (this is to make as much space for the SoftDevice as possible. Your bootloader is currently trying to be flashed at the top of a flash of 512kB. Which is why your QFAB with 256kB flash is not able to write it. So the start addresses have to be changed but to the top of a 256kB Flash instead. 

    You can do this by going into the bootloader LD file and changing the FLASH (rx) : ORIGIN to 0x36000 (let the length stay the same). You'll also have to change mbr_params_page (r) : ORIGIN to 0x3E000 and bootloader_settings_page (r) : ORIGIN to 0x3F000. Lastly, you probably have to decrease the RAM (rwx) LENGTH as well.

    Best regards,

    Simon

Reply
  • Hi Nandhu

    Sorry, seems I've misinformed you regarding the flash placement of the bootloader. The bootloader should be located at the "top" of the flash, meaning as high a number as possible (this is to make as much space for the SoftDevice as possible. Your bootloader is currently trying to be flashed at the top of a flash of 512kB. Which is why your QFAB with 256kB flash is not able to write it. So the start addresses have to be changed but to the top of a 256kB Flash instead. 

    You can do this by going into the bootloader LD file and changing the FLASH (rx) : ORIGIN to 0x36000 (let the length stay the same). You'll also have to change mbr_params_page (r) : ORIGIN to 0x3E000 and bootloader_settings_page (r) : ORIGIN to 0x3F000. Lastly, you probably have to decrease the RAM (rwx) LENGTH as well.

    Best regards,

    Simon

Children
Related