Due to issues with the wifi stack, I have to move my project from 2.6 to 2.8.
I downloaded the new tools set (toolchains\cf2149caf2) and new nordic connect version 2.8.0 as per
https://docs.nordicsemi.com/bundle/ncs-latest/page/nrf/installation/updating.html
I read the migration guides for 2.7 and 2.8, and the 'using sysbuild for multi-image builds guides:
https://docs.nordicsemi.com/bundle/ncs-latest/page/zephyr/build/sysbuild/index.html#sysbuild
Mostly this gave me a headache.
# MCU boot config now handled by sysbuild SB_CONFIG_BOOTLOADER_MCUBOOT=y SB_CONFIG_MCUBOOT_BOOTLOADER_MODE_SWAP_WITHOUT_SCRATCH=y SB_CONFIG_MCUBOOT_GENERATE_UNSIGNED_IMAGE=y SB_CONFIG_NETCORE_HCI_IPC=y SB_CONFIG_NETCORE_APP_UPDATE=y SB_CONFIG_BOOT_SIGNATURE_TYPE_ECDSA_P256=y SB_CONFIG_BOOT_SIGNATURE_KEY_FILE="/work/dev/if-device-nrf53/keys/bootloader_priv-ecdsa256.pem" #CONFIG_MCUBOOT_SIGNATURE_KEY_FILE="/work/dev/if-device-nrf53/keys/bootloader_priv-ecdsa256.pem" SB_CONFIG_MCUBOOT_BOOTLOADER_MODE_SWAP_WITHOUT_SCRATCH=y # nrf7002 firmware handled by sysbuild SB_CONFIG_WIFI_NRF70=y SB_CONFIG_WIFI_NRF70_SYSTEM_MODE=y #SB_CONFIG_WIFI_PATCHES_EXT_FLASH_XIP=y later # build of dfu packages SB_CONFIG_DFU_MULTI_IMAGE_PACKAGE_BUILD=y SB_CONFIG_DFU_MULTI_IMAGE_PACKAGE_APP=y SB_CONFIG_DFU_MULTI_IMAGE_PACKAGE_NET=y SB_CONFIG_DFU_MULTI_IMAGE_PACKAGE_WIFI_FW_PATCH=y SB_CONFIG_DFU_ZIP=y SB_CONFIG_DFU_ZIP_APP=y SB_CONFIG_DFU_ZIP_NET=y SB_CONFIG_DFU_ZIP_WIFI_FW_PATCH=y # put slot2 in external flash SB_CONFIG_PARTITION_MANAGER=y SB_CONFIG_PM_MCUBOOT_PAD=y SB_CONFIG_PM_EXTERNAL_FLASH_MCUBOOT_SECONDARY=y
Then I set west to use my board and sysbuild and try to build:
-- west build: making build dir C:\work\dev\if-device-nrf53\cc1-med\build pristine -- west build: generating a build system Loading Zephyr module(s) (Zephyr base): sysbuild_default -- Found Python3: C:/ncs/toolchains/2d382dcd92/opt/bin/python.exe (found suitable version "3.12.4", minimum required is "3.8") found components: Interpreter -- Cache files will be written to: C:/ncs/v2.8.0/zephyr/.cache -- Found west (found suitable version "1.2.0", minimum required is "0.14.0") -- Board: cc1medv1_nrf5340_cpuapp Parsing C:/work/dev/if-device-nrf53/cc1-med/Kconfig.sysbuild Loaded configuration 'C:/work/dev/if-device-nrf53/cc1-med/build/_sysbuild/empty.conf' Merged configuration 'C:/work/dev/if-device-nrf53/cc1-med/build/_sysbuild/empty.conf' Configuration saved to 'C:/work/dev/if-device-nrf53/cc1-med/build/zephyr/.config' Kconfig header saved to 'C:/work/dev/if-device-nrf53/cc1-med/build/_sysbuild/autoconf.h' CMake Error at C:/ncs/v2.8.0/nrf/sysbuild/CMakeLists.txt:117 (list): list GET given empty list Call Stack (most recent call first): cmake/modules/sysbuild_extensions.cmake:583 (nrf_PRE_CMAKE) cmake/modules/sysbuild_extensions.cmake:583 (cmake_language) cmake/modules/sysbuild_images.cmake:16 (sysbuild_module_call) cmake/modules/sysbuild_default.cmake:20 (include) C:/ncs/v2.8.0/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:75 (include) C:/ncs/v2.8.0/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:92 (include_boilerplate) C:/ncs/v2.8.0/zephyr/share/sysbuild-package/cmake/SysbuildConfig.cmake:8 (include) template/CMakeLists.txt:10 (find_package) -- ***************************** * Running CMake for cc1-med * ***************************** Loading Zephyr default modules (Zephyr base). -- Application: C:/work/dev/if-device-nrf53/cc1-med -- CMake version: 3.21.0 -- Using NCS Toolchain 2.8.20241106.194216054162 for building. (C:/ncs/toolchains/2d382dcd92/cmake) -- Found Python3: C:/ncs/toolchains/2d382dcd92/opt/bin/python.exe (found suitable version "3.12.4", minimum required is "3.8") found components: Interpreter -- Cache files will be written to: C:/ncs/v2.8.0/zephyr/.cache -- Zephyr version: 3.7.99 (C:/ncs/v2.8.0/zephyr) -- Found west (found suitable version "1.2.0", minimum required is "0.14.0") -- Board: cc1medv1_nrf5340_cpuapp -- Found host-tools: zephyr 0.16.8 (C:/ncs/toolchains/2d382dcd92/opt/zephyr-sdk) -- Found toolchain: zephyr 0.16.8 (C:/ncs/toolchains/2d382dcd92/opt/zephyr-sdk) -- Found Dtc: C:/ncs/toolchains/2d382dcd92/opt/bin/dtc.exe (found suitable version "1.4.7", minimum required is "1.4.6") -- Found BOARD.dts: C:/work/dev/if-device-nrf53/boards/arm/cc1medv1_nrf5340/cc1medv1_nrf5340_cpuapp.dts 'label' is marked as deprecated in 'properties:' in C:/ncs/v2.8.0/zephyr/dts/bindings\audio\nordic,nrf-pdm.yaml for node /soc/peripheral@50000000/pdm@26000. devicetree error: gpio controller <Node /soc/peripheral@50000000/i2c@9000/mcp23017@20 in 'C:/ncs/v2.8.0/zephyr/misc/empty_file.c'> for <Node /soc/peripheral@50000000/pdm@26000/en in 'C:/ncs/v2.8.0/zephyr/misc/empty_file.c'> lacks binding CMake Error at C:/ncs/v2.8.0/zephyr/cmake/modules/dts.cmake:295 (execute_process): execute_process failed command indexes: 1: "Child return code: 1" Call Stack (most recent call first): C:/ncs/v2.8.0/zephyr/cmake/modules/zephyr_default.cmake:133 (include) C:/ncs/v2.8.0/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:66 (include) C:/ncs/v2.8.0/zep-- Configuring incomplete, errors occurred! hyr/share/zephyr-package/cmake/ZephyrConfig.cmake:92 (include_boilerplate) CMakeLists.txt:8 (find_package) CMake Error at cmake/modules/sysbuild_extensions.cmake:514 (message): CMake configure failed for Zephyr project: cc1-med Location: C:/work/dev/if-device-nrf53/cc1-med Call Stack (most recent call first): cmake/modules/sysbuild_images.cmake:20 (ExternalZephyrProject_Cmake) cmake/modules/sysbuild_default.cmake:20 (include) C:/ncs/v2.8.0/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:75 (include) C:/ncs/v2.8.0/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:92 (include_boilerplate) C:/ncs/v2.8.0/zephyr/share/sysbuild-package/cmake/SysbuildConfig.cmake:8 (include) template/CMakeLists.txt:10 (find_package) -- Configuring incomplete, errors occurred! See also "C:/work/dev/if-device-nrf53/cc1-med/build/CMakeFiles/CMakeOutput.log". ←[91mFATAL ERROR: command exited with status 1: 'C:\ncs\toolchains\2d382dcd92\opt\bin\cmake.EXE' -DWEST_PYTHON=C:/ncs/toolchains/2d382dcd92/opt/bin/python.exe '-BC:\work\dev\if-device-nrf53\cc1-med\build' -GNinja -DBOARD=cc1medv1_nrf5340_cpuapp '-DBOARD_ROOT=C:\work\dev\if-device-nrf53' '-SC:\ncs\v2.8.0\zephyr\share\sysbuild' '-DAPP_DIR:PATH=C:\work\dev\if-device-nrf53\cc1-med'