Skip navigation
> RoadTest Reviews

Digilent ARTY Z7 Dev Board - Review


Product Performed to Expectations: 9
Specifications were sufficient to design with: 10
Demo Software was of good quality: 7
Product was easy to use: 8
Support materials were available: 7
The price to performance ratio was good: 6
TotalScore: 47 / 60
  • RoadTest: Digilent ARTY Z7 Dev Board
  • Buy Now
  • Evaluation Type: Development Boards & Tools
  • Was everything in the box required?: Yes
  • Comparable Products/Other parts you considered: zedboard with AVNET HDMI FMC board (AES-FMC-HDMI-CAM-G)
  • What were the biggest problems encountered?: getting Arty Z7 to connect to internet via host pc

  • Detailed Review:

    Update: 22 Aug 2018


    The Arty Z7 is a respectable entry level zynq board suitable for user who want to do embedded vision. It has integrated HDMI input and output, making it compatible to other board that i have tried with -> Zedboard with AVNET HDMI FMC daughterboard(AES-FMC-HDMI-CAM-G, which itself cost US$250). However it will be best if its price can be cheaper. In addition it has arduino compatible connector making it possible to take in some arduino shields.

    One special feature of the Arty Z7 is that it is programmable with Python with PYNQ, itself an open source project from Xilinx. In fact the first thing i want to try is the Python interface. This makes even user with limited knowledge on HDL language can make use of FPGA. So how is this possible? Below is the essence of how it is possible which i copy from

    PYNQ provides a Python interface to allow overlays in the PL to be controlled from Python running in the PS. FPGA design is a specialized task which requires hardware engineering knowledge and expertise. PYNQ overlays are created by hardware designers, and wrapped with this PYNQ Python API. Software developers can then use the Python interface to program and control specialized hardware overlays without needing to design an overlay themselves. This is analogous to software libraries created by expert developers which are then used by many other software developers working at the application level.


    Now, my review is to try out whether it is easy or not, and since i am a new user to PYNQ i believe i will be neutral enough.


    Setting it up


    Some extra accessories that are handy is a microSD card (>=8GB), ethernet cable, and optionally DC power (7-15V). the latter is useful if you connect too many external components to the board.


    As i plan to use PYNQ with the board, the first thing is to install PYNQ image. However, the official boards supported by PYNQ does not explicitly list Arty Z7. However, after following , i discover that the setup for Arty Z1 is similar.


    I have downloaded the image as below and use Win32 Disk Imager to burn it to a 16GB microSD (8GB is minimally accepted)

    writing the PYNQ wih Win32 Disk Imager


    1) set the JP4 to SD (it fact this is the exact same step for Z1 even with the same 'JP4').

    2) set the JP5 to either power up from USB or DC jack (7-15V)

    3) insert the micro SD card with the PYNQ-Z1 image to the microSD slot beneath Arty Z7

    4) connect the USB cable linking PC to micro USB port on the board.


    after (4) the board will power up, and the DONE LED will light up as photo below

    Arty Z7 boot up with PYNQ-Z1 image

    one then can follow the tutorial on [2] on how to test Python with the board. However, please take note we need to set our laptop IP address to be static as below   (xxx can be any value between 0-255 excluding 99) and setup as subnet Mask

    my laptop has gigabit ethernet so i can connect to Arty Z7 with a normal LAN cable. Gigabit ethernet is capable to do direct connection without a router. If in unlikely event

    your laptop has an ancient none gigabit ethernet port you do need either a router or a crossover cable. After that, use a jupyter compatible browser to open up pynq:9090

    and you will see screen below. Note: in case pynq:9090 didn't wort, use

    jupyter connection to arty z7

    key in the password (default is 'xilinx') and you will get to

    pynq jupyther start screen for arty z7

    Using it

    i started by looking at the custom overlay on the [3]. At first glance, there are some interesting projects that suit my interest -> DNN and embedded vision.

    for example, ismartDNN is entry from ismart2 team who won 3rd prize in

    after looking at these great community overlays, i start to understand that PYNQ releases ship with the popular OpenCV library pre-installed.


    for new user to Jupyter like me, it is good to read through

    in fact, it is good idea to read through the material in the getting_started folder of your PYNQ accessed via the browser. The Jupyter notebook, somewhat similar to MATLAB live script, allows user

    to write script and interactively run them. Image and video is supported and this makes it possible to do embedded vision via the Jupyter notebook.



    To me it is simplest to run a different set of applications on the board to review its usefulness


    Simple IO

    This is the first time i am running PYNQ and is pleasantly surprise with its ease and the matplotlib visualization

    screenshot below shows running 4_base_overlay_iop on the pynq getting started folder

    running pynq getting started IO example 4_base_overlay_iop



    The getting started also comes with an audio example. Again the visualizations are credible and looks similar to those produced with MATLAB.

    It also plays the audio "Welcome to the PYNQ Z1 board" , well i did use a PYNQ Z1 image

    audio example on PYNQ on Arty Z7


    Embedded Vision

    The PYNQ computer vision overlays enable accelerating OpenCV components in Programmable Logic (PL). These overlays expose a subset Xilinx' xfOpenCV library (a part of Xilinx' reVISION solution) at the Python level, combined with the support for HDMI input/output. Note that webcam, stream or file based input/output remains available through the pre-installed SW OpenCV.

    To install the computer vision overlay, use putty to SSH to Arty Z7. The default login name and password are 'xilinx'.  From terminal, type the command

    $ sudo -H pip3.6 install --upgrade git+


    doing it without the computer vision overlay, i get below

    webcam acquisition



    Until now, i have being experimenting with the PYNQ python interface. In future, should try the other approaches

    Arty Z7 with MATLAB -> placeholder to be explored in future

    Arty Z7 with SDSOC -> placeholder to be explored in future



    The Arty Z7 is somewhat pricey but provide a powerful chip for embedded vision application. It also has sufficient integrated peripherals like HDMI input and output, USB for webcam.

    Being able to use Jupyter notebook means for simple proof of concept of idea, even a software engineer can handle it. This can really save time. In addition, it doesn't need Vivado licenses (so long if one can survive with the community provided overlays. Although i haven't tested it myself due to time limitation, it looks possible to performs some deep neural network inference.



    [1] setting up the board with PYNQ. don't worry although no Arty Z7 is mentioned it is similar in setup


    [3] PYNQ community

    [4] IR vision with Digilent's Arty Z7-20, a Xilinx Zynq 7020-based development board

    [5] Adam's entry on on webcam and HDMI input

    [6] sharing internet from host pc to PYNQ!topic/pynq_project/IK_Bp_aQNHI . as of writing i haven't tried on a mac. i tried with windows 10 bridging and it doesn't work


Also Enrolling

Enrollment Closes: Sep 6 
Enrollment Closes: Sep 9 
Enrollment Closes: Aug 30 
Enrollment Closes: Aug 31 
Enrollment Closes: Sep 10 
Enrollment Closes: Sep 4