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

Error!!! Got an error "no bootloader found" in nRF52832.

Hello,

Greetings!!!

I am working on nRF52832 having SDK 15.3.0, Windows 7 and Segger Studio IDE.

Right now I am implement OTA in my custom application.

I upload bootloader code in nRF52832 chip successfully upload program then connect with nRF connect and using boot-loader update .zip .

After successfully upload .zip fill device not start advertise.

I got error in ble_dfu_buttonless_async_svci_init() this function as shown below,

<error> app: No bootloader was found

<error> app: ERROR 4 [NRF_ERROR_NO_MEM] at D:\nRF5_SDK_15.3.0_59ac345\nRF5_SDK_15.3.0_59ac345\examples\ble_peripheral\ble_app_full_application\main.c:1304 PC at: 0x0002BE77

<error> app: End of error report

RAM and Flash adrees is as shown below,

FLASH_PH_START=0x0

FLASH_PH_SIZE=0x80000

RAM_PH_START=0x20000000

RAM_PH_SIZE=0x10000

FLASH_START=0x26000

FLASH_SIZE=0x5a000

RAM_START=0x20002230

RAM_SIZE=0xddd0

So please give me solution as soon as possible.

Thanks & regards,

Urvisha Andani

Parents
  • You need to modify the FLASH settings to free up space for the bootloader. The default settings reserves the entire flash from 0x26000 (end of SD) to 0x80000 ( end of flash). You are basically erasing the bootloader when you're flashing the application 

    You need to change FLASH_SIZE to 0x52000 to free up space for the bootloader, which starts at 0x78000. Hence, the FLASH_SIZE must be 0x78000-0x26000= 0x52000

    Best regards

    Bjørn

  • Hi,

    Thank you for Replying I changed starting flash and size of flash as you told as like shown below,

    FLASH_PH_START=0x0

    FLASH_PH_SIZE=0x80000

    RAM_PH_START=0x20000000

    RAM_PH_SIZE=0x10000

    FLASH_START=0x78000

    FLASH_SIZE=0x52000

    RAM_START=0x20002230

    RAM_SIZE=0xddd0

    In this I got 24 error as shown below,

    .text is too large to fit in FLASH memory segment
    .sdh_soc_observers is too large to fit in FLASH memory segment
    .sdh_ble_observers is too large to fit in FLASH memory segment
    .sdh_req_observers is too large to fit in FLASH memory segment
    .sdh_state_observers is too large to fit in FLASH memory segment
    .sdh_stack_observers is too large to fit in FLASH memory segment
    .nrf_balloc is too large to fit in FLASH memory segment
    .log_const_data is too large to fit in FLASH memory segment
    .log_backends is too large to fit in FLASH memory segment
    .fs_data is too large to fit in FLASH memory segment
    .rodata is too large to fit in FLASH memory segment
    .data is too large to fit in FLASH memory segment
    .text is too large to fit in FLASH memory segment
    .sdh_soc_observers is too large to fit in FLASH memory segment
    .sdh_ble_observers is too large to fit in FLASH memory segment
    .sdh_req_observers is too large to fit in FLASH memory segment
    .sdh_state_observers is too large to fit in FLASH memory segment
    .sdh_stack_observers is too large to fit in FLASH memory segment
    .nrf_balloc is too large to fit in FLASH memory segment
    .log_const_data is too large to fit in FLASH memory segment
    .log_backends is too large to fit in FLASH memory segment
    .fs_data is too large to fit in FLASH memory segment
    .rodata is too large to fit in FLASH memory segment
    .data is too large to fit in FLASH memory segment

    In bootloader code RAM and Flash adrees is as shown below,

    FLASH_PH_START=0x0

    FLASH_PH_SIZE=0x80000

    RAM_PH_START=0x20000000

    RAM_PH_SIZE=0x10000

    FLASH_START=0x78000

    FLASH_SIZE=0x6000

    RAM_START=0x200057b8

    RAM_SIZE=0xa848

    So please give me some suggestion as soon as possible.

  • Urvisha Andani said:

    FLASH_PH_START=0x0
    
    FLASH_PH_SIZE=0x80000
    
    RAM_PH_START=0x20000000
    
    RAM_PH_SIZE=0x10000
    
    FLASH_START=0x26000
    
    FLASH_SIZE=0x52000
    
    RAM_START=0x20002230
    
    RAM_SIZE=0xddd0

    Are these the settings for the application or the bootloader. You need to modify the application settings to the following

    FLASH_PH_START=0x0
    
    FLASH_PH_SIZE=0x80000
    
    RAM_PH_START=0x20000000
    
    RAM_PH_SIZE=0x10000
    
    FLASH_START=0x26000
    
    FLASH_SIZE=0x52000
    
    RAM_START=0x20002230
    
    RAM_SIZE=0xddd0

    The settings for the bootloader should be left as they are. 

    Bjørn

  • Are these the settings for the application or the bootloader. You need to modify the application settings to the following

    Thanks for reply, I think you are misunderstanding my settings for bootloader and application.

    in boot-loader setting I have not changed any things.

    These are my application settings,

    FLASH_PH_START=0x0
    
    FLASH_PH_SIZE=0x80000
    
    RAM_PH_START=0x20000000
    
    RAM_PH_SIZE=0x10000
    
    FLASH_START=0x78000
    
    FLASH_SIZE=0x6000
    
    RAM_START=0x200057b8
    
    RAM_SIZE=0xa848

    After this setting I got error the below error, 

    text is too large to fit in FLASH memory segment
    .sdh_soc_observers is too large to fit in FLASH memory segment
    .sdh_ble_observers is too large to fit in FLASH memory segment
    .sdh_req_observers is too large to fit in FLASH memory segment
    .sdh_state_observers is too large to fit in FLASH memory segment
    .sdh_stack_observers is too large to fit in FLASH memory segment
    .nrf_balloc is too large to fit in FLASH memory segment
    .log_const_data is too large to fit in FLASH memory segment
    .log_backends is too large to fit in FLASH memory segment
    .fs_data is too large to fit in FLASH memory segment
    .rodata is too large to fit in FLASH memory segment
    .data is too large to fit in FLASH memory segment
    .text is too large to fit in FLASH memory segment
    .sdh_soc_observers is too large to fit in FLASH memory segment
    .sdh_ble_observers is too large to fit in FLASH memory segment
    .sdh_req_observers is too large to fit in FLASH memory segment
    .sdh_state_observers is too large to fit in FLASH memory segment
    .sdh_stack_observers is too large to fit in FLASH memory segment
    .nrf_balloc is too large to fit in FLASH memory segment
    .log_const_data is too large to fit in FLASH memory segment
    .log_backends is too large to fit in FLASH memory segment
    .fs_data is too large to fit in FLASH memory segment
    .rodata is too large to fit in FLASH memory segment
    .data is too large to fit in FLASH memory segment
  • If you are using the following settings 

    FLASH_START=0x78000

    FLASH_SIZE=0x6000

    for the application then that is incorrect. It should be 

    FLASH_START=0x26000

    FLASH_SIZE=0x52000

Reply Children
Related