Community
cancel
Showing results for 
Search instead for 
Did you mean: 
JHuis3
Beginner
508 Views

USB-Blaster II devices, how to distinguish?

I have multiple boards connected over usb and have multiple 09fb:6810 devices. With udev I would like to distinguish them individually.

How to do that? Since 'lsusb -v -s 09fb:' gives identical output for all of them.

Also I tried 'usbview' with the same, identical, result.

 

Thanks,

Jos

0 Kudos
7 Replies
YuanLi_S_Intel
Employee
255 Views

 

Hi Jos Huisken,

 

Can you try to use "jtagconfig -n" / "jtagconfig.exe -n" on NIOS 2 command shell? you should be able to distinguish the USB Blaster.

 

Regards,

YL

JHuis3
Beginner
231 Views

Dear Yuan,

I picked up again, after being idle for quite some time.

Thanks for your answer, it helped but I am still kind of struggling with it.  Could you explain what happens below? It looks like jtagconfig changes the usb device type/identifier?

I'm puzzled somewhat.

$ lsusb|grep Altera
Bus 002 Device 054: ID 09fb:6810 Altera
Bus 002 Device 029: ID 09fb:6010 Altera
Bus 002 Device 022: ID 09fb:6010 Altera
Bus 002 Device 108: ID 09fb:6810 Altera

$ jtagconfig -n
1) DE-SoC [2-1.1.3]
4BA00477 SOCVHPS
02D010DD 5CSE(BA4|MA4)/5CSXFC4C6

2) DE-SoC [2-1.2.3]
4BA00477 SOCVHPS
02D020DD 5CSEBA6(.|ES)/5CSEMA6/..

$ lsusb|grep Altera
Bus 002 Device 105: ID 09fb:6010 Altera
Bus 002 Device 029: ID 09fb:6010 Altera
Bus 002 Device 022: ID 09fb:6010 Altera
Bus 002 Device 104: ID 09fb:6010 Altera

$ jtagconfig -n
1) DE-SoC [2-1.1.3]
4BA00477 SOCVHPS
02D010DD 5CSE(BA4|MA4)/5CSXFC4C6

2) DE-SoC [2-1.2.3]
4BA00477 SOCVHPS
02D020DD 5CSEBA6(.|ES)/5CSEMA6/..

3) DE-SoC [2-1.2.4.2]
4BA00477 SOCVHPS
02D120DD 5CSE(BA5|MA5)/5CSTFD5D5/..

4) USB-BlasterII [2-1.1.1]
4BA00477 SOCVHPS
02D020DD 5CSEBA6(.|ES)/5CSEMA6/..
020A40DD 5M(1270ZF324|2210Z)/EPM2210
Design hash 8053C739368EBD354AB3
+ Node 00406E01 Virtual JTAG #1
+ Node 00406E7B Virtual JTAG #123

 

JohnT_Intel
Employee
214 Views

Hi,


The changes might be due to the your OS. It will depend on how your OS identify it.


JHuis3
Beginner
207 Views

I am using udev rules to do the detection. My observation is that after I run jtagconfig the device configuration changes. Can that confirmed (and explained)?

JohnT_Intel
Employee
201 Views

Hi,


I would recommend you to use jtagconfig command rather than lsusb?


JHuis3
Beginner
194 Views

My original question is how to distinguish the various boards while I am connecting them to the server.

While connecting, using udev rules, I can create devices such as /dev/tty_"uniq_name" pointing to the corresponding /dev/ttyUSB* devices. Such that I can use the name /dev/tty_"uniq_name" to connect to the board. I do this based on serial number, for instance. Similarly for the jtag (and other uart) ports.

I tried to do the same for jtag ports but I do not understand why/how the USB ids change from 09fb:6810 to 09fb:6010 after running jtagconfig. If that can be confirmed at least. I do not understand why this happens.

For tty ports the USB id is 09fb:6001 for the boards I have.

For instance for a DE1SoC:

SUBSYSTEM=="tty", SUBSYSTEMS=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", ATTRS{serial}=="A106I60D", SYMLINK+="tty_de10soc"
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="09fb", ATTRS{idProduct}=="6010", ATTRS{serial}=="DE-SoC-006-00660", SYMLINK+="jtag_de10soc"

The second device being 09fb:6010 is only present after running jtagconfig. Before that device was indicated as 09fb:6810. I also suspect (but maybe I'm wrong) one can add a device as well after programming the FPGA. I would like to be able to access such interfaces uniquely per board as well from the server.

JohnT_Intel
Employee
187 Views

Hi,


The USB ID is assign by your System OS and it is not control by the Quartus. Quartus is only finding the blaster based on the Vendor ID and not USB ID. So I am not able to help you to distinguish based on the USB ID. I would recommend you to use jtagconfig to figure out which cable is connected to which board.


Reply