This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Trouble Writing nRF52832's UICR->CUSTOMER through J-Flash

Hello guys,

I have a very strange issue when working with UICR's customer register.

I am using a SEGGER Flasher Portable with J-Flash V5.10d to load a hex file (which is a merged from the SoftDevice s132 v2.0.0 and my DFU Bootloader) on our boards through the SWD interface. I used auto from the target menu, so the board will run bootloader after a successful program. Once the boot loader is running, an OTA is performed to load the application image.

The problem occurs when I add an exit step by writing the UICR register's CUSTOMER[0] (Write 32bit) and CUSTOMER[1] (also Write 32bit). After the above mentioned steps, the boot loader starts advertising, but I am unable to perform OTA DFU using Nordic's nRF Toolbox.

image description

As outlined in the attached picture, I am writing address 0x10001080, which points to the NRF_UICR->CUSTOMER[0]. The Auto process will take care of erasing, programming and verifying the hex. It then starts the application.

What am I doing wrong? Are there any extra steps required to make changes to theUICR registers?

Best, Firas

Parents
  • The Customer[0] register (at 0x10001080) is used to store the device type and revision that is checked against the values in the init packet using the --dev-revision and --dev-type options in nrfutil.

    If they match, the image is accepted. Otherwise, the image is rejected. To accept all device types and revisions and to disable the check, make sure not to set the UICR value to a specific value, but keep the default value 0xFFFF.

    Please refer this page on our Infocenter for more information on the safety checking mechanism.

    -Bjørn

Reply
  • The Customer[0] register (at 0x10001080) is used to store the device type and revision that is checked against the values in the init packet using the --dev-revision and --dev-type options in nrfutil.

    If they match, the image is accepted. Otherwise, the image is rejected. To accept all device types and revisions and to disable the check, make sure not to set the UICR value to a specific value, but keep the default value 0xFFFF.

    Please refer this page on our Infocenter for more information on the safety checking mechanism.

    -Bjørn

Children
Related