Hi,
I’m working with an nRF52840 that supports Bluetooth Low Energy updates via MCUboot.
We want to enable APPROTECT on our production units to prevent competitors from attaching a debugger.
To do this, we run the following command:
nrfjprog --memwr 0x10001208 --val 0x00000000
with 0x10001208 being APPROTECT (access port protect)
This works as expected — once executed, the unit cannot be debugged and must be fully erased before reflashing.
So far, so good.
The issue
After enabling APPROTECT, DFU over BLE no longer works.
- Expected behavior (without APPROTECT):
Using the nRF Connect Device Manager (DFU) app, the update proceeds normally (takes a few minutes).
The device restarts afterward and shows the new firmware version.
- Observed behavior (with APPROTECT enabled):
The update starts and almost immediately completes, reporting “Success”.
However, the device does not restart, and after a manual reboot, it still runs the old firmware.
Question:
Is this intended behavior when APPROTECT is enabled?
Or should DFU updates via BLE and MCUboot still be possible even with APPROTECT active?
our updating logic is as follows: