PYNQ is an open-source Jupyter Notebook based interactive computing framework project from Xilinx. The framework uses Python programming language and libraries, allowing electrical engineers like me to rapidly prototype designs in software and hardware domains.
PYNQ framework was available for the past few years but only made available a month ago for the Kria KV260 SOM board.
Unlike common PYNQ supported Xilinx boards installation images, Kria PYNQ installation requires three primary steps.
- Step 1: Download and install the KV260 Ubuntu image and boot to the Ubuntu-desktop.
- Step 2: Clone the PYNQ framework to the Ubuntu desktop home folder and install the framework.
- Step 3: Run the JupyterLab from the web browser.
Step 1:
- The Kria KV260 starter kit - supported Ubuntu 20.04 LTS image can be downloaded from the link: Install Ubuntu on Xilinx | Ubuntu
- Using Balena Etcher or a similar imaging application, write the download image file to an SD Card. I recommend a minimum 16GB/32GB SD Card for the best experience.
- Once SD Card is flashed and verified by Balena, insert the boot image in the card slot J11 on the Kria KV260 board. Connect an HDMI/Displayport monitor, keyboard and mouse for the Ubuntu desktop experience.
- Connect ethernet cable for internet connection and power supply to the DC jack.
- Power ON the board and wait until Kria boots into the Ubuntu login page.
- Ubuntu precompiled boot image will ask to change the default password. The default username:ubuntu, and the password:ubuntu.
- After changing the password and logging in, the Ubuntu Gnome desktop will be available for general computing use.
Since our goal is to install the PYNQ Jupyter environment, we only need to install the Xilinx system management snap package using the following code.
sudo snap install xlnx-config --classicNote: Xilinx Gstreamer package configuration. Do not use, in this instance. Installing the Gstreamer environment seems to break the PYNQ installation.
# DO NOT USE
xlnx-config.sysinitStep 2:
- Clone the PYNQ framework from GitHub using the terminal and access the PYNQ directory.
- Once in the directory, run the bash script to install the PYNQ package.
git clone https://github.com/Xilinx/Kria-PYNQ.git
cd Kria-PYNQ
sudo bash install.sh- Take a coffee break - the installation does take around 20 minutes!
Step 3:
Now you have successfully installed the PYNQ framework. You can access the PYNQ Jupyter Lab directly using the Kria desktop web browser or from another computer connected to the same subnet.
For example, the Kria board can be set up as a headless unit without connecting the monitor/keyboards.
- Access the notebook using the URL IP address or namespace. Password: xilinx
- Notebook home page and default settings. Some excellent examples can provide the basis to create some exciting projects.
I find the Kria KV260 to be an excellent board for PYNQ use. The performance is outstanding, and capabilities far exceed most comparable boards. I will be using the Kria platform to develop advanced automation solutions for machines and factories applications.











Comments