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

DFU on S130

I'm developing application using your devices (PCA10001/PCA10000) and S130 SoftDevice. I tried to implement DFU/OTA feature in my app. For this purpose I used DFU sources distributed for Beacon "nRF51822 Beacon v1.1.0.zip" that based on S110. But I see that DFU takes a lot of RAM - about 5.5k that is acceptable for S110. As I use S130 that takes 10k RAM itself, leaving for application about 6k. So, I can't use DFU with S130 as it takes almost all available RAM.

Please correct me if I'm not right. Otherwise, please, suggest a way to use DFU on S130. Thanks.

Memory map capture memmap.png

Parents
  • @Yaroslav: It's true that the bootloader can take up quite a lot of RAM but it still fit into the 6K RAM available. You can also change the heap size to 0 to get the 1K ram allocated for Heap if you don't use dynamic memory relocation.

    We have ported the bootloader on SDK v6.1 to work with S130, you can have a look here. Note that it's provided as-is.

    bootloader_S130_v09.hex

  • I have updates: I ported your sample to Eclipse project and successfully built it. Now I see that application takes about 32k Flash(but it is not so precise) and about 4.4k of RAM (BSS + Stack) So, I don't know why Keil doesn't build it, maybe it takes bit more than 32k. About RAM - probably sources taken from Beacon firmware is not good for S130.

    But anyway it isn't run on my target: PCA10001 with nRF51822, it fails and I'm currently investigating root cause.

    To summarize all above we can assume that memory (RAM/ROM) issues are fixed with your sample, but still have issue with running it. Could you help me here? Should do any special for loading/running it? My ROM: Offset 0x1D000, length 0x23000

    Thank you!

Reply
  • I have updates: I ported your sample to Eclipse project and successfully built it. Now I see that application takes about 32k Flash(but it is not so precise) and about 4.4k of RAM (BSS + Stack) So, I don't know why Keil doesn't build it, maybe it takes bit more than 32k. About RAM - probably sources taken from Beacon firmware is not good for S130.

    But anyway it isn't run on my target: PCA10001 with nRF51822, it fails and I'm currently investigating root cause.

    To summarize all above we can assume that memory (RAM/ROM) issues are fixed with your sample, but still have issue with running it. Could you help me here? Should do any special for loading/running it? My ROM: Offset 0x1D000, length 0x23000

    Thank you!

Children
No Data
Related