<?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>Differences in BLE Controller Initialization logs between throughput sample and throughput with Single-Slot DFU Integration</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/128242/differences-in-ble-controller-initialization-logs-between-throughput-sample-and-throughput-with-single-slot-dfu-integration</link><description>Hi Nordic teams, 
 I am working on integrating single-slot DFU for the nRF54H20 based on the throughput example. However, I noticed a difference in how the Bluetooth controller is initialized, as detailed below: 
 Environment: 
 - Board: nRF54H20 DK 0</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Thu, 28 May 2026 10:09:46 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/128242/differences-in-ble-controller-initialization-logs-between-throughput-sample-and-throughput-with-single-slot-dfu-integration" /><item><title>RE: Differences in BLE Controller Initialization logs between throughput sample and throughput with Single-Slot DFU Integration</title><link>https://devzone.nordicsemi.com/thread/567022?ContentTypeID=1</link><pubDate>Thu, 28 May 2026 10:09:46 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f32de987-d45d-4f83-9903-64b84118a368</guid><dc:creator>lammobile</dc:creator><description>&lt;p&gt;Hi Hung,&lt;/p&gt;
&lt;p&gt;Thank you for the information. That makes sense. Thanks a lot.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Differences in BLE Controller Initialization logs between throughput sample and throughput with Single-Slot DFU Integration</title><link>https://devzone.nordicsemi.com/thread/567020?ContentTypeID=1</link><pubDate>Thu, 28 May 2026 10:01:12 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b24bcea4-e2cf-4a07-a994-eb7d5e1fc3a8</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi Lam,&amp;nbsp;&lt;br /&gt;I think you pinpointed the cause. Fwloader ipc image should be in cpurad_slot1. The configured you had earlier made the app to use the BLE controller of the Fwloader instead of its own (slot 0).&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;I got some info from R&amp;amp;D, which related to another ticket but could be relevant to you:&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;em&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;The firmware loader mode (single slot) does not support multiple images (from the bootloader perspective). That&amp;#39;s why if you enable it on nRF54H20, the &amp;quot;merged slot&amp;quot; approach is automatically enabled.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;The partitioning of the BLE-enabled application should be fairly similar to what you can find in the Direct XIP (merged_slot suffix) configuration of the smp_svr sample as well as the A/B sample:&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;- slot0_partition: the merged app+radio application partition&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;- cpuapp_slot0_partition: the main application partition&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;- cpurad_slot0_partition: the main radio partition&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;- slot1_partition: the merged app+radio FW loader partition&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;- cpuapp_slot1_partition (also: fw_loader_partition): the FW loader application partition&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;- cpurad_slot1_partition: the FW loader radio partition (note: if the main application uses radio, the FW loader partition is no longer the &amp;quot;cpurad_slot0_partition&amp;quot; but &amp;quot;cpurad_slot1_partition&amp;quot;. This is a consequence of a logic inside the soc.c that tries to find the proper radio slot for a given application image to boot. This change must be also applied inside the sysbuild/fw_loader_ipc_radio.overlay file so the code,partition is set to point the correct partititon).&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;When the radio is merged with the application, the application image might not be the last one in the merged partition. If so, please adjust the MCUBOOT_IMAGES_ROM_END_OFFSET_AUTO Kconfig value by replacing the &amp;quot;single_slot&amp;quot; image name with the appropriate radio image name.&lt;/em&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Differences in BLE Controller Initialization logs between throughput sample and throughput with Single-Slot DFU Integration</title><link>https://devzone.nordicsemi.com/thread/566997?ContentTypeID=1</link><pubDate>Thu, 28 May 2026 03:16:37 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:04c6f8e1-6d87-4c0d-802c-d8ba450b25e7</guid><dc:creator>lammobile</dc:creator><description>&lt;p&gt;Hi Hung,&lt;/p&gt;
&lt;p data-path-to-node="5,0"&gt;&lt;b data-path-to-node="5,0" data-index-in-node="0"&gt;Good news:&lt;/b&gt; The issue is resolved. I updated the partition labels as follows:&lt;/p&gt;
&lt;p data-path-to-node="5,0"&gt;&lt;img style="max-height:240px;max-width:320px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1779938185527v1.png" /&gt;&lt;/p&gt;
&lt;ul data-path-to-node="5,1"&gt;
&lt;li&gt;
&lt;p data-path-to-node="5,1,0,0"&gt;Changed &lt;code data-path-to-node="5,1,0,0" data-index-in-node="8"&gt;cpurad_slot0_ipc_radio_partition&lt;/code&gt; &lt;span class="math-inline" data-index-in-node="41"&gt;--&amp;gt;&lt;/span&gt;&amp;nbsp;&lt;code data-path-to-node="5,1,0,0" data-index-in-node="53"&gt;cpurad_slot0_partition&lt;/code&gt; (under &lt;code data-path-to-node="5,1,0,0" data-index-in-node="83"&gt;slot0_partition&lt;/code&gt;: 256KB for &lt;code data-path-to-node="5,1,0,0" data-index-in-node="110"&gt;ipc_radio&lt;/code&gt; to interface with the app).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p data-path-to-node="5,1,1,0"&gt;Changed &lt;code data-path-to-node="5,1,1,0" data-index-in-node="8"&gt;cpurad_slot0_partition&lt;/code&gt; &lt;span class="math-inline" data-index-in-node="31"&gt;--&amp;gt;&lt;/span&gt;&amp;nbsp;&lt;code data-path-to-node="5,1,1,0" data-index-in-node="43"&gt;cpurad_slot1_partition&lt;/code&gt; (under &lt;code data-path-to-node="5,1,1,0" data-index-in-node="73"&gt;slot1_partition&lt;/code&gt; to configure &lt;code data-path-to-node="5,1,1,0" data-index-in-node="102"&gt;ipc_radio&lt;/code&gt; for &lt;code data-path-to-node="5,1,1,0" data-index-in-node="116"&gt;fw_loader&lt;/code&gt;).&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-path-to-node="5,2"&gt;Is there a defined naming convention or policy for these partition labels?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Differences in BLE Controller Initialization logs between throughput sample and throughput with Single-Slot DFU Integration</title><link>https://devzone.nordicsemi.com/thread/566958?ContentTypeID=1</link><pubDate>Wed, 27 May 2026 12:29:28 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:59c11483-bfe9-4543-808c-54e38e2ed881</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi Lam,&amp;nbsp;&lt;br /&gt;Thanks for the&amp;nbsp; instruction. I have reproduced what you observed here.&amp;nbsp;&lt;br /&gt;I&amp;#39;m checking with the team to get more insight.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;My understanding is that when you enable fw_loader with BLE on nRF54H it will add a controller to the radio core (in addition to the main application&amp;#39;s BLE controller). And the way&amp;nbsp;the radio core booting may be slightly changed (for example log configuration) and you may see different log.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;Do you see any change in the BLE behavior when testing with throughput sample or other BLE sample ?&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Differences in BLE Controller Initialization logs between throughput sample and throughput with Single-Slot DFU Integration</title><link>https://devzone.nordicsemi.com/thread/566914?ContentTypeID=1</link><pubDate>Wed, 27 May 2026 04:48:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:34d8d193-e13e-4231-a791-1ae5dddc9bd1</guid><dc:creator>lammobile</dc:creator><description>&lt;p&gt;Hi Hung,&amp;nbsp;&lt;/p&gt;
&lt;p class="ds-markdown-paragraph"&gt;&lt;span class=""&gt;I tried with &lt;strong&gt;peripheral_uart&lt;/strong&gt;, and the behavior changed similarly to the throughput example when adding DFU single_slot.&lt;/span&gt;&lt;/p&gt;
&lt;p class="ds-markdown-paragraph"&gt;&lt;span class=""&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/8623.peripheral_5F00_uart.zip"&gt;devzone.nordicsemi.com/.../8623.peripheral_5F00_uart.zip&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="ds-markdown-paragraph"&gt;&lt;strong&gt;&lt;span class=""&gt;1. build_app_only.bat&lt;/span&gt;&lt;/strong&gt;&lt;span class=""&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&amp;ndash; This build includes only the app and netcore. The log is shown below.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;1.1 Build&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;D:\ncs\v3.3.0\peripheral_uart&amp;gt;build_app_only.bat
D:\ncs\v3.3.0\peripheral_uart&amp;gt;west build -d build_app_only -b nrf54h20dk/nrf54h20/cpuapp&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;1.2 Log&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;*** Booting My Application v3.3.0-6f99e1462c81 ***
*** Using nRF Connect SDK v3.3.0-ba167d9f3db4 ***
*** Using Zephyr OS v4.3.99-fd9204a02d52 ***
Starting Nordic UART service sample
I: 10 Sectors of 4096 bytes
I: alloc wra: 0, fc0
I: data wra: 0, 0
I: HW Platform: Nordic Semiconductor (0x0002)
I: HW Variant: nRF54Hx (0x0004)
I: Firmware: Standard Bluetooth controller (0x00) Version 39.32003 Build 4270654547
I: No ID address. App must call settings_load()
I:
App v3.3.2 build time: May 27 2026 11:14:38

I: Bluetooth initialized
I: HCI transport: IPC
I: Identity: CA:12:CA:03:D3:7E (random)
I: HCI: version 6.2 (0x10) revision 0x40a3, manufacturer 0x0059
I: LMP: version 6.2 (0x10) subver 0x40a3
I: Advertising successfully started&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p class="ds-markdown-paragraph"&gt;&lt;strong&gt;&lt;span class=""&gt;2. build_boot_req.bat&lt;/span&gt;&lt;/strong&gt;&lt;span class=""&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&amp;ndash; This build integrates single_slot as well. The log is shown below.&lt;/span&gt;&lt;/p&gt;
&lt;p class="ds-markdown-paragraph"&gt;&lt;span class=""&gt;In this build, I used the&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;code&gt;dfu_application.zip&lt;/code&gt;&lt;span class=""&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;file to update. The file size is ~1.5MB, similar to the app and netcore image merge strategy, and the update was successful. However, the log for the IPC radio image differs from&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;code&gt;build_app_only&lt;/code&gt;&lt;span class=""&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;2.1 Build&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;west build -b nrf54h20dk/nrf54h20/cpuapp -T ./sample.dfu.single_slot.fw_loader_update.fw_loader_entrance_boot_req.nrf54h20&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Or&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;D:\ncs\v3.3.0\peripheral_uart&amp;gt;build_boot_req.bat
D:\ncs\v3.3.0\peripheral_uart&amp;gt;west build -d build_boot_req -b nrf54h20dk/nrf54h20/cpuapp --sysbuild -- -DSB_CONFIG_FIRMWARE_LOADER_UPDATE=y -DFILE_SUFFIX=boot_req -Dinstaller_DTC_OVERLAY_FILE=&amp;quot;${ZEPHYR_NRF_MODULE_DIR}/samples/dfu/single_slot/boards/nrf54h20dk_nrf54h20_cpuapp_boot_req.overlay&amp;quot; -Dinstaller_CONFIG_INSTALLER_FW_LOADER_ENTRANCE_BOOT_REQ=y -Dinstaller_CONFIG_NRF_MCUBOOT_BOOT_REQUEST=y -Dinstaller_CONFIG_IMG_MANAGER=y -Dinstaller_CONFIG_REBOOT=y&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;2.2 Log&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;*** Booting My Application v3.3.0-6f99e1462c81 ***
*** Using nRF Connect SDK v3.3.0-ba167d9f3db4 ***
*** Using Zephyr OS v4.3.99-fd9204a02d52 ***
Starting Nordic UART service sample
I: 10 Sectors of 4096 bytes
I: alloc wra: 0, f10
I: data wra: 0, 70
W: Controller to host flow control not supported
W: opcode 0xfc01 status 0x01
W: Vendor HCI extensions not available
I: No ID address. App must call settings_load()
I:
App v3.3.2 build time: May 27 2026 11:20:56

I: Bluetooth initialized
W: Read Static Addresses command not available
I: HCI transport: IPC
I: Identity: D1:2C:1C:C0:A6:E5 (random)
I: HCI: version 6.2 (0x10) revision 0x40a3, manufacturer 0x0059
I: LMP: version 6.2 (0x10) subver 0x40a3
I: Advertising successfully started

== dfu_application.zip ==


*** Booting My Application v3.3.0-6f99e1462c81 ***
*** Using nRF Connect SDK v3.3.0-ba167d9f3db4 ***
*** Using Zephyr OS v4.3.99-fd9204a02d52 ***
Starting Nordic UART service sample
I: 10 Sectors of 4096 bytes
I: alloc wra: 0, f00
I: data wra: 0, 80
W: Controller to host flow control not supported
W: opcode 0xfc01 status 0x01
W: Vendor HCI extensions not available
I: No ID address. App must call settings_load()
I:
App v3.3.3 build time: May 27 2026 11:28:09

I: Bluetooth initialized
W: Read Static Addresses command not available
I: HCI transport: IPC
I: Identity: E2:7B:9A:68:8E:FE (random)
I: HCI: version 6.2 (0x10) revision 0x40a3, manufacturer 0x0059
I: LMP: version 6.2 (0x10) subver 0x40a3
I: Advertising successfully started&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p class="ds-markdown-paragraph"&gt;&lt;span class=""&gt;&lt;img style="max-height:240px;max-width:320px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1779857442639v2.png" /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="ds-markdown-paragraph"&gt;&lt;span class=""&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class=""&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Differences in BLE Controller Initialization logs between throughput sample and throughput with Single-Slot DFU Integration</title><link>https://devzone.nordicsemi.com/thread/566895?ContentTypeID=1</link><pubDate>Tue, 26 May 2026 16:21:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ed34fb0b-a8f2-4c77-8bb9-77667b08d44d</guid><dc:creator>lammobile</dc:creator><description>&lt;p&gt;Hi Hung,&amp;nbsp;&lt;br /&gt;Please build throughput_dfu_single_slot using the following command:&lt;br /&gt;*&amp;nbsp;I&amp;#39;m running a build command on a Windows PC&lt;br /&gt;&lt;pre class="ui-code" data-mode="text"&gt;west build -p -b nrf54h20dk/nrf54h20/cpuapp -T ./sample.dfu.single_slot.fw_loader_update.fw_loader_entrance_boot_req.nrf54h20&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;img style="max-height:240px;max-width:320px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1779812479343v1.png" /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Differences in BLE Controller Initialization logs between throughput sample and throughput with Single-Slot DFU Integration</title><link>https://devzone.nordicsemi.com/thread/566877?ContentTypeID=1</link><pubDate>Tue, 26 May 2026 13:01:09 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:051c16dc-ea60-4895-af96-124b8f1683e3</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi Lam,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;It&amp;#39;s quite strange that adding single slot DFU can cause the application to change behavior.&amp;nbsp;&lt;br /&gt;If you try to build another application , for example peripheral_hr, do you see the same change in the log ?&amp;nbsp;&lt;br /&gt;I tried to build the sample you provided throughput_dfu_single_slot but got the following error:&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1779800451157v1.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;Do you have anything else need to be set or include when building ?&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>