<?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>about NRF_POWER-&amp;gt;GPREGRET &amp;amp; GPREGRET2</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/127350/about-nrf_power--gpregret-gpregret2</link><description>I am currently using the NRF_POWER-&amp;gt;GPREGRET and GPREGRET2 registers to store data for my custom handling under NVIC_reset . My objective is to identify the cause of a manual reset after the system resets and then execute corresponding operations accordingly</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 10 Mar 2026 13:12:00 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/127350/about-nrf_power--gpregret-gpregret2" /><item><title>RE: about NRF_POWER-&gt;GPREGRET &amp; GPREGRET2</title><link>https://devzone.nordicsemi.com/thread/562917?ContentTypeID=1</link><pubDate>Tue, 10 Mar 2026 13:12:00 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3f1edb46-9981-4b1b-97f8-65964eb6b0d4</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;H,&lt;/p&gt;
[quote user=""]Can it be confirmed that these registers will &lt;strong&gt;not be manipulated&lt;/strong&gt; by the protocol stack or other parts of the SDK?[/quote]
&lt;p&gt;Yes, the protocol stacks&amp;nbsp;like the Bluetooth stack&amp;nbsp;do not utilize GPREGRET. The only exception is the nRF5 SDK Secure Bootloader, which does use GPREGRET as part of the buttonless DFU implementation, where the application sets a magic word in GPREGRET that is read by the bootloader to know it it should enter DFU mode or start the application. See &lt;a href="https://docs.nordicsemi.com/bundle/sdk_nrf5_v17.1.0/page/lib_bootloader.html"&gt;Bootloader documentation&lt;/a&gt;.The bootlaoder also use GPREGRET2 to skip CRC check. Both these features can be disabled in the bootloader&amp;#39;s sdk_config.h (provided you do not need them), by setting&amp;nbsp;&lt;code&gt;NRF_BL_APP_CRC_CHECK_SKIPPED_ON_GPREGRET2&lt;/code&gt; and&amp;nbsp;&lt;code&gt;NRF_BL_DFU_ENTER_METHOD_GPREGRET&lt;/code&gt; to 0.&lt;/p&gt;
&lt;p&gt;Ass you mave removed this from the bootloader you use, there should be no concerns.&lt;/p&gt;
[quote user=""]Will the default value of these registers be &lt;strong&gt;0x00&lt;/strong&gt; after a power-off and subsequent power-on?[/quote]
&lt;p&gt;Yes. &lt;a href="https://docs.nordicsemi.com/bundle/ps_nrf52833/page/power.html#ariaid-title39"&gt;GPREGRET&lt;/a&gt; and &lt;a href="https://docs.nordicsemi.com/bundle/ps_nrf52833/page/power.html#ariaid-title40"&gt;GPREGRET2&lt;/a&gt;&amp;nbsp;are reset to 0x00 after a power on reset, and all other reset sources that triggers a reset of GPREGRET.&lt;/p&gt;
[quote user=""]When using the &lt;strong&gt;NVIC_system_reset()&lt;/strong&gt; function, will the values of these two registers be retained as they were before the reset?[/quote]
&lt;p&gt;Yes, this is a soft reset, and GPREGRET retains its state during a soft reset. See &lt;a href="https://docs.nordicsemi.com/bundle/ps_nrf52833/page/power.html#ariaid-title22"&gt;Reset behavior&lt;/a&gt;.&lt;/p&gt;
[quote user=""]What is the read/write endurance of the &lt;strong&gt;NRF_POWER-&amp;gt;GPREGRET&lt;/strong&gt; register? Approximately how many write/erase cycles can it withstand?[/quote]
&lt;p&gt;GPREGRET is implemented as RAM,&amp;nbsp;so there is no specified or practical limit on write cycles.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>