<?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>Problem with mesh DFU</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/46950/problem-with-mesh-dfu</link><description>Hi, 
 I already asked a similar question 6 month ago ( ticket ) but we never got a solution to this. 
 Now, after 15 month of development, our mesh-applications are almost finished and we really need DFU. 
 To be able to upload code, I open a private</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 12 Apr 2019 08:12:16 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/46950/problem-with-mesh-dfu" /><item><title>RE: Problem with mesh DFU</title><link>https://devzone.nordicsemi.com/thread/185345?ContentTypeID=1</link><pubDate>Fri, 12 Apr 2019 08:12:16 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7215f2d8-912f-4392-ae37-e0e960e09901</guid><dc:creator>Gerry</dc:creator><description>&lt;p&gt;Hi Hung,&lt;/p&gt;
&lt;p&gt;yes this really helped. Thanks a lot for your support. I think, this could also be interesting for others (especially the optimal_bank_address()), so feel free to make this ticket public if you want.&lt;/p&gt;
&lt;p&gt;Regards Gerry&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Problem with mesh DFU</title><link>https://devzone.nordicsemi.com/thread/185344?ContentTypeID=1</link><pubDate>Wed, 10 Apr 2019 16:01:18 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e0dbbf1e-9dee-4b8c-9148-a30830628b39</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi Gerry,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I&amp;#39;m testing here and seeing the same problem. For some reason with your client.hex file the bootloader crashed when receiving the init packet. I tested with even bigger image but it didn&amp;#39;t crash.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I noticed that when doing DFU with your image, one of the init packet is transmitted twice (didn&amp;#39;t get ack):&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;img height="56" src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/support-attachments/beef5d1b77644c448dabff31668f3a47-e36ccd3b17bf4310862dd774d39cbd3d/pastedimage1554911635462v1.png" width="390" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;Same can be seen in your log. This doesn&amp;#39;t happens with other image.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I increased the&amp;nbsp;ACK_WAIT_TIME to 5 and SEND_START_DFU_WAIT_TIME&amp;nbsp; to 5 then it worked now.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;I guess it&amp;#39;s something to do with the timing. We will need to improve this to avoid dependence on the image size.&lt;/p&gt;
&lt;p&gt;But for now I would suggest to just increase those timing numbers. It won&amp;#39;t affect the overall update time, only affect the init packets sending time at the beginning.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Problem with mesh DFU</title><link>https://devzone.nordicsemi.com/thread/185343?ContentTypeID=1</link><pubDate>Tue, 09 Apr 2019 06:50:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7f23e398-06b2-4192-9a1d-c0fda8e1f88a</guid><dc:creator>Gerry</dc:creator><description>&lt;p&gt;Good idea, you can download the project from&amp;nbsp;&lt;a href="http://www.lizenz.li/Connectivityair_15_2_3_10.zip"&gt;here&lt;/a&gt;. It includes the SDKs and it&amp;#39;s good to compile.&lt;/p&gt;
&lt;p&gt;To reproduce the issue:&lt;/p&gt;
&lt;p&gt;- Open the the project connectivity_client under \source\connectivity_client and compile it (using SES)&lt;/p&gt;
&lt;p&gt;- Change the values for Comport and&amp;nbsp;client_version in Version.ini under \DFU&lt;/p&gt;
&lt;p&gt;- Connect a PCA10056 and run Prog_Client.bat under \DFU&lt;/p&gt;
&lt;p&gt;-&amp;nbsp;R&lt;span&gt;un DFU_Client.bat under&amp;nbsp;&lt;/span&gt;&lt;span&gt;\&lt;/span&gt;&lt;span&gt;DFU&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Here DFU_Client.bat updates the client successful sometimes, but most of the time it ends with&amp;nbsp;ERROR_INVALID_DATA (135) on a DFU data packet.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Problem with mesh DFU</title><link>https://devzone.nordicsemi.com/thread/185342?ContentTypeID=1</link><pubDate>Mon, 08 Apr 2019 15:22:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:52dcc4a0-2dc6-4a12-897f-cc7100146bc9</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;I&amp;#39;m not sure what could be wrong now.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Is it possible to provide us your source code that we can test on the NRF52 DK and can reproduce the issue here . We need to add some debug log to see at which point it crashed. Please give us the detailed instruction how you test that firmware as well.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Also please make sure you have increased the application version when you want to update the same firmware.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Problem with mesh DFU</title><link>https://devzone.nordicsemi.com/thread/185341?ContentTypeID=1</link><pubDate>Fri, 05 Apr 2019 13:50:16 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:26c58438-275c-4ec3-b9c5-f86a0b47df89</guid><dc:creator>Gerry</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I changed these values in&amp;nbsp;dfu_transport_mesh.py&lt;br /&gt;ACK_WAIT_TIME = 2&lt;br /&gt;SEND_START_DFU_WAIT_TIME = 5&lt;/p&gt;
&lt;p&gt;also changed the nrfutil parameter -i to 1000&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Now it works approx. every 5th time I start DFU.&lt;/p&gt;
&lt;p&gt;When it fails, it outputs:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt; 0&amp;gt; &amp;lt;t:     141603&amp;gt;, nrf_mesh_dfu.c,  390, 	New firmware!
 0&amp;gt; &amp;lt;t:     141606&amp;gt;, mesh.c,  783, DFU event:13
 0&amp;gt; &amp;lt;t:     141608&amp;gt;, mesh.c,  744, DFU update application 
 0&amp;gt; &amp;lt;t:     141611&amp;gt;, mesh.c,  795, DFU me 
 0&amp;gt; &amp;lt;t:     141612&amp;gt;, mesh.c,  796, optimal_bank_address: 573440 
 0&amp;gt; &amp;lt;t:     141615&amp;gt;, nrf_mesh_dfu.c,  528, 	RADIO TX! SLOT 0, count 255, interval: periodic, handle: FFFD
 0&amp;gt; &amp;lt;t:     141619&amp;gt;, nrf_mesh_dfu.c,  534, Killing a TX slot prematurely (repeats done: 1).
 0&amp;gt; &amp;lt;t:     141623&amp;gt;, nrf_mesh_dfu.c,  561, 	SERIAL TX!
 0&amp;gt; &amp;lt;t:     306203&amp;gt;, nrf_mesh_dfu.c,  528, 	RADIO TX! SLOT 0, count 255, interval: periodic, handle: FFFD
 0&amp;gt; &amp;lt;t:     306207&amp;gt;, nrf_mesh_dfu.c,  534, Killing a TX slot prematurely (repeats done: 0).
 0&amp;gt; &amp;lt;t:     306211&amp;gt;, nrf_mesh_dfu.c,  561, 	SERIAL TX!
 0&amp;gt; &amp;lt;t:     471073&amp;gt;, nrf_mesh_dfu.c,  430, 	DFU start
 0&amp;gt; &amp;lt;t:     471075&amp;gt;, mesh.c,  783, DFU event:9
 0&amp;gt; &amp;lt;t:     471077&amp;gt;, mesh.c,  810, DFU start 
 0&amp;gt; &amp;lt;t:     471080&amp;gt;, nrf_mesh_dfu.c,  528, 	RADIO TX! SLOT 3, count 6, interval: exponential, handle: FFFC
 0&amp;gt; &amp;lt;t:     553710&amp;gt;, nrf_mesh_dfu.c,  329, Erase complete (0x8C000)
 0&amp;gt; &amp;lt;t:     553713&amp;gt;, nrf_mesh_dfu.c,  333, Flash idle.
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;and RTT:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;Flushing com-port...
Opened com-port
Starting DFU upgrade of type 4, SoftDevice size: 0, bootloader size: 0, application size: 122412
Sending DFU start packet, afterwards we wait for the flash on target to be initialized before continuing.
PC -&amp;gt; target: 0502aabbccdd
target -&amp;gt; PC: 0582aabbccdd
Got echo response
Sending DFU init packet
PC -&amp;gt; target: 1378fdff040f587ed7dc59000000010003000000
target -&amp;gt; PC: 16a6045900000001000300000059000000010002000000
target -&amp;gt; PC: 03847800
PC -&amp;gt; target: 1378fdff040f587ed7dc59000000010003000000
target -&amp;gt; PC: 03847800
PC -&amp;gt; target: 1478fcff0000587ed7dcffffffff8b77000000000c
PC -&amp;gt; target: 1478fcff0000587ed7dcffffffff8b77000000000c
target -&amp;gt; PC: 0da2010459000000010003000000
target -&amp;gt; PC: 03847800
Sending firmware file
  [------------------------------------]    1%  00:30:54PC -&amp;gt; target: 1978fcff0100587ed7dc00f0032059620200896202008b620200
target -&amp;gt; PC: 03847887
PC -&amp;gt; target: 1978fcff0100587ed7dc00f0032059620200896202008b620200
PC -&amp;gt; target: 1978fcff0100587ed7dc00f0032059620200896202008b620200
PC -&amp;gt; target: 1978fcff0100587ed7dc00f0032059620200896202008b620200
PC -&amp;gt; target: 1978fcff0100587ed7dc00f0032059620200896202008b620200
target -&amp;gt; PC: 628200896202008b6202001978fcff0100587ed7dc00f0032059620200896202008b6202001978fcff0100587ed7dc00f0032059620200896202008b6202001978fcff0100587ed7dc00f0032059620200896202008b6202001978fcff0100587ed7dc
target -&amp;gt; PC: 03840084


Failed to upgrade target. Error is: Device returned status code ERROR_INVALID_DATA (135) on a DFU data packet.&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;I agree, the issue changed, but there still seems to be a problem.&lt;/p&gt;
&lt;p&gt;Do you have an Idea?&lt;/p&gt;
&lt;p&gt;EDIT: Updating the servers over the air, using this client as relay works fine now (this didn&amp;#39;t work, when I opened this ticket)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Problem with mesh DFU</title><link>https://devzone.nordicsemi.com/thread/185340?ContentTypeID=1</link><pubDate>Fri, 05 Apr 2019 12:07:24 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:091c7e73-3cb5-4b8b-ab0a-11cfe158f131</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi Gerry,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Seems to be a timing issue to me as well, but was the nrftutil still report&amp;nbsp;ERROR_INVALID_DATA (135)&amp;nbsp; ? or it&amp;#39;s &amp;quot;crashed&amp;nbsp;on start&amp;nbsp;packet&amp;quot; ?&amp;nbsp;&lt;/p&gt;
&lt;p&gt;It doesn&amp;#39;t seems to me it&amp;#39;s the same issue like before, the bank size issue is solved.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;You can try to follow this&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/43335/mesh-dfu-nrf52840-with-other-binary-file"&gt;https://devzone.nordicsemi.com/f/nordic-q-a/43335/mesh-dfu-nrf52840-with-other-binary-file&lt;/a&gt;&amp;nbsp;to check if that helps ?&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Problem with mesh DFU</title><link>https://devzone.nordicsemi.com/thread/185339?ContentTypeID=1</link><pubDate>Fri, 05 Apr 2019 09:30:06 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7d7e001f-5ab1-427b-99b1-d564d52de88b</guid><dc:creator>Gerry</dc:creator><description>&lt;p&gt;Yes, the fix is implemented. I now also made an extended Log-output to see all events&amp;nbsp;&lt;span&gt;inside&amp;nbsp;&lt;/span&gt;&lt;span&gt;mesh_evt_handler()&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;pre class="ui-code" data-mode="text"&gt;static void mesh_evt_handler(const nrf_mesh_evt_t* p_evt)
{
    __LOG(LOG_SRC_APP, LOG_LEVEL_INFO, &amp;quot;DFU event:%u\n&amp;quot;,p_evt-&amp;gt;type);
    switch (p_evt-&amp;gt;type)
    {
        case NRF_MESH_EVT_TX_COMPLETE:
            sending_message = false;
            break;
        case NRF_MESH_EVT_FLASH_STABLE:
            break;
        case NRF_MESH_EVT_DFU_FIRMWARE_OUTDATED:
        case NRF_MESH_EVT_DFU_FIRMWARE_OUTDATED_NO_AUTH:
            if (fw_updated_event_is_for_me(&amp;amp;p_evt-&amp;gt;params.dfu))
            {
                __LOG(LOG_SRC_APP, LOG_LEVEL_INFO, &amp;quot;DFU me \n&amp;quot;);
                __LOG(LOG_SRC_APP, LOG_LEVEL_INFO, &amp;quot;optimal_bank_address: %u \n&amp;quot;, optimal_bank_address());
                ERROR_CHECK(nrf_mesh_dfu_request(p_evt-&amp;gt;params.dfu.fw_outdated.transfer.dfu_type,
                                                 &amp;amp;p_evt-&amp;gt;params.dfu.fw_outdated.transfer.id,
                                                 optimal_bank_address()));
            }
            else
            {
                __LOG(LOG_SRC_APP, LOG_LEVEL_INFO, &amp;quot;DFU relay \n&amp;quot;);
                ERROR_CHECK(nrf_mesh_dfu_relay(p_evt-&amp;gt;params.dfu.fw_outdated.transfer.dfu_type,
                                               &amp;amp;p_evt-&amp;gt;params.dfu.fw_outdated.transfer.id));
            }
            break;
&lt;/pre&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;The RTT-output is:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt; 0&amp;gt; &amp;lt;t:     215501&amp;gt;, nrf_mesh_dfu.c,  390, 	New firmware!
 0&amp;gt; &amp;lt;t:     215504&amp;gt;, mesh.c,  783, DFU event:13
 0&amp;gt; &amp;lt;t:     215506&amp;gt;, mesh.c,  744, DFU update application 
 0&amp;gt; &amp;lt;t:     215508&amp;gt;, mesh.c,  795, DFU me 
 0&amp;gt; &amp;lt;t:     215510&amp;gt;, mesh.c,  796, optimal_bank_address: 573440 
 0&amp;gt; &amp;lt;t:     215513&amp;gt;, nrf_mesh_dfu.c,  528, 	RADIO TX! SLOT 0, count 255, interval: periodic, handle: FFFD
 0&amp;gt; &amp;lt;t:     215517&amp;gt;, nrf_mesh_dfu.c,  534, Killing a TX slot prematurely (repeats done: 1).
 0&amp;gt; &amp;lt;t:     215521&amp;gt;, nrf_mesh_dfu.c,  561, 	SERIAL TX!
 0&amp;gt; &amp;lt;t:     314224&amp;gt;, nrf_mesh_dfu.c,  528, 	RADIO TX! SLOT 0, count 255, interval: periodic, handle: FFFD
 0&amp;gt; &amp;lt;t:     314228&amp;gt;, nrf_mesh_dfu.c,  534, Killing a TX slot prematurely (repeats done: 0).
 0&amp;gt; &amp;lt;t:     314231&amp;gt;, nrf_mesh_dfu.c,  561, 	SERIAL TX!
 0&amp;gt; &amp;lt;t:     413564&amp;gt;, nrf_mesh_dfu.c,  430, 	DFU start
 0&amp;gt; &amp;lt;t:     413567&amp;gt;, mesh.c,  783, DFU event:9
 0&amp;gt; &amp;lt;t:     413569&amp;gt;, mesh.c,  810, DFU start 
 0&amp;gt; &amp;lt;t:     413572&amp;gt;, nrf_mesh_dfu.c,  528, 	RADIO TX! SLOT 5, count 6, interval: exponential, handle: FFFC
 0&amp;gt; &amp;lt;t:     496202&amp;gt;, nrf_mesh_dfu.c,  329, Erase complete (0x8C000)
 0&amp;gt; &amp;lt;t:     496205&amp;gt;, nrf_mesh_dfu.c,  333, Flash idle.
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;So&amp;nbsp;&lt;span&gt;optimal_bank_addr&amp;nbsp;is&lt;/span&gt; o573440 and the last event is:&amp;nbsp;9/start&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Problem with mesh DFU</title><link>https://devzone.nordicsemi.com/thread/185338?ContentTypeID=1</link><pubDate>Fri, 05 Apr 2019 08:12:19 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:314a5a83-eb3f-41ba-bdd1-1cdcb7db5834</guid><dc:creator>Gerry</dc:creator><description>&lt;p&gt;Since this now seems to be a problem with my client project, I uploaded my project&amp;nbsp;&lt;a href="http://www.lizenz.li/Connectivityair_15_2_3_10.zip"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;It includes the SDKs and should be good to compile. The client project can be found under source/connectivity_client.&lt;/p&gt;
&lt;p&gt;The scripts I use for programming and DFU are in the folder DFU (Prog_Client.bat and DFU_Client.bat)&lt;/p&gt;
&lt;p&gt;It seems to me like a timing issue, since DFU worked one time now. (1 time out of maybe 20-30 times I tried)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Problem with mesh DFU</title><link>https://devzone.nordicsemi.com/thread/185337?ContentTypeID=1</link><pubDate>Thu, 04 Apr 2019 14:41:35 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:612daf59-b9a4-4f28-9741-76196962aec5</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Have you implemented the fix in your original DFU application ?&amp;nbsp;&lt;br /&gt;Could you printout the optimal_bank_addr calculation when it&amp;#39;s calculated inside&amp;nbsp;&lt;span&gt;mesh_evt_handler() ?&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Getting RTT logging inside&amp;nbsp;dfu_evt_handler() also important to know what wrong in your case (&amp;quot;Abort event. Reason:&amp;quot;)&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Problem with mesh DFU</title><link>https://devzone.nordicsemi.com/thread/185336?ContentTypeID=1</link><pubDate>Thu, 04 Apr 2019 14:36:14 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:fe714251-0169-4c7d-a5f1-40a14e159c5f</guid><dc:creator>Gerry</dc:creator><description>&lt;p&gt;Ok, I programmed your hexfile (DFU-example) and then run my DFU script for the client.&lt;/p&gt;
&lt;p&gt;This works well, the RTT-output looks as follows:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt; 0&amp;gt; &amp;lt;t:          1&amp;gt;, main.c,  223, ----- Bluetooth Mesh DFU Example -----
 0&amp;gt; &amp;lt;t:          3&amp;gt;, main.c,  232, rom_base   26201
 0&amp;gt; &amp;lt;t:          5&amp;gt;, main.c,  233, rom_end    42BE8
 0&amp;gt; &amp;lt;t:          7&amp;gt;, main.c,  234, rom_length 1C9E7
 0&amp;gt; &amp;lt;t:          9&amp;gt;, main.c,  236, bank_addr   43000
 0&amp;gt; &amp;lt;t:      12921&amp;gt;, serial_handler_prov.c,  267, Generating encryption keypair...
 0&amp;gt; &amp;lt;t:      17768&amp;gt;, main.c,  241, optimal bank addr   8C000
 0&amp;gt; &amp;lt;t:      17770&amp;gt;, main.c,  242, Initialization complete!
 0&amp;gt; &amp;lt;t:      22540&amp;gt;, main.c,  263, Enabling serial interface...
 0&amp;gt; &amp;lt;t:      22543&amp;gt;, mesh_app_utils.c,   65, Device UUID (raw): D617B16F3FEC8643A3C33E33908A3BED
 0&amp;gt; &amp;lt;t:      22546&amp;gt;, mesh_app_utils.c,   70, Device UUID : 6FB117D6-EC3F-4386-A3C3-3E33908A3BED
 0&amp;gt; &amp;lt;t:      22554&amp;gt;, nrf_mesh_dfu.c,  528, 	RADIO TX! SLOT 0, count 255, interval: periodic, handle: FFFE
 0&amp;gt; &amp;lt;t:      22559&amp;gt;, nrf_mesh_dfu.c,  561, 	SERIAL TX!
 0&amp;gt; &amp;lt;t:      22565&amp;gt;, main.c,  271, DFU example started!
 0&amp;gt; &amp;lt;t:    2101608&amp;gt;, serial_handler_openmesh.c,   51, 	DFU Data!
 0&amp;gt; &amp;lt;t:    2101611&amp;gt;, nrf_mesh_dfu.c,  390, 	New firmware!
 0&amp;gt; &amp;lt;t:    2101614&amp;gt;, nrf_mesh_dfu.c,  528, 	RADIO TX! SLOT 0, count 255, interval: periodic, handle: FFFD
 0&amp;gt; &amp;lt;t:    2101618&amp;gt;, nrf_mesh_dfu.c,  534, Killing a TX slot prematurely (repeats done: 7).
 0&amp;gt; &amp;lt;t:    2101622&amp;gt;, nrf_mesh_dfu.c,  561, 	SERIAL TX!
 0&amp;gt; &amp;lt;t:    2200674&amp;gt;, serial_handler_openmesh.c,   51, 	DFU Data!
 0&amp;gt; &amp;lt;t:    2200677&amp;gt;, nrf_mesh_dfu.c,  528, 	RADIO TX! SLOT 0, count 255, interval: periodic, handle: FFFD
 0&amp;gt; &amp;lt;t:    2200681&amp;gt;, nrf_mesh_dfu.c,  534, Killing a TX slot prematurely (repeats done: 30).
 0&amp;gt; &amp;lt;t:    2200684&amp;gt;, nrf_mesh_dfu.c,  561, 	SERIAL TX!
 0&amp;gt; &amp;lt;t:    2299386&amp;gt;, serial_handler_openmesh.c,   51, 	DFU Data!
 0&amp;gt; &amp;lt;t:    2299389&amp;gt;, nrf_mesh_dfu.c,  430, 	DFU start
 0&amp;gt; &amp;lt;t:    2299392&amp;gt;, nrf_mesh_dfu.c,  528, 	RADIO TX! SLOT 3, count 6, interval: exponential, handle: FFFC
 0&amp;gt; &amp;lt;t:    2401288&amp;gt;, serial_handler_openmesh.c,   51, 	DFU Data!
 0&amp;gt; &amp;lt;t:    2401291&amp;gt;, nrf_mesh_dfu.c,  528, 	RADIO TX! SLOT 4, count 3, interval: exponential, handle: FFFC
 0&amp;gt; &amp;lt;t:    2424970&amp;gt;, serial_handler_openmesh.c,   51, 	DFU Data!
 0&amp;gt; &amp;lt;t:    2424973&amp;gt;, nrf_mesh_dfu.c,  528, 	RADIO TX! SLOT 5, count 3, interval: exponential, handle: FFFC
...&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;my client-application uses the same UART-pins like the DFU-example with UART0&lt;/p&gt;
&lt;p&gt;Seems like the problem only occurs, when my client is running at DFU start.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Problem with mesh DFU</title><link>https://devzone.nordicsemi.com/thread/185335?ContentTypeID=1</link><pubDate>Thu, 04 Apr 2019 13:17:01 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ffcec0f5-9491-403a-8b36-ff9efbb93656</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi Gerry,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Your client.zip worked fine for me here.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;I haven&amp;#39;t tested to flash your client.hex file but only use our SDK&amp;#39;s dfu example to do a DFU. (I&amp;#39;m not sure if you use the same UART pins in your client.hex,)&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Could you try testing using our DFU example ? I attached our main.c file with the fixplease replace with the original main.c and send us the RTT log file after you test. The .hex of the DFU application is also attached.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/support-attachments/beef5d1b77644c448dabff31668f3a47-e36ccd3b17bf4310862dd774d39cbd3d/dfu_5F00_nrf52840_5F00_xxAA_5F00_s140_5F00_6.1.0.hex"&gt;devzone.nordicsemi.com/.../dfu_5F00_nrf52840_5F00_xxAA_5F00_s140_5F00_6.1.0.hex&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/support-attachments/beef5d1b77644c448dabff31668f3a47-e36ccd3b17bf4310862dd774d39cbd3d/main.c"&gt;devzone.nordicsemi.com/.../main.c&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Problem with mesh DFU</title><link>https://devzone.nordicsemi.com/thread/185334?ContentTypeID=1</link><pubDate>Thu, 04 Apr 2019 08:47:19 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:77f94c0f-4a09-4eaa-a44f-1d55dcca7a0d</guid><dc:creator>Gerry</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;thanks for you investigation on this. This changed a lot. &amp;quot;Crashed on start package&amp;quot; disapeared now.&lt;/p&gt;
&lt;p&gt;ERROR_INVALID_DATA (135) persists. I made a log output to RTT for the bank_address:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;        case NRF_MESH_EVT_DFU_FIRMWARE_OUTDATED_NO_AUTH:
            if (fw_updated_event_is_for_me(&amp;amp;p_evt-&amp;gt;params.dfu))
            {
                __LOG(LOG_SRC_APP, LOG_LEVEL_INFO, &amp;quot;DFU me \n&amp;quot;);
                __LOG(LOG_SRC_APP, LOG_LEVEL_INFO, &amp;quot;optimal_bank_address: %u \n&amp;quot;, optimal_bank_address());
                ERROR_CHECK(nrf_mesh_dfu_request(p_evt-&amp;gt;params.dfu.fw_outdated.transfer.dfu_type,
                                                 &amp;amp;p_evt-&amp;gt;params.dfu.fw_outdated.transfer.id,
                                                 optimal_bank_address()));
            }&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;The output on RTT is: optimal_bank_address: 573440&lt;/p&gt;
&lt;p&gt;During the DFU I get this output now:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;Upgrading target on COM6 with DFU package C:\Users\se\Desktop\Oblamatik\Connectivityair_15.2_3.10\DFU\pc-nrfutil-mesh_dfu\client.zip. Flow control is enabled.
Flushing com-port...
Opened com-port
Starting DFU upgrade of type 4, SoftDevice size: 0, bootloader size: 0, application size: 122268
Sending DFU start packet, afterwards we wait for the flash on target to be initialized before continuing.
PC -&amp;gt; target: 0502aabbccdd
target -&amp;gt; PC: 0582aabbccdd
Got echo response
Sending DFU init packet
PC -&amp;gt; target: 1378fdff040f46d4dcf159000000010002000000
target -&amp;gt; PC: 16a6045900000001000200000059000000010001000000
target -&amp;gt; PC: 03847800
PC -&amp;gt; target: 1378fdff040f46d4dcf159000000010002000000
target -&amp;gt; PC: 03847800
PC -&amp;gt; target: 1478fcff000046d4dcf1ffffffff6777000000000c
PC -&amp;gt; target: 1478fcff000046d4dcf1ffffffff6777000000000c
target -&amp;gt; PC: 0da2010459000000010002000000
target -&amp;gt; PC: 03847800
Sending firmware file
  [------------------------------------]    1%  00:20:58PC -&amp;gt; target: 1978fcff010046d4dcf100f0032059620200896202008b620200
target -&amp;gt; PC: 03847887
PC -&amp;gt; target: 1978fcff010046d4dcf100f0032059620200896202008b620200
PC -&amp;gt; target: 1978fcff010046d4dcf100f0032059620200896202008b620200
PC -&amp;gt; target: 1978fcff010046d4dcf100f0032059620200896202008b620200
PC -&amp;gt; target: 1978fcff010046d4dcf100f0032059620200896202008b620200
target -&amp;gt; PC: 628200896202008b6202001978fcff010046d4dcf100f0032059620200896202008b6202001978fcff010046d4dcf100f0032059620200896202008b6202001978fcff010046d4dcf100f0032059620200896202008b6202001978fcff010046d4dcf1
target -&amp;gt; PC: 03840084


Failed to upgrade target. Error is: Device returned status code ERROR_INVALID_DATA (135) on a DFU data packet.&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/support-attachments/beef5d1b77644c448dabff31668f3a47-e36ccd3b17bf4310862dd774d39cbd3d/client.hex"&gt;devzone.nordicsemi.com/.../client.hex&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Regards&lt;/p&gt;
&lt;p&gt;Gerry&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Problem with mesh DFU</title><link>https://devzone.nordicsemi.com/thread/185333?ContentTypeID=1</link><pubDate>Wed, 03 Apr 2019 14:03:26 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c10d1d2e-06da-4e06-a777-9e316bf6e3e4</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi Gerry,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Good news, I think we have found the bug in our dfu application code that limit the size of the new image to be not bigger than the size of the original application.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Please apply this fix on the application:&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Add this code to main.c&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;static uint32_t * optimal_bank_address(void)
{
    /* The incoming transfer has to fit on both sides of the bank address: First it needs to fit
     * above the bank address when we receive it, then it needs to fit below the bank address when
     * we install it. We want to put the bank address in the middle of the available application
     * code area, to maximize the potential transfer size we can accept. */
    const uint32_t * p_start;
    uint32_t dummy;
    ERROR_CHECK(mesh_stack_persistence_flash_usage(&amp;amp;p_start, &amp;amp;dummy));

    uint32_t middle_of_app_area = (CODE_START + (intptr_t) p_start) / 2;

    /* The bank can&amp;#39;t start in the middle of the application code, and should be page aligned: */
    return (uint32_t *) ALIGN_VAL(MAX(middle_of_app_area, CODE_END), PAGE_SIZE);
}
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;And replace&amp;nbsp;&amp;nbsp; &lt;em&gt;(uint32_t*) bank_addr&lt;/em&gt;&amp;nbsp; &amp;nbsp;with&amp;nbsp;&amp;nbsp; &lt;em&gt;&amp;nbsp; optimal_bank_address()&lt;/em&gt; in&amp;nbsp;mesh_evt_handler()&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;In addition, to solve the issue &amp;quot;Crashed on start packet&amp;quot; you can increase&lt;a href="https://github.com/NordicSemiconductor/pc-nrfutil/blob/mesh_dfu/nordicsemi/dfu/dfu_transport_mesh.py#L151"&gt;&amp;nbsp;&lt;/a&gt;&lt;span&gt;&lt;a href="https://github.com/NordicSemiconductor/pc-nrfutil/blob/mesh_dfu/nordicsemi/dfu/dfu_transport_mesh.py#L151"&gt;ACK_WAIT_TIME &lt;/a&gt;to 2 and rebuild nrfutil for dfu mesh and test again.&amp;nbsp;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Please let us know if the issues persist.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Problem with mesh DFU</title><link>https://devzone.nordicsemi.com/thread/185332?ContentTypeID=1</link><pubDate>Tue, 02 Apr 2019 12:14:45 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3a96c5d9-c44c-487c-b958-95ff180f1e16</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi Gerry,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I&amp;#39;m sorry that the case has been dragging for so long. I have reproduced the issue with your client.zip file here.&amp;nbsp;Starting the investigation, will try our best to find the root cause.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Problem with mesh DFU</title><link>https://devzone.nordicsemi.com/thread/185331?ContentTypeID=1</link><pubDate>Tue, 02 Apr 2019 09:22:47 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1ef5da4c-65d4-4222-a10a-40cb991a9e9a</guid><dc:creator>Gerry</dc:creator><description>&lt;p&gt;Additional info:&lt;/p&gt;
&lt;p&gt;Normally I get the second output (Crashed on start packet). The first one (ERROR_INVALID_DATA (135)) I only got 2 or 3 times.&lt;/p&gt;
&lt;p&gt;Here are my Hex- and generated zip-files. Maybe you can reproduce the issue.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/support-attachments/beef5d1b77644c448dabff31668f3a47-e36ccd3b17bf4310862dd774d39cbd3d/connectivity_5F00_client.hex"&gt;devzone.nordicsemi.com/.../connectivity_5F00_client.hex&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/support-attachments/beef5d1b77644c448dabff31668f3a47-e36ccd3b17bf4310862dd774d39cbd3d/client.zip"&gt;devzone.nordicsemi.com/.../client.zip&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>