<?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>Cannot DFU flash unsigned/unencrypted firmware after flashing BT_SECURITY_L3 encrypted firmware on nRF52832</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/127516/cannot-dfu-flash-unsigned-unencrypted-firmware-after-flashing-bt_security_l3-encrypted-firmware-on-nrf52832</link><description>Hello, I am working on a project using nRF52832 with Zephyr RTOS (NCS v2.7.0) and MCUboot. I have implemented BLE passkey-based security (BT_SECURITY_L3) on the device. I use BLE security level: BT_SECURITY_L3 (authenticated pairing with encryption, passkey</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 24 Mar 2026 14:23:51 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/127516/cannot-dfu-flash-unsigned-unencrypted-firmware-after-flashing-bt_security_l3-encrypted-firmware-on-nrf52832" /><item><title>RE: Cannot DFU flash unsigned/unencrypted firmware after flashing BT_SECURITY_L3 encrypted firmware on nRF52832</title><link>https://devzone.nordicsemi.com/thread/563959?ContentTypeID=1</link><pubDate>Tue, 24 Mar 2026 14:23:51 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:05c3dec4-91c8-42fc-9a3b-f97f5f032d29</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I see. The issue you are seeing now should not be related to the BLE link at all, rather it is clear that you have an image pending and are attempting to upload a new image. There are a couple of possible reasons for this:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Did you&amp;nbsp;reset after uploading the new image? If not, MCUboot will do nothing, and the new image will still be in the secondary slot.&lt;/li&gt;
&lt;li&gt;You&amp;nbsp;selected &amp;quot;test&amp;quot; instead of &amp;quot;confirm&amp;quot;, and the image was not confirmed either&amp;nbsp;via SMP or by itself (calling&amp;nbsp;boot_write_img_confirmed())&lt;/li&gt;
&lt;/ol&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Cannot DFU flash unsigned/unencrypted firmware after flashing BT_SECURITY_L3 encrypted firmware on nRF52832</title><link>https://devzone.nordicsemi.com/thread/563938?ContentTypeID=1</link><pubDate>Tue, 24 Mar 2026 10:24:39 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:35162879-e7fe-4770-afc3-9780157ee9e6</guid><dc:creator>Ferhat0</dc:creator><description>&lt;p data-path-to-node="3"&gt;Hi,&lt;/p&gt;
&lt;p data-path-to-node="4"&gt;Thank you for the quick response and clarification.&lt;/p&gt;
&lt;p data-path-to-node="5"&gt;Yes, you are exactly right. I do not mean firmware image encryption. I mean BLE link encryption. Specifically, I am using a static passkey defined in the code, so the phone must enter this static password to connect and pair with the device (BT_SECURITY_L3).&lt;/p&gt;
&lt;p data-path-to-node="6"&gt;I tested your suggestion and added &lt;code data-path-to-node="6" data-index-in-node="35"&gt;CONFIG_MCUMGR_TRANSPORT_BT_PERM_RW_AUTHEN=n&lt;/code&gt; to my &lt;code data-path-to-node="6" data-index-in-node="85"&gt;prj.conf&lt;/code&gt;. This successfully allowed me to flash the &amp;quot;unencrypted&amp;quot; (no BLE security / passkey-less) firmware via DFU over the air.&lt;/p&gt;
&lt;p data-path-to-node="7"&gt;However, a new issue occurred after this step: After successfully transitioning to the passkey-less firmware, when I try to flash the passkey-protected (BT_SECURITY_L3) firmware back onto the device via DFU, it gets stuck.&lt;/p&gt;
&lt;p data-path-to-node="8"&gt;The behavior is as follows:&lt;/p&gt;
&lt;ol start="1" data-path-to-node="9"&gt;
&lt;li&gt;
&lt;p data-path-to-node="9,0,0"&gt;The DFU upload process completes (reaches 100%), but the device does not successfully boot into the new image.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p data-path-to-node="9,1,0"&gt;The image gets stuck in the &amp;quot;pending&amp;quot; state.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p data-path-to-node="9,2,0"&gt;When I check the slot info via the nRF Connect app, one of the slots shows the new image as pending.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p data-path-to-node="9,3,0"&gt;If I try to flash the firmware again or send a confirm command, the app rejects it and gives an &amp;quot;SMP Command Error: Image operation already pending&amp;quot; error (indicating both slots are busy/full).&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-path-to-node="10"&gt;What causes the MCUboot state machine to get stuck in this &amp;quot;pending&amp;quot; state during this specific transition? Does the device fail to self-confirm the image upon reboot because of the sudden L3 security requirement, or is there another configuration I am missing to handle this consecutive DFU chain?&lt;/p&gt;
&lt;p data-path-to-node="11"&gt;Thank you for your help.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Cannot DFU flash unsigned/unencrypted firmware after flashing BT_SECURITY_L3 encrypted firmware on nRF52832</title><link>https://devzone.nordicsemi.com/thread/563774?ContentTypeID=1</link><pubDate>Fri, 20 Mar 2026 13:45:42 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:34f9e497-4001-4f7e-b94d-448f510d7bb6</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I wonder if you can clarify what you mean by encrypted firmware in this context. Do you mean that the firmware image itself is encrypted (which is possible not not directly supported in nRF Connect SDK nor for nRF52 series devices)? Of rather that there are differences in the firmware when it comes to if it use BLE pairing/bonding (so encrypted BLE communication)? It seems to me like it is only the latter, but please clarify.&lt;/p&gt;
&lt;p&gt;If you have&amp;nbsp;&lt;code&gt;CONFIG_MCUMGR_TRANSPORT_BT_PERM_RW_AUTHEN&lt;/code&gt; enabled, this means that the SMP service used for DFU will only work with pairing/bonding. If so, it will not be possible to perform an update without an encrypted link. This is normally sensible, but if you want to allows DFU ithout bonding that is absolutely possible. Then you need to explicitly set&amp;nbsp;&lt;code&gt;CONFIG_MCUMGR_TRANSPORT_BT_PERM_RW_AUTHEN=n&lt;/code&gt; in. your &lt;code&gt;prj.conf&lt;/code&gt;, as this is enabled by default when you have SMP (pairing/bonding) enabled in. your build.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>