BICR file for custom boards

I'm developing a custom board that uses the nRF54H20.

The Getting Started guide for the nRF54H20DK explains how to use the pre-built BICR file and program it to the chip, but it doesn't explain how to create custom BICRs for custom boards.

In the Zephyr build logs for my application that uses a board configuration (devicetree, etc.) for my custom board, I see that it is generating its own BICR files:

-- Generated BICR hex file: C:/Users/MyName/Documents/Git/hello_world/build/hello_world/zephyr/bicr.hex

Does this mean that it's creating and flashing its own BICR files that are suitable for the custom board? Or do I need to manually create a custom BICR file and save it to the chip as detailed in the Getting Started guide?

If I need to manually create a custom BICR, is there a guide on how to do that?

Parents Reply
  • Is there documentation somewhere on the different fields in the bicr.json file, and what the potential values for those fields are?

    e.g. in the bicr.json file that is in the nRF54H20DK board files, it has:

    {
      "power": {
        "scheme": "VDDH_2V1_5V5"
      },
      "ioPortPower": {
        "p1Supply": "EXTERNAL_1V8",
        "p2Supply": "EXTERNAL_1V8",
        "p6Supply": "EXTERNAL_1V8",
        "p7Supply": "EXTERNAL_1V8",
        "p9Supply": "EXTERNAL_FULL"
      },
      "ioPortImpedance": {
        "p6ImpedanceOhms": 50,
        "p7ImpedanceOhms": 50
      },
      "lfosc": {
        "source": "LFXO",
        "lfxo": {
          "mode": "CRYSTAL",
          "accuracyPPM": 20,
          "startupTimeMs": 600,
          "builtInLoadCapacitancePf": 15,
          "builtInLoadCapacitors": true
        }
      },
      "hfxo": {
        "mode": "CRYSTAL",
        "startupTimeUs": 850,
        "builtInLoadCapacitors": true,
        "builtInLoadCapacitancePf": 14
      }
    }
    

    For "p1Supply", for example, what are the other possible options instead of "EXTERNAL_1V8"?

Children
Related