Jump to content
  • 0

Impossible Nexys 3 / Adept 2 Setup - PLEASE HELP!


ho0pla

Question

Hi everyone

So I've been trying to set up my Nexys 3 (Spartan-6 FPGA) board to do some projects. I'm running a Windows 10 Host, and I've been following this "Getting Started" tutorial:
https://reference.digilentinc.com/learn/programmable-logic/tutorials/getting-started-with-fpga/start

So I installed the ISE Webpack, which gave me a VirtualBox where I have stuff like ChipScope, EDK, and Project Navigator. I was able to create a new project in the Project Navigator and generate the bit file. Now I am trying to program my board with the bit file using Adept, like the tutorial suggests - AND THIS IS WHERE EVERYTHING GOES WRONG

I am trying to get Adept on my ISE VirtualBox. I am following this tutorial:
https://techoverflow.net/2012/10/05/how-to-program-nexys3-fpga-board-on-linux-using-digilent-adept-software-a-guide-for-beginners/

I was able to install the Adept2 Runtime and Utilities using their install.sh files that come with the installation.
However, when I run "djtgcfg enum" it says "No devices found", and this is where I am completely lost.
I have no idea how to get my device recognized through my ISE VirtualBox. Now here's the extremely confusing / disorienting part:

1) Apparently Digilent Adept 2 is ONLY FOR Windows (source: https://store.digilentinc.com/digilent-adept-2-download-only/).
2) Apparently Adept software DOESNT SUPPORT VIRTUALBOX DRIVERS

So I am absolutely lost here. Apparently I can't see my Nexys 3 Board from within the ISE VirtualBox.

When I plug in my FPGA, on my Win10 host I can see the device in the "Device Manager" as a "Digilent USB Device". So i took the project0.bit I generated with the Project Navigator, passed it to my Windows Host, and ran it with Adept (the windows version) and guess what... the program didnt work lol rip
It's supposed to flash some Green LEDs in some sort of a pattern but it seems like my board is just frozen, with the 7-Seg displays being slightly lit. Definitely not what I was expecting. Im not sure what I am doing wrong, or why the ISE VirtualBox is needed at all.
There is so much inconsistency on the internet about how to program on this board it is absolutely disorienting, and this "Getting Started" tutorial does not explain absolutely anything.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

TL;DR - I am trying to run a basic program on my Nexys 3 board with Spartan 6 FPGA. I generated a project0_demo.bit using Project Navigator within the ISE VirtualBox but can't see my Nexys 3 board from within the VirtualBox, and can't get Adept on my VirtualBox either.
My Nexys 3 is recognized in my Win10 Host as "Digilent USB Device", so I passed the project0_demo.bit back to my Win10 host, and programmed it using Adept and the program did not work as intended.
What am I not understanding, and what should I be doing differently?


 

 

Link to comment
Share on other sites

8 answers to this question

Recommended Posts

8 minutes ago, jpeyron said:

Hi @ho0pla,

In linux you have to manually install the digilent cable drivers as described here .Adept 2 works for linux through command line and not with the GUI. Please attached you hdl. 

thank you,

Jon

Thanks for the tip. I will to manually install the digilent cable drivers on my ISE VirtualBox when I get home and let you know how it goes.

Link to comment
Share on other sites

Unfortunately, the install_drivers script did not properly install the cable drivers. I suspect it has something to do with windrvr6 not existing on my system.
Here is what I see when I run the script as root:
 

Spoiler

 

[root@localhost install_drivers]# ./install_drivers
--Driver versions in this package: windrvr=900, xpc4drvr=1041
--Script name = ./install_drivers
--HostName = localhost.localdomain
--Current working dir = /home/ise/spartan6_projects/install_drivers
--Script location = /home/ise/spartan6_projects/install_drivers
--Kernel version = 2.6.32-358.el6.x86_64.
--Arch = x86_64.
--Installer version = 1053
--Unsetting ARCH environment variable.
--User has root permission.
--File /lib/modules/misc/install_windrvr6 does not exist.
--Installing USB drivers------------------------------------------
--File /etc/hotplug/usb/xusbdfwu.fw/xusbdfwu.hex exists.
--File /etc/hotplug/usb/xusbdfwu.fw/xusbdfwu.hex version = 1030
--File xusbdfwu.hex exists.
--File xusbdfwu.hex version = 1030
--File xusbdfwu.hex is already updated.
--File /etc/hotplug/usb/xusbdfwu.fw/xusb_xlp.hex exists.
--File /etc/hotplug/usb/xusbdfwu.fw/xusb_xlp.hex version = 1028
--File xusb_xlp.hex exists.
--File xusb_xlp.hex version = 1028
--File xusb_xlp.hex is already updated.
--File /etc/hotplug/usb/xusbdfwu.fw/xusb_emb.hex exists.
--File /etc/hotplug/usb/xusbdfwu.fw/xusb_emb.hex version = 1028
--File xusb_emb.hex exists.
--File xusb_emb.hex version = 1028
--File xusb_emb.hex is already updated.
--File /etc/hotplug/usb/xusbdfwu.fw/xusb_xpr.hex exists.
--File /etc/hotplug/usb/xusbdfwu.fw/xusb_xpr.hex version = 2004
--File xusb_xpr.hex exists.
--File xusb_xpr.hex version = 2004
--File xusb_xpr.hex is already updated.
--File /etc/hotplug/usb/xusbdfwu.fw/xusb_xup.hex exists.
--File /etc/hotplug/usb/xusbdfwu.fw/xusb_xup.hex version = 1030
--File xusb_xup.hex exists.
--File xusb_xup.hex version = 1030
--File xusb_xup.hex is already updated.
--File /etc/hotplug/usb/xusbdfwu.fw/xusb_xp2.hex exists.
--File /etc/hotplug/usb/xusbdfwu.fw/xusb_xp2.hex version = 2300
--File xusb_xp2.hex exists.
--File xusb_xp2.hex version = 2300
--File xusb_xp2.hex is already updated.
--File /etc/hotplug/usb/xusbdfwu.fw/xusb_xse.hex exists.
--File /etc/hotplug/usb/xusbdfwu.fw/xusb_xse.hex version = 2006
--File xusb_xse.hex exists.
--File xusb_xse.hex version = 2006
--File xusb_xse.hex is already updated.
--Product ID 0007 is already in the usermap.
--Product ID 0009 is already in the usermap.
--Product ID 000d is already in the usermap.
--Product ID 000f is already in the usermap.
--Product ID 0013 is already in the usermap.
--Product ID 0015 is already in the usermap.
--Product ID 0008 is already in the usermap.
--File /sbin/fxload exists.
--Installing windrvr6---------------------------------------------
--Checking version.
--File /lib/modules/2.6.32-358.el6.x86_64/kernel/drivers/misc/windrvr6.ko
exists.
--File /lib/modules/2.6.32-358.el6.x86_64/kernel/drivers/misc/windrvr6.ko
version = 1.3
--File LINUX.2.6.32-358.el6.x86_64.x86_64/windrvr6.ko does not exist.
--Setting source version to 900.
./install_drivers: line 213: [: 1.3: integer expression expected
--File LINUX.2.6.32-358.el6.x86_64.x86_64/windrvr6.ko is already updated.
--Module windrvr6 is not running.
--Restarting module.
--No old entry in /etc/rc.local
--Did not add install_windrvr6 script to /etc/rc.local.
--install_windrvr6 rc = 0
--Installing xpc4drvr---------------------------------------------
make: Warning: File `Makefile' has modification time 1.4 s in the future
make[2]: Warning: File
`/home/ise/spartan6_projects/install_drivers/linux_drivers/xpc4drvr2_6/xpc4drvr/tmp_make/Makefile'
has modification time 1 s in the future
make[2]: warning:  Clock skew detected.  Your build may be incomplete.
make[2]: Warning: File
`/home/ise/spartan6_projects/install_drivers/linux_drivers/xpc4drvr2_6/xpc4drvr/tmp_make/Makefile'
has modification time 0.97 s in the future
make[2]: warning:  Clock skew detected.  Your build may be incomplete.
make: warning:  Clock skew detected.  Your build may be incomplete.
--Checking version.
--File /lib/modules/2.6.32-358.el6.x86_64/kernel/drivers/misc/xpc4drvr.ko
exists.
--File /lib/modules/2.6.32-358.el6.x86_64/kernel/drivers/misc/xpc4drvr.ko
version = 1041
--File xpc4drvr.ko does not exist.
--Setting source version to 1041.
--File xpc4drvr.ko is already updated.
--Module xpc4drvr is running.
--No old entry in /etc/rc.local
--Did not add install_xpc4drvr script to /etc/rc.local.
--install_xpc4drvr rc = 0
--Module windrvr6 is not running.
--Module xpc4drvr is running.
--Note: By default, the file permission of /dev/windrvr6 is enabled for the
root user only
  and must be changed to allow access to other users.

--Return code = 0

 

And then when I try to check for the devices, as root, I see the same result:

Spoiler

[root@localhost spartan6_projects]# djtgcfg enum
No devices found

Any ideas what to do? From what I've read, getting windrvr6 on the ISE Virtual Box is a very difficult and lengthy process.
I'm very surprised by how long the process of setting up this FPGA is taking, but I will try to remain strong :P

Thanks

 

Link to comment
Share on other sites

1 minute ago, jpeyron said:

Hi @ho0pla,

Are you using a usb hub? Have you checked your usb cable to make sure that it does power and data?  If not have you tried other usb cables? 

thank you,

Jon

I am using the USB-microUSB cable that came in the box with my Nexys 3 board.

Btw here's an update:
So I am able to generate the bit file using Project Navigator within the ISE Virtual Box Application.
I then pass that .bit file back to my win10 host using the shared drive, and can successfully program the FPGA using the Windows Adept application with the GUI.

However, I would like to get Adept working in the ISE VBox application just for continuity and organization purposes.
I am still not able to find the device using "djtgcfg enum".

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...