This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

android nRF toolbox - dfu application size error

Hello all,

when using the android version of nRF Toolbox app i am unable to perform a successfull dfu when the application firmware file size is greater than about 60KB, i always receive the "DFU REMOTE DATA SIZE EXCEEDS LIMIT (4)" error and on nRF51822 side it asserts;

Considering that the IC flash size is large enough to allow flashing way bigger application files, this error sounds strange to me;

Is there a true limitation on the application file size that is allowed to be uploaded with the DFU feature? Or it is a problem of the Android application? (i don't know the situation with iOS because i don't have any iOS device to test)

My bootloader firmware is based on pure Eclipse project with latest gcc 4.9.3 and SDK 7.2, S110 7.1.0

  • The IC does have 256K of flash, however you have to subtract off the size of the stack, any application non-volatile storage, and the bootloader first. Then if you are using the dual bank bootloader which seems to be the typical set up, you have to split the remaining memory in half. Given all of that it isn't hard to get to a 60K application limit assuming a dual bank bootloading implementation.

  • Good point John !! i totally missed to think to the "dual bank" configuration which i am using ... Infact i am using a non-optimized bootloader code (in order to allow me the debug) which wants about 48KB plus bootloader settings data plus other 88KB of SoftDevice, which results in about 120KB of remaining space;

    I will load an optimized bootloader code (-Os flag) to save some space and, if needed, an optimized code also for my application firmware;

    It's good to know that sometimes a single answer can solve your problem ;-)

Related