From: jmiles on
> So, maybe it's just be perceived market size and/or lack of qualified
> Linux driver people.  But if they'd just document their interface, we
> could do it with libusb.  I'm too old to have the patience to reverse
> engineer this kind of stuff any more.  In the same email thread two
> years ago, I asked about documention, but they ignored that, and
> figured (correctly) that I would forget about it if I were promised a
> Linux driver a few months later.  But it's been two years since I
> asked, and a year and a half since they said it was going to be
> available.
> We've probably bought 30 or 40 of their Nexys/Nexys2 boards at work,
> but they would be a lot more useful, and I'd buy a lot more, if I
> could just use them from Linux.
> Regards,
> Pat

I've got a freeware app for Win32 that includes some public-domain
code to configure the FPGA on a Nexys2 via its USB port and
subsequently transfer data through it. Someone could port the
nexys2.cpp module used by the TI.EXE application at
to Linux with a whole lot less work than it would take to build it
from scratch. (The GPIB Toolkit setup program copies the source code
to the same directory where it installs the executables.)

Most of the work would involve porting the USB driver calls from cyusb
to libusb, rather than changing anything specific to the Nexys2
itself. Similarly, the JTAG-over-USB implementation for the Cypress
8051 core would not need to be altered. I doubt it would take a Linux-
literate C programmer more than a day or so to get it working.

No reverse-engineering was necessary, just a lot of manual-reading and
head-scratching. The Nexys2 is somewhat unique in that it comes with
full schematics that tell you how to make the Cypress USB chip talk to
the JTAG interface. Big two thumbs up to Digilent for making a board
that people can actually use to build stuff!

-- john, KE5FX