Linux_FUT is a C application for the GNU/Linux operating system based on Trenz Electronic API commands and libusb C API to program USB FX2 microcontroller firmware and FPGA bitstreams.
Info | ||
---|---|---|
| ||
libusb and libusbx release will be officially merged from v1.0.19. These two project/libraries are already actually ("unofficially") merged. |
Linux_FUT can be downloaded from our GiiHub repository.
Note | ||
---|---|---|
| ||
Device Ids of the usb (lsusb): a C construct (#define) is used to choose between Generation 2 (DEWESoft device) and Generation 3 (Trenz Elecronic device). |
Info | ||
---|---|---|
| ||
// TE USB FX2: generation 2.0 // #define VENDOR_ID 0x0547 // #define PRODUCT_ID 0x1002 // TE USB FX2: generation 3.0 #define VENDOR_ID 0x0BD0 #define PRODUCT_ID 0x0300 |
Linux_FUT can be used (with Generation 2 and/or Generation 3 firmware) for:
Info | ||
---|---|---|
| ||
The two files needed are usb.bin and fpga.bin. In the past, they were normally packed together in a file with the extension .fwu . This file is a zip-file. To unzip it, use unzip "file.fwu". The usb.bin was delivered by the company Trenz Electronic. The fpga.bin is generated with the Xilinx ISE. |
Note |
---|
Linux_FUT cannot be used for recovery boot (Windows only) or modified recovery boot (in both case the USB FX2 microcontroller is running with Cypress VID/PID) in case writing wrong (or corrupted) firmware to EEPROM will hinder/prevent USB conncection with TE USB FX2 module. |
Writing wrong (or corrupted) firmware to EEPROM will bring the USB FX2 microcontroller to a standstill. To bring it back out of a standstill, the firmware recovery procedure differs upon the host operating system:
Under Windows, the user should instead use CyControl, CyConsole or OpenFutNet for a recovery boot. After this procedure, the user could use again Linux_FUT.
Under Linux, the user should instead use fx2loader (see also here) for a modified recovery boot. After this procedure, the user could use again Linux_FUT.
Tip |
---|
If the user is unsure about the suitability of a new firmware (wherever it is the source), it's a good idea to load it into RAM first to make sure it is not totally broken. |