<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>How to confirm image installed by MCU boot</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/116036/how-to-confirm-image-installed-by-mcu-boot</link><description>Hi, 
 I still try to configure Nordic-Zepyr build for a nrf5340, with a BLE stack and MCUBoot as the bootloader. The application will receive image updates over MQTT and store them in external flash memory. 
 According to your documentation ( https:/</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Wed, 02 Apr 2025 12:59:47 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/116036/how-to-confirm-image-installed-by-mcu-boot" /><item><title>RE: How to confirm image installed by MCU boot</title><link>https://devzone.nordicsemi.com/thread/530252?ContentTypeID=1</link><pubDate>Wed, 02 Apr 2025 12:59:47 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b892590b-861f-4915-b876-8bc1d2070b69</guid><dc:creator>Torsten Robitzki</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;yes, we got something to run, so that we are at least able to update firmware. Logging would be cool, but we decided (not recommended!) to use RTT for logging and that is very unreliable (see&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/116860/unstable-rtt-logging"&gt;https://devzone.nordicsemi.com/f/nordic-q-a/116860/unstable-rtt-logging&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;you can close this issue.&lt;/p&gt;
&lt;p&gt;thanks and best regards&lt;/p&gt;
&lt;p&gt;Torsten&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to confirm image installed by MCU boot</title><link>https://devzone.nordicsemi.com/thread/530249?ContentTypeID=1</link><pubDate>Wed, 02 Apr 2025 12:53:58 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e78be2c3-5315-4116-8a6e-f2f61887479b</guid><dc:creator>Menon</dc:creator><description>&lt;p&gt;Hello Torsten,&lt;/p&gt;
&lt;p&gt;Sorry for the late response. Were you able to get this working, or are you still facing issues? Let me know the current status, or update me with the latest error if the problem is still ongoing.&lt;/p&gt;
&lt;p&gt;Just to clarify: &lt;code&gt;CONFIG_USE_NRF53_MULTI_IMAGE_WITHOUT_UPGRADE_ONLY&lt;/code&gt; enables non-upgrade-only multi-image updates, but it doesn’t resolve rollback support for the network core. That part won’t work unless &lt;code&gt;CONFIG_BOOT_UPGRADE_ONLY=n&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;code&gt;&lt;/code&gt;&lt;/span&gt;&lt;/p&gt;
[quote user="Torsten Robitzki"]mcuboot: Image in the secondary slot is not valid!` [/quote]
&lt;p&gt;&lt;span&gt;&lt;code&gt;&lt;/code&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Try building with MCUboot verbose logging enabled, it will help identify exactly what is failing. This will provide more details on whether the issue is related to signature verification, decryption, or the image structure.&lt;/p&gt;
&lt;p&gt;Kind Regards,&lt;/p&gt;
&lt;p&gt;Abhijith&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to confirm image installed by MCU boot</title><link>https://devzone.nordicsemi.com/thread/523575?ContentTypeID=1</link><pubDate>Tue, 18 Feb 2025 15:55:19 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f9c9ec32-a01f-4548-bb75-bf6be7761cf9</guid><dc:creator>Torsten Robitzki</dc:creator><description>&lt;p&gt;Hi Menon ,&lt;/p&gt;
&lt;p&gt;I tried to apply your solution. I inserted `CONFIG_USE_NRF53_MULTI_IMAGE_WITHOUT_UPGRADE_ONLY=y` into `prj.conf`. Trying to add that to `sysbuild.conf` resulted in an error. I&amp;#39;m not sure, what you mean by &amp;quot;project-level Kconfig file&amp;quot; (same applies to CONFIG_USE_NRF53_MULTI_IMAGE_WITHOUT_UPGRADE_ONLY).&lt;/p&gt;
&lt;p&gt;Now, the bootloader fails with the log message `mcuboot: Image in the secondary slot is not valid!` with the first image slot (application).&lt;/p&gt;
&lt;p&gt;I tried both, the signed and the signed and encrypted image. The image header and trailer seem to be ok (verfied with a debugger and I get the &amp;quot;magic=good&amp;quot; log message, that confirms the image trailer). I also confirmed, that the bootloader is reading the image correctly by attaching a logic analyser to the flash memory and looking at the traces.&lt;/p&gt;
&lt;p&gt;Using imgtool to verify the signed image, works. Using imgtool to verify the signed and encrypted image fails! I don&amp;#39;t know, if that is on purpose or not. The image header for the signed and encrypted image looks like this:&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;Printing content of signed image: zephyr.signed.encrypted.bin&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;#### Image header (offset: 0x0) ############################&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;magic: 0x96f3b83d&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;load_addr: 0x0&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;hdr_size: 0x200&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;protected_tlv_size: 0x0&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;img_size: 0xba1a0&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;flags: ENCRYPTED_AES128 (0x4)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;version: 0.1.42+0&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;############################################################&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;#### Payload (offset: 0x200) ###############################&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;| |&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;| FW image (size: 0xba1a0 Bytes) |&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;| |&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;############################################################&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;#### TLV area (offset: 0xba3a0) ############################&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;magic: 0x6907&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;area size: 0x10c&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; ---------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; type: SHA256 (0x10)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; len: 0x20&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; data: 0x07 0x46 0x19 0xbd 0x1f 0x8d 0xde 0xee &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; 0x38 0xde 0x79 0x93 0x0f 0x94 0x8a 0x45 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; 0x7b 0x62 0xd7 0xab 0x86 0x39 0x7b 0x6a &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; 0x5c 0xa6 0xfb 0x7a 0x03 0xf0 0xcd 0x71 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; ---------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; type: KEYHASH (0x1)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; len: 0x20&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; data: 0x3e 0xb0 0x2c 0xc0 0xb5 0xdc 0x6e 0x94 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; 0x9d 0x26 0xb3 0xad 0x4d 0x10 0xa2 0x62 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; 0x94 0xd9 0xf4 0x3e 0x5f 0x49 0xaf 0x89 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; 0x11 0xb0 0x21 0x81 0xe1 0x9d 0x99 0x2d &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; ---------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; type: ECDSASIG (0x22)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; len: 0x47&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; data: 0x30 0x45 0x02 0x21 0x00 0xf7 0x49 0x32 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; 0x8c 0x61 0x2d 0xd0 0x40 0xd4 0x66 0x49 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; 0x2d 0xad 0xc4 0x91 0xa0 0xb2 0xb9 0x84 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; 0x2d 0x92 0xd2 0x30 0x36 0x25 0xcc 0xcf &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; 0x3b 0xb4 0xa3 0xce 0xab 0x02 0x20 0x62 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; 0xa6 0x7e 0xe9 0xfd 0x18 0xd7 0x03 0xce &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; 0xe8 0x83 0x97 0x6c 0x4f 0x9b 0x03 0x75 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; 0xea 0xa4 0x46 0x2c 0x9f 0x6b 0x27 0x7e &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; 0x8d 0x11 0x20 0x84 0xec 0x67 0x43 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; ---------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; type: ENCEC256 (0x32)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; len: 0x71&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; data: 0x04 0x86 0x1c 0xba 0x9a 0x6d 0x7e 0xc2 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; 0x08 0x4c 0xe2 0xcb 0x75 0xac 0x74 0xb8 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; 0xf5 0x89 0x11 0xdf 0xf9 0x5d 0xd6 0xc6 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; 0x73 0x7e 0x34 0xc2 0xd8 0xb5 0x7a 0x82 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; 0x39 0x4f 0xb9 0xd0 0x0b 0xd9 0x60 0x46 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; 0x7c 0x43 0x40 0x4f 0x0b 0x8c 0x9f 0x46 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; 0x15 0xa5 0x4a 0x22 0xf7 0x2e 0xa3 0x20 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; 0xcf 0x6e 0x2a 0x6d 0x60 0x30 0x48 0x79 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; 0x8f 0xc1 0xab 0x27 0x7b 0x25 0xf2 0xd1 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; 0x7d 0x96 0x19 0xe1 0x59 0xaf 0x6d 0x49 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; 0x77 0x3e 0x17 0x03 0x0c 0x0d 0xbc 0xd0 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; 0x0e 0xfe 0xaa 0x53 0xef 0x1c 0x1e 0x51 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; 0x34 0xce 0x6b 0x72 0xa2 0xad 0xd5 0x44 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; 0x1d 0xf9 0xd0 0x77 0x51 0x9f 0xc2 0x7a &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt; 0xaf &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;############################################################&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;#### End of Image ##########################################&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:&amp;#39;courier new&amp;#39;, courier;"&gt;dumpinfo has run successfully&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;According to the debugger, the correct private key is stored in the bootloader (in bootutil_enc_key).&lt;/p&gt;
&lt;p&gt;What can be the issue here? How to get even more details as to what causes the failure?&lt;/p&gt;
&lt;p&gt;Thanks in advance and best regards&lt;/p&gt;
&lt;p&gt;Torsten&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to confirm image installed by MCU boot</title><link>https://devzone.nordicsemi.com/thread/519230?ContentTypeID=1</link><pubDate>Tue, 21 Jan 2025 09:36:26 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c027a54d-0504-41fc-9c57-4cc9dea252e8</guid><dc:creator>Torsten Robitzki</dc:creator><description>&lt;p&gt;Hi &lt;a href="https://devzone.nordicsemi.com/members/menon"&gt;Menon&lt;/a&gt;&amp;nbsp;,&lt;/p&gt;
&lt;p&gt;no problem, we are also very busy at the moment. I&amp;#39;ve added this issue to our ticket system and it might take some time, before someone is able to work on this further.&lt;/p&gt;
&lt;p&gt;thanks&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Torsten&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to confirm image installed by MCU boot</title><link>https://devzone.nordicsemi.com/thread/517857?ContentTypeID=1</link><pubDate>Fri, 10 Jan 2025 07:21:10 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e1f16848-3518-4c8f-b300-0a2d0871ef46</guid><dc:creator>Menon</dc:creator><description>&lt;p&gt;Hello Torsten,&lt;/p&gt;
&lt;p&gt;Sorry for getting back to you so late. I took a long vacation and resumed work this week. Usually, some of my colleagues would take over in my absence, but I guess we were very understaffed during the Christmas period, which caused this case to remain pending for a long time.&lt;/p&gt;
&lt;p&gt;Regarding your issue:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;CONFIG_BOOT_SWAP_USING_MOVE=y&lt;/code&gt;: The use of Swap is not recommended as MCUBoot does not support image swapping (test swaps) for the network core due to the way RAM and PCD interact during reversion.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;CONFIG_BOOT_UPGRADE_ONLY&lt;/code&gt;: The simultaneous update of multiple images does not support network core image reversion, so you need to disable application image reversion.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The application core can be reverted, but doing so breaks the network core upon reversal, as the reversion process overwrites the network core with the content currently in the RAM that PCD uses. To enable this, define the &lt;code&gt;CONFIG_USE_NRF53_MULTI_IMAGE_WITHOUT_UPGRADE_ONLY&lt;/code&gt; Kconfig option in the project-level Kconfig file. Once defined, you can activate it by setting &lt;code&gt;CONFIG_USE_NRF53_MULTI_IMAGE_WITHOUT_UPGRADE_ONLY&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://docs.nordicsemi.com/bundle/ncs-latest/page/nrf/app_dev/device_guides/nrf53/simultaneous_multi_image_dfu_nrf5340.html"&gt;Refer Simultaneous multi-image DFU with nRF5340&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Kind Regards,&lt;/p&gt;
&lt;p&gt;Abhijith&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to confirm image installed by MCU boot</title><link>https://devzone.nordicsemi.com/thread/516519?ContentTypeID=1</link><pubDate>Mon, 30 Dec 2024 13:49:15 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e9606bc0-210f-4a90-b35a-acbf65327387</guid><dc:creator>Torsten Robitzki</dc:creator><description>&lt;p&gt;Hi &lt;a href="https://devzone.nordicsemi.com/members/menon"&gt;Menon&lt;/a&gt;&amp;nbsp;,&lt;/p&gt;
&lt;p&gt;I hope you are doing well. Does you checkings had any results? Will that issue be fixed? Any timeline?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;best regards,&lt;/p&gt;
&lt;p&gt;Torsten&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to confirm image installed by MCU boot</title><link>https://devzone.nordicsemi.com/thread/510175?ContentTypeID=1</link><pubDate>Tue, 12 Nov 2024 16:42:14 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:93e1a6e8-271a-4bd0-ae88-5238020a7c18</guid><dc:creator>Menon</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;I wanted to let you know that I am still working on this case and am checking internally regarding this issue.&lt;/p&gt;
&lt;p&gt;I will keep you updated.&lt;/p&gt;
&lt;p&gt;Kind regards,&lt;br /&gt;Abhijith&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to confirm image installed by MCU boot</title><link>https://devzone.nordicsemi.com/thread/509552?ContentTypeID=1</link><pubDate>Thu, 07 Nov 2024 17:58:09 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b72b6f25-26f5-4994-94ce-eb882ee0bed1</guid><dc:creator>Torsten Robitzki</dc:creator><description>&lt;p&gt;Yes, after the first reboot, the log messages from MCUBoot suggest, that it performs a test swap installation and after confirming the image, and a next reboot, the image is not switched back. If I skip the confirmation, the image get switched back after rebooting.&lt;/p&gt;
&lt;p&gt;Removing the offensive line of code, was just a test. I really would hate to have clones of all the zephyr and nordic repositories&amp;nbsp;for all this kind of hacks. When possible, I would love to see that change in one of the next releases, so that I could just upgrade to the next version or, of cause, having some other solution, that would make that code change unnecessary.&lt;/p&gt;
&lt;p&gt;best regards&lt;/p&gt;
&lt;p&gt;Torsten&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to confirm image installed by MCU boot</title><link>https://devzone.nordicsemi.com/thread/509549?ContentTypeID=1</link><pubDate>Thu, 07 Nov 2024 17:29:37 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1b320c78-3a25-4056-adc7-8f5cd832d91e</guid><dc:creator>Menon</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
[quote user="Torsten Robitzki"]Maybe, you could check with some of the developers, if that text is really necessary?[/quote]
&lt;p&gt;Glad to hear it&amp;#39;s working! I can check internally to see if removing the &lt;code&gt;#error&lt;/code&gt; directive in &lt;code&gt;mcuboot_config.h&lt;/code&gt; is necessary.&lt;/p&gt;
&lt;p&gt;But have you tested the MCUboot mechanism after removing the &lt;code&gt;#error&lt;/code&gt;? I recommend checking if the device boots into the new image and doesn&amp;#39;t revert to the old one (maybe try rebooting the device a few times).&lt;/p&gt;
&lt;p&gt;Kind Regards,&lt;/p&gt;
&lt;p&gt;Abhijith&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:inherit;"&gt;.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to confirm image installed by MCU boot</title><link>https://devzone.nordicsemi.com/thread/509153?ContentTypeID=1</link><pubDate>Tue, 05 Nov 2024 15:34:40 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:be514165-bc3b-4c7c-839e-1ed30ce55bf5</guid><dc:creator>Torsten Robitzki</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;sorry, it&amp;#39;s me again. I figured out, that `&lt;span&gt;CONFIG_MCUBOOT_BOOTUTIL_LIB` requires also, `CONFIG_IMG_MANAGER` to be set to `y`, otherwise, `zephyr/subsys/dfu/CMakeLists.txt` is not added as subdirectory in the CMake configuration step.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;`&lt;span&gt;CONFIG_IMG_MANAGER` has a dependency to `CONFIG_STREAM_FLASH`:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;pre class="ui-code" data-mode="text"&gt;warning: IMG_MANAGER (defined at subsys/dfu/Kconfig:10) was assigned the value &amp;#39;y&amp;#39; but got the value
&amp;#39;n&amp;#39;. Check these unsatisfied dependencies: STREAM_FLASH (=n). See
http://docs.zephyrproject.org/latest/kconfig.html#CONFIG_IMG_MANAGER and/or look up IMG_MANAGER in
the menuconfig/guiconfig interface. The Application Development Primer, Setting Configuration
Values, and Kconfig - Tips and Best Practices sections of the manual might be helpful too.
&lt;/pre&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;After also adding that configuration, I ended up again with a compilation error:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;/../../zephyr/include/mcuboot_config/mcuboot_config.h:75:2: error: #error &amp;quot;CONFIG_BOOT_SWAP_USING_MOVE not set&amp;quot;
   75 | #error &amp;quot;CONFIG_BOOT_SWAP_USING_MOVE not set&amp;quot;
      |  ^~~~~
&lt;/pre&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;When adding `CONFIG_BOOT_SWAP_USING_MOVE=y` to the configuration, then KConfig complains about the undefined configuration symbol:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;pre class="ui-code" data-mode="text"&gt;prj.conf:84: warning: attempt to assign the value &amp;#39;y&amp;#39; to the undefined symbol BOOT_SWAP_USING_MOVE
Parsing /Users/todi/bloomlife/zephyr-workspace/zephyr/Kconfig
Loaded configuration &amp;#39;/.../zephyr-workspace/zephyr/boards/nordic/nrf5340dk/nrf5340dk_nrf5340_cpuapp_defconfig&amp;#39;
Merged configuration &amp;#39;/.../zephyr-workspace/lovelace-pod-firmware/prj.conf&amp;#39;
Merged configuration &amp;#39;/.../zephyr-workspace/lovelace-pod-firmware/build/lovelace-pod-firmware/zephyr/.config.sysbuild&amp;#39;&lt;/pre&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;In the end, I really don&amp;#39;t need `boot_write_img_confirmed_multi()` from `zephyr/subsys/dfu/boot/mcuboot.c`, as this function really does nothing else, but to call `boot_set_confirmed_multi()` from the MCUBoot subtree.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;It would probably helpful, if the dependencies that are encoded in some parts of the CMake and C code, would also be reflected&amp;nbsp;in the Kconfig configuration.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Any idea, what I could try next?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;best regards&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Torsten&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;BTW: Removing that `#error` preprocessor statement in `mcuboot_config.h` would solve that issue for me. Maybe, you could check with some of the developers, if that text is really necessary?&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to confirm image installed by MCU boot</title><link>https://devzone.nordicsemi.com/thread/509131?ContentTypeID=1</link><pubDate>Tue, 05 Nov 2024 14:07:59 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b43d4f2e-f959-49f3-a199-0f20e1f635ae</guid><dc:creator>Torsten Robitzki</dc:creator><description>&lt;p&gt;Hi&amp;nbsp;&lt;span&gt;Abhijith,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;looks like this is working. At least, this builds and I also expect it to work at runtime.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Thank you very much,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Torsten&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to confirm image installed by MCU boot</title><link>https://devzone.nordicsemi.com/thread/509124?ContentTypeID=1</link><pubDate>Tue, 05 Nov 2024 13:42:57 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:964792ed-a244-45f0-92d9-7a24e66ec184</guid><dc:creator>Menon</dc:creator><description>&lt;p&gt;Hello Torsten,&lt;/p&gt;
&lt;p&gt;I was looking more into this, and I think the config CONFIG_MCUBOOT_BOOTUTIL_LIB cannot be directly enabled. Instead, it is selected by enabling &lt;a href="https://docs.nordicsemi.com/bundle/ncs-latest/page/kconfig/index.html#CONFIG_MCUBOOT_IMG_MANAGER"&gt;CONFIG_MCUBOOT_IMG_MANAGER&lt;/a&gt;. Try enabling this configuration inside the prj.conf and see if it makes any changes.&lt;/p&gt;
&lt;p&gt;Kind Regards,&lt;/p&gt;
&lt;p&gt;Abhijith&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to confirm image installed by MCU boot</title><link>https://devzone.nordicsemi.com/thread/509072?ContentTypeID=1</link><pubDate>Tue, 05 Nov 2024 10:00:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0e1af96e-b2cd-43f6-8bf1-c7a6eebaa600</guid><dc:creator>Menon</dc:creator><description>&lt;p&gt;Hello Torsten,&lt;/p&gt;
&lt;p&gt;Sorry if my answer was not clear to you. I didn&amp;#39;t ask to check your configuration files. I can already see that you are enabling that in your project (which I believe is a correct method), instead I was pointing to the build configuration, i.e. to verify if the configuration you enabled has been properly reflected after the build. Sometimes even if you enabled, this might not get reflected, causing errors. For example if you check the file&amp;nbsp;&amp;nbsp;&lt;strong&gt;build\mcuboot\zephyr--&amp;gt;.config&lt;/strong&gt; you could see which ever configs get enabled after the build. For the application, check &lt;strong&gt;build\zephyr--&amp;gt;.config&lt;/strong&gt;, see if&amp;nbsp;&lt;strong&gt;SB_CONFIG_BOOT_SWAP_USING_MOVE=y&lt;/strong&gt; is getting enabled in any of the build configs.&lt;/p&gt;
&lt;p&gt;I haven&amp;#39;t tested this on my end after the introduction of Sysbuild, but I am not sure why you felt the answer was from Chatgpt. I have only asked to verify if configs are getting properly enabled after the build (asked this since the error messages says so). If you are still confused please share the build folder and I can have a look.&lt;/p&gt;
&lt;p&gt;Kind Regards,&lt;/p&gt;
&lt;p&gt;Abhijith&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to confirm image installed by MCU boot</title><link>https://devzone.nordicsemi.com/thread/509042?ContentTypeID=1</link><pubDate>Tue, 05 Nov 2024 07:52:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a98eb0a7-fb52-4c53-910d-d1c46106fc79</guid><dc:creator>Torsten Robitzki</dc:creator><description>&lt;p&gt;Hello&amp;nbsp;&lt;span&gt;Abhijith,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;to be honest, I do not understand your answer. I&amp;#39;ve showed, what I&amp;#39;ve tried so far and using the configuration above, results in an error message. The configuration in question is even cited and you agree with me, that it should work.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;But: It doesn&amp;#39;t work. I applied the very same change to an example given to my by one of your colleagues (&lt;/span&gt;&lt;span&gt;&lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/115570/using-mcuboot-with-nrf5340"&gt;https://devzone.nordicsemi.com/f/nordic-q-a/115570/using-mcuboot-with-nrf5340&lt;/a&gt;&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/peripheral_5F00_lbs_5F00_enc_5F00_fota.zip"&gt;peripheral_lbs_enc_fota.zip&lt;/a&gt;) and it results in the very same error message.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;If you say, I should check the configuration files: What is the expected configuration?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;To me, it looks like, I received an answer from ChatGPT. I apologize, if I&amp;#39;m wrong.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;best regards&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Torsten&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to confirm image installed by MCU boot</title><link>https://devzone.nordicsemi.com/thread/509007?ContentTypeID=1</link><pubDate>Mon, 04 Nov 2024 19:32:54 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d7eb3678-5744-47f1-a461-2cdffeb035c7</guid><dc:creator>Menon</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
[quote user=""]When I try to instead add `SB_CONFIG_BOOT_SWAP_USING_MOVE=y` to sysbuild.conf, I get the very same error.[/quote]
&lt;p&gt;I believe this method is correct. However, based on the error message you shared, it looks like &lt;code&gt;BOOT_SWAP_USING_MOVE&lt;/code&gt; is not recognized in the &lt;code&gt;sysbuild.conf&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Please check the build configuration files to see if the configuration values have been propagated correctly. Make sure to check both the &lt;code&gt;mcuboot build&lt;/code&gt;&amp;nbsp;config and the application build config files.&lt;/p&gt;
&lt;p&gt;Kind Regards,&lt;/p&gt;
&lt;p&gt;Abhijith&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>