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

DFU bootloader

FormerMember
FormerMember

HELLO everyone, i know we can download application by dfu, can we download bootloader and softdevice by dfu??

if you know, please tell me, thank you

  • FormerMember
    0 FormerMember in reply to Ole Bauck

    hello my dear friend,thank you so much,i see the RAM and flash. RAM=ZI-data + RW-data.and in the SDK12.2.0 ANCS project.RAM=8480+504=8984=8.984KB flash=Code + RO-data + RW-data,and in the SDK12.2.0 ANCS project.flash=39772+1964+504=42240=42.24KB And from your chained address.i know the QFAA have 16KB RAM and 256KB flash;the QFAB have 16KB RAM and 128KB flash;the QFAC have 32KB RAM and 256KB flash; In the keil5 target,i see IROM1:start 0x1B000(that means 108KB,it represent S130 softdevice,is that right?),and Size 0x25000(that means 148KB,256-108(softdevice)=148KB,is it represent free space,is that right?) there i have a question,IRAM1:start 0x3440(why it be this,from where can i know?)

  • Hi Yangying,

    0x3340 comes from the requirement of the softdevice based on the configuration of number of central link, peripheral link, of bandwidth. The configuration is done with softdevice_enable_get_default_config() inside ble_stack_init().

    If you have a look at softdevice_enable() you can see how we get that 0x3440, by print out the return value app_ram_base from sd_ble_enable() call.

  • FormerMember
    0 FormerMember in reply to Ole Bauck

    hello friend,i see the Memory resource map and usage,but i still don't know why it should be 0x3440.i use nrf51822QFAA with 256KB flash and 16kb ram, and i download the SDK12.2.0 softdevice s130,and download the sdk12.2.0 ANCS project application,it can't run,the RAM and flash. RAM=ZI-data + RW-data.and in the SDK12.2.0 ANCS project.RAM=8480+504=8984=8.984KB flash=Code + RO-data + RW-data,and in the SDK12.2.0 ANCS project.flash=39772+1964+504=42240=42.24KB. i know because the RAM is not enough. but i don't know why it could be 0x3440.can i calculate the value without print out?because i use nrf51822QFAA,i can't debug now

  • It's calculated inside the softdevice, you have to call sd_ble_enable() to get the correct value back. We don't have a tool or something to do calculation offline.

  • FormerMember
    0 FormerMember in reply to Ole Bauck

    ok , thank you friend,now the time is 22:40,it's time to go to sleep in china.thanks for your answer

Related