<?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>bootloader&amp;amp;wdt</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/20111/bootloader-wdt</link><description>hello everyone： 
 do you have try to add wdt into bootloader project? 
 i add it as follow：
in the static void wait_for_events(void) function, i add two 
 if(NRF_WDT-&amp;gt;RUNSTATUS&amp;amp;0x01){	NRF_WDT-&amp;gt;RR[0]=WDT_RR_RR_Reload;} 
 static void wait_for_events</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Wed, 12 Jul 2017 09:13:34 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/20111/bootloader-wdt" /><item><title>RE: bootloader&amp;wdt</title><link>https://devzone.nordicsemi.com/thread/78306?ContentTypeID=1</link><pubDate>Wed, 12 Jul 2017 09:13:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7096730b-36a3-4445-8d75-8f77ca55aece</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi Yichen,&lt;/p&gt;
&lt;p&gt;If you reset the chip (in the application) by the watchdog reset, the GPREGRET register will be erased.&lt;/p&gt;
&lt;p&gt;You have two options:&lt;/p&gt;
&lt;p&gt;1 - Keep the WDT running, reset using soft reset. Then inside the bootloader you need to feed the dog.&lt;/p&gt;
&lt;p&gt;2 - Let the WDT trigger the reset , but then you need to write the flag to enter bootloader mode in flash instead of GPREGRET. This way you don&amp;#39;t need to handle the WDT in the bootloader.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: bootloader&amp;wdt</title><link>https://devzone.nordicsemi.com/thread/78305?ContentTypeID=1</link><pubDate>Wed, 12 Jul 2017 06:22:47 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ee6888d7-7d40-43a5-99a7-75f3f0f604cf</guid><dc:creator>yichen</dc:creator><description>&lt;p&gt;i know in the SDK9.0,i can let it DFU by set the NRF_POWER-&amp;gt;GPREGRET =BOOTLOADER_DFU_START(0xb1).and i want to use the same way in sdk12.3,but when i let NRF_POWER-&amp;gt;GPREGRET =0xb1,it reset,and start application again,not in dfu mode ..and i test i really write the NRF_POWER-&amp;gt;GPREGRET =0xb1,i printf it.(i use sdk12.3,nrf51822-QFAA),the reson is wdt.void&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;wdt_timeout_handler(void * p_context)
{
	nrf_gpio_pin_toggle(18);
	NRF_WDT-&amp;gt;RR[0]=WDT_RR_RR_Reload;
}
#define WDT_INTERVAL			           APP_TIMER_TICKS(1000,APP_TIMER_PRESCALER)

APP_TIMER_DEF(wdt_timer_id);
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;i test when i not open the wdt, it can dfu ok.the led can togle, means that the timer is work,and then, i open the wdt(#define WDT_CONFIG_RELOAD_VALUE 7000).and then ,wnen i set NRF_POWER-&amp;gt;GPREGRET =BOOTLOADER_DFU_START,and then it retart after 7 seconds.do you know the reson ?can you tell me? thank you&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: bootloader&amp;wdt</title><link>https://devzone.nordicsemi.com/thread/78300?ContentTypeID=1</link><pubDate>Thu, 02 Mar 2017 15:33:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7bac8e4e-8678-486a-acda-06d7851d4c46</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;You mean NRF_WDT-&amp;gt;RUNSTATUS is not == 1  ? Could you run in debug mode or print out and check what value it is ?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: bootloader&amp;wdt</title><link>https://devzone.nordicsemi.com/thread/78299?ContentTypeID=1</link><pubDate>Thu, 02 Mar 2017 14:05:22 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:268d501d-1ed7-4ba0-9946-f1b65d789546</guid><dc:creator>FormerMember</dc:creator><description>&lt;p&gt;maybe it is not go in this function&amp;#39;s If statement&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: bootloader&amp;wdt</title><link>https://devzone.nordicsemi.com/thread/78298?ContentTypeID=1</link><pubDate>Thu, 02 Mar 2017 14:04:22 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e72eea93-fe67-4a46-be74-b10effb5d4be</guid><dc:creator>FormerMember</dc:creator><description>&lt;p&gt;hello friend
in the DFU project , i don&amp;#39;t set WDT timeout,i only set it in the application project&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: bootloader&amp;wdt</title><link>https://devzone.nordicsemi.com/thread/78304?ContentTypeID=1</link><pubDate>Thu, 02 Mar 2017 14:01:55 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:810696c3-bec4-46ca-afcc-0dcd8abb912e</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;You can add a log or toggle an LED pin to see how often it&amp;#39;s getting to the code NRF_WDT-&amp;gt;RR[0]=WDT_RR_RR_Reload;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: bootloader&amp;wdt</title><link>https://devzone.nordicsemi.com/thread/78303?ContentTypeID=1</link><pubDate>Thu, 02 Mar 2017 14:00:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:02b435e9-7d38-4760-8803-4b9966cbe897</guid><dc:creator>FormerMember</dc:creator><description>&lt;p&gt;first i set it 2000(that mens 2second),and then i set it 5000 in application..
and in the dfu project , i only add two If statement in the static void wait_for_events(void)
if(NRF_WDT-&amp;gt;RUNSTATUS&amp;amp;0x01)
{
NRF_WDT-&amp;gt;RR[0]=WDT_RR_RR_Reload;
}&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: bootloader&amp;wdt</title><link>https://devzone.nordicsemi.com/thread/78302?ContentTypeID=1</link><pubDate>Thu, 02 Mar 2017 13:57:59 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0ecd6465-9762-4664-8012-462d15c4006e</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;How long is your WDT timeout ? If you have the connection interval too long the CPU may not wake up frequently enough to feed the dog.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: bootloader&amp;wdt</title><link>https://devzone.nordicsemi.com/thread/78301?ContentTypeID=1</link><pubDate>Thu, 02 Mar 2017 07:34:33 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f5a94693-5476-4913-87b8-57a3fee149df</guid><dc:creator>FormerMember</dc:creator><description>&lt;p&gt;i use SDK9.0 DFU (DFU-1\examples\dfu\bootloader\pca10028\dual_bank_ble_s110\arm5_no_packs)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>