Retarget Project Workflow#

Most developers begin their evaluations and firmware development with our development boards but eventually transition to custom hardware. To support this, Silicon Labs provides developers with tools and resources to seamlessly retarget example applications for their own custom boards based on the same or similar device OPN.

  • For developers aiming to run a Silicon Labs SDK example application on their custom board.

  • For developers who have prototyped an application using a Silicon Labs development kit and wish to migrate their project to a custom board with the same or a similar target device.

Retarget Project workflowRetarget Project workflow

  1. Search for a Silicon Labs Development Kit based on the same or similar target device as what’s on the custom board.

    Silicon Labs boards are typically designed with superset target devices to maximize coverage, providing developers access to features such as additional pins, increased memory, enhanced peripherals, and expanded system capabilities. For custom board designs using devices within the same device family, the retargeting workflow supports transitions between superset and subset devices.

  2. Create a project based on the desired example for the Silicon Labs Development Kit.

  3. From Studio Project Configurator, retarget the board and target device.

    • Retargeting projects from Silicon Labs board examples utilizes the board configuration, software components, and drivers (e.g., LEDs, buttons, HFXO, LFXO, RF front-end, sensors) inherited from the original Silicon Labs board. This approach carries over the board support configuration to the custom board project, eliminating the need for manual BSP creation with the Pintool, provided the custom board's pin configuration matches the Silicon Labs board. If the pin configuration differs, such as an LED being assigned to a different pin, the developer must update the configuration using the Pintool based on the custom board's schematics.

  4. Resolve any misconfigurations (e.g. pin definitions) that may have resulted from the migration.

    • When retargeting to a target device with a different pinout (fewer or additional pins), the developer must resolve the pin differences based on the custom board schematic.

    • When retargeting to a target device with the same hardware features (e.g., peripherals, power modes, and memory), the configuration from the original example is retained. However, when retargeting to a device with fewer hardware features, resulting in the loss of a peripheral, the developer must manually address unsupported components to prevent build failures.

    • When retargeting to a target device with different memory density, the project configurator will modify and define the Linker file accordingly.

The example app's system behavior and performance should remain consistent with the original, provided the custom board's hardware matches that of the Silicon Labs board. Developers can generate a Project Configuration Report to summarize installed board components and verify the project's configuration.