Forum Discussion
Programming DE1-SoC FPGA only from Quartus Prime Lite Edition Ubuntu 16.04
Hello, I am trying to simply program my CycloneV FPGA on the DE1-SoC board from Quartus Prime Lite in Ubuntu 16.04. I cannot seem to get it to work. The user guide says to do an auto-detect from the hardware programmer but the option is greyed out.
https://alteraforum.com/forum/attachment.php?attachmentid=15301&stc=1 I have also changed the USB configs in /etc/udev/rules.d/90-usbblaster.rules # USB-Blaster BUS=="usb", SYSFS{idVendor}=="09fb", SYSFS{idProduct}=="6001", MODE="0666" BUS=="usb", SYSFS{idVendor}=="09fb", SYSFS{idProduct}=="6002", MODE="0666" BUS=="usb", SYSFS{idVendor}=="09fb", SYSFS{idProduct}=="6003", MODE="0666" # USB-Blaster II BUS=="usb", SYSFS{idVendor}=="09fb", SYSFS{idProduct}=="6010", MODE="0666" BUS=="usb", SYSFS{idVendor}=="09fb", SYSFS{idProduct}=="6810", MODE="0666" I still can not seem to find a way to get this thing programmed.15 Replies
- Altera_Forum
Honored Contributor
jfrye@jfrye-Inspiron-5547:~$ sudo /home/jfrye/Quartus/quartus/bin/jtagconfig
[sudo] password for jfrye: No JTAG hardware available Still nothing Did some more investigating and saw this jfrye@jfrye-Inspiron-5547:~$ lsusb Bus 001 Device 005: ID 0bda:5754 Realtek Semiconductor Corp. Bus 001 Device 004: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller Bus 001 Device 003: ID 8087:07dc Intel Corp. Bus 001 Device 009: id 09fb:6810 Altera Bus 001 Device 002: ID 8087:8000 Intel Corp. Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 002 Device 002: ID 046d:c52b Logitech, Inc. Unifying Receiver Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub jfrye@jfrye-Inspiron-5547:~$ dmesg | tail [19384.983330] wlp2s0: authenticate with a0:ab:1b:75:f8:46 [19384.985620] wlp2s0: send auth to a0:ab:1b:75:f8:46 (try 1/3) [19384.987823] wlp2s0: authenticated [19384.988216] wlp2s0: associate with a0:ab:1b:75:f8:46 (try 1/3) [19384.992448] wlp2s0: RX AssocResp from a0:ab:1b:75:f8:46 (capab=0x431 status=0 aid=2) [19385.003832] wlp2s0: associated [19385.003881] IPv6: ADDRCONF(NETDEV_CHANGE): wlp2s0: link becomes ready [19411.895662] usb 1-1.3: new high-speed USB device number 9 using ehci-pci [19412.004477] usb 1-1.3: New USB device found, idvendor=09fb, idproduct=6810 [19412.004481] usb 1-1.3: New USB device strings: Mfr=0, Product=0, SerialNumber=0 That looks promising but I am not sure what exactly I have to do to make Quartus recognize the device is present to program it - Altera_Forum
Honored Contributor
Then it's not a permission problem. I'm using Gentoo, but my USB blasters are identified by their name, e.g.
usb 1-2: new high-speed USB device number 5 using ehci-pci usb 1-2: New USB device found, idVendor=09fb, idProduct=6010 usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3 usb 1-2: Product: CV SoCKit usb 1-2: Manufacturer: Altera - Altera_Forum
Honored Contributor
Unless there was a stale jtagd process left over when you were running as user jfrye.
To rule out this you could try
If that does not detect anything it might be related to the FTDI driver. Perhaps somebody with a Ubuntu 16.04 system have some input...sudo killall -9 jtagd sudo /home/jfrye/Quartus/quartus/bin/jtagconfig - Altera_Forum
Honored Contributor
I have the answer. I will provide my files
/etc/udev/rules.d/51-usbblaster.rulesSUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTR{idVendor}=="09fb", ATTR{idProduct}=="6810", MODE="0666", NAME="bus/usb/$env{BUSNUM}/$env{DEVNUM}", RUN+="/bin/chmod 0666 %c" # USB-Blaster # BUS=="usb", SYSFS{idVendor}=="09fb", SYSFS{idProduct}=="6001", MODE="0666" # BUS=="usb", SYSFS{idVendor}=="09fb", SYSFS{idProduct}=="6002", MODE="0666" # BUS=="usb", SYSFS{idVendor}=="09fb", SYSFS{idProduct}=="6003", MODE="0666" # USB-Blaster II # BUS=="usb", SYSFS{idVendor}=="09fb", SYSFS{idProduct}=="6010", MODE="0666" # BUS=="usb", SYSFS{idVendor}=="09fb", SYSFS{idProduct}=="6810", MODE="0666" /etc/udev/rules.d/altera-usb-blaster.rules
ATTR{idVendor}=="09fb", ATTR{idProduct}=="6001", MODE="666" I also copied pgm_parts.txt into the bin directory, which also has jtagd. I then ran jtagd. After that everything worked
- Altera_Forum
Honored Contributor
Glad you got it working. I would assume killing jtagd and running jtagconfig as root would have detected the USB blaster since all the udev rules are doing is changing the permissions to 666.