PYNQ-Z2 is a FPGA development board, intensively designed to support PYNQ, an open-source framework that enables embedded programmers to explore the possibilities of Xilinx ZYNQ SoCs without having to design programming logic circuits. Benefiting from programmable logic and advanced ARM processor in ZYNQ, designers can build up more powerful embedded systems with it.


Join us for a hands-on workshop with and who will share their journey using the PYNQ-Z2 board.  Over the course of three sessions, you'll learn everything you need to know to get started and build a simple project.  No experience required.




Python is one of the most popular languages in the world, being used for embedded, host and cloud application development thanks to its ease of use. Programmable Logic provides the ability to implement very high performance algorithms, traditionally at the cost of complexity of design.


PYNQ fuses the productivity and ease of use of Python with the acceleration provided by Programmable Logic, without the need to be an digital design engineer. This series of three workshops is going to provide attendees with a comprehensive training on PYNQ -- beginning with an introduction to key concepts, techniques before advancing to creating custom applications.



This webinar is free for all to attend.  However, to follow along and participate you will need the following Hardware:



Buy KitBuy Kit


You'll need the following software:



Optional examples that can be installed on the PYNQ board:

Not needed, but excellent



For the Scroll Wheel Project:



Buy KitBuy Kit


Schema for the rotary encoder, can be made on the breadboard:




Session 3:


In the third workshop, we go more in-depth in the design mechanism and process, based on Vivado suite. Creating a third experiment with the Xilinx Pynq-Z2 we will explore the VHDL language components and some of the Vivado features like the AND/OR and other logic blocks. Then we will access the Python side not only to test the experiment but also to create a unit testing for the VHDL design. We also will introduce and present a series of very useful scripts developed by Jan in TCL language to simplify some FPGA design process automatic the most boring aspects like creating a new project..




Dates and Register for Free:


Workshop:Dates and Missions:

Session 1 – From Board Architecture to Python and Jupyter Notebook


What You'll Learn:

  • Introduction to FPGA and Xilinx Pynq-Z2 Architecture
  • Xilinx Pynq-Z2 Board Components
  • A Linux Machine to Control the FPGA Logic
  • Bash shell and Python On-board

Tuesday, 28th of September 2021


Session 2 – FPGA Design and Programming


What You'll Learn:


  • A Glossary Explained: FPGA Essentials
  • FPGA Development Frameworks
  • Preparing and Installing the Tools: Vivado 2020.1
  • VHDL language
  • Do and Don’t With FPGA

Wednesday, 13th of October 2021


Session 3 - FPGA Design Examples in Practice


What You'll Learn:


  • TBD

Thursday 28th of October 2021


  • Register Above for Free!




Previous PYNQ Workshops / Webinars:



PYNQ Projects:



This workshop is based on the following PYNQ-Z2 Experiments:



Pynq - Zync - Vivado series
Add Pynq-Z2 board to Vivado
Learning Xilinx Zynq: port a Spartan 6 PWM example to Pynq
Learning Xilinx Zynq: use AXI with a VHDL example in Pynq
VHDL PWM generator with dead time: the design
Learning Xilinx Zynq: use AXI and MMIO with a VHDL example in Pynq
Learning Xilinx Zynq: port Rotary Decoder from Spartan 6 to Vivado and PYNQ
Learning Xilinx Zynq: FPGA based PWM generator with scroll wheel control
Learning Xilinx Zynq: use RAM design for Altera Cyclone on Vivado and PYNQ
Learning Xilinx Zynq: a Quadrature Oscillator - 2 implementations
Learning Xilinx Zynq: a Quadrature Oscillator - variable frequency
Learning Xilinx Zynq: Hardware Accelerated Software
Automate Repeatable Steps in Vivado
Learning Xilinx Zynq: Try to make my own Accelerated OpenCV Function - 1: Vitis HLS
Learning Xilinx Zynq: Try to make my own Accelerated OpenCV Function - 2: Vivado Block Design
Learning Xilinx Zynq: Logic Gates in Vivado
Learning Xilinx Zynq: Interrupt ARM from FPGA fabric
Learning Xilinx Zynq: reuse and combine components to build a multiplexer




The Presenter:

, element14 Community Member, element14 Community Member

Born in Turin, Italy. I have always had a special interest in electronics and communication. I had the chance to start working in the era of the first Personal Computers, just few years before their massive introduction, and very soon I started acquiring knowledge about hardware and software. I developed researches, patented hardware and software-integrated technologies, wrote technical articles on several technical papers in Italy and more. During the last decade I developed software and firmware for embedded devices, new products for Android, Mac and Linux. Before the Android massive diffusion, I had been developing software as Nokia developer focusing my experience on the Qt development platforms on desktops and Symbian devices. My approach to Electronics and circuit projects involving hardware and circuit creation is strongly oriented to microcontrollers, from small devices to the computer-like micro as the well-known ARM processors family. I definitely avoid two things: redundance (i.e. making projects more complex than can be done) and excess of complexity (i.e. a great solution should be simple and cheap, otherwise it is not a great solution). For this reasons I frequently rethink projects or create new ones in order to make products and prototypes market-affordable and as cheap as possible without compromising quality. Five years ago I moved to Ibiza (Balearic Islands, Spain) where I currently live and work.

Jan's professional skill set focuses on process integration, development methodologies, and application life cycle, He has 20+ years of experience with ERP, CRM and E-Commerce systems, as delivery manager, technology lead, integration architect, project lead, analyst and developer.


Jan has been active in the Chemicals, Public Transport, and Government sector, in Belgium, the United Kingdom, Germany, France, South-Africa, Greece, Poland, Spain and Russia. Jan is Development & Integration manager for PepsiCo. Jan is moderator at


Industrial and automotive electronics, microcontroller designs for functional safety, and maintainable software management.


30 years active in chemicals, pharmacy, rail, automotive and Food& Beverages