Use external flash (AT45DB0) with MCUBOOT

I am using nRF Connect SDK v2.2.0 with nRF52810 on a custom board. 
We have included OTA updates in our project, and it works successfully and downloads the firmware via MQTT and writes it using developer.nordicsemi.com/.../dfu_target.html.
Because the internal flash nRF52810 is not enough for us, we want to use the external flash AT45DB0 to store the firmware image.
As an example I used tests\modules\mcuboot\external_flash.
As a result of the build, I get an error:
 
I made a child_image\boards .overlay file:
/ {
	led {
		compatible = "gpio-leds";
		but_led_1: but_led {
			gpios = <&gpio0 12 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>;
			label = "Permission to turn off the device";
		};
	};

	aliases {
		mcuboot-led0 = &but_led_1;
	};

	chosen {
		nordic,pm-ext-flash = &at45db0;
	};
};

&gpio0 {
	status = "okay";
};

&spi2 {
	status = "okay";
	pinctrl-0 = <&spi2_default>;
	pinctrl-1 = <&spi2_sleep>;
	pinctrl-names = "default", "sleep";
	cs-gpios = < &gpio0 29 GPIO_ACTIVE_LOW >;

	at45db0: at45db161d@0 {
		compatible = "atmel,at45";
		reg = <0>;
		spi-max-frequency = <15000000>;
		label = "AT45DB0";
		jedec-id = [1f 26 00];
		size = <16777216>;
		sector-size = <131072>;
		block-size = <4096>;
		page-size = <512>;
		use-udpd;
		enter-dpd-delay = <2000>;
		exit-dpd-delay = <35000>;
		status = "okay";
	};
};

I made a child mcuboot.config file:
#
# Copyright (c) 2021 Nordic Semiconductor ASA
#
# SPDX-License-Identifier: LicenseRef-BSD-5-Clause-Nordic
#
CONFIG_MAIN_STACK_SIZE=10240
#CONFIG_PM_PARTITION_SIZE_MCUBOOT=0x10000 
#CONFIG_MBEDTLS_CFG_FILE="mcuboot-mbedtls-cfg.h"

CONFIG_MCUBOOT_INDICATION_LED=y

CONFIG_FLASH=y
CONFIG_FPROTECT=y
CONFIG_PM=n

CONFIG_FW_INFO=y

#CONFIG_BOOT_ENCRYPT_EC256=n
#CONFIG_BOOT_ENCRYPT_RSA=n
#CONFIG_BOOT_ENCRYPT_X25519=n
#CONFIG_BOOT_SWAP_SAVE_ENCTLV=n

#CONFIG_BOOT_BOOTSTRAP=n
#CONFIG_BOOT_UPGRADE_ONLY=n

### Minimal Configurations ###
#CONFIG_ASSERT=n
#CONFIG_BOOT_BANNER=n
#CONFIG_CLOCK_CONTROL=n
#CONFIG_KERNEL_MEM_POOL=n
#CONFIG_MINIMAL_LIBC_CALLOC=n
#CONFIG_MINIMAL_LIBC_MALLOC=n
#CONFIG_MINIMAL_LIBC_REALLOCARRAY=n
#CONFIG_NCS_SAMPLES_DEFAULTS=n
#CONFIG_NO_RUNTIME_CHECKS=y
#CONFIG_REBOOT=n
#CONFIG_RESET_ON_FATAL_ERROR=n
#CONFIG_SIZE_OPTIMIZATIONS=y
#CONFIG_SYS_CLOCK_EXISTS=n

# Config logger
CONFIG_LOG=y
CONFIG_LOG_MODE_MINIMAL=y # former CONFIG_MODE_MINIMAL
### Ensure Zephyr logging changes don't use more resources
CONFIG_LOG_DEFAULT_LEVEL=3
### Decrease footprint by ~4 KB in comparison to CBPRINTF_COMPLETE=y
CONFIG_CBPRINTF_NANO=y

CONFIG_CONSOLE=y
CONFIG_RTT_CONSOLE=y
CONFIG_USE_SEGGER_RTT=y

Added pm_static.yml file static partition to the root of the project:
app:
  address: 0xc200
  end_address: 0xfa000
  region: flash_primary
  size: 0xede00
external_flash:
  address: 0xee000
  end_address: 0x800000
  region: external_flash
  size: 0x712000
littlefs_storage:
  address: 0xfa000
  end_address: 0x100000
  placement:
    before:
    - end
  region: flash_primary
  size: 0x6000
mcuboot:
  address: 0x0
  end_address: 0xc000
  placement:
    before:
    - mcuboot_primary
  region: flash_primary
  size: 0xc000
mcuboot_pad:
  address: 0xc000
  end_address: 0xc200
  placement:
    before:
    - mcuboot_primary_app
  region: flash_primary
  size: 0x200
mcuboot_primary:
  address: 0xc000
  end_address: 0xfa000
  orig_span: &id001
  - mcuboot_pad
  - app
  region: flash_primary
  size: 0xee000
  span: *id001
mcuboot_primary_app:
  address: 0xc200
  end_address: 0xfa000
  orig_span: &id002
  - app
  region: flash_primary
  size: 0xede00
  span: *id002
mcuboot_secondary:
  address: 0x0
  device: AT45DB0
  end_address: 0xee000
  placement:
    align:
      start: 0x4
  region: external_flash
  size: 0xee000
sram_primary:
  address: 0x20000000
  end_address: 0x20040000
  region: sram_primary
  size: 0x40000

I spent a lot of time to understand why it doesn't work. I hope you can help me. 
I can provide you with the source files of my project if you need them.
 
  • Thank you very much for your help! I now see that the secondary partition is placed on the external flash.

  • Hi, 

    What sample are you using?

    Did you copy the app/boards/*board.conf & *board.ovelay and child_image\mcuboot\boards\*board.config & *board.ovelay to that sample?

    -Amanda H.

  • I was able to successfully build and run the project. I can see that the firmware is being successfully written to the outer flesh. But after rebooting the device, I can't see the update starting. Here is some information that might help you. I was able to successfully build and run the project. I see that the firmware is successfully written to an external flash. But after restarting the device, I don't see the update starting. Here is some information that might help you.

    child_image\mcuboot\boards\*board.config:

    #
    # Copyright (c) 2021 Nordic Semiconductor ASA
    #
    # SPDX-License-Identifier: LicenseRef-BSD-5-Clause-Nordic
    #
    CONFIG_MAIN_STACK_SIZE=10240
    
    CONFIG_MCUBOOT_INDICATION_LED=y
    
    CONFIG_PM_PARTITION_SIZE_MCUBOOT=0x10000
    
    CONFIG_BOOT_SWAP_SAVE_ENCTLV=n
    
    # Enable flash operations
    CONFIG_FLASH=y
    CONFIG_FLASH_MAP=y
    CONFIG_FLASH_PAGE_LAYOUT=y
    
    # This must be increased to accommodate the bigger images.
    CONFIG_BOOT_MAX_IMG_SECTORS=256
    
    ### Decrease footprint by ~4 KB in comparison to CBPRINTF_COMPLETE=y
    CONFIG_CBPRINTF_NANO=y
    CONFIG_NORDIC_QSPI_NOR=n
    
    CONFIG_SPI=y
    CONFIG_SPI_FLASH_AT45=y
    CONFIG_SPI_NRFX_RAM_BUFFER_SIZE=32
    # If you don't add this when setting CONFIG_SPI=y, you'll get a lot of undefined references from the nrfx spim driver
    # E.G. "undefined reference to `z_impl_k_sleep'"
    CONFIG_MULTITHREADING=y
    
    CONFIG_PM_OVERRIDE_EXTERNAL_DRIVER_CHECK=y
    CONFIG_PM_EXTERNAL_FLASH_MCUBOOT_SECONDARY=y
    
    CONFIG_FPROTECT=y
    CONFIG_PM=n
    
    CONFIG_FW_INFO=y
    
    CONFIG_BOOT_BOOTSTRAP=n
    CONFIG_BOOT_UPGRADE_ONLY=n
    
    ### Minimal Configurations ###
    CONFIG_ASSERT=n
    CONFIG_BOOT_BANNER=n
    CONFIG_NO_RUNTIME_CHECKS=y
    CONFIG_REBOOT=n
    CONFIG_RESET_ON_FATAL_ERROR=n
    CONFIG_SIZE_OPTIMIZATIONS=y
    
    # Config logger
    CONFIG_LOG=y
    CONFIG_LOG_MODE_MINIMAL=y # former CONFIG_MODE_MINIMAL
    ### Ensure Zephyr logging changes don't use more resources
    CONFIG_LOG_DEFAULT_LEVEL=3
    
    # Disable UART Console and enable the RTT console
    #CONFIG_UART_CONSOLE=n
    #CONFIG_LOG_BACKEND_UART=n
    
    CONFIG_CONSOLE=y
    CONFIG_RTT_CONSOLE=y
    CONFIG_USE_SEGGER_RTT=y

    child_image\mcuboot\boards\*mcuboot_dts.overlay:

    / {
    	led {
    		compatible = "gpio-leds";
    		but_led_1: but_led {
    			gpios = <&gpio0 12 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>;
    			label = "Permission to turn off the device";
    		};
    	};
    
    	aliases {
    		mcuboot-led0 = &but_led_1;
    	};
    
    	chosen {
    		nordic,pm-ext-flash = &at45db0;
    	};
    };
    
    &gpio0 {
    	status = "okay";
    };
    
    &spi2 {
    	compatible = "nordic,nrf-spim";
    	status = "okay";
    	pinctrl-0 = <&spi2_default>;
    	pinctrl-1 = <&spi2_sleep>;
    	pinctrl-names = "default", "sleep";
    	cs-gpios = < &gpio0 29 GPIO_ACTIVE_LOW >;
    
    	at45db0: at45db161d@0 {
    		compatible = "atmel,at45";
    		reg = <0>;
    		spi-max-frequency = <15000000>;
    		jedec-id = [1f 26 00];
    		size = <16777216>;
    		sector-size = <131072>;
    		block-size = <4096>;
    		page-size = <512>;
    		use-udpd;
    		enter-dpd-delay = <2000>;
    		exit-dpd-delay = <35000>;
    		status = "okay";
    	};
    };

    app/prj.conf:

    #CONFIG_SIZE_OPTIMIZATIONS=n
    #***********************************************
    #				КОНФИГУРАЦИЯ ЗАГРУЗЧИКА
    #***********************************************
    CONFIG_BOOTLOADER_MCUBOOT=y
    CONFIG_IMG_MANAGER=y
    CONFIG_DFU_TARGET_MCUBOOT=y
    CONFIG_DFU_TARGET_STREAM=y
    CONFIG_STREAM_FLASH_ERASE=y
    CONFIG_STREAM_FLASH=y
    CONFIG_DFU_TARGET=y
    
    CONFIG_PM_OVERRIDE_EXTERNAL_DRIVER_CHECK=y
    CONFIG_PM_EXTERNAL_FLASH_MCUBOOT_SECONDARY=y
    ################################################################################
    # Enable flash operations.
    CONFIG_FLASH_MAP=y
    
    # Enable the LittleFS file system.
    CONFIG_FILE_SYSTEM=y
    CONFIG_FILE_SYSTEM_LITTLEFS=y
    CONFIG_PM_PARTITION_REGION_LITTLEFS_EXTERNAL=y
    CONFIG_PM_PARTITION_SIZE_LITTLEFS=0x7000
    #***********************************************
    
    #***********************************************
    #				КОНФИГУРАЦИЯ ПЕРЕФИРИ
    #***********************************************
    # Enable UART 
    CONFIG_SERIAL=y
    CONFIG_UART_ASYNC_API=y
    CONFIG_UART_1_INTERRUPT_DRIVEN=y
    # Enable SPI
    CONFIG_SPI=y
    # Enable ADC
    CONFIG_ADC=y
    # Enable I2C
    CONFIG_I2C=y
    CONFIG_I2C_NRFX=y
    # NFCT pins as GPIOs
    CONFIG_NFCT_PINS_AS_GPIOS=y
    #***********************************************
    
    #***********************************************
    #		КОНФИГУРАЦИЯ СТАТУСНОГО СВЕТОДИОДА 
    #***********************************************
    # Enable PWM0
    CONFIG_PWM=y
    CONFIG_LED=y
    CONFIG_LED_STATUS=y
    #***********************************************
    
    #***********************************************
    #				КОНФИГУРАЦИЯ C++
    #***********************************************
    CONFIG_CPLUSPLUS=y
    CONFIG_STD_CPP11=y
    CONFIG_LIB_CPLUSPLUS=y
    #***********************************************
    
    #***********************************************
    #				КОНФИГУРАЦИЯ ETHERNET
    #***********************************************
    # Using networking 
    CONFIG_NETWORKING=y
    CONFIG_NET_L2_ETHERNET=y
    CONFIG_NET_L2_ETHERNET_MGMT=y
    CONFIG_NET_IF_MAX_IPV4_COUNT=2 
    
    # EnableIntermediate socket offloading layer
    CONFIG_NET_SOCKETS_OFFLOAD_DISPATCHER=y
    # Enable W5500 Ethernet Controller custom
    CONFIG_ETH_W5500_CUSTOM=y
    
    # GSM modem support
    CONFIG_MODEM_CUSTOM=y
    CONFIG_MODEM_SIM7600=y
    CONFIG_MODEM_SIMCOM_SIM7600_RAT_AUTOMATIC=y
    CONFIG_MODEM_SIMCOM_SIM7600_EU_SIM=y
    
    # Enable IPv4 support
    CONFIG_NET_IPV4=y
    CONFIG_NET_IPV6=n
    
    # Enable TCP support
    CONFIG_NET_TCP=y
    
    # Enable DHCPv4 support
    CONFIG_NET_DHCPV4=y
    
    # Enable MQTT Lib support
    CONFIG_MQTT_CUSTOM_LIB=y
    
    # Network configuration
    CONFIG_NET_CONFIG_AUTO_INIT=y
    CONFIG_NET_CONFIG_SETTINGS=n
    
    # Network connection manager
    CONFIG_NET_MGMT=y
    CONFIG_NET_MGMT_EVENT=y
    CONFIG_NET_MGMT_EVENT_INFO=y
    CONFIG_NET_CONNECTION_MANAGER=y
    
    # Enable the DNS resolver
    CONFIG_DNS_RESOLVER=y
    # Enable additional buffers
    CONFIG_DNS_RESOLVER_ADDITIONAL_BUF_CTR=1
    
    # RX thread stack size
    CONFIG_INIT_STACKS=y
    CONFIG_NEWLIB_LIBC=y
    #***********************************************
    
    #***********************************************
    #				КОНФИГУРАЦИЯ EEPROM
    #***********************************************
    #CONFIG_EEPROM=y
    #CONFIG_EEPROM_INIT_PRIORITY=80
    #CONFIG_EEPROM_25AA02E48=y
    #***********************************************
    
    #***********************************************
    #				КОНФИГУРАЦИЯ DataFlash
    #***********************************************
    CONFIG_FLASH=y
    CONFIG_SPI_FLASH_AT45=y
    CONFIG_FLASH_PAGE_LAYOUT=y
    #***********************************************
    
    #***********************************************
    #				КОНФИГУРАЦИЯ RTC
    #***********************************************
    CONFIG_COUNTER=y
    CONFIG_COUNTER_MAXIM_DS3231_CUST=y
    CONFIG_COUNTER_INIT_PRIORITY=65
    #***********************************************
    
    #***********************************************
    #				КОНФИГУРАЦИЯ ДРАЙВЕРОВ ЯДРА
    #***********************************************
    # Enable event objects.
    CONFIG_EVENTS=y
    # Enable ring buffer.
    CONFIG_RING_BUFFER=y
    #***********************************************
    
    #***********************************************
    #				КОНФИГУРАЦИЯ WATCHDOG
    #***********************************************
    # Disable hardware watchdog
    #CONFIG_WATCHDOG=y
    #CONFIG_WDT_DISABLE_AT_BOOT=y
    #CONFIG_TASK_WDT=y
    #CONFIG_TASK_WDT_MIN_TIMEOUT=500
    #***********************************************
    
    #***********************************************
    #				КОНФИГУРАЦИЯ СТЕКОВ ЗАДАЧ
    #***********************************************
    CONFIG_NET_RX_STACK_SIZE=4096
    CONFIG_NET_TCP_WORKQ_STACK_SIZE=4096
    CONFIG_NET_CONNECTION_MANAGER_STACK_SIZE=1024
    CONFIG_NET_MGMT_EVENT_STACK_SIZE=2048
    CONFIG_ETH_W5500_RX_THREAD_STACK_SIZE_CUSTOM=2048
    CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=2048
    #***********************************************
    
    CONFIG_KERNEL_BIN_NAME="Beedigit_hub -DEMO-"
    
    #***********************************************
    #				КОНФИГУРАЦИЯ ЛОГИРОВАНИЯ
    #***********************************************
    # logging
    CONFIG_LOG=y
    CONFIG_PRINTK=y
    CONFIG_LOG_PRINTK=y
    # Enable RTT
    CONFIG_USE_SEGGER_RTT=y
    # Enable Logging support
    CONFIG_NET_LOG=y
    
    # Enable Logging support
    #CONFIG_NET_IF_LOG_LEVEL_DBG=y
    #CONFIG_ETHERNET_LOG_LEVEL_DBG=y
    #CONFIG_NET_TCP_LOG_LEVEL_DBG=y
    #CONFIG_NET_CONFIG_LOG_LEVEL_DBG=y
    #CONFIG_NET_CONNECTION_MANAGER_LOG_LEVEL_DBG=y
    #CONFIG_NET_L2_ETHERNET_LOG_LEVEL_DBG=y
    #CONFIG_MQTT_LOG_LEVEL_DBG=y
    #CONFIG_DNS_RESOLVER_LOG_LEVEL_DBG=y
    #CONFIG_NET_DHCPV4_LOG_LEVEL_DBG=y
    #CONFIG_NET_SOCKETS_LOG_LEVEL_DBG=y
    #***********************************************
    
    #***********************************************
    #			АНАЛИЗАТОР ПОТОКОВ
    #***********************************************
    #CONFIG_THREAD_ANALYZER=y
    #CONFIG_THREAD_ANALYZER_USE_PRINTK=y
    #CONFIG_THREAD_ANALYZER_AUTO=y
    #CONFIG_THREAD_ANALYZER_AUTO_INTERVAL=y
    #CONFIG_THREAD_ANALYZER_AUTO_STACK_SIZE=y
    #CONFIG_THREAD_NAME=y
    #CONFIG_THREAD_RUNTIME_STATS=y
    #***********************************************

    app/boards/beedigit_nrf52840.dts(custom board):

    // Copyright (c) 2022 Nordic Semiconductor ASA
    // SPDX-License-Identifier: Apache-2.0
    
    /dts-v1/;
    #include <nordic/nrf52840_qiaa.dtsi>
    #include "beedigit_nrf52840-pinctrl.dtsi"
    
    / {
    	model = "Beedigit_nrf52840";
    	compatible = "BeeDigit,beedigit-nrf52840";
    
    	chosen {
    		zephyr,sram = &sram0;
    		zephyr,flash = &flash0;
    		zephyr,code-partition = &slot0_partition;
    		nordic,pm-ext-flash = &at45db0;
    	};
    
    	zephyr,user {
    		handle = < &gpio1 >;
    		io-channels = <&adc 0>;	
    	};
    
    	switch {
    		compatible = "gpio-keys";
    		button_pwr: but_pwr {
    			gpios = <&gpio0 13 (GPIO_PULL_DOWN | GPIO_ACTIVE_HIGH)>;
    			label = "Switch-OFF control";
    		};	
    	};
    
    	power {
    		compatible = "gpio-keys";
    		device_pwr: dev_pwr {
    			gpios = <&gpio0 15 (GPIO_PULL_DOWN | GPIO_ACTIVE_LOW)>;
    			label = "Permission to turn off the device";
    		};
    
    		exp_module_pwr: exp_mod_pwr {
    			gpios = <&gpio0 14 (GPIO_PULL_DOWN | GPIO_ACTIVE_LOW)>;
    			label = "Permission to enable expansion module";
    		};
    	};
    
    	charger {
    		compatible = "gpio-charger";
    		stdby: stdby_ch {
    			gpios = <&gpio0 9  (GPIO_PULL_UP | GPIO_ACTIVE_HIGH)>;
    			label = "CHARGE-STDBY";
    		};
    		chrg: chrg_ch {
    			gpios = <&gpio0 10  (GPIO_PULL_UP | GPIO_ACTIVE_HIGH)>;
    			label = "CHARGE-CHRG";
    		};
    	};
    
    	exp_board {
    	 	compatible = "gpio-exp";
    		cs1: cs_1 {
    			gpios = <&gpio0 20 GPIO_ACTIVE_LOW>;
    			label = "CS-1";
    		};
    		cs2: cs_2 {
    			gpios = <&gpio0 19 GPIO_ACTIVE_LOW>;
    			label = "CS-2";
    		};
    		cs3: cs_3 {
    			gpios = <&gpio0 17 GPIO_ACTIVE_LOW>;
    			label = "CS-3";
    		};
    		cs4: cs_4 {
    			gpios = <&gpio0 16 GPIO_ACTIVE_LOW>;
    			label = "CS-4";
    		};
    	};
    
    	aliases {
    		cs1 = &cs1;
    		cs2 = &cs2;
    		cs3 = &cs3;
    		cs4 = &cs4;
    		stdby = &stdby;
    		chrg = &chrg;
    		butpwr = &button_pwr;
    		mainpwr = &device_pwr;
    		exppwr = &exp_module_pwr;
    		expboard = &uart1;
    		meter = &i2c0;
    	};
    };
    
    &flash0 {
    	partitions {
    		compatible = "fixed-partitions";
    		#address-cells = <1>;
    		#size-cells = <1>;
    
    		boot_partition: partition@0 {
    			label = "mcuboot";
    			reg = <0x0 0xc000>;
    		};
    		slot0_partition: partition@c000 {
    			label = "image-0";
    			reg = <0xc000 0x72000>;
    		};
    	};
    };
    
    &gpiote {
    	status = "okay";
    };
    
    &gpio0 {
    	status = "okay";
    };
    
    &gpio1 {
    	status = "okay";
    };
    
    &pwm0 {
    	status = "okay";
    	pinctrl-0 = <&pwm0_default>;
    	pinctrl-1 = <&pwm0_sleep>;
    	pinctrl-names = "default", "sleep";
    	ledstatus: ledstatus_dev {
    		compatible = "led-status";
    		pwms = <&pwm0 0 PWM_KHZ(1) PWM_POLARITY_NORMAL>;
    		label = "STATUS-LED";
    	};
    };
    
    &adc {
    	status = "okay";
    };
    
    &adc {
    	#address-cells = <1>;
    	#size-cells = <0>;
    	
    	channel@0 {
    		reg = <0>;
    		zephyr,gain = "ADC_GAIN_1_5";
    		zephyr,reference = "ADC_REF_INTERNAL";
    		zephyr,acquisition-time = <ADC_ACQ_TIME_DEFAULT>;
    		zephyr,resolution = <12>;
    		zephyr,oversampling = <8>;
    		zephyr,input-positive = <NRF_SAADC_AIN2>;	
    	};
    };
    
    &spi1 {
    		compatible = "nordic,nrf-spim";
    		status = "okay";
    		pinctrl-0 = <&spi1_default>;
    		pinctrl-1 = <&spi1_sleep>;
    		pinctrl-names = "default", "sleep";
    		cs-gpios = < &gpio0 8 GPIO_ACTIVE_LOW >,
    				   < &gpio0 5 GPIO_ACTIVE_LOW >;
    
    		w5500: w5500_dev@0{
    			compatible = "wiznet,w5500custom";
    			status = "okay";
    			reg = < 0 >;
    			int-gpios = < &gpio0 11 GPIO_ACTIVE_LOW >;
    			reset-gpios = < &gpio0 6 GPIO_ACTIVE_HIGH >;
    			spi-max-frequency = < 30000000 >;
    		};
    
    		mac48: mac48_dev@1{
    			compatible = "microchip,25aa02e48";
    			reg = < 1 >;
    			spi-max-frequency = < 6000000 >;
    		};
    };
    
    &spi2 {
    	compatible = "nordic,nrf-spim";
    	status = "okay";
    	pinctrl-0 = <&spi2_default>;
    	pinctrl-1 = <&spi2_sleep>;
    	pinctrl-names = "default", "sleep";
    	cs-gpios = < &gpio0 29 GPIO_ACTIVE_LOW >;
    
    	at45db0: at45db161d@0 {
    		compatible = "atmel,at45";
    		reg = <0>;
    		spi-max-frequency = <15000000>;
    		jedec-id = [1f 26 00];
    		size = <16777216>;
    		sector-size = <131072>;
    		block-size = <4096>;
    		page-size = <512>;
    		use-udpd;
    		enter-dpd-delay = <2000>;
    		exit-dpd-delay = <35000>;
    		status = "okay";
    	};
    };
    
    &at45db0 {
    	partitions {
    		compatible = "fixed-partitions";
    		#address-cells = <1>;
    		#size-cells = <1>;
    
    		slot1_partition: partition@0 {
    			label = "image-1";
    			reg = <0x000000000 0x0000e8000>;
    		};
    	};
    };
    
    &uart0 {
    	compatible = "nordic,nrf-uarte";
    	status = "okay";
    	current-speed = <115200>;
    	pinctrl-0 = <&uart0_default>;
    	pinctrl-1 = <&uart0_sleep>;
    	pinctrl-names = "default", "sleep";
    	sim7600: sim7600_dev {
    		compatible = "simcom,sim7600";
    		mdm-power-gpios = < &gpio0 25 GPIO_ACTIVE_LOW >;
    		mdm-reset-gpios = < &gpio0 24 GPIO_ACTIVE_LOW >;
    	};
    };
    
    &uart1 {
    	compatible = "nordic,nrf-uarte";
    	status = "okay";
    	current-speed = <9600>;
    	pinctrl-0 = <&uart1_default>;
    	pinctrl-1 = <&uart1_sleep>;
    	pinctrl-names = "default", "sleep";
    };
    
    &i2c0 { 
    	compatible = "nordic,nrf-twim";
    	status = "okay";
    	pinctrl-0 = <&i2c0_default>;
    	pinctrl-1 = <&i2c0_sleep>;
    	pinctrl-names = "default", "sleep";
    	ds3231: ds3231_dev@68 {
    		compatible = "maxim,ds3231cust";
    		reg = <0x68>;
    	};
    	i2c-device@48 {
    		compatible = "i2c-device";
    		reg = <0x48>;
    	};		
    }; 
    
    

    I see this message in debug:

  • Hi, 

    SavchenkoIvan said:
    child_image\mcuboot\boards\*board.config:
    SavchenkoIvan said:
    child_image\mcuboot\boards\*mcuboot_dts.overlay:
    SavchenkoIvan said:
    app/boards/beedigit_nrf52840.dts(custom board):

    From Multi Image builds:

    It should be 

    child_image\mcuboot\boards\*board_name.config

    child_image\mcuboot\boards\*board_name.overlay

    app\boards\*board_name.overlay

    -Amanda H.

Related