[USRP-users] B210 Initialization Issue

Caceres, Earvin ECaceres at lgsinnovations.com
Thu Oct 15 12:11:47 EDT 2015


Hi Trip,

The usrp is connected to the computer when it boots. It comes up as the FX3 device using USB2. Here’s an output from dmesg after a fresh boot

[    1.301077] usb 3-1: new high-speed USB device number 2 using xhci_hcd
[    1.312644] usb 3-1: New USB device found, idVendor=2500, idProduct=0020
[    1.312647] usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[    1.312649] usb 3-1: Product: WestBridge
[    1.312650] usb 3-1: Manufacturer: Cypress
[    1.312651] usb 3-1: SerialNumber: 0000000004BE

Hitting the reset button or removing and re-inserting the USB connector didn’t seem to help. In both cases, the usrp was reset and put in the same state it was in on bootup. I ran into the same issues though when trying to run the tools to initialize the usrp.

Thanks,
Earvin

From: James Humphries [mailto:james.humphries at ettus.com]
Sent: Tuesday, October 13, 2015 3:29 PM
To: Caceres, Earvin
Cc: usrp-users at lists.ettus.com
Subject: Re: [USRP-users] B210 Initialization Issue

Hi Earvin,

Is the USRP connected to the computer when you boot?

If you press the reset button (S700 near the USB port) are you able to connect to the device after reset? If you physically disconnect/reconnect the USB connector, does this help?

-Trip

On Tue, Oct 13, 2015 at 2:58 PM, Caceres, Earvin via USRP-users <usrp-users at lists.ettus.com<mailto:usrp-users at lists.ettus.com>> wrote:
Hello,

I’ve been having an issue with getting the b210 to initialize correctly that I was hoping to get some help on. The issue seems related to the USB3 interface. The following is a description of my setup:

Centos 7 OS (CentOS Linux release 7.0.1406 Core)
UHD v 3.9.1
Powered from USB3 only (i.e. no external power)
TCXO GPSDO

I can reproduce the failure with a basic test using the init_usrp example application. When the OS boots, I run init_usrp and I see the following:

./init_usrp
linux; GNU C++ version 4.4.7 20120313 (Red Hat 4.4.7-11); Boost_105500; UHD_003.008.004-0-unknown


Creating the usrp device with: ...
-- Loading firmware image: /usr/share/uhd/images/usrp_b200_fw.hex... done

UHD Error:
    Device discovery error: EnvironmentError: IOError: Failed to read EEPROM (-1: LIBUSB_ERROR_CODE -1)
    Error: LookupError: KeyError: No devices found for ----->
    Empty Device Address

I also tried using the b2xx_fx3_utils tool to load the firmware and FPGA in two separate steps but could not get this to work either. The failure is similar:

./b2xx_fx3_utils --load-fw /usr/share/uhd/images/usrp_b200_fw.hex
linux; GNU C++ version 4.4.7 20120313 (Red Hat 4.4.7-11); Boost_105500; UHD_003.008.004-0-unknown

Device opened (VID=0x2500,PID=0x0020)
B2xx detected... Control of B2xx granted...

Loading firmware
-- Loading firmware image: /usr/share/uhd/images/usrp_b200_fw.hex... done
Device opened (VID=0x2500,PID=0x0020)
Firmware loaded
Operation complete!  I did it!  I did it!

./b2xx_fx3_utils --load-fpga /usr/share/uhd/images/usrp_b210_fpga.bin
linux; GNU C++ version 4.4.7 20120313 (Red Hat 4.4.7-11); Boost_105500; UHD_003.008.004-0-unknown

Device opened (VID=0x2500,PID=0x0020)
B2xx detected... Control of B2xx granted...

Loading firmware
-- Loading firmware image: /usr/share/uhd/images/usrp_b200_fw.hex...Exception while loading firmware: EnvironmentError: IOError: usrp_load_firmw

The dmesg output shows the following in both cases:

[    1.301155] usb 3-1: new high-speed USB device number 2 using xhci_hcd
[    1.312745] usb 3-1: New USB device found, idVendor=2500, idProduct=0020
[    1.312748] usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[    1.312750] usb 3-1: Product: WestBridge
[    1.312751] usb 3-1: Manufacturer: Cypress
[    1.312752] usb 3-1: SerialNumber: 0000000004BE
[  172.662046] usb 4-1: new SuperSpeed USB device number 2 using xhci_hcd
[  172.674419] usb 4-1: New USB device found, idVendor=2500, idProduct=0020
[  172.674422] usb 4-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  172.674423] usb 4-1: Product: USRP B200
[  172.674425] usb 4-1: Manufacturer: Ettus Research LLC
[  172.674426] usb 4-1: SerialNumber: 307B5DE

There have been some rare occasions where the b210 successfully initializes and in these cases, I’ve seen the following message in the kernel logs which seems to indicate that the FX3 device has been released during the init process:

[   31.671120] usb 3-1: USB disconnect, device number 2

If I programmatically reset the FX3 device (see http://cpansearch.perl.org/src/DPAVLIN/Biblio-RFID-0.03/examples/usbreset.c) after the firmware is downloaded to force it to disconnect, I can download the FPGA and this seems to initialize the b210 correctly. At this point I can use the rx_samples_to_file tool to do data captures.

So my workaround right now to initialize the b210 is to take the following steps in this order:


1.       Use b2xx_fx3_utils to load the firmware

2.       Programatically reset the FX3 device to disconnect it (i.e. the usb 3-1 device in the example above)

3.       Use b2xx_fx3_utils to load the FPGA

This lets us do what we need right now but I wanted to see if anyone has come across this issue or has any ideas on how to test/debug this further to clean up this process.

Thanks,
Earvin

_______________________________________________
USRP-users mailing list
USRP-users at lists.ettus.com<mailto:USRP-users at lists.ettus.com>
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ettus.com/pipermail/usrp-users_lists.ettus.com/attachments/20151015/6595288c/attachment-0002.html>


More information about the USRP-users mailing list