meta data for this page
  •  

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
embedded:nordic:approtect [2024/11/06 11:55] – created niziakembedded:nordic:approtect [2024/11/07 09:59] (current) niziak
Line 11: Line 11:
  
   * [[https://devzone.nordicsemi.com/f/nordic-q-a/96590/how-to-disable-approtect-permanently-dfu-is-needed|How to disable APPROTECT permanently? DFU is needed]]   * [[https://devzone.nordicsemi.com/f/nordic-q-a/96590/how-to-disable-approtect-permanently-dfu-is-needed|How to disable APPROTECT permanently? DFU is needed]]
-    https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/working-with-the-nrf52-series-improved-approtect+  * [[https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/working-with-the-nrf52-series-improved-approtect|Working with the nRF52 Series' improved APPROTECT]]
  
  
Line 21: Line 21:
 Summary: Summary:
   * due to [[https://docs.nordicsemi.com/bundle/errata_nRF52840_Rev3/page/ERR/nRF52840/Rev3/latest/config_840_249.html#config_840_249|[249]]] APPROTECT is enabled by default after startup   * due to [[https://docs.nordicsemi.com/bundle/errata_nRF52840_Rev3/page/ERR/nRF52840/Rev3/latest/config_840_249.html#config_840_249|[249]]] APPROTECT is enabled by default after startup
-    * application needs to switch off APPROTECT - it is automatically performed in NRF's startup code.+    * application needs to switch off APPROTECT - it is automatically performed in NRF's startup code: ''3rdParty/nrf5-sdk/modules/nrfx/mdk/system_nrf52.c''
     * so if flashing is interrupted due to SWD errors (speed to high) MCU will be protected.     * so if flashing is interrupted due to SWD errors (speed to high) MCU will be protected.
-  * I suspect ''nrfjprog'' is not adapted to latest changes. Usage of ''--chiperase'' and ''--verify'' cause problems. Intermediate reset between phases (-> APPROTECT enable) ?+  * I suspect ''nrfjprog'' is not adapted to latest changes. Usage of ''--chiperase'' and ''--verify'' cause problems. Intermediate reset between phases (-> APPROTECT enable) ... 
 +  * "nrfjprog's recover operation writes ''UICR.APPROTECT'' to ''HwDisabled'' and **programs a small piece of firmware** to the flash to ensure that the device continues to unlock itself at reset."
  
 ===== bypass APPROTECT ===== ===== bypass APPROTECT =====