This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CC26xx: Persistent data declaration results in 500+MB bin file



So, we'd like some small part of persistent data in our application. This works like this:

#pragma PERSISTENT(_counterAdmin)
static CounterAdmin_t _counterAdmin = {0};

As a result however, we get a bin file that is about 500MB (yes, megabyte!) in size, with only actually about 90k of code, and the rest filled with zero's. The application runs just fine with the debugger, and if we strip the zero's, I can use the flash tool to flash the device.

Bin file is made like this:

"C:/ti/ccsv6/utils/tiobj2bin/tiobj2bin" "app.out" "app.bin" "C:/ti/ccsv6/tools/compiler/ti-cgt-arm_5.2.5/bin/armofd" "C:/ti/ccsv6/tools/compiler/ti-cgt-arm_5.2.5/bin/armhex" "C:/ti/ccsv6/utils/tiobj2bin/mkhex4bin"

What's the catch here?

Another thing, we tried fixing the structure to a fixed address, but this appears not to work. We tied by editing the command file like this:

 .TI.persistent :    > 0x20004000

This sets the structure at the correct address, but persistence does not seem to work.