<?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>DFU OTA issue on NRF51822AA</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/7383/dfu-ota-issue-on-nrf51822aa</link><description>I&amp;#39;m trying to implement DFU-OTA (Bluetooth transport) for our custom board and currently i&amp;#39;m facing problems in flashing the different elements (softdevice, bootloader, application). I think It&amp;#39;s mostly a setup problem. 
 configuration: 
 
 Hardware</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 04 Mar 2016 09:33:36 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/7383/dfu-ota-issue-on-nrf51822aa" /><item><title>RE: DFU OTA issue on NRF51822AA</title><link>https://devzone.nordicsemi.com/thread/26253?ContentTypeID=1</link><pubDate>Fri, 04 Mar 2016 09:33:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b353f71c-8e85-409f-afdc-f2a94631dee3</guid><dc:creator>JamesPan</dc:creator><description>&lt;p&gt;It&amp;#39;s big help for me. Many thanks.
How do you know or where are the instructions for the two initial parameters:SOFTDEVICE_HANDLER_INIT(NRF_CLOCK_LFCLKSRC_RC_250_PPM_250MS_CALIBRATION, true); and SOFTDEVICE_HANDLER_INIT(NRF_CLOCK_LFCLKSRC_RC_250_PPM_2000MS_CALIBRATION, false);&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: DFU OTA issue on NRF51822AA</title><link>https://devzone.nordicsemi.com/thread/26252?ContentTypeID=1</link><pubDate>Mon, 08 Jun 2015 11:01:26 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:89f6444b-4853-4130-ac4f-b5a9f98a6216</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;@sidekick: I&amp;#39;m sorry that I forgot to check if you may not have the 32kHz crystal. Do you have that in your custom board ?
If you don&amp;#39;t you would need to do the same modification on the application firmware as well.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: DFU OTA issue on NRF51822AA</title><link>https://devzone.nordicsemi.com/thread/26251?ContentTypeID=1</link><pubDate>Fri, 05 Jun 2015 09:03:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:962be502-c30e-4a1e-b207-bca9d8773a47</guid><dc:creator>sidekick</dc:creator><description>&lt;p&gt;&lt;strong&gt;Update:&lt;/strong&gt;
Finally managed to successfully perform DFU-OTA :)
Modified ble_stack_init routine in bootloader to use LFCLK RC oscillator, 250ms  calibration interval. i.e.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;SOFTDEVICE_HANDLER_INIT(NRF_CLOCK_LFCLKSRC_RC_250_PPM_250MS_CALIBRATION, true);  
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;and ble_stack_init() routine in application:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;SOFTDEVICE_HANDLER_INIT(NRF_CLOCK_LFCLKSRC_RC_250_PPM_2000MS_CALIBRATION, false);
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Rest of the steps were the same as mentioned in my last comment (except that I used .hex file instead of .bin). reference: &lt;a href="https://devzone.nordicsemi.com/question/17037/issues-with-dfu-for-sd-v7/?comment=17157#comment-17157"&gt;this thread.&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: DFU OTA issue on NRF51822AA</title><link>https://devzone.nordicsemi.com/thread/26248?ContentTypeID=1</link><pubDate>Thu, 04 Jun 2015 12:58:55 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f7521ac0-adbe-449d-8fa4-039d6c6b6dd5</guid><dc:creator>sidekick</dc:creator><description>&lt;p&gt;&lt;strong&gt;Another DFU-OTA attempt:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Restarted both cellphone and our
custom board&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Use nRF Toolbox mobile app from
Nordic  (v 1.3.1 for samsung S3,
android v4.3) to flash application.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Select our custom board as the device
which is now advertising as &amp;quot;DFU
Targ&amp;quot; (&lt;em&gt;I must say that it is very
unstable, i&amp;#39;ve to do multiple scans
from nRF Toolbox to even find our
custom board&lt;/em&gt;)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Select &lt;strong&gt;.bin&lt;/strong&gt; file (generated using
fromelf.exe, application.bin file
size ~29kB) from internal
storage (Instead of uploading file
from Google drive)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;No init (.dat file)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Upgrade&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Result:&lt;/strong&gt; GATT ERROR or DFU SERVICE NOT FOUND ERROR&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: DFU OTA issue on NRF51822AA</title><link>https://devzone.nordicsemi.com/thread/26249?ContentTypeID=1</link><pubDate>Thu, 04 Jun 2015 12:00:19 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6a17eac2-679c-4b99-9117-d75d93fba698</guid><dc:creator>sidekick</dc:creator><description>&lt;p&gt;Reached text size limit in my previous post, hence continuing here.
Steps this time:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Erased all (using nrfjprog.exe --eraseall)&lt;/li&gt;
&lt;li&gt;Program SD ( s110 v7.1.0) using nRFgo
Studio&lt;/li&gt;
&lt;li&gt;Flash bootloader. Using KEIL uVision,
J-link and nrfjprog.exe&lt;/li&gt;
&lt;li&gt;Use nRF Toolbox mobile app from
Nordic (v 1.3.1 for samsung S3,
android v4.3) to flash application.&lt;/li&gt;
&lt;li&gt;Select our custom board as the device
which is now advertising as &amp;quot;DFU
Targ&amp;quot;&lt;/li&gt;
&lt;li&gt;Select .hex file (size ~82kB) from
Google drive&lt;/li&gt;
&lt;li&gt;No init (.dat file)&lt;/li&gt;
&lt;li&gt;Upgrade&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Result:&lt;/strong&gt; DFU FILE ERROR (2)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: DFU OTA issue on NRF51822AA</title><link>https://devzone.nordicsemi.com/thread/26247?ContentTypeID=1</link><pubDate>Thu, 04 Jun 2015 11:40:00 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:aaf9343e-c37b-4cf6-9754-e39348f5b537</guid><dc:creator>sidekick</dc:creator><description>&lt;p&gt;Thank you Hung Bui for following up on this.
As I&amp;#39;m reading more about DFU-OTA, my issue is turning multifaceted.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;I&amp;#39;m not using nRFgo Starter Kit (No
button #7 as mentioned
&lt;a href="https://developer.nordicsemi.com/nRF51_SDK/nRF51_SDK_v6.x.x/doc/6.1.0/s110/html/a00074.html#dfu_bootloader_intro_sec"&gt;here&lt;/a&gt;) to go into bootloader mode, it&amp;#39;s a
custom board and has nrf51822QFAA
SOC.&lt;/li&gt;
&lt;li&gt;Cannot use Experimental, sample PC
applications*(~/\ble_dfu_send_hex/*)
to perform device firmware update as
I do not have Master Control Panel
dongle.
Initially I wanted, SD + Bootloader + App on our custom board and perform application upgrade later, but as I&amp;#39;ve understood so far, I&amp;#39;ve to implement a logic using GPREGRET register, both in Bootloader and in our application. So currently, just to test DFU, I should not write 0x01 to 0x00003fc00 and try only with SD and Bootloader.&lt;/li&gt;
&lt;/ol&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: DFU OTA issue on NRF51822AA</title><link>https://devzone.nordicsemi.com/thread/26250?ContentTypeID=1</link><pubDate>Thu, 04 Jun 2015 09:34:42 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:fb658e20-4f8a-4e78-a641-0edbf11f43ef</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;@sidekick: It&amp;#39;s my mistake in the presentation. As shown &lt;a href="https://developer.nordicsemi.com/nRF51_SDK/nRF51_SDK_v6.x.x/doc/6.1.0/s110/html/a00081.html#ota_intro_section"&gt;here&lt;/a&gt; the init packet is optional. I will update the slide. Sorry about that.&lt;/p&gt;
&lt;p&gt;Could you explain why you want to write 0x01 to 0x00003fc00 ?&lt;/p&gt;
&lt;p&gt;With nRFLogger, after you have done a DFU session in nRFToolbox, you should see the log in the logger app. You can also try to use nRF Master Control Panel to do DFU. You can swipe right when doing it to see the log.&lt;/p&gt;
&lt;p&gt;To be able to open a file on your phone, you can try to install a File manager app. There are several of them on Goolge Play.&lt;/p&gt;
&lt;p&gt;Which phone did you use to test ?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: DFU OTA issue on NRF51822AA</title><link>https://devzone.nordicsemi.com/thread/26246?ContentTypeID=1</link><pubDate>Wed, 03 Jun 2015 15:24:49 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:06547bdb-a3db-49ad-b59e-cf62ef17a9c5</guid><dc:creator>sidekick</dc:creator><description>&lt;p&gt;Is &lt;a href="https://developer.nordicsemi.com/nRF51_SDK/nRF51_SDK_v7.x.x/doc/7.1.0/s110/html/a00062.html"&gt;this&lt;/a&gt; documentation on BLE DFU-OTA for SD v7.X.X up to date ? If yes, where can I find the experimental sample PC applications as mentioned in this tutorial ? I&amp;#39;ve nRF 51822QFAA (256 kB flash) chip on our custom board.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: DFU OTA issue on NRF51822AA</title><link>https://devzone.nordicsemi.com/thread/26245?ContentTypeID=1</link><pubDate>Wed, 03 Jun 2015 14:27:01 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9bb18a81-bc3a-4dcf-a88b-5729fd765c91</guid><dc:creator>sidekick</dc:creator><description>&lt;p&gt;&lt;strong&gt;Update:&lt;/strong&gt;
This time I Used &amp;quot;.bin&amp;quot; file (Used fromelf.exe which is part of ARM toolchain) to generate .bin file and also renamed the .bin and .dat file as application.bin and application.dat (nRF Toolbox app suggests naming them as application.(bin|hex|dat). My .dat file contents are (As seen in sublime 3 editor) is:
&amp;quot;ffff ffff ffff ffff 0100 feff f109 &amp;quot;) and invoking crc.exe on application.bin generated following: (shown here CRC value for 0xffff seed only)&lt;/p&gt;
&lt;p&gt;&lt;em&gt;CRC-CCITT (0xffff) = 0x09F1      /  2545&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Steps:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Erased all (using nrfjprog.exe)&lt;/li&gt;
&lt;li&gt;Program SD using nRF Studio&lt;/li&gt;
&lt;li&gt;Flash bootloader. Using KEIL uVision,
J-link and nrfjprog.exe&lt;/li&gt;
&lt;li&gt;Write 0x1 at the address 0x00003fc00
using nrfjprog.exe&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Device is advertising as &amp;quot;Dfu Targ&amp;quot;. Trying to flash application.bin using nRF Toobox app now gives DFU SERVICE ERROR (6) and a re-attempt gives DFU GATT INTERNAL ERROR(129) :(&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: DFU OTA issue on NRF51822AA</title><link>https://devzone.nordicsemi.com/thread/26244?ContentTypeID=1</link><pubDate>Wed, 03 Jun 2015 08:07:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:75b445c9-e6bf-4928-9f96-b00831d68998</guid><dc:creator>sidekick</dc:creator><description>&lt;p&gt;@Hung Bui: Init packet wtih SDK V6.1 is compulsory (as mentioned in the video &lt;a href="https://devzone.nordicsemi.com/blogs/683/a-quick-presentation-on-how-nrf51-dfu-works/"&gt;here&lt;/a&gt; @4:03). In my phone(Android version 4.3), when I try to add the file, I am given only two options; either to use my google drive or Dropbox to locate the file. Probably it&amp;#39;s because, I do not have Android version 4.4 on my phone as mentioned in &lt;a href="http://www.addictivetips.com/android/lesser-known-android-4-4-kitkat-features/"&gt;this external link&lt;/a&gt;. Meanwhile, I&amp;#39;ve also installed nRFLogger on my phone, but I&amp;#39;m not sure, how to use it. I also tried to supply a init file to nRFToolbox during application upload (.dat file by following the link I posted before), but I still get the same &amp;quot;DFU File Error (2)&amp;quot; error message. What does this error stands for? This same error I&amp;#39;m getting in nRFToolbox (with or without .dat file).&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: DFU OTA issue on NRF51822AA</title><link>https://devzone.nordicsemi.com/thread/26243?ContentTypeID=1</link><pubDate>Tue, 02 Jun 2015 19:51:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b589fbc4-e5b7-4fcd-a098-128720739432</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;@Pektusin: What stated in nRFToolbox was correct. You don&amp;#39;t need init packet for bootloader in SDK v6.1.&lt;/p&gt;
&lt;p&gt;I am testing here with no problem. Which hex file did you use ?&lt;/p&gt;
&lt;p&gt;Could you try with the hex file comes with the nRFToolbox located in NordicSemiconductor\board folder on your phone ?&lt;/p&gt;
&lt;p&gt;Could you install nRFLogger and find the log file of the update process (DEBUG log) and post here ?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: DFU OTA issue on NRF51822AA</title><link>https://devzone.nordicsemi.com/thread/26242?ContentTypeID=1</link><pubDate>Tue, 02 Jun 2015 13:21:12 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e4792559-959e-45e8-8fcb-3cc498b97b42</guid><dc:creator>sidekick</dc:creator><description>&lt;p&gt;I tried option 2:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Flash SD using nRFGo Studio (v1.18.0.9)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Flash Bootloader using nrfjprog.exe&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Flash the application using KEIL
uVision (no external flash utility)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Program BANK_VALID_APP(nrfjprog.exe
--memwr 0x0003fc00 --val 0x1) to 0x01&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Restarted our custom board&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Now the application is running fine. So far so good. Now when I tried to use nRF Toolbox Application for Android cellphones for DFU-OTA (there is a DFU profile in nRF toolbox application), It asked for .hex and .dat file. I selected &amp;quot;No&amp;quot; for .dat file and the Firmware upgrade failed with Error code (2). According to &lt;a href="https://devzone.nordicsemi.com/question/22586/anyone-do-successfully-dfu-ota-for-sdk701-softdevice-s110-v710/"&gt;this&lt;/a&gt; thread, .dat file is compulsory for SDK version v7.0 or v7.1, but I&amp;#39;m using SDK v6.1.0 (nrf51_sdk_v6_1_0_b2ec2e6) and Soft device version s110, v7.1.0. Do I still need to use the .dat file.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: DFU OTA issue on NRF51822AA</title><link>https://devzone.nordicsemi.com/thread/26241?ContentTypeID=1</link><pubDate>Tue, 02 Jun 2015 07:28:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:65a8fd8f-ca99-4522-a173-9c2f7fa85986</guid><dc:creator>sidekick</dc:creator><description>&lt;p&gt;Thank you Pektusin, While I go through the link that you have mentioned,  I&amp;#39;d like to inform you that, meanwhile I also tried to use &amp;quot;nrfjprog.exe&amp;quot; to program the bootloader (In Keil uVision, selected by &amp;quot;Project -&amp;gt; option for Target XYZ -&amp;gt; Utilities -&amp;gt; Use External tool for flash programming&amp;quot;), SD using nRFGo Studio and the application again using KEIL uVision but, &lt;strong&gt;without&lt;/strong&gt; using any external tool for flashing, but the result was same :(&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: DFU OTA issue on NRF51822AA</title><link>https://devzone.nordicsemi.com/thread/26240?ContentTypeID=1</link><pubDate>Mon, 01 Jun 2015 17:32:10 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b6037eae-3474-4ea7-965e-d547f4b8da83</guid><dc:creator>Pektusin</dc:creator><description>&lt;p&gt;If you&amp;#39;re flashing all three parts using Jlink, it won&amp;#39;t work as is. When starts, bootloader checks BANK_VALID_APP variable that is not set in your case.
You have few options:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Flash SD and bootloader, and write your app over DFU - bootloader will handle BANK_VALID_APP for you.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;After flashing SD, bootloader and the app, manually program BANK_VALID_APP to 0x01&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Flash SD and your app only. Your app will start, but DFU obviously won&amp;#39;t work without the bootloader.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;More details: &lt;a href="https://devzone.nordicsemi.com/blogs/685/common-faq-on-dfu/"&gt;devzone.nordicsemi.com/.../&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>