<?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>Extremely slow DFU over UART</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/37954/extremely-slow-dfu-over-uart</link><description>We try to implement DFU over UART. The Mesh DFU example has been taken as a reference. DFU is successful, but it takes about 1 hour (sic!) to transfer DFU ZIP package of size 123 KB. Why is it so slow? How to make it normal speed? 
 [Mesh SDK 2.1.1, Nrf</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Thu, 06 Sep 2018 15:50:32 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/37954/extremely-slow-dfu-over-uart" /><item><title>RE: Extremely slow DFU over UART</title><link>https://devzone.nordicsemi.com/thread/147659?ContentTypeID=1</link><pubDate>Thu, 06 Sep 2018 15:50:32 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:50815af9-b55d-46bd-8caa-d8345d93a96a</guid><dc:creator>bjorn-spockeli</dc:creator><description>&lt;p&gt;No, the mesh network is still operational during the side-by-side DFU since the trickle algorithm is used, i.e. the mesh can still send useful information during DFU in addition to the DFU packages. This is ofcourse given that the recommended --i value is used.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Extremely slow DFU over UART</title><link>https://devzone.nordicsemi.com/thread/147658?ContentTypeID=1</link><pubDate>Thu, 06 Sep 2018 15:48:24 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6261c420-6f3a-4f9e-a35c-b0b7bb5edbac</guid><dc:creator>Igor</dc:creator><description>&lt;p&gt;So, that means that a firmware update puts whole system down for half an hour? Or the mesh network still works during firmware distribution?&lt;/p&gt;
&lt;p&gt;I know that DFU works in side-by-side mode, but is there&amp;nbsp;enough free bandwidth&amp;nbsp;during DFU, so that is mesh network still able to transmit &amp;quot;useful&amp;quot; messages?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Extremely slow DFU over UART</title><link>https://devzone.nordicsemi.com/thread/147654?ContentTypeID=1</link><pubDate>Thu, 06 Sep 2018 15:29:35 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:21beff6a-25e1-4240-8520-289d27c2100b</guid><dc:creator>bjorn-spockeli</dc:creator><description>&lt;p&gt;Hi Igor,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;The device connected to the pc&amp;nbsp;will&amp;nbsp;start forwarding the image to rest of the mesh network from the first packet received over the serial interface. It does not receive the entire image and then starts to forward the image piece by piece.&lt;/p&gt;
&lt;p&gt;So as I understand, the serial interface will work with very low values, but the mesh network will get saturated and many devices on the network will miss DFU packets if the --i value is set to low.&lt;/p&gt;
&lt;p&gt;The recommendation of 200 ms is from the point of view of the network and not the single device. DFU is slow because it uses a trickle algorithm to ensure that everyone gets the packet.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Best 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: Extremely slow DFU over UART</title><link>https://devzone.nordicsemi.com/thread/147169?ContentTypeID=1</link><pubDate>Tue, 04 Sep 2018 12:14:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:832dd582-0e9b-4a2f-8e52-c669d813f3f9</guid><dc:creator>Igor</dc:creator><description>&lt;p&gt;Results of tests with lower interval:&lt;/p&gt;
&lt;table style="width:200px;"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td width="302"&gt;
&lt;p&gt;&lt;strong&gt;-i&lt;/strong&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td width="302"&gt;
&lt;p&gt;&lt;strong&gt;time [minutes]&lt;/strong&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td width="302"&gt;
&lt;p&gt;500&lt;/p&gt;
&lt;/td&gt;
&lt;td width="302"&gt;
&lt;p&gt;68&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td width="302"&gt;
&lt;p&gt;200&lt;/p&gt;
&lt;/td&gt;
&lt;td width="302"&gt;
&lt;p&gt;27&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td width="302"&gt;
&lt;p&gt;100&lt;/p&gt;
&lt;/td&gt;
&lt;td width="302"&gt;
&lt;p&gt;14&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td width="302"&gt;
&lt;p&gt;&amp;nbsp;50&lt;/p&gt;
&lt;/td&gt;
&lt;td width="302"&gt;
&lt;p&gt;&amp;nbsp;8.0&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td width="302"&gt;
&lt;p&gt;&amp;nbsp;25&lt;/p&gt;
&lt;/td&gt;
&lt;td width="302"&gt;
&lt;p&gt;&amp;nbsp;4.8&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td width="302"&gt;
&lt;p&gt;&amp;nbsp;10&lt;/p&gt;
&lt;/td&gt;
&lt;td width="302"&gt;
&lt;p&gt;&amp;nbsp;2.9&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td width="302"&gt;
&lt;p&gt;&amp;nbsp; 5&lt;/p&gt;
&lt;/td&gt;
&lt;td width="302"&gt;
&lt;p&gt;&amp;nbsp;2.2&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td width="302"&gt;
&lt;p&gt;&amp;nbsp; 2&lt;/p&gt;
&lt;/td&gt;
&lt;td width="302"&gt;
&lt;p&gt;&amp;nbsp;1.8&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td width="302"&gt;
&lt;p&gt;&amp;nbsp; 1&lt;/p&gt;
&lt;/td&gt;
&lt;td width="302"&gt;
&lt;p&gt;&amp;nbsp;1.7&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;I am wondering, what is the smallest safe interval value? Documentation states that it is 200, however I did not notice problems with lower values.&lt;br /&gt;&lt;br /&gt;&lt;a href="https://devzone.nordicsemi.com/members/bjorn_2d00_spockeli"&gt;bjorn-spockeli&lt;/a&gt;&amp;nbsp;I can provide time-labeled hex capture of serial port flow or 2-channel scope image.&lt;span class="parent"&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Extremely slow DFU over UART</title><link>https://devzone.nordicsemi.com/thread/147014?ContentTypeID=1</link><pubDate>Mon, 03 Sep 2018 14:41:18 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1d76e19a-36d5-4d3c-8cc0-8773f2e3c6cc</guid><dc:creator>bjorn-spockeli</dc:creator><description>&lt;p&gt;HI Igor, I am not able to reproduce the behavior you&amp;#39;re seeing. Are you able to capture a&amp;nbsp;logic trace of the UART pins? Have you tried reducing the interval(--i) below 200ms?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Extremely slow DFU over UART</title><link>https://devzone.nordicsemi.com/thread/146300?ContentTypeID=1</link><pubDate>Wed, 29 Aug 2018 12:06:56 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d9881103-b945-4408-ae46-c5df96e0195b</guid><dc:creator>Igor</dc:creator><description>&lt;p&gt;I am talking about transfer of DFU image from PC to a &amp;quot;gateway&amp;quot;&amp;nbsp;nRF device over UART.&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;nrfutil dfu serial -pkg dfu_prov-1.zip -p COM16 -b 115200 -fc --mesh&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;How can this command take 1 hour to execute?!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Edit&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;nrfutil dfu serial -pkg dfu_prov-1.zip -p COM16 -b 115200 -i 200 -fc -m&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;This&amp;nbsp;reduces&amp;nbsp;time from 68 min to 27 min. But this is still VERY slow just to copy 123 KB over serial. Why?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Extremely slow DFU over UART</title><link>https://devzone.nordicsemi.com/thread/146278?ContentTypeID=1</link><pubDate>Wed, 29 Aug 2018 11:07:53 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:851caf6d-58e6-4910-bc20-d3fc0c6195cf</guid><dc:creator>bjorn-spockeli</dc:creator><description>&lt;p&gt;Hi Igor,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;are you talking about the serial transfer of the DFU image or the BLE transfer to the rest of the mesh devices?&lt;/p&gt;
&lt;p&gt;Best regards&lt;/p&gt;
&lt;p&gt;Bj&amp;oslash;rn&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>