cancel
Showing results for 
Search instead for 
Did you mean: 

WICED Studio Wi-Fi Combo

GeEs_4724546
New Contributor II

Although ota2 files exist for platform/MCU/STM32F4xx/GCC/STM32F469, I've discovered then read on this site that there is insufficient RAM on the STM family e.g. 384K vs 640K as indicated by the diagram in WICED OTA2 pdf 2.1.2 OTA2 RAM Requirements.

The code size isn't the culprit but the loosing of 200K+ of SRAM.  I tracked it down to:

WICED/platform/MCU/STM32F4xx/GCC/STM32F469/ota2_memory_with_bootloader.ld

/*SRAM             (rwx) : ORIGIN = 0x20000000, LENGTH = 96K*/

SRAM             (rwx) : ORIGIN = 0x20000000, LENGTH = 320K

BTLDR_SRAM       (rwx) : ORIGIN = 0x2004BC00, LENGTH = 17k      /* Boot loader stack at the end. */

/*BTLDR_SRAM       (rwx) : ORIGIN = 0x20010000, LENGTH = 32k      / * Boot loader stack at the end. */

Using the SRAM and BTLDR_SRAM from:
 
WICED\platform\MCU\STM32F4xx\GCC\STM32F469\memory_with_bootloader.ld
 
With this change, the OTA2_SUPPORT version of the build works. 
 
So now I'm tracking down the intended use of this area... perhaps it can be made smaller than the original OTA2 settings.
 
Can someone point me to where in the linker scripts this memory is used and how the application RAM variable maps into it.

 

Thanks!

0 Likes
Reply
3 Replies
AditiB_81
Moderator
Moderator

Hi,

Could you tell us what is the RAM requirement in your application? 

Thanks

0 Likes
Reply
GeEs_4724546
New Contributor II

I was able to run the application with:

SRAM (rwx) : ORIGIN = 0x20000000, LENGTH = 136K /* 320K */

I'm using FreeRTOS with WICED's pre-selection of Heap_3.c (gcc malloc) so hard to get a handle on real RAM needs.

I still don't understand what happens to the seemingly unused RAM.

0 Likes
Reply
GeEs_4724546
New Contributor II

I'm still figuring how to get the whole ota2 stack working... so although my app runs with the larger SRAM LENGTH I still need to understand why WICED is shipped with the  96K value.

0 Likes
Reply