Hi!
We are using nRF52832-QFAB (B0 variant) in one of our projects, and it works fine and well.
We are now in the process of using the nRF52832-QFAB-E0 in the same build, but then we run into problems.
We are aware of the "problem" with B0 variant, which have 512 kB flash and 64 kB RAM, while the E0 only have 256/32.
This should not be a problem since the code is small enough and will fit with not problem.
Since the memory is only half in the E0 variant, the bootloader must be placed in lower memory (0x3nnnn instead of 0x7nnnn), and this could be achived using nrfutil to get a new bootload_setting.hex (using the family setting NRF52QFAB), but we also had to update the file dfu_gcc_nrf52.ld and dfu_types.h, changing all 0x7 addresses to 0x3.
But, anyway we do it, we fail somehow. Ie we see that changing the values we either get the application to work but fota (dfu) will fail:
#define BOOTLOADER_REGION_START 0x0007A000
=> app boot: ok, fota: nok
When changing the address in the .ld/.h files, the dfu seems to work, but then the application wont start:
#define BOOTLOADER_REGION_START 0x0003A000
=> app boot: nok, fota: ok
It seems as if the following test fails:
if (p_bootloader_settings->bank_0 == BANK_VALID_APP)
So, obviously we have missed something while trying to set up the project to work with nRF52832-QFAB E0 variant.
Could you please help me to show which changes and tools to use to be able to link correctly for the nRF52832-QFAB variant E0 using SDK11, ie only using 256/32 kB of memory?
Best regards,
Thomas