Program custom board ID in ROM in nRF5240 with nrf sdk 16.0.0

Hi,

There is one board level hardware change in our new board design that requires different GPIO behavior.

Is there a way to program board revision number in ROM (not cleaned by DFU process), so it can be retrieved in the firmware and used to control the firmware behavior.

If so, is there existing APIs or Tools to use?

I am thinking maybe there is some ROM programing tool/script.

SOC: nRF5240

SDK: nrf sdk 16.0.0

Thank you very much,

Parents
  • Hi,

    The 'CUSTOMER' range in the UICR (User Information Configuration Registers) consists of non-volatile registers that are suitable for storing one-time configurations, such as board revisions and serial numbers.

    Example for writing to a UICR.CUSTOMER register with the debugger:

    # Set UICR.CUSTOMER[0] register
    nrfjprog --memwr 0x10001080 --val 0x12345

    Code to read the register from the application code:

    uint32_t board_rev = NRF_UICR->CUSTOMER[0]

    Best regards,

    Vidar

Reply
  • Hi,

    The 'CUSTOMER' range in the UICR (User Information Configuration Registers) consists of non-volatile registers that are suitable for storing one-time configurations, such as board revisions and serial numbers.

    Example for writing to a UICR.CUSTOMER register with the debugger:

    # Set UICR.CUSTOMER[0] register
    nrfjprog --memwr 0x10001080 --val 0x12345

    Code to read the register from the application code:

    uint32_t board_rev = NRF_UICR->CUSTOMER[0]

    Best regards,

    Vidar

Children
No Data
Related