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

S120 v 1.0.1 and XXAC devices

While attempting to understand why my S120 v 1.0.1 application aborted in:

sd_softdevice_enable(NRF_CLOCK_LFCLKSRC_XTAL_20_PPM, assertion_handler);

producing:

ASSERT: src\host_core.c:290 @ 0000191e                                          

while the ble_central/ble_app_hrs_c example in SDK 7.1.0 worked I discovered that the region specification in components/toolchain/gcc/gcc_nrf51_s120_xxac.ld "incorrectly" claims that the RAM for the application is only 0x1800 bytes (6 KiBy) long.

"Correcting" the SDK region specification causes the example to repeatedly reset; "corrupting" my region specification (which had supported 22 KiBy of application RAM for XXAC) causes my test application to work.

Apparently S120 v1.0.1 is incompatible with 32 KiBy RAM devices unless they're treated as 16 KiBy RAM devices.

If this was mentioned anywhere, I missed it. Others might too.

So, not a question; just a helpful hint to anybody else who runs into this problem. (And another reason why I'd really like formatted documentation on S120 v2.0.0.)

Related