Sorry, you need to enable JavaScript to visit this website.

Windrvr6 not detecting JTAG with Ubuntu 12.04 or Windows 7

Unsolved
3 posts / 0 new
oriol's picture
oriol
Junior(0)
Windrvr6 not detecting JTAG with Ubuntu 12.04 or Windows 7

Hi,

I spent some days trying to make Impact detect the JTAG cable.

I started with Ubuntu 12.04. First I had to reinstall to the Embedded version, because if not the ARM toolchain is not installed (and the provided by Xilinx has a different name that SDK does not recognize, and configuring Eclipse can be a nightmare).

When SDK was working fine, I could not make it detect the JTAG cable. As somebody commented in this forum, Windrvr6 install silently fails because it does not support the Linux kernel 3.2.

My Ubuntu 12.04 detects both USB devices correctly, the output of lsusb is:

Bus 001 Device 016: ID 04b4:0008 Cypress Semiconductor Corp.
Bus 001 Device 017: ID 0403:6014 Future Technology Devices International, Ltd FT232H Single HS USB-UART/FIFO IC

I tried all the possible workarounds:

- Fixing the Windrvr6 install scripts. I gave up, the script became outdated since Linux 2.6.19 or so.
- Installing the Digilent's drivers. They only support ISE up to version 13, not 14.1, and Impact strongly rejects them.
- Using opensource drivers, like libusb or the old driver by Michael Gernoth. Apparently none of them recognize this board, maybe it is too new.

Then I decided to run the Xilinx tools on a virtual Windows 7 machine, using a VMware Workstation. I connected the USB devices to the virtual machine. Windows detects one of them as a Digilent's device. But that's all.

Under Windows, Impact does not detect the cable. 'Cable Auto Connect' shows this message when trying to open a USB device:

Checking cable driver.
Source driver files not found.
The Platform Cable USB is not detected. Please connect a cable.If a cable is connected, please disconnect
and reconnect to the usb port, follow the instructions in the 'Found New Hardware Wizard', then retry
the Cable Setup operation.
Cable connection failed.

Somebody posted that he could make it work under Ubuntu 12.04 with an ISE 14.1. If he could explain the experience, it would be really helpful for the community. I don't want to switch to Windows to run the tools.

I would thank any ideas or suggestions. Is there something very basic that I am missing, like installing a software or setting some obscure jumpers to the correct position? Should the board work out-of-the-box with a fresh Xilinx ISE 14.1 install?

Thanks,

Oriol

oriol's picture
oriol
Junior(0)
Solved

Finally I solved the problem. I tried one of the methods proposed in this page:

http://tingcao.wordpress.com/2012/05/11/install-xilinx-cable-drivers-on-...

In particular, the section called "Install Digilent Onboard Plugin Driver and Adept Driver for HS1". The command is as follows:

$> cd $XILINX/bin/lin64/digilent
$> sudo ./install_digilent.sh
<say yes to all>

Then, when trying to connect to the FPGA, as explained in the next section "Connect FPGA Device via Digilent HS1", the libusb will complain about write access to the USB device:

$> xmd
Xilinx Microprocessor Debugger (XMD) Engine
...
XMD%
XMD% connect mb mdm
libusb couldn't open USB device /dev/bus/usb/001/004: Permission denied.

By default, the kernel creates a USB device in /dev with RO access. To fix this, a new udev rule must be added with this command:

SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6014", GROUP="users", MODE="0666"

My ZedBoard has this Vendor:Product pair, but you should check yours with the lsusb command.

Hope this helps other people. With this and ISE Embedded Edition, the Hello World tutorial went smooth and "Hello World" appeared in my minicom terminal.

Oriol

jhemsing's picture
jhemsing
Junior(1)
Zedboard USB

Thank you, oriol. I was unable to program without adding these udev rules.

I am running Debian Wheezy as guest OS on vmware player 5.0.2.

I was getting varying segfaults from iMPACT until I chown-ed the entire /opt/Xilinx tree to my non-root user.