Xilinx FPGA devkit - USB driver problem

trm

Who loves you, and who do you love?
Feedback
2 (100%)
Credits
2,877CR
I've recently setup my dev environment on my Thinkpad with Win7x64 and the latest version of WebPack ISE and I can't get Windows to recognise the USB connector on my Spartan 3A dev board. It's the official Xilinx board (well, made by Diligent for Xilinx) and has previously worked fine, although not on Win7x64 (I no longer have the old dev system, so I can't rule out a random hardware death but I think that's unlikely).

When I do the WebPack install, it installs the Jungo & Xilinx drivers without problem but when I try to use iMPACT it can't find the USB target on the dev board. The LEDs on the dev board corresponding to USB don't illuminate either, which is a bit of a worry although I don't know if either is connected to the USB 5V or whether they're under control of the USB adaptor on the board - I suspect the latter.

I've found the error all over the net along with reports of general flakiness of the USB setup so I don't think it's an unfortunate H/W combination. Note that this dev board has built-in USB support so it's not the actual Xilinx Platform Cable 1 I'm using (although I have one en route so I can get around this and also program some other boards which do need a direct JTAG interface) - this is a plain USB A-B cable which I've swapped out to rule out a dodgy cable.

There is nothing in Windows to give me any clues, other than a "Windows doesn't recognise the USB device you have attached" standard error. I've reproduced this on my Win7x64 desktop too with exactly the same fault.

At the moment I'm stuck waiting for my 'proper' bootleg Xilinx Platform USB Cable 1 to turn up so I can program this via the JTAG port. I can only think of getting my logic analyser out and sniffing what's happening on the USB controller/cable on the dev board.

Any ideas or suggestions will be very welcome. I allegedly understand Windows internals so feel free to come up with any technical advice for either end of the problem
smiley4.gif


cheers
tim
 

DaveAS

User
Credits
336CR
I have Digilent's USB plug in module for the older boards and it's just as flakey. Might be the same design. If I remember rightly, something gets screwed up if you boot with it plugged in. Have you tried swapping it to another port to force Windows to redetect?

I may still have some support mails from Digilent on the subject. It was such a POS I ended up exclusively using the parallel port platform cable in the end.

--
Dave

VicViper2011-12-13 22:07:10
 

trm

Who loves you, and who do you love?
Feedback
2 (100%)
Credits
2,877CR
Thanks Vic,

I religiously followed the "install drivers, bounce box, insert connector" to make sure Win didn't try to guess and nada. Will try moving it between USB ports as I don't think I've tried that.

Certainly the info on the net supports the general flakiness of this. Thanks for the input :)

cheers
tim

PS Any chance you can program this one by giving it a hard stare?
smiley36.gif
 

DaveAS

User
Credits
336CR
trm said:
Thanks Vic,

I religiously followed the "install drivers, bounce box, insert connector" to make sure Win didn't try to guess and nada. Will try moving it between USB ports as I don't think I've tried that.

Certainly the info on the net supports the general flakiness of this. Thanks for the input :)

cheers
tim

I seem to have deleted or lost all my old Digilent emails unfortunately, so anything else is based on vague memories from about 7 years ago. I'm pretty sure "lights out" on the separate module meant the firmware in the EZ-USB chip was trashed and I did have to send one back for replacement at one point. Digilent treat the USB programming interface as a trade secret and won't give out the firmware. The USB portion of the PCB layout is even censored in the schematics for the 3E board.

trm said:
Thanks Vic,

PS Any chance you can program this one by giving it a hard stare?
smiley36.gif

Sure, just move it closer to the window.
smiley36.gif


--
Dave
 

DaveAS

User
Credits
336CR
Oh hang on... rewind. Is the new one supposed to work with the Xilinx programming software? The earlier Digilent USB solutions only worked with their "Adept" software.

[EDIT: Yep, looks like the 3A board uses a different USB setup to the other Digilent boards, making my earlier comments slightly less than useful.]

--
Dave

VicViper2011-12-14 16:30:38
 

trm

Who loves you, and who do you love?
Feedback
2 (100%)
Credits
2,877CR
Thanks for the response Dave. It is indeed meant to work with iMPACT (bundled with ISE/WebPack) to upload a bitstream directly. My scenario is that I've got the devboard jumpers setup to allow me to upload a volatile bitstream direct to the FPGA and leave the demo code in platform flash.

I'm now 99% certain the problem is sh*tty Win drivers, so I'm just going to impatiently wait for my proper Platform USB Cable (why they call it that when it's got a box of logic attached?) to turn up and then I can upload bitstream via the JTAG ports or direct to the platform flash.

I guess I'm just SOL until the cable box turns up ;( Actually I've changed my mind and am going to hack on the USB drivers for a bit - see if I can't remember windbg command set
smiley36.gif
so I can at least see what's getting polled.
 

trm

Who loves you, and who do you love?
Feedback
2 (100%)
Credits
2,877CR
What a fking faff!

Got an email alert from DHL yesterday telling me my shipment was held for duty payment at an airport only 20-ish miles from here! Instead of waiting till 2014 for the letter saying "give us dosh" I hunted around until I managed to find an online payment site (which is another story in itself - go to http://dhl.co.uk/epayments and see if you'd fancy typing your card details in!) and got the charges fixed. Earlier today DHL turned up, blew kisses at the front door and then ran off. Fortunately I'd been expecting this so the claymores around the drive slowed him down long enough for me to sign for my package.

Opened it up, breathed in a big cloud of what I hope was Chinese electronics factory air, but I suspect could be special Mongolian flu (kind of a la Simpson's episode "Marge in chains"
smiley36.gif
) and then after checking for the zillionth time that I wouldn't need to install any additional drivers, plugged the unit in...

"USB device not recognised"

As the one and only John Bud would say (in my head), "Aw bawbags!"

Waaaaay too much time since then passed as I poked around inside Windows trying to find what Dev & Vendor IDs were being offered and which were hooked to existing drivers. I poked everything I could think of and still nada. I'm sure my USB ports are probably suffering with metal fatigue due to the number of insertions and removals, and still nothing.

So eventually whilst I'm thinking of further methods of investigation, I absent-mindedly rip open the rather nasty looking USB cable that came gratis with the cable and slot that in. I know it's fruitless as I've tried two other cables, and just as I'm thinking about making a Linux ISE install so I can go libusb and get rid of the heinous error that is Jungo, I see

"Installing Xilinx Firmware Updater - OK"
"Installing Xilinx Uploader - OK" or words to that effect.

W T F ?

Tempting fate, before I even push the much awaited bitstream I swap out the cable (firmly gripping the worker in my left hand and knowing I'll never, ever let go of it) and reinsert cable A. Device not recognised. Reinsert cable B: Device not recognised. Reinsert nasty new cable: Ker-ching!

So whilst I've been writing this, I've been wondering what to do with the two "known-good that aren't actually any good" cables. Fire? Make one watch whilst I dissolve the other in nitric acid? Chuck them back in the spare cable box with no markings to indicate their dodgy status? Most likely
smiley2.gif


I've not yet tried the dev-board's USB connector with the 'new' USB cable as I really don't want to know that it was the USB cables at fault. But I'm going to for completeness, and then I'm going to make a little Christmas wreath out of the sodding things
smiley4.gif


And then I can finally push the bitstream! Maybe Father Christmas is real???
 
Top