Hi Team,
We are working on a commercial pre-production project using nRF5340 and are currently migrating from nRF Connect SDK 2.6.1 to NCS 3.1.1.
We followed the official Sysbuild migration guide:
Migration guide: Migration to sysbuild (https://docs.nordicsemi.com/bundle/ncs-latest/page/nrf/releases_and_maturity/migration/migration_sysbuild.html)
During migration we observed two issues regarding Sysbuild and dynamic partition management.
Environment
| Item | Version / Details |
|---|---|
| Hardware | nRF5340 (custom board or DK — specify) |
| SDK | nRF Connect SDK v3.1.1 (previously 2.6.1) |
| Toolchain | (ex: v2.5.0) |
| Build system | VSCode + West |
| Application type | Dual-core (App core + Net core), IPC/HCI based |
Issue Details
Issue 1 — Network core image not building
Following the migration guide, we initially created:
-
sysbuild.confwith:
SB_CONFIG_NETCORE_HCI_IPC=y
SB_CONFIG_PARTITION_MANAGER=y
-
sysbuild.cmakefile
However, the network core image was not getting built, and build failed with errors.
Issue 2 — Dynamic partition is not working
To resolve the first issue, we removed sysbuild.conf and instead added kconfig.sysbuild.
After this change:
Network core image is now building correctly
Dynamic partition still fails, showing the same partition-manager related build error.
787:45: error: 'user_storage' undeclared (first use in this function)
787 | err = flash_area_open(FLASH_AREA_ID(user_storage), &fa);
| ^~~~~~~~~~~~
815:45: error: 'bad_block_table' undeclared (first use in this function); did you mean 'bad_blk_table'?
815 | err = flash_area_open(FLASH_AREA_ID(bad_block_table), &fa);
| ^~~~~~~~~~~~~~~
| bad_blk_table
841:45: error: 'settings_storage' undeclared (first use in this function)
841 | err = flash_area_open(FLASH_AREA_ID(settings_storage), &fa);
We expect partitions to be dynamically generated when using sysbuild, but it appears partition manager is not active or parameters are not being picked up.
What we need help with
-
Correct configuration for enabling dynamic partitioning under Sysbuild in NCS 3.1.1
-
Recommended usage of:
-
sysbuild.confvskconfig.sysbuild -
sysbuild.cmakeplacement & syntax
-
-
Any example reference for nRF5340 dual-core + IPC + Sysbuild + Partition Manager
-
Clarification if
SB_CONFIG_PARTITION_MANAGERis sufficient or additional settings are required
Additional Notes
This migration is time-critical since we are in the final pre-production stage and planning to freeze FW for manufacturing.
Any support or guidance would be very helpful.
pm.yml is bellow
app:
address: 0x00000000
size: 0xE8000 # 928 KB
memfault_storage:
address: 0x000E8000
size: 0x10000 # 64 KB
placement:
region: flash_primary
after: [app]
bad_block_table:
address: 0x00F8000
size: 0x2000 # 8 KB
placement:
region: flash_primary
after: [memfault_storage]
settings_storage:
address: 0x000FA000
size: 0x2000 # 8 KB
placement:
region: flash_primary
after: [bad_block_table]
user_storage:
address: 0x000FC000
size: 0x4000 # 16 KB
placement:
region: flash_primary
before: [end]



