FPGA, SoC, And CPLD Boards And Kits
FPGA Evaluation and Development Kits
5922 Discussions

JTAG cable naming error (Terasic blaster)

Altera_Forum
Honored Contributor II
2,560 Views

Hi all, 

I am having a few issues with when I have multiple Terasic Blasters connected to a single PC. I am scripting a download in order to automate it but have several devices connected, each is on its own Terasic Blaster. 

 

The issue I have is that when I disconnect any of them the names of all of the other change. 

 

i.e.  

TB1 --- USB-Blaster [USB-4] 

TB2 --- USB-Blaster [USB-5] 

 

disconnect TB2 

TB1 --- USB-Blaster [USB-4] 

 

reconnect TB2 

TB1 --- USB-Blaster [USB-4] 

TB2 --- USB-Blaster [USB-5] 

 

disconnect TB1 

TB2 --- USB-Blaster [usb-4] (this was 5 previously 5!!!) 

 

reconnect TB1 

TB1 --- USB-Blaster [USB-4] 

TB2 --- USB-Blaster [USB-5] 

 

I am guessing that when I do a download the script scans the USB ports and numbers them in the order they are found with no reference to the port number.....  

 

has anyone else seen this or is it me doing something silly? 

 

been beating my head against a wall trying to find work around for this so would really appreciate any help. 

G
0 Kudos
7 Replies
Altera_Forum
Honored Contributor II
347 Views

When you reconnect TB1, are you sure tb1 --- usb-blaster [usb-4]

 

Maybe windows makes USB-Blaster [USB-n] with n starting from 4 at every USB Blaster device connect/disconnect.
0 Kudos
Altera_Forum
Honored Contributor II
347 Views

Windows is reassigning the USB devices if you add another instance of the same type. One possible solution is editing the USB Blaster serial number data with the FTDI MProg tool.

0 Kudos
Altera_Forum
Honored Contributor II
347 Views

Thanks for the quick responses!! 

 

It strange but sometimes when I reconnect the Blastercables windows reinstalls the drivers. I think it started at USB-0/1 but every time I reinstall the start number increases. 

 

mmTsuchi -- Yea its definitely setting it back to USB-4...  

 

I have a theory that the USB port has an internal address and the programming tool iterates over the list of addresses and every time it finds a USB blaster it gives it the next number in the sequence (in my case starting with 4) 

 

FvM -- can you give a bit more detail on this or some links? would giving it a different serial number mean windows would recognize they were separate devices? 

 

Again thanks for your rapid responses.. 

 

G
0 Kudos
Altera_Forum
Honored Contributor II
347 Views

The cause for the numbering convention is the same as for FTDI USB COM ports. Perhaps a 'solution' to this issue can be found in FTDI app notes. 

 

http://www.ftdichip.com/support/documents/appnotes.htm 

 

For example 

 

http://www.ftdichip.com/support/documents/appnotes/an_123_how%20com%20ports_are%20allocated%20on%20driver_installation.pdf 

 

http://www.ftdichip.com/support/documents/appnotes/an_132_re-assigning_com_port_numbers_using_registry.pdf 

 

Cheers, 

Dave
0 Kudos
Altera_Forum
Honored Contributor II
347 Views

I am no expert on USB in any way but does the FTDI stuff not talk about COM ports? 

 

Does this mean that the Blasters are treated as virtual com ports? I don't think this is correct as they don't appear in the ports list. 

 

G
0 Kudos
Altera_Forum
Honored Contributor II
347 Views

 

--- Quote Start ---  

I am no expert on USB in any way but does the FTDI stuff not talk about COM ports? 

 

Does this mean that the Blasters are treated as virtual com ports? I don't think this is correct as they don't appear in the ports list. 

 

--- Quote End ---  

The USB-Blasters are implemented using FTDI FT245 devices. The FTDI driver (or perhaps the .inf file) is modified by Altera so that they look like an Altera specific device. I don't think that Altera has really changed much in the driver, since it has the same quirks as plugging in multiple FTDI devices that act as USB COM ports. 

 

The Virtual COM Port (VCP) driver option is not available for a USB-Blaster, as Altera has likely disabled that feature. You can however access the USB-Blaster's directly using the FTDI D2XX DLLs. 

 

The links to the FTDI application notes should apply equally well to the USB-Blasters. If each USB-Blaster has a unique serial number, then as FvM points out, you can likely get each USB device to show up with the same name each time. The 'unique device naming by serial number' is the same USB feature you would use to get your camera to show up as MyNikon rather than a USB drive (in Linux it can be setup as a udev rule, in windows, you use the registry). 

 

Cheers, 

Dave
0 Kudos
Altera_Forum
Honored Contributor II
347 Views

I'm not sure, if the behaviour is identical in all cases.  

 

With WinXP and the USB Blaster driver shipped with Quartus V9.0, which identifies itself as a renamed FTDI D2XX driver2.04.06, all connected USB Blasters are enumerated according to their unique serial number. All devices are reordered if an adapter is added or removed. 

 

At least USB Blasters from the same production lot seems to have identical serial numbers. For suitable handling of multiple USB Blasters, it's apparently necessary to assign unique serial numbers to each device. I'm using MProg 3.5 for this purpose, it's operation is quite intuitive in my opinion. It's recommended to save backup copies of EEPROM configuration with this tool before modifying it. 

 

All previously installed USB Blaster instances can be viewn in the registry under  

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\Vid_09fb&Pid_6001
0 Kudos
Reply