<?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>52840 USB DFU</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/59519/52840-usb-dfu</link><description>When using nrfutil to upgrade the app for 52840dongle, you can see the data shown in the figure through the USB analyzer. The highlighted one does not quite understand the meaning. A total of 69 bytes. I would like to ask the specific meaning, what should</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 27 Mar 2020 10:44:37 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/59519/52840-usb-dfu" /><item><title>RE: 52840 USB DFU</title><link>https://devzone.nordicsemi.com/thread/242070?ContentTypeID=1</link><pubDate>Fri, 27 Mar 2020 10:44:37 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b39c35a7-48e4-40b2-9bbf-4f7753004cbc</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;The init packet is created using nrfutil. You should use nrfutil to create these packets. nrfutil is open source.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;The content isn&amp;#39;t really well documented, but here are some approaches. The init packet is the .dat file in the zip file that you generate using nrfutil. You can generate init packets with different settings, and see what changes. E.g. set the application_version to different values, and see the differences in the .dat file.&lt;/p&gt;
&lt;p&gt;Here is a brief overview of the fields in the init packet:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://github.com/NordicSemiconductor/Android-nRF-Connect/blob/master/init%20packet%20handling/How%20to%20generate%20the%20INIT%20file%20for%20DFU.pdf"&gt;https://github.com/NordicSemiconductor/Android-nRF-Connect/blob/master/init%20packet%20handling/How%20to%20generate%20the%20INIT%20file%20for%20DFU.pdf&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Also, take a look in the &lt;a href="https://github.com/NordicSemiconductor/pc-nrfutil" rel="noopener noreferrer" target="_blank"&gt;nrfutil repo on github&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Basically, you don&amp;#39;t need to know what&amp;#39;s inside the init packet, which is why this information isn&amp;#39;t floating around. You need to know that you generate it with nrfutil, and that you transfer the init packet first, and then the application image. If you need more info on what the init packet contains, please refer to the nrfutil repo documentation and implementation.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Edvin&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: 52840 USB DFU</title><link>https://devzone.nordicsemi.com/thread/242028?ContentTypeID=1</link><pubDate>Fri, 27 Mar 2020 09:28:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5ec30bc7-9ce6-4375-8253-d6a55835af7f</guid><dc:creator>Meng.</dc:creator><description>&lt;p&gt;&lt;span&gt;Hi Edvin，&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;As I said at the beginning.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt; I read the DFU Protocol documentation and the Serial documentation, but I didn&amp;#39;t find anything about the init packet. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;The above only said the init packet, but did not say what the specific content is.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: 52840 USB DFU</title><link>https://devzone.nordicsemi.com/thread/242002?ContentTypeID=1</link><pubDate>Fri, 27 Mar 2020 07:56:39 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:682314c3-919b-41fc-ad8b-f6257f334e61</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;Then, as Turbo J said, the protocl is described &lt;a href="https://infocenter.nordicsemi.com/topic/com.nordic.infocenter.sdk5.v15.3.0/lib_dfu_transport.html?cp=7_5_0_3_5_2" rel="noopener noreferrer" target="_blank"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;What happens here is the transfer of the init packet. When this is done, and the CRC is calculated and it is executed, then the next step is to do the same with the firmware image, according to the message charts.&lt;/p&gt;
&lt;p&gt;So the line with the red circle is 08: Write, and the rest is payload for the init or application image (in this case init, if it is near the start), except the &amp;quot;C0&amp;quot;, which is part of the SLIP library.&lt;/p&gt;
&lt;p&gt;I recommend that you read the &lt;a href="https://infocenter.nordicsemi.com/topic/com.nordic.infocenter.sdk5.v15.3.0/lib_dfu_transport.html?cp=7_5_0_3_5_2" rel="noopener noreferrer" target="_blank"&gt;DFU Protocol&lt;/a&gt;&amp;nbsp;documentation and the &lt;a href="https://infocenter.nordicsemi.com/topic/com.nordic.infocenter.sdk5.v15.3.0/lib_dfu_transport_serial.html?cp=7_5_0_3_5_2_3" rel="noopener noreferrer" target="_blank"&gt;Serial documentation&lt;/a&gt;, both the &amp;quot;Initialization&amp;quot;, &amp;quot;Transfer of init packet&amp;quot; and &amp;quot;Tranfer of firmware image&amp;quot; sections.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: 52840 USB DFU</title><link>https://devzone.nordicsemi.com/thread/241986?ContentTypeID=1</link><pubDate>Fri, 27 Mar 2020 01:37:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f4f555b0-7db1-4cdf-9c30-3da1b6e5f47e</guid><dc:creator>Meng.</dc:creator><description>&lt;p&gt;Hi Edvin，&lt;/p&gt;
&lt;p&gt;I am talking about the data drawn by the red circle as shown in the figure, and the red circle in the lower right corner is the full version of the first packet of data.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/communityserver-discussions-components-files/4/pastedimage1585273057274v1.png" alt=" " /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: 52840 USB DFU</title><link>https://devzone.nordicsemi.com/thread/241880?ContentTypeID=1</link><pubDate>Thu, 26 Mar 2020 14:10:31 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1a5b3707-61d3-4d43-8e0b-238d0a58f63a</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;As &lt;a href="https://devzone.nordicsemi.com/members/turboj"&gt;Turbo J&lt;/a&gt; said, the DFU protocol is described on nrfutil (see the link in his first reply).&lt;/p&gt;
&lt;p&gt;Are you refering to the 21 22 23 ... packets? I am not sure, but it looks like generic &amp;quot;USB - set up connection&amp;quot; packets.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: 52840 USB DFU</title><link>https://devzone.nordicsemi.com/thread/241750?ContentTypeID=1</link><pubDate>Thu, 26 Mar 2020 09:26:59 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:aca962a0-d44f-44bb-91b7-7eff0e758488</guid><dc:creator>Meng.</dc:creator><description>&lt;p&gt;Thanks Turbo J.&lt;/p&gt;
&lt;p&gt;What does this initial packet with metadata for update consist of?&lt;/p&gt;
&lt;p&gt;We want to know how to organize this data.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: 52840 USB DFU</title><link>https://devzone.nordicsemi.com/thread/241745?ContentTypeID=1</link><pubDate>Thu, 26 Mar 2020 09:04:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c0b52f05-16fa-47a9-bdc5-a2326b5e7678</guid><dc:creator>Turbo J</dc:creator><description>&lt;p&gt;0x08 = NRF_DFU_OBJECT_WRITE&lt;/p&gt;
&lt;p&gt;That (and the following 7 Bytes transaction) is the init packet with the metadata for the update.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: 52840 USB DFU</title><link>https://devzone.nordicsemi.com/thread/241736?ContentTypeID=1</link><pubDate>Thu, 26 Mar 2020 08:23:44 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9c834314-abf5-46d4-8118-97397edd9ad4</guid><dc:creator>Meng.</dc:creator><description>&lt;p&gt;Hi Turbo J，t&lt;span&gt;hanks for your response.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;I found my problem, 0xC0 is the end of the packet.&lt;/p&gt;
&lt;p&gt;The transfer is compliant with the SLIP library.&lt;/p&gt;
&lt;p&gt;But what does the instruction I highlighted mean?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: 52840 USB DFU</title><link>https://devzone.nordicsemi.com/thread/241730?ContentTypeID=1</link><pubDate>Thu, 26 Mar 2020 08:06:28 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e351754b-a74c-44a1-8167-1558cbfc9273</guid><dc:creator>Turbo J</dc:creator><description>[quote userid="89053" url="~/f/nordic-q-a/59519/52840-usb-dfu"]Not in the official documentation.[/quote]
&lt;p&gt;That is not true: &lt;a href="https://infocenter.nordicsemi.com/topic/com.nordic.infocenter.sdk5.v15.3.0/lib_dfu_transport_serial.html?cp=7_5_0_3_5_2_3"&gt;DFU serial protocol&lt;/a&gt; description, second sentence:&lt;/p&gt;
&lt;p&gt;&amp;quot;The transport layer uses the &lt;a class="el" href="https://infocenter.nordicsemi.com/topic/com.nordic.infocenter.sdk5.v15.3.0/lib_slip.html"&gt;SLIP library&lt;/a&gt; for encoding and decoding packets.&amp;quot;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>