<?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>About Mesh DFU Test</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/39837/about-mesh-dfu-test</link><description>1. I used the nRF5 SDK for Mesh v2.2.0 version to test the Mesh DFU feature and follow the DFU example tutorial. 
 http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.meshsdk.v2.2.0%2Fmd_doc_getting_started_getting_started.html </description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 12 Nov 2018 11:04:16 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/39837/about-mesh-dfu-test" /><item><title>RE: About Mesh DFU Test</title><link>https://devzone.nordicsemi.com/thread/156851?ContentTypeID=1</link><pubDate>Mon, 12 Nov 2018 11:04:16 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2808fdda-fdbe-4ee9-ba97-581d34063c03</guid><dc:creator>Bj&amp;#248;rn Kvaale</dc:creator><description>&lt;p&gt;Would you mind upvoting any comment(s) you thought were helpful &amp;amp; pressing More -&amp;gt; Suggest as Answer if applicable?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: About Mesh DFU Test</title><link>https://devzone.nordicsemi.com/thread/156788?ContentTypeID=1</link><pubDate>Mon, 12 Nov 2018 02:25:33 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:355a1292-5601-4730-8374-48d65a1b2a2d</guid><dc:creator>NOA-BEN</dc:creator><description>&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;Thank you very much for your reply, you mean after all the devices have completed the first upgrade. In the second upgrade, I need to erase and re-burn the firmware to successfully burn it.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; I tried communication between Mesh clients but it didn&amp;#39;t work.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: About Mesh DFU Test</title><link>https://devzone.nordicsemi.com/thread/155807?ContentTypeID=1</link><pubDate>Fri, 02 Nov 2018 16:09:10 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5f5e5211-fa45-4a94-9031-40d3373ffe63</guid><dc:creator>Bj&amp;#248;rn Kvaale</dc:creator><description>&lt;p&gt;&lt;strong&gt;Another quick remark:&lt;/strong&gt; I put the batch script at this location: nrf5_SDK_for_Mesh_v2.2.0_src\scripts\DFU\&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: About Mesh DFU Test</title><link>https://devzone.nordicsemi.com/thread/155806?ContentTypeID=1</link><pubDate>Fri, 02 Nov 2018 16:02:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6c70b7de-eefc-4d74-bba4-5042b56f3a4c</guid><dc:creator>Bj&amp;#248;rn Kvaale</dc:creator><description>&lt;p&gt;Sorry for the delayed response. I have finished testing the DFU bootloader example. I essentially just followed the Getting Started with DFU documentation that you looked at.&lt;/p&gt;
&lt;p&gt;As you can see from the picture below, the bootloader is still there after you perform the DFU.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/support-attachments/beef5d1b77644c448dabff31668f3a47-7dbf3c7d13d248e49bfd57b149256627/pastedimage1541173347830v1.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;However, as you pointed out, the blinky application does not support DFU. When I tried to do the DFU the second time around, I got the same error you did.&lt;/p&gt;
&lt;p&gt;What I did next was to first erase one of the boards, then run the following commands on that board:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;nrfjprog --eraseall
nrfjprog --program ../../bin/softdevice/s140_nrf52_6.0.0_softdevice.hex --chiperase
nrfjprog --program ../../bin/bootloader/gccarmemb/mesh_bootloader_serial_gccarmemb_nrf52840_xxAA.hex --verify
nrfjprog --program ../../examples/dfu/build/dfu_nrf52840_xxAA_s140_6.0.0_Debug/dfu_nrf52840_xxAA_s140_6.0.0.hex  --verify
nrfjprog --program ../../tools/dfu/bin/device_page_nrf52840_xxAA_s140_6.0.0.hex
nrfjprog --reset
nrfutil_mesh dfu serial -pkg dfu_test_blinky.zip -p COM29 -b 115200 -fc --mesh&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;You can naturally just use nrfutil instead of nrfutil_mesh. Since I use both quite often, I decided to rename the mesh version nrfutil_mesh. Once I made those changes, everything worked fine like it should.&lt;/p&gt;
&lt;p&gt;Also, in case you have not created a bat script, I have uploaded one below to make this whole process a lot easier &amp;amp; more enjoyable. Just replace the SEGGER_ID with the IDs on the top of the interface MCU on your 52 DKs.&lt;/p&gt;
&lt;p&gt;I used three DKs during this test, but you can easily use 2 or even more if you really want to test it out more!&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/support-attachments/beef5d1b77644c448dabff31668f3a47-7dbf3c7d13d248e49bfd57b149256627/dfu.bat"&gt;devzone.nordicsemi.com/.../dfu.bat&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Regarding the communication protocol, I believe we just use the serial interface. Hope that helps!&lt;/p&gt;
&lt;p&gt;Kind Regards,&lt;/p&gt;
&lt;p&gt;Bjørn&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: About Mesh DFU Test</title><link>https://devzone.nordicsemi.com/thread/155805?ContentTypeID=1</link><pubDate>Fri, 02 Nov 2018 16:02:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6d44cd50-e78f-4422-8fcf-ca37ceceaeb5</guid><dc:creator>Bj&amp;#248;rn Kvaale</dc:creator><description>&lt;p&gt;Sorry for the delayed response. I have finished testing the DFU bootloader example. I essentially just followed the Getting Started with DFU documentation that you looked at.&lt;/p&gt;
&lt;p&gt;As you can see from the picture below, the bootloader is still there after you perform the DFU.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/support-attachments/beef5d1b77644c448dabff31668f3a47-7dbf3c7d13d248e49bfd57b149256627/pastedimage1541173347830v1.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;However, as you pointed out, the blinky application does not support DFU. When I tried to do the DFU the second time around, I got the same error you did.&lt;/p&gt;
&lt;p&gt;What I did next was to first erase one of the boards, then run the following commands on that board:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;nrfjprog --eraseall
nrfjprog --program ../../bin/softdevice/s140_nrf52_6.0.0_softdevice.hex --chiperase
nrfjprog --program ../../bin/bootloader/gccarmemb/mesh_bootloader_serial_gccarmemb_nrf52840_xxAA.hex --verify
nrfjprog --program ../../examples/dfu/build/dfu_nrf52840_xxAA_s140_6.0.0_Debug/dfu_nrf52840_xxAA_s140_6.0.0.hex  --verify
nrfjprog --program ../../tools/dfu/bin/device_page_nrf52840_xxAA_s140_6.0.0.hex
nrfjprog --reset
nrfutil_mesh dfu serial -pkg dfu_test_blinky.zip -p COM29 -b 115200 -fc --mesh&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;You can naturally just use nrfutil instead of nrfutil_mesh. Since I use both quite often, I decided to rename the mesh version nrfutil_mesh. Once I made those changes, everything worked fine like it should.&lt;/p&gt;
&lt;p&gt;Also, in case you have not created a bat script, I have uploaded one below to make this whole process a lot easier &amp;amp; more enjoyable. Just replace the SEGGER_ID with the IDs on the top of the interface MCU on your 52 DKs.&lt;/p&gt;
&lt;p&gt;I used three DKs during this test, but you can easily use 2 or even more if you really want to test it out more!&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/support-attachments/beef5d1b77644c448dabff31668f3a47-7dbf3c7d13d248e49bfd57b149256627/dfu.bat"&gt;devzone.nordicsemi.com/.../dfu.bat&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Regarding the communication protocol, I believe we just use the serial interface. Hope that helps!&lt;/p&gt;
&lt;p&gt;Kind Regards,&lt;/p&gt;
&lt;p&gt;Bjørn&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: About Mesh DFU Test</title><link>https://devzone.nordicsemi.com/thread/154822?ContentTypeID=1</link><pubDate>Mon, 29 Oct 2018 09:53:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:85dcb1a2-6db2-43e3-b8e7-1fe818ed6c6b</guid><dc:creator>NOA-BEN</dc:creator><description>&lt;p&gt;I also want to know the communication protocol between nrfutil and the device in the Mesh DFU function. We want to implement DFU function through other serial ports, such as WiFi module and NRF52840.&lt;/p&gt;
&lt;p&gt;Can you provide this communication protocol to us?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: About Mesh DFU Test</title><link>https://devzone.nordicsemi.com/thread/154793?ContentTypeID=1</link><pubDate>Mon, 29 Oct 2018 06:55:06 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:bef7d8b6-2710-4a02-8147-8c30226267fc</guid><dc:creator>NOA-BEN</dc:creator><description>&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;Thank you very much for your reply and look forward to your testing of the NRF52840 Mesh.&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;I will try to modify the code to implement server to server communication, or client and client communication&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: About Mesh DFU Test</title><link>https://devzone.nordicsemi.com/thread/154694?ContentTypeID=1</link><pubDate>Fri, 26 Oct 2018 13:55:44 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c32b1bb1-3730-4746-b057-b34ece5f51e6</guid><dc:creator>Bj&amp;#248;rn Kvaale</dc:creator><description>&lt;p&gt;I will test the dfu functionality with two 52840 dks &amp;amp; get back to you on that. Why should the server not be able to send an acknowledged message to another server? That way, a server sends a set message to another server for example &amp;amp; the receiving server will respond to the&amp;nbsp;sender with a status message.&lt;/p&gt;
&lt;p&gt;Right now, the light switch server example is setup to send a status message back to the client, but you should be able to update that to send a reliable unicast message to another server. What you could do is add the generic on off client model in the light switch server example. A similar example is &lt;a href="https://github.com/NordicPlayground/nrf52-mesh-light-switch-client-server-proxy"&gt;shown here&lt;/a&gt;, where I have updated the light switch example to be both a server &amp;amp; a client (by adding the generic on off client model in the server example). By provisioning via the nRF Mesh app (available for Android &amp;amp; iOS), you are able to use the device as both a light switch &amp;amp; a light (i.e. client or server). Just beware that the example uses a slightly simplified version of the &amp;quot;generic on off model&amp;quot;. Therefore, I would use the github example as a good starting point, but maybe rather update the mesh sdk v2.2.0 light switch example to achieve the same thing.&lt;/p&gt;
&lt;p&gt;If you want a quick way to send messages from one client to another client, I would test out the github code. There are two pdfs that show the testing guidelines.&lt;/p&gt;
&lt;p&gt;I agree that Bluetooth Mesh is not the simplest of things to learn. I have spent quite a lot of time supporting Bluetooth Mesh &amp;amp; there are definitely easier examples to understand. ;)&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: About Mesh DFU Test</title><link>https://devzone.nordicsemi.com/thread/154639?ContentTypeID=1</link><pubDate>Fri, 26 Oct 2018 09:30:10 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5a804609-70eb-4a25-8874-84ea28bd7040</guid><dc:creator>NOA-BEN</dc:creator><description>&lt;p&gt;I am very sorry, because I can see your reply next week.&lt;/p&gt;
&lt;p&gt;I want to ask a question here, I run the Mesh light_switch routine.&lt;/p&gt;
&lt;p&gt;Data can only be bidirectional from server to client. It can&amp;#39;t be from the server to the server, or the client. I tried to read the client and server code and found it difficult and took a lot of time.&lt;/p&gt;
&lt;p&gt;I would like to ask if there is a corresponding example, sent directly from the client to the client.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: About Mesh DFU Test</title><link>https://devzone.nordicsemi.com/thread/154603?ContentTypeID=1</link><pubDate>Fri, 26 Oct 2018 05:55:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c0e7d342-3093-45a6-90bc-2a68147565c4</guid><dc:creator>NOA-BEN</dc:creator><description>&lt;p&gt;And I used Two NRF52840 &lt;span&gt;dev kits To Test DFU&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: About Mesh DFU Test</title><link>https://devzone.nordicsemi.com/thread/154589?ContentTypeID=1</link><pubDate>Fri, 26 Oct 2018 02:42:46 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2b80415a-58a5-4f53-86f0-d3238ba8ed96</guid><dc:creator>NOA-BEN</dc:creator><description>&lt;p&gt;Yes. I have deleted all of &amp;nbsp;the zip files and re-run step3 and 10.&amp;nbsp;&lt;span&gt;--application-version 4.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;The first DFU was successful, but the second DFU prompted the following error.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;/**********************************************************************************************&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Upgrading target on COM29 with DFU package D:\Github_Project\NOA_IoT_BACKBONE\nrf5_SDK_for_Mesh_v2.2.0_src\dfu_test.zip. Flow control is enabled.&lt;br /&gt;[------------------------------------] 0%Flushing com-port...&lt;br /&gt;Opened com-port&lt;br /&gt;Starting DFU upgrade of type 4, SoftDevice size: 0, bootloader size: 0, application size: 1656&lt;br /&gt;Sending DFU start packet, afterwards we wait for the flash on target to be initialized before continuing.&lt;br /&gt;PC -&amp;gt; target: 0502aabbccdd&lt;br /&gt;PC -&amp;gt; target: 0502aabbccdd&lt;br /&gt;PC -&amp;gt; target: 0502aabbccdd&lt;br /&gt;PC -&amp;gt; target: 0502aabbccdd&lt;br /&gt;PC -&amp;gt; target: 0502aabbccdd&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;Failed to upgrade target. Error is: Failed to establish connection&lt;/p&gt;
&lt;p&gt;Possible causes:&lt;br /&gt;- bootloader, SoftDevice or application on target does not match the requirements in the DFU package.&lt;br /&gt;- baud rate or flow control is not the same as in the target bootloader.&lt;br /&gt;- target is not in DFU mode. If using the SDK examples, press Button 4 and RESET and release both to enter DFU mode.&lt;br /&gt;Closing serial port...&lt;/p&gt;
&lt;p&gt;************************************************************************************************/&lt;/p&gt;
&lt;p&gt;And I don&amp;#39;t understand what you said created a script&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: About Mesh DFU Test</title><link>https://devzone.nordicsemi.com/thread/154506?ContentTypeID=1</link><pubDate>Thu, 25 Oct 2018 12:41:35 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f99c7e7a-0268-42c6-93bb-4f96b0a509dc</guid><dc:creator>Bj&amp;#248;rn Kvaale</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;It should work to do the DFU multiple times. Like &lt;a href="http://infocenter.nordicsemi.com/topic/com.nordic.infocenter.meshsdk.v2.2.0/md_doc_getting_started_dfu_quick_start.html?cp=4_1_0_1_2"&gt;the documentation states&lt;/a&gt;, you will need to do this:&lt;/p&gt;
&lt;p&gt;&amp;quot;&lt;span&gt;To try another DFU, re-run steps 3 and 10 with an increased version number, for example&amp;nbsp;&lt;/span&gt;&lt;code&gt;--application-version 3&lt;/code&gt;&lt;span&gt;, and use the new zip file to do the DFU again.&amp;quot;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;If you have not already created a script, I would start there. Then, I would erase the boards completely &amp;amp; start from scratch one more time.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;How many dev kits are you testing with atm?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Regarding your 4th point, I would delete all of the zip files generated &amp;amp; start from scratch. Then, it should work to do the DFU multiple times.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Kind Regards,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Bjørn&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>