<?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>nRF51 how to enable readback protection</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/25520/nrf51-how-to-enable-readback-protection</link><description>Hi, 
 I want to activate readback protection on nRF51822, in a simple project without bootloader without softdevice.
My compiler is GCC and the const uint32_t UICR_RBPCONF __attribute__((at(0x10001004))) __attribute__((used)) = 0xFFFF0000; isn&amp;#39;t compatible</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Wed, 27 Sep 2017 15:07:39 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/25520/nrf51-how-to-enable-readback-protection" /><item><title>RE: nRF51 how to enable readback protection</title><link>https://devzone.nordicsemi.com/thread/100595?ContentTypeID=1</link><pubDate>Wed, 27 Sep 2017 15:07:39 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8523b019-a730-4ca6-b3a1-67c83db89471</guid><dc:creator>RichieJH</dc:creator><description>&lt;p&gt;Using nrfjprog command line tools type &lt;code&gt;&amp;#39;nrfjprog -f nrf51 --recover&amp;#39;&lt;/code&gt; to erase the user flash memory and lift the read back protection.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF51 how to enable readback protection</title><link>https://devzone.nordicsemi.com/thread/100597?ContentTypeID=1</link><pubDate>Wed, 27 Sep 2017 15:06:59 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:08529d5a-4384-46c9-8cf6-76e31c1c7bbc</guid><dc:creator>endnode</dc:creator><description>&lt;p&gt;Oh and btw. note that there is quite trivial SWD hack published on the internet showing how to break read-back protection of nRF51 so it&amp;#39;s question what hope you put into this mechanism;) Justs another reason to move to nRF52 if you have that option...&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF51 how to enable readback protection</title><link>https://devzone.nordicsemi.com/thread/100596?ContentTypeID=1</link><pubDate>Wed, 27 Sep 2017 15:05:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:273c7715-7c0d-4ed2-8e09-f3d011c083cb</guid><dc:creator>endnode</dc:creator><description>&lt;p&gt;I believe both methods suggested by me in that old Q&amp;amp;A are 100% working. What do you mean by incompatibility? I use GCC as well, zero problems with that code sample. When it comes to erasing how exactly do you see that you &amp;quot;cannot erase&amp;quot;? Are you using Nordic tools such as nRFgo studio or NRFJPROG? They have &amp;quot;recover&amp;quot; option which will also erase the entire chip as side effect. Note that read-back protection also disables debugger so that&amp;#39;s the reason why certain JTAG/SWD commands stop working... There is a way how to recover the chip without using Nordic tools, there are some hints how to do it in SEGGER J-Flash/J-Link or OpenOCD on this forum, however using Nordic tools it&amp;#39;s so smooth that it&amp;#39;s almost wasting of time to bother with something else...&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>