OTA without FR_APP and DCT_IMAGE on the external flash

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

Hello,

We use the SDK 3.1.2. Since our applicaton size is about 600K and our external SFLASH is 1 MB, we cannot have OTA-update while at the same time keeping FR_APP (because size of the OTA_FR application + DCT +  the size of the new application >> 1 MB). Consequently, we do not want factory reset feature and FR_APP on the SFLASH.

With this aim, I commented out #FR_APP:= $(OUTPUT_DIR)/binary/$(CLEANED_BUILD_STRING).stripped.elf in the make file not to store FR_APP in the external SFLASH. In this case, when I compile the makefile of "App-BCM943362WCD4 download download_apps run" and run the code, everything goes well and OTA-process successfully runs.

Because I do not want the DCT on the external flash not to download anything to the external SFLASH, I also commented out #DCT_IMAGE := $(OUTPUT_DIR)/DCT.stripped.elf in the makefile.  However, when I compile the makefile of "App-BCM943362WCD4 download run" and run the code, OTA-process fails and the previous application starts after each update.


What am I missing?

OTA shoud be possible even without FR_APP and DCT_IMAGE on the external flash.

Thank you very much for your helps,

Mert.

0 Likes
1 Solution
Anonymous
Not applicable

Hi,

Although you are not going to download FR_APP and DCT_IMAGE, you still need to add the download_apps target, this is because it will download the file system lookup table (LUT) in to external flash. The LUT is where information about different files in the external flash is.

if downloading only the LUT cause issues, try setting APP0, ie:

APP0:= $(OUTPUT_DIR)/binary/$(CLEANED_BUILD_STRING).stripped.elf


Regards,

Bassem

View solution in original post

0 Likes
3 Replies
Anonymous
Not applicable

Hi,

Although you are not going to download FR_APP and DCT_IMAGE, you still need to add the download_apps target, this is because it will download the file system lookup table (LUT) in to external flash. The LUT is where information about different files in the external flash is.

if downloading only the LUT cause issues, try setting APP0, ie:

APP0:= $(OUTPUT_DIR)/binary/$(CLEANED_BUILD_STRING).stripped.elf


Regards,

Bassem

0 Likes
Anonymous
Not applicable

Hi,

Thanks. This answers my question. I tried and it correctly runs.

In this case, I need a concatenated SFLASH image to download the LUT in to SFLASH in the mass production. In the SDK 2.4.1, "sflash.bin" is generated after compiling our app and we use this concatenated image with our customized batch file.

In the SDK 3.1.2, what is the equivalent to "sflash.bin" of the SDK 2.4.X?

Best regards,

Mert

0 Likes
Anonymous
Not applicable

Currently, SDK 3.1.2 doesn't support this, however this can be added with no big change. Have a look at tools/makefiles/wiced_apps.mk. The file include the download targets of all files in external flash. Replace the OpenOCD download command with a write to a file at the given offset, this should give you target flash.bin.

0 Likes