Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Build an FPGA image

This page covers building a PandABlocks FPGA image with make and Vivado, producing a panda-fpga-<app>_<version>_all.ipk package ready for deployment. This is the only build route for FPGA images — Yocto/kas is not involved; the meta-panda layer only includes the resulting .ipk in the PandA system image.

For how to select and deploy the resulting bitstream on a PandA, see Choose the FPGA bitstream in the meta-panda docs.

Prerequisites

Build steps

  1. Create your build configuration by copying the example and editing it:

    cp CONFIG.example CONFIG
  2. In CONFIG, set at least:

    • APP_NAME — which app to build. Valid names are the apps/*.app.ini files without the extension, e.g.:

      APP_NAME = pandabox-no-fmc

      The first dash-separated component of the app name (e.g. pandabox) selects the target platform it is built for.

    • VIVADO (and VIVADO_VER if not using the default) — the path to your Vivado settings64.sh.

    • BUILD_DIR if you want build products somewhere other than the default.

  3. Run the build:

    make

    The default target builds the FPGA bitstream for APP_NAME and packages it, producing panda-fpga-<APP_NAME>_<version>_all.ipk in the build directory. (make ipk is equivalent; make all-ipks builds every app in apps/.)

  4. Copy the package to your PandA and install it:

    scp <build-dir>/panda-fpga-<app>_*.ipk root@<panda-ip>:/tmp/
    ssh root@<panda-ip> opkg install /tmp/panda-fpga-<app>_*.ipk

    You can also install it through the Web Admin interface — see managing packages in the meta-panda docs.

Next steps

After installing the .ipk, see Choose the FPGA bitstream to configure the PandA to load your new bitstream, or Test firmware changes for the development and test workflow.