0

I am following the "Developing Zynq UltraScale+ MPSoC Hardware Technical Training Course" on Hackster.io for a basic Hello World program on my Ultra96 board.

Once I was at Lab2's end, I was supposed to launch my Hello World program on the Zynq MPSoC. However, I got this warning:

Program FPGA failed

Reason:
Could not find FPGA device on the board for connection 'Local'.

Troubleshooting hints:
1. Check whether board is connected to system properly.
1. In case of zynq board, check whether Digilent/Xilinx cable switch settings are correct.
1. If you are using Xilinx Platform Cable USB, ensure that status LED is green.**

I am working on Ubuntu and am using the SDK 2018.3. Also I use the AES-ACC-U96-JTAG board to interface via MicroUSB. So a how can I fix this issue?

Vandrey
  • 531
  • 1
  • 8
  • 23
  • You must build kernel with fpga manager support. The easiest way to get a working system is to start with a PYNQ2.6 distribution for Ultra96, it's got all the right settings already. – SK-logic Jan 25 '22 at 18:39
  • 1
    Looks like a lot of FPGA-related questions are downvoted / closed here (always by people with only web crap in their tags)... That's stackoverflow for you. As for using Pynq - it's just the regular Ubuntu 18.04 with a couple of additions and a right kernel, so tutorial will most definitely work with it. Otherwise you'll have a lot of fun building Petalinux for Ultra96. – SK-logic Jan 26 '22 at 13:48
  • P.S., ok, I see, you're not running Ubuntu on MPSoC, so it's not an fpga manager in kernel issue... There's a lot of tutorials, so hard to figure out which one you're referring to. I assume you're using Vitis and connecting to the board using usb jtag board. It's supposed to work (my setup - Vitis 2019.1 + Ubuntu 18.04, everything works fine). Can you provide a more precise error message and `lsusb` output with the board connected? Also, check your usb cable. – SK-logic Jan 26 '22 at 14:05
  • 1
    Oh alright, thank you. Yeah I already solved the issue. The drivers havent been installed automatically by the Vivado/Vitis setup, so they had to be installed manually. Pynq seems to be a nice solution, however I am currently not able to use it because of the tutorials and my companies constraints. – Vandrey Jan 26 '22 at 15:03

2 Answers2

4

The Xilinx Unified Installer does not install the USB drivers required to recognize an FPGA board on a Linux system. As such, it must be done manually after the tools have been installed.

Please refer to the following links. I solved my problem by manually installing the xilinx cable dirvers.

  1. https://digilent.com/reference/programmable-logic/guides/install-cable-drivers
  2. https://www.xilinx.com/support/documentation/user_guides/ug344.pdf
  3. https://support.xilinx.com/s/article/59128?language=en_US

Go to the location:

<Vivado Install>/data/xicom/cable_drivers/lin64/install_script/install_drivers/

sudo ./install_drivers

sudo adduser $USER dialout

VARAT BOHARA
  • 396
  • 2
  • 6
0

I was searching around the web and found this post.

Since I am on Ubuntu, I went to the standard installation path for my Vivado/SDK. It should look a bit like this:

/tools/Xilinx/SDK/2018.3/

There, I found a "cable drivers" directory:

../data/xicom/cable_drivers/lin64/install_script/install_drivers

The content of this directory should be:

52-xilinx-digilent-usb.rules
52-xilinx-ftdi-usb.rules
52-xilinx-pcusb.rules
install_digilent.sh
install_drivers
setup_pcusb
setup_xilinx_ftdi

I unplugged all my cables (the AES-ACC-U96-JTAG board) and ran this script: install_drivers.

Now I restarted the SDK, replugged my cable and tried the programming of the FPGA again, and it worked. So the solution was to just reinstall/update the drivers which are usually installed via Vivado.

I hope this helps some folks.


Short hint: The setup document for the VirtualBox of Xilinx actually mentions this.

Vandrey
  • 531
  • 1
  • 8
  • 23