*PYNQ-Z2 RaspberryPi header shares 8 pins with 1 Pmod
PYNQ-Z1 and PYNQ-Z2 Board FAQ
The PYNQ-Z2, the second Zynq board officially supported by PYNQ, is now available.
What are the differences between the PYNQ-Z1 and PYNQ-Z2 boards?
The PYNQ-Z1 and PYNQ-Z2 boards share a number of similarities. They both have a Zynq 7020, 512MB DDR, 10/100/1000 Ethernet, USB, SD card boot.
The main differences are the expansion headers, and the audio systems.
The PYNQ-Z1 has 2 Pmods, an Arduino header, and ChipKit header. The PYNQ-Z2 also has 2 Pmods, and an Arduino header, but replaces the ChipKit header with a 40-pin Raspberry Pi header. (Note the Raspberry Pi header has 26 data pins connected to the PL. 8 of these pins are shared with Pmod A).
The PYNQ-Z1 has an integrated MIC with PWM input, and mono PDM audio out. The PYNQ-Z2 has a full ADI audio codec with Headphones out, Mic, and line in.
The boards also have slightly different dimensions.
Can I use the same PYNQ image with the PYNQ-Z1 and PYNQ-Z2?
The two boards are broadly pin compatible (other than the specific differences listed above) which means both boards should boot from the same PYNQ image. However, separate images are provided for the PYNQ-Z1 and PYNQ-Z2 due to the physical differences between the available audio subsystems on each board, and the addition of the Raspberry Pi header. The base overlay for each board is different, and different audio driver files, and other drivers are included in the image for each boards.
Some Overlays may check the board that is being used at runtime, or during installation. If an overlay for the PYNQ-Z1 does a runtime check for 'Pynq-Z1' it won't install/run on the PYNQ-Z2.
if (os.environ['BOARD'] =='Pynq-Z1'):
If the overlay does not use audio, it should be possible to run it on the PYNQ-Z2.
The board check can be modified as follows to add support for the PYNQ-Z2. Depending on where the check is carried out, this may need to be modified in the setup.py for the Overlay, or in the main Python code for the overlay:
if(os.environ['BOARD'] in ['Pynq-Z1','Pynq-Z2']):
Can I use the same overlays on the PYNQ-Z1 and PYNQ-Z2?
The two boards are broadly pin compatible, so unless an overlay makes use of the audio subsystem, or the RaspberryPi/ChipKit pins, it *should* work on either board. Overlay developers are encouraged to check the target board during overlay installation for compatibility.