<?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>Where is the bootloader used by the serial example progect.</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/81863/where-is-the-bootloader-used-by-the-serial-example-progect</link><description>Hi Nordic, 
 I want to use this example to learn bluetooth mesh, but I cannot find the bootloader source code used in this example. 
 I used vim to view this &amp;quot;serial_nrf52832_xxAA_s132_7_2_0.emProject&amp;quot;, but I couldn’t find the bootloader source code.</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 26 Nov 2021 14:48:33 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/81863/where-is-the-bootloader-used-by-the-serial-example-progect" /><item><title>RE: Where is the bootloader used by the serial example progect.</title><link>https://devzone.nordicsemi.com/thread/340935?ContentTypeID=1</link><pubDate>Fri, 26 Nov 2021 14:48:33 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:86731dea-d66c-49ad-8d3c-1d1cd48a5acd</guid><dc:creator>Elfving</dc:creator><description>&lt;p&gt;Hey Leo! Sorry about the late response.&lt;/p&gt;
[quote user="Leo Lin"]&lt;p&gt;Q1- Do you mean that this example does not have a bootloader FW? Only softdevice FW and application FW are needed?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;[/quote]
&lt;p&gt;Yes&lt;/p&gt;
[quote user="Leo Lin"]&lt;p&gt;Q2- So I used the &amp;quot;Interactive PyACI script&amp;quot; to send the &amp;quot;Direct Firmware Upgrade Jump To Bootloader&amp;quot; command. The device only reboots, but does not jump to bootloader mode, because this example does not have a bootloader FW? Right?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;[/quote]
&lt;p&gt;Yes, I believe so.&lt;/p&gt;
[quote user="Leo Lin"]&lt;p&gt;And the function nrf_mesh_dfu_jump_to_bootloader has been changed so that when I give instructions, the code that jumps to bootloader mode will be executed.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;[/quote][quote user="Leo Lin"]&lt;p&gt;&lt;span style="font-family:inherit;"&gt;I entered the command, but the device only reboots, but does not enter the bootloader mode.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;[/quote]
&lt;p&gt;I see, now you have found a way to reboot the device, which would reboot it to the bootloader if there was one (but still not necessarily the &lt;em&gt;bootloader mode &lt;/em&gt;btw, or that depends on what you mean by it).&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I think there might be a misunderstanding about the difference between bootloader, bootloader mode, DFU and DFU mode here. The bootloader is responsible for booting and updating the FW. Updating the FW can be done using a DFU. In order for it to do that, the bootloader needs to trigger the &lt;em&gt;DFU mode&lt;/em&gt;. &amp;quot;&lt;em&gt;Bootloader mode&lt;/em&gt;&amp;quot; is a term that has been mostly used about the &lt;em&gt;DFU mode&lt;/em&gt;&amp;nbsp;on the debugger chip on the DK (not the nRF SoC), and sometimes as something synonymous with DFU mode. It might be confusing, but just make sure that you know the difference between the bootloader and the DFU mode.&lt;/p&gt;
&lt;p&gt;In order for something to enter DFU mode, it needs to reboot (in order for it to enter bootloader)&amp;nbsp;and then the GPREGISTER needs to be set. This can be done directly, or using the buttonless DFU service or by simply holding Button 4 when powering it up.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;For more of a step by step tutorial on how to incorporate Mesh DFU into your map &lt;a href="https://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.meshsdk.v5.0.0%2Fmd_doc_user_guide_modules_dfu_integrating_into_app.html"&gt;you could see here&lt;/a&gt;. (Though I once again want you to be sure that Mesh DFU is what you want, since you don&amp;#39;t have to use Mesh DFU even though you are using a Mesh application. )&lt;/p&gt;
&lt;p&gt;And btw, are you using the mesh version of nrfutil?&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Elfving&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Where is the bootloader used by the serial example progect.</title><link>https://devzone.nordicsemi.com/thread/339924?ContentTypeID=1</link><pubDate>Sun, 21 Nov 2021 10:00:35 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ec26be67-923e-4735-917d-1c76e1d91b82</guid><dc:creator>Leo Lin</dc:creator><description>&lt;p&gt;Hi Elfving&lt;/p&gt;
&lt;p&gt;Thank you for your reply！&lt;/p&gt;
&lt;p&gt;Q1- Do you mean that this example does not have a bootloader FW? Only softdevice FW and application FW are needed?&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Q2- So I used the &amp;quot;Interactive PyACI script&amp;quot; to send the &amp;quot;Direct Firmware Upgrade Jump To Bootloader&amp;quot; command. The device only reboots, but does not jump to bootloader mode, because this example does not have a bootloader FW? Right?&lt;/p&gt;
&lt;p&gt;Like the instructions on the &lt;a href="https://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.meshsdk.v5.0.0%2Fmd_doc_user_guide_modules_serial_cmd.html"&gt;file&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1637487377386v1.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;===========================================================================================&amp;nbsp;&lt;/p&gt;
&lt;p&gt;The following is the actual practice of my Q2 question.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Here I used this &lt;a href="https://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.meshsdk.v5.0.0%2Fmd_examples_serial_README.html&amp;amp;cp=8_2_3_14"&gt;example&lt;/a&gt; and changed some things.&lt;/p&gt;
&lt;p&gt;First I added &amp;quot;nrf_mesh_dfu.c&amp;quot; to the project.&lt;/p&gt;
&lt;p&gt;Below is the content of&amp;nbsp;&amp;quot;&lt;span&gt;serial_nrf52832_xxAA_s132_7_2_0.emProject&amp;quot;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1637487665125v2.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;And the function nrf_mesh_dfu_jump_to_bootloader has been changed so that when I give instructions, the code that jumps to bootloader mode will be executed.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1637487987605v3.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;Because I think that to use the nrfutil tool to update the FW through the serial interface, the nrf52832 module must be in DFU mode.&amp;nbsp;&lt;span style="font-family:inherit;"&gt;So I tried to let nrf52832 enter the DFU mode.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:inherit;"&gt;I entered the command, but the device only reboots, but does not enter the bootloader mode.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:inherit;"&gt;&lt;img src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1637488242365v4.png" alt=" " /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:inherit;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:inherit;"&gt;Thanks in advance.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:inherit;"&gt;Leo.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Where is the bootloader used by the serial example progect.</title><link>https://devzone.nordicsemi.com/thread/339845?ContentTypeID=1</link><pubDate>Fri, 19 Nov 2021 14:04:46 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e390160d-81e0-4094-b2fe-12ea9755aa6b</guid><dc:creator>Elfving</dc:creator><description>&lt;p&gt;Hey Leo!&lt;/p&gt;
&lt;p&gt;You don&amp;#39;t have to use a bootloader to use this example, though for the DFU reasons the mesh bootloader can be found in MeshSDK/examples/dfu/. For more info see &lt;a href="https://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.meshsdk.v5.0.0%2Fmd_examples_dfu_README.html"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Elfving&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>