<?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>Has anybody sucessfully enabled SMP (software management protocol) over SHELL using a UART ?</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/125913/has-anybody-sucessfully-enabled-smp-software-management-protocol-over-shell-using-a-uart</link><description>I&amp;#39;m fairly new to Zephyr and initially I&amp;#39;m hoping someone can point me to an example where SMP over UART can be used to update a firmware image slot. Google seems to have a lot of information relating to KConfig options that no longer seem to exist with</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 08 Dec 2025 11:47:33 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/125913/has-anybody-sucessfully-enabled-smp-software-management-protocol-over-shell-using-a-uart" /><item><title>RE: Has anybody sucessfully enabled SMP (software management protocol) over SHELL using a UART ?</title><link>https://devzone.nordicsemi.com/thread/556442?ContentTypeID=1</link><pubDate>Mon, 08 Dec 2025 11:47:33 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8123e625-a717-427f-98d5-0b4fcc095b09</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Yes, I can get compile errors. But I would like to backtrack a bit to your previous post, it looks like you may be off on a slightly wrong path. Normally, MCUboot is built by sysbuild&amp;nbsp;when you build your application and I am having problems understanding your project layout and how you configure things. I suggest you do as demonstrated in the &lt;a href="https://docs.nordicsemi.com/bundle/ncs-3.1.1/page/zephyr/samples/subsys/mgmt/mcumgr/smp_svr/README.html#smp-svr"&gt;SMP server sample&lt;/a&gt;. You&amp;nbsp;should also have a look at &lt;a href="https://docs.nordicsemi.com/bundle/ncs-3.1.0/page/nrf/app_dev/bootloaders_dfu/mcuboot_nsib/bootloader_adding_sysbuild.html"&gt;Enabling a bootloader chain using sysbuild&lt;/a&gt;. Lastly, as&amp;nbsp;bootloader and DFU can be complex, I suggest having a look at lesson 9 in &lt;a href="https://academy.nordicsemi.com/courses/nrf-connect-sdk-intermediate/"&gt;nRF Connect SDK Intermediate&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you still have problems, please share the project along with build logs and description so that I can get a better understanding of what you are doing.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Has anybody sucessfully enabled SMP (software management protocol) over SHELL using a UART ?</title><link>https://devzone.nordicsemi.com/thread/556408?ContentTypeID=1</link><pubDate>Mon, 08 Dec 2025 03:21:19 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e3eb30f5-af5b-463b-8c23-03e828a5c563</guid><dc:creator>Nick74</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Thanks for your reply.&amp;nbsp; I&amp;#39;ve just started with the MCUBoot repo and tried to build a suit MCUBoot from there (west build etc) and just modified the overlay file like this for my board:-&lt;/p&gt;
&lt;div&gt;
&lt;div&gt;&lt;span&gt;/&lt;/span&gt;&lt;span&gt; {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span&gt;chosen&lt;/span&gt;&lt;span&gt; {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span&gt;zephyr,code-partition&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&amp;amp;&lt;/span&gt;&lt;span&gt;boot_partition&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span&gt;zephyr,uart-mcumgr&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&amp;amp;&lt;/span&gt;&lt;span&gt;usart1&lt;/span&gt;&lt;span&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; };&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span&gt;aliases&lt;/span&gt;&lt;span&gt; {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span&gt;mcuboot-button0&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&amp;amp;&lt;/span&gt;&lt;span&gt;user_button&lt;/span&gt;&lt;span&gt;; &lt;/span&gt;&lt;span&gt;// Link the alias to your button&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span&gt;mcuboot-led0&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&amp;amp;&lt;/span&gt;&lt;span&gt;green_led_1&lt;/span&gt;&lt;span&gt;; &lt;/span&gt;&lt;span&gt;// Link the alias to your button&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp; };&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;};&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;br /&gt;and all is good until I add &amp;#39;&lt;span&gt;CONFIG_MCUBOOT_SERIAL=y&amp;#39;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;Is this a bug ?&amp;nbsp; When RSA enabled and serial enabled at the same time?&amp;nbsp; Note that I can build an encrypted app and &amp;#39;STMProg&amp;#39; it onto the board, and the bootloader decrypts it......&lt;/p&gt;
&lt;p&gt;&lt;span&gt;CONFIG_MCUBOOT_SERIAL&lt;/span&gt;&lt;span&gt;=y&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div&gt;
&lt;div&gt;&lt;span&gt;CONFIG_BOOT_ENCRYPT_IMAGE&lt;/span&gt;&lt;span&gt;=y&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;CONFIG_BOOT_SIGNATURE_TYPE_RSA&lt;/span&gt;&lt;span&gt;=y&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;CONFIG_BOOT_ENCRYPTION_KEY_FILE&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&amp;quot;enc-rsa2048-priv.pem&amp;quot;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;CONFIG_BOOT_SIGNATURE_KEY_FILE&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&amp;quot;root-rsa-2048.pem&amp;quot;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;span&gt;&amp;nbsp;and the compilation fails.&lt;br /&gt;&lt;br /&gt;C:/Code/zephyr/bootloader/mcuboot/boot/boot_serial/src/boot_serial_encryption.c: In function &amp;#39;decrypt_image_inplace&amp;#39;:&lt;br /&gt;C:/Code/zephyr/bootloader/mcuboot/boot/boot_serial/src/boot_serial_encryption.c:265:37: error: incompatible type for argument 1 of &amp;#39;decrypt_region_inplace&amp;#39;&lt;br /&gt; 265 | rc = decrypt_region_inplace(enc_data, fa_p, hdr, size, sect_size);&lt;br /&gt; | ^~~~~~~~&lt;br /&gt; | |&lt;br /&gt; | struct enc_key_data&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;br /&gt;All I&amp;#39;m trying to do (but it&amp;#39;s so hard -- bits of info picked up from here or there, Google tells me out of date tips like its fact.....)&amp;nbsp; is just get a bootloader working with ideally, SMP over serial or SMP over SHELL ( so I can have the shell).&lt;br /&gt;I want to be able to write an encrypted f/ware image onto my target onto image bank1, via the MCUMgr scripts, and then reset the board and watch the bootloader decrypt /copy image1 to image0 and then jump into the app.&lt;br /&gt;&lt;br /&gt;I also like the &amp;#39;hold the user button, while momentarily pressing RESET, to get into the bootloader functionality, which I can make work (although SMP still doesnt seem to be working, and thats without SMP over shell and console off etc)&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;And lastly, when I try to enabled &amp;#39;&amp;nbsp;&lt;/span&gt;CONFIG_MCUMGR_TRANSPORT_SHELL=y&amp;#39;&amp;nbsp; &amp;nbsp;I get more compile errors.&lt;br /&gt;(I&amp;#39;m not even trying to use CONFIG_ZCBOR=y, but somehow its getting pulled in twice).&lt;/p&gt;
&lt;p&gt;hyr/bootloader/mcuboot/boot/boot_serial/src/zcbor_bulk.c:14: first defined here&lt;br /&gt;collect2.exe: error: ld returned 1 exit status&lt;br /&gt;ninja: build stopped: subcommand failed.&lt;br /&gt;FATAL ERROR: command exited with status 1: &amp;#39;C:\msys64\ucrt64\bin\cmake.EXE&amp;#39; --build &amp;#39;C:\Code\zephyr\bootloader\mcuboot\boot\zephyr\build&amp;#39;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Kind Regards, Nick&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Has anybody sucessfully enabled SMP (software management protocol) over SHELL using a UART ?</title><link>https://devzone.nordicsemi.com/thread/555966?ContentTypeID=1</link><pubDate>Tue, 02 Dec 2025 09:56:00 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a7290f83-4c47-4cc9-97d2-759f8f7fedb6</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;The error as you see comes from not having a bootable image. Is that intentional, did you only program the bootloader, or should you also have programmed an application? That said, using&amp;nbsp;CONFIG_BOOT_SERIAL_NO_APPLICATION=y is fine, as entering serial recovery mode on no bootable application&amp;nbsp;can make sense. But you should not have ended up here in the first place. Also, it was not clear to me originally that you wanted to use serial&amp;nbsp;recovery (where you have UART transport in the bootloader in addition to / instead of, doing the transport in the application as you do with SMP. What is the goal?&lt;/p&gt;
&lt;p&gt;I am also not sure why you get these errors, so I wonder if we can backtrack a bit. Did you start of with an sample (like the smp svr sample)? Can you share details or perhaps your full project (both code and configuration files like prj.conf) so I get a better understanding of what you are doing? I would recommend starting with the smp svr sample first&amp;nbsp;and perhaps also go through lesson 9 in &lt;a href="https://academy.nordicsemi.com/courses/nrf-connect-sdk-intermediate/"&gt;nRF Connect SDK Intermediate&lt;/a&gt;&amp;nbsp;to get a better understanding of the bootloader and DFU&amp;nbsp;in the nRF Connect SDK.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Has anybody sucessfully enabled SMP (software management protocol) over SHELL using a UART ?</title><link>https://devzone.nordicsemi.com/thread/555921?ContentTypeID=1</link><pubDate>Mon, 01 Dec 2025 19:22:05 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:cc44464f-a7bb-4088-a59e-b5d29e0350d7</guid><dc:creator>Nick74</dc:creator><description>&lt;div&gt;&lt;span&gt;So trying to figure out why shell isnt working I set up a debug session with MCUBoot&amp;nbsp; &amp;nbsp; I found this in main.c.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#339966;"&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#339966;"&gt;if (FIH_NOT_EQ(fih_rc, FIH_SUCCESS)) {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#339966;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; BOOT_LOG_ERR(&amp;quot;Unable to find bootable image&amp;quot;);&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div&gt;&lt;span style="color:#339966;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; mcuboot_status_change(MCUBOOT_STATUS_NO_BOOTABLE_IMAGE_FOUND);&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div&gt;&lt;span style="color:#339966;"&gt;#ifdef CONFIG_BOOT_SERIAL_NO_APPLICATION&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#339966;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; /* No bootable image and configuration set to remain in serial&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#339966;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;* recovery mode&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#339966;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;*/&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#339966;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; boot_serial_enter();&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#339966;"&gt;#elif defined(CONFIG_BOOT_USB_DFU_NO_APPLICATION)&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#339966;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; rc = usb_enable(NULL);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#339966;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if (rc &amp;amp;&amp;amp; rc != -EALREADY) {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#339966;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; BOOT_LOG_ERR(&amp;quot;Cannot enable USB&amp;quot;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#339966;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; } else {&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#339966;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; BOOT_LOG_INF(&amp;quot;Waiting for USB DFU&amp;quot;);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#339966;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; wait_for_usb_dfu(K_FOREVER);&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#339966;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#339966;"&gt;#endif&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div&gt;&lt;span style="color:#339966;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; FIH_PANIC;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#339966;"&gt;&amp;nbsp; &amp;nbsp; }&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;&lt;/div&gt;
&lt;div&gt;I ended up stuck on FIH_PANIC at the bottom.&amp;nbsp; &amp;nbsp;So I enabled &amp;#39;&lt;span&gt;CONFIG_BOOT_SERIAL_NO_APPLICATION&amp;#39; in prj.conf to enable&amp;nbsp; &amp;#39;boot_serial_enter()&amp;#39;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span&gt;And then got told I need &amp;#39;&amp;nbsp;&lt;/span&gt;&amp;#39;CONFIG_MCUBOOT_SERIAL&amp;#39; as a dependency.&amp;nbsp; So I also added that to prjk.conf.&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;And finally the build now fails.....&lt;/div&gt;
&lt;div&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#ff99cc;"&gt;C:/Code/zephyr/bootloader/mcuboot/boot/boot_serial/src/boot_serial_encryption.c:114:31: warning: &amp;#39;struct enc_data&amp;#39; declared inside parameter list will not be visible outside of this definition or declaration&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt; 114 | decrypt_region_inplace(struct enc_data *enc_data,&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt; | ^~~~~~~~&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt;C:/Code/zephyr/bootloader/mcuboot/boot/boot_serial/src/boot_serial_encryption.c: In function &amp;#39;decrypt_region_inplace&amp;#39;:&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt;C:/Code/zephyr/bootloader/mcuboot/boot/boot_serial/src/boot_serial_encryption.c:169:30: warning: passing argument 1 of &amp;#39;boot_enc_decrypt&amp;#39; from incompatible pointer type [-Wincompatible-pointer-types]&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt; 169 | boot_enc_decrypt(enc_data,&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt; | ^~~~~~~~&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt; | |&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt; | struct enc_data *&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt;In file included from c:\code\zephyr\bootloader\mcuboot\boot\bootutil\src\bootutil_priv.h:44,&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt; from C:/Code/zephyr/bootloader/mcuboot/boot/boot_serial/src/boot_serial_encryption.c:10:&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt;C:/Code/zephyr/bootloader/mcuboot/boot/bootutil/include/bootutil/enc_key.h:73:44: note: expected &amp;#39;struct enc_key_data *&amp;#39; but argument is of type &amp;#39;struct enc_data *&amp;#39;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt; 73 | void boot_enc_decrypt(struct enc_key_data *enc_state,&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt; | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt;C:/Code/zephyr/bootloader/mcuboot/boot/boot_serial/src/boot_serial_encryption.c: In function &amp;#39;decrypt_image_inplace&amp;#39;:&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt;C:/Code/zephyr/bootloader/mcuboot/boot/boot_serial/src/boot_serial_encryption.c:265:37: error: incompatible type for argument 1 of &amp;#39;decrypt_region_inplace&amp;#39;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt; 265 | rc = decrypt_region_inplace(enc_data, fa_p, hdr, size, sect_size);&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt; | ^~~~~~~~&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt; | |&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt; | struct enc_key_data&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt;C:/Code/zephyr/bootloader/mcuboot/boot/boot_serial/src/boot_serial_encryption.c:114:41: note: expected &amp;#39;struct enc_data &amp;#39; but argument is of type &amp;#39;struct enc_key_data&amp;#39;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt; 114 | decrypt_region_inplace(struct enc_data *enc_data,&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt; | ~~~~~~~~~~~~~~~~~^~~~~~~~&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt;C:/Code/zephyr/bootloader/mcuboot/boot/boot_serial/src/boot_serial_encryption.c:274:5: warning: implicit declaration of function &amp;#39;boot_enc_zeorize&amp;#39;; did you mean &amp;#39;boot_enc_zeroize&amp;#39;? [-Wimplicit-function-declaration]&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt; 274 | boot_enc_zeorize(&amp;amp;enc_data);&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt; | ^~~~~~~~~~~~~~~~&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt; | boot_enc_zeroize&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt;C:/Code/zephyr/bootloader/mcuboot/boot/boot_serial/src/boot_serial_encryption.c:275:22: warning: passing argument 1 of &amp;#39;boot_state_clear&amp;#39; from incompatible pointer type [-Wincompatible-pointer-types]&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt; 275 | boot_state_clear(&amp;amp;state);&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt; | ^~~~~~&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt; | |&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt; | struct boot_loader_state **&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt;In file included from c:\code\zephyr\bootloader\mcuboot\boot\bootutil\src\bootutil_priv.h:37:&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt;C:/Code/zephyr/bootloader/mcuboot/boot/bootutil/include/bootutil/bootutil.h:89:49: note: expected &amp;#39;struct boot_loader_state *&amp;#39; but argument is of type &amp;#39;struct boot_loader_state **&amp;#39;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt; 89 | void boot_state_clear(struct boot_loader_state *state);&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt; | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt;[126/355] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/cbprintf_nano.c.obj&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt;ninja: build stopped: subcommand failed.&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt;FATAL ERROR: command exited with status 1: &amp;#39;C:\Program Files\CMake\bin\cmake.EXE&amp;#39; --build &amp;#39;c:\Code\zephyr\bootloader\mcuboot\boot\zephyr\build&amp;#39;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#ff99cc;"&gt;(venv_zephyr) c:\Code\zephyr\bootloader\mcuboot\boot\zephyr&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;/div&gt;
&lt;div&gt;So I presume I misunderstand something!&lt;/div&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Has anybody sucessfully enabled SMP (software management protocol) over SHELL using a UART ?</title><link>https://devzone.nordicsemi.com/thread/555831?ContentTypeID=1</link><pubDate>Mon, 01 Dec 2025 08:56:09 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1640048b-ee59-4232-9464-69749560061c</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;The Shell transport is included when you use the smp_svr sample and build for Bluetooth by including &lt;a href="https://github.com/nrfconnect/sdk-zephyr/blob/8c0bc54ab09fe84050b4d5a44b1aa4667bcc6cef/samples/subsys/mgmt/mcumgr/smp_svr/overlay-bt.conf"&gt;overlay-bt.conf&lt;/a&gt; as an extra Kconfig file. With that, you can observe that you get&amp;nbsp;normal shell&amp;nbsp;working over UART, and that you can also use SMP over the same UART shell (I tested this with AuTerm). As you can &lt;a href="https://github.com/nrfconnect/sdk-zephyr/blob/ff8f0c579eeb896876b6f36aca70c2bbfa756e19/samples/subsys/mgmt/mcumgr/smp_svr/overlay-bt.conf#L14-L19"&gt;see in that sample&lt;/a&gt;, these are the key configs for enabling Shell over UART and use mcumgr shell transport:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;# Enable the Shell mcumgr transport.
CONFIG_BASE64=y
CONFIG_CRC=y
CONFIG_SHELL=y
CONFIG_SHELL_BACKEND_SERIAL=y
CONFIG_MCUMGR_TRANSPORT_SHELL=y
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Additionally, you need the more generic mcumgr configs shown in the &lt;a href="https://github.com/nrfconnect/sdk-zephyr/blob/018554da0ddaeef65fb50fa915874e60cd571631/samples/subsys/mgmt/mcumgr/smp_svr/prj.conf"&gt;prj.conf&lt;/a&gt;&amp;nbsp;of the same sample.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>