<?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>No &amp;quot;Execute Command&amp;quot; after &amp;quot;Calculate CRC Response</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/54572/no-execute-command-after-calculate-crc-response</link><description>I&amp;#39;m implementing the device side of the DFU-protocol (v16) (Control Point &amp;amp; Packet) using the nFR Connect Mobile as DFU Controller. In the app I select Application as file type, then my .bin-file and as init packet I select the blinky_s110_v7_1_0_ext_init</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 10 Dec 2019 10:06:49 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/54572/no-execute-command-after-calculate-crc-response" /><item><title>RE: No "Execute Command" after "Calculate CRC Response</title><link>https://devzone.nordicsemi.com/thread/224657?ContentTypeID=1</link><pubDate>Tue, 10 Dec 2019 10:06:49 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c441c4e7-df4e-4d63-8d7b-72d23619c129</guid><dc:creator>Aleksander Nowakowski</dc:creator><description>&lt;p&gt;As you&amp;#39;re not using our SDK, but writing your own bootloader, you should decide to use either legacy or secure DFU and prepare binaries that are compatible with it. You may use nrf util &lt;a href="https://github.com/NordicSemiconductor/pc-nrfutil"&gt;https://github.com/NordicSemiconductor/pc-nrfutil&lt;/a&gt; to generate valid zip files for secure DFU. For legacy DFU use branch 0.5.x instead.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: No "Execute Command" after "Calculate CRC Response</title><link>https://devzone.nordicsemi.com/thread/224655?ContentTypeID=1</link><pubDate>Tue, 10 Dec 2019 10:04:44 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c4ae1ea9-541a-433b-a4d1-374df31567b2</guid><dc:creator>Aleksander Nowakowski</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;If you&amp;#39;re using the Secure DFU from SDK 16 you should also prepare a valid binaries to be uploaded. The files you have chosen (blinky_s110_v7_1_0_ext_init.dat (16 B just as a dummy file to test with)) is not compatible with Secure DFU. It&amp;#39;s an old, legacy DFU dat file, with very different content.&lt;/p&gt;
&lt;p&gt;If you want to test DFU, you may find example HEX and ZIP files (ZIP contains BIN+DAT+manifest.json) in SDK in nRF5_SDK_16.0.0_98a08e2\examples\dfu\secure_dfu_test_images\ble\[BOARD].&lt;/p&gt;
&lt;p&gt;Flash the biggest HEX files onto your DK and then try sending one of the ZIP files from the same folder. For start I would recommend without bonds versions.&lt;/p&gt;
&lt;p&gt;Regarding the issue, why the DFU just hangs. I&amp;#39;ve noticed, that the notification (with CRC) is sent before Write Request was acknowledged. Have a look at packet 359: sending write request 0x03, followed by a notification with crc in 360, and then in 361 comes Rcvd Write Response. That should not matter for the DFU library, but in my opinion 360 and 361 should be sent in the opposite order.&lt;/p&gt;
&lt;p&gt;Also, I don&amp;#39;t know why the 357 and 358 are duplicated, but perhaps one of them was not received and the phone repeated. The reported size of init packet is 16, so only 1 packet was actually processed on the peripheral side.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: No "Execute Command" after "Calculate CRC Response</title><link>https://devzone.nordicsemi.com/thread/224612?ContentTypeID=1</link><pubDate>Tue, 10 Dec 2019 08:23:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d7f23b9f-9dde-4ddd-b57b-f9fe8c1b9add</guid><dc:creator>miktr112</dc:creator><description>&lt;p&gt;Correct, after testing with several different delays I removed them since I didn&amp;#39;t notice any difference. &lt;br /&gt;And the empty PDU are filtered out, if they can help I saved the complete log as well. &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: No "Execute Command" after "Calculate CRC Response</title><link>https://devzone.nordicsemi.com/thread/224609?ContentTypeID=1</link><pubDate>Tue, 10 Dec 2019 07:56:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:334e0f47-4748-44e2-83c9-dc00a1864c8b</guid><dc:creator>bjorn-spockeli</dc:creator><description>&lt;p&gt;Hi Mike,&amp;nbsp;&lt;br /&gt;so in the log from&amp;nbsp;November 22nd you added a 5 second delay it seems&lt;/p&gt;
&lt;p&gt;&lt;span&gt;A&amp;nbsp;&amp;nbsp; &amp;nbsp;16:24:59.576&amp;nbsp;&amp;nbsp; &amp;nbsp;[DFU] Command object sent (CRC = 61066AB5)&lt;/span&gt;&lt;br /&gt;&lt;span&gt;V&amp;nbsp;&amp;nbsp; &amp;nbsp;16:24:59.576&amp;nbsp;&amp;nbsp; &amp;nbsp;[DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50&lt;/span&gt;&lt;br /&gt;&lt;span&gt;D&amp;nbsp;&amp;nbsp; &amp;nbsp;16:24:59.576&amp;nbsp;&amp;nbsp; &amp;nbsp;[DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50)&lt;/span&gt;&lt;br /&gt;&lt;span&gt;I&amp;nbsp;&amp;nbsp; &amp;nbsp;16:25:04.732&amp;nbsp;&amp;nbsp; &amp;nbsp;[DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-03-01-20-00-00-00-CC-4E-91-35&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;and in the Wireshark trace its about 1 second between the Master sending the Calculate CRC request and the Slave replying with the CRC value in the notification. So neither the 1 second and 5 second delay resolved the issue. Correct?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;And you have also filtered out empty PDUs right?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;a href="https://devzone.nordicsemi.com/members/afnowakowski"&gt;Aleksander Nowakowski&lt;/a&gt;: Any ideas?&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: No "Execute Command" after "Calculate CRC Response</title><link>https://devzone.nordicsemi.com/thread/223801?ContentTypeID=1</link><pubDate>Thu, 05 Dec 2019 09:06:06 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2f0b4437-a6bc-450a-818a-a19f911d8f83</guid><dc:creator>miktr112</dc:creator><description>&lt;p&gt;I&amp;#39;ve captured the frames using the sniffer now, the dfu sequence of the init packet can be seen at the very end of the file. &lt;br /&gt;&lt;br /&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/dfu_5F00_log_5F00_2019_2D00_12_2D00_05_5F00_filtered.pcapng"&gt;devzone.nordicsemi.com/.../dfu_5F00_log_5F00_2019_2D00_12_2D00_05_5F00_filtered.pcapng&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: No "Execute Command" after "Calculate CRC Response</title><link>https://devzone.nordicsemi.com/thread/221633?ContentTypeID=1</link><pubDate>Fri, 22 Nov 2019 15:36:06 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f4c9fac8-20fa-448d-ad8e-e54683bcc63e</guid><dc:creator>miktr112</dc:creator><description>&lt;p&gt;I don&amp;#39;t have a dedicated analyzer but I&amp;#39;ve ordered the NRF52 DK to be able to sniff the air traffic. &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: No "Execute Command" after "Calculate CRC Response</title><link>https://devzone.nordicsemi.com/thread/221631?ContentTypeID=1</link><pubDate>Fri, 22 Nov 2019 15:29:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:08a91453-2f7c-4f7f-bf54-a27da928844c</guid><dc:creator>Aleksander Nowakowski</dc:creator><description>&lt;p&gt;Thanks. I&amp;#39;ll have a look at it in Monday.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: No "Execute Command" after "Calculate CRC Response</title><link>https://devzone.nordicsemi.com/thread/221628?ContentTypeID=1</link><pubDate>Fri, 22 Nov 2019 15:27:08 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:98f0df72-f9c4-470c-94a2-25b37af7004e</guid><dc:creator>miktr112</dc:creator><description>&lt;p&gt;That log was from before I added the huge delay. &lt;br /&gt;&lt;br /&gt;See new log below: &lt;br /&gt;&lt;br /&gt;A&amp;nbsp;&amp;nbsp; &amp;nbsp;16:24:59.576&amp;nbsp;&amp;nbsp; &amp;nbsp;[DFU] Command object sent (CRC = 61066AB5)&lt;br /&gt;V&amp;nbsp;&amp;nbsp; &amp;nbsp;16:24:59.576&amp;nbsp;&amp;nbsp; &amp;nbsp;[DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50&lt;br /&gt;D&amp;nbsp;&amp;nbsp; &amp;nbsp;16:24:59.576&amp;nbsp;&amp;nbsp; &amp;nbsp;[DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50)&lt;br /&gt;I&amp;nbsp;&amp;nbsp; &amp;nbsp;16:25:04.732&amp;nbsp;&amp;nbsp; &amp;nbsp;[DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-03-01-20-00-00-00-CC-4E-91-35&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: No "Execute Command" after "Calculate CRC Response</title><link>https://devzone.nordicsemi.com/thread/221624?ContentTypeID=1</link><pubDate>Fri, 22 Nov 2019 15:20:23 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d766c481-4a05-4311-98d0-27e709a16d2d</guid><dc:creator>Aleksander Nowakowski</dc:creator><description>&lt;p&gt;From the kids you posted above there is just 140ms from when you send 0x03 and the received notification is printed. See last 2 lines of the log.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: No "Execute Command" after "Calculate CRC Response</title><link>https://devzone.nordicsemi.com/thread/221622?ContentTypeID=1</link><pubDate>Fri, 22 Nov 2019 15:16:45 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:054a2379-3c71-45d5-94c2-68558eb64356</guid><dc:creator>miktr112</dc:creator><description>&lt;p&gt;Packet characteristic property is set to Write Without Response + Notify.&amp;nbsp; &lt;br /&gt;&lt;br /&gt;Connection Interval is set to:&lt;br /&gt;min_int = 20 ms &lt;br /&gt;max_int = 40 ms&lt;br /&gt;timeout = 400 ms. &lt;br /&gt;&lt;br /&gt;The delay before sending the notification is set to 5 seconds (huge i guess). &lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: No "Execute Command" after "Calculate CRC Response</title><link>https://devzone.nordicsemi.com/thread/221599?ContentTypeID=1</link><pubDate>Fri, 22 Nov 2019 14:19:46 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8c5ddaa6-d254-4de6-a8d9-f3a48bc4d212</guid><dc:creator>bjorn-spockeli</dc:creator><description>&lt;p&gt;Also a on-air trace that shows the communication between the DFU controller and the DFU target would be usefull. THat way we can compare the timing of our implementation versus yours.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;You can use our &lt;a href="https://www.nordicsemi.com/Software-and-Tools/Development-Tools/nRF-Sniffer-for-Bluetooth-LE"&gt;nRF Sniffer &lt;/a&gt;Plugin in Wireshark and a NRF52 DK to capture the trace if you do not have a dedicated Bluetooth Protocol Analyzer, e.g. Ellisys&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: No "Execute Command" after "Calculate CRC Response</title><link>https://devzone.nordicsemi.com/thread/221596?ContentTypeID=1</link><pubDate>Fri, 22 Nov 2019 14:16:04 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9dc86e61-5374-4174-b2f3-551765d71fc1</guid><dc:creator>Aleksander Nowakowski</dc:creator><description>&lt;p&gt;How long delay did you add? Did you try something huge, just to test it?&lt;/p&gt;
&lt;p&gt;Also, are you using Write Without Response in your DFU implementation?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: No "Execute Command" after "Calculate CRC Response</title><link>https://devzone.nordicsemi.com/thread/221052?ContentTypeID=1</link><pubDate>Wed, 20 Nov 2019 12:04:38 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0a2a807d-8a21-47d9-88a2-de25fbc60b72</guid><dc:creator>miktr112</dc:creator><description>&lt;p&gt;The delay didn&amp;#39;t change anything. &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: No "Execute Command" after "Calculate CRC Response</title><link>https://devzone.nordicsemi.com/thread/221051?ContentTypeID=1</link><pubDate>Wed, 20 Nov 2019 12:04:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6d33a2e2-d2b8-4a7e-81af-fa822a129634</guid><dc:creator>miktr112</dc:creator><description>&lt;p&gt;Yes, I&amp;#39;ve tried that but still same result. &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: No "Execute Command" after "Calculate CRC Response</title><link>https://devzone.nordicsemi.com/thread/221035?ContentTypeID=1</link><pubDate>Wed, 20 Nov 2019 11:21:08 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:87f18aca-69bb-4163-b2e6-21bbc1b8c11a</guid><dc:creator>bjorn-spockeli</dc:creator><description>&lt;p&gt;Ok, have you had the chance to add a delay before sending the notification (i.e. the CRC response) from the nRF side as suggested by &lt;a href="https://devzone.nordicsemi.com/members/afnowakowski"&gt;Aleksander Nowakowski&lt;/a&gt;?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: No "Execute Command" after "Calculate CRC Response</title><link>https://devzone.nordicsemi.com/thread/221032?ContentTypeID=1</link><pubDate>Wed, 20 Nov 2019 11:06:08 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:62de9fa7-cfe9-4b2f-9fdf-2809e773c6d7</guid><dc:creator>miktr112</dc:creator><description>&lt;p&gt;We saw the log entry &amp;quot;&lt;span&gt;Checksum received (Offset = %d, CRC = %08X)&amp;quot; once on a Galaxy S7, but we can&amp;#39;t reproduce this as it seems independent of log level. &lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: No "Execute Command" after "Calculate CRC Response</title><link>https://devzone.nordicsemi.com/thread/220948?ContentTypeID=1</link><pubDate>Tue, 19 Nov 2019 20:12:57 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4de732a5-fbce-45e5-91fb-f5ee5ee45e43</guid><dc:creator>miktr112</dc:creator><description>&lt;p&gt;I was also expecting the &amp;quot;Notification received&amp;quot; log entry but this behavior is constant, it is not something that happens randomly.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;I&amp;#39;m using a Samsung Galaxy S8.&amp;nbsp; (Runnning nRF Connect for Mobile 15.11.2019 - version 4.23.0)&lt;br /&gt;On the server side I&amp;#39;m not using the SDK from Nordic since I&amp;#39;m implementing for another microcontroller (esp32), but I&amp;#39;m reading the specs from 1.6.&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I&amp;#39;ve left the office but will try first thing tomorrow to add a short delay before sending the response message with the calculated CRC.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: No "Execute Command" after "Calculate CRC Response</title><link>https://devzone.nordicsemi.com/thread/220946?ContentTypeID=1</link><pubDate>Tue, 19 Nov 2019 20:03:22 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7450b0f4-1441-40a7-970f-0abad5eb1719</guid><dc:creator>miktr112</dc:creator><description>&lt;p&gt;At this point I haven&amp;#39;t tried with any other images since I never got passed transferring the init package.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: No "Execute Command" after "Calculate CRC Response</title><link>https://devzone.nordicsemi.com/thread/220920?ContentTypeID=1</link><pubDate>Tue, 19 Nov 2019 16:06:04 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6e47a21f-5534-4e3a-9aa3-dd1a7c5d54a9</guid><dc:creator>Aleksander Nowakowski</dc:creator><description>&lt;p&gt;The last line should say: &lt;span&gt;Data written to 8ec90001-f315-4f60-9fb8-838830daea50,&lt;/span&gt;v (0x): 03&lt;/p&gt;
&lt;p&gt;And should be followed by:&amp;nbsp;&lt;span&gt;Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x):&amp;nbsp;60-03-01-10-00-00-00-B5-6A-06-61&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Seems like the notification was received so quickly, that during logging the written data was already replaced by received, and the library has missed the notification. This indeed is a library issue, but as a workaround you may delay this notification a bit, or longer connection interval. Did you modify the bootloader? What SDK is it from and what phone are you using? How often this error happens?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: No "Execute Command" after "Calculate CRC Response</title><link>https://devzone.nordicsemi.com/thread/220913?ContentTypeID=1</link><pubDate>Tue, 19 Nov 2019 15:27:43 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5fef2afd-c28e-4581-bcf0-1bdca3492efb</guid><dc:creator>bjorn-spockeli</dc:creator><description>&lt;p&gt;Do you get the same behaviour when using one of the DFU test images from SDK v16.0.0?&lt;/p&gt;
&lt;p&gt;Looking at the Android DFU Library code, I find it odd that the log does not contain a log message stating that the Checksum has been received, i.e.&amp;nbsp;&lt;span&gt;Checksum received (Offset = %d, CRC = %08X) when the&amp;nbsp;Command object sent (CRC = %08X) is printed to the log, see&amp;nbsp;&lt;a href="https://github.com/NordicSemiconductor/Android-DFU-Library/blob/ebd769c55ce5ef072aaba5b1b14d60c8d5a38d58/dfu/src/main/java/no/nordicsemi/android/dfu/SecureDfuImpl.java#L432"&gt;https://github.com/NordicSemiconductor/Android-DFU-Library/blob/ebd769c55ce5ef072aaba5b1b14d60c8d5a38d58/dfu/src/main/java/no/nordicsemi/android/dfu/SecureDfuImpl.java#L432&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Will run it by the Android developer responsible for the DFU library.&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></channel></rss>