Reading FICR

nRF52832 Production Programming

Factory information configuration registers (FICR) are pre-programmed in the factory and cannot be erased by the user. These registers contain chip-specific information and configuration.

Using the standard SWD Arm® CoreSight™ DAP protocol:

  1. Read the CODEPAGESIZE register (0x10000010) of the FICR.
    The value of this register will contain the code memory page size in hexadecimal format, so 0x00001000 stored in this register corresponds to a page size of 4096 bytes.
  2. Read the CODESIZE register (0x10000014) of the FICR.
    The value of this register will contain the number of pages in code memory in hexadecimal format, so 0x0000080 stored in this register corresponds to 128 total pages in flash memory.
Note: Total flash memory (in bytes) = CODEPAGESIZE * CODESIZE. This information will be used later to determine the valid range of addresses to program.