EttusResearch / gr-doa

Direction-of-Arrival (DoA) Demo for GNU Radio (OOT) with the USRP™ X-Series and TwinRX™
GNU General Public License v3.0
102 stars 52 forks source link

uhd/images/usrp_x310_fpga_HG.bit #16

Closed jose100310 closed 1 year ago

jose100310 commented 1 year ago

Issue Description

What is the version I should installed to the x310 model to work?

-- X300 initialization sequence... -- Determining maximum frame size... 1472 bytes. -- Setup basic communication... Traceback (most recent call last): File "/home/caai/gr-doa/apps/estimate_X310_TwinRX_constant_phase_offsets_and_save.py", line 80, in main() File "/home/caai/gr-doa/apps/estimate_X310_TwinRX_constant_phase_offsets_and_save.py", line 74, in main tb = top_block_cls() File "/home/caai/gr-doa/apps/estimate_X310_TwinRX_constant_phase_offsets_and_save.py", line 38, in init addresses=input_variables.RxAddr File "/usr/local/lib/python2.7/dist-packages/doa/twinrx_usrp_source.py", line 58, in init channels=range(sources), File "/usr/lib/python2.7/dist-packages/gnuradio/uhd/init.py", line 122, in constructor_interceptor return old_constructor(args) File "/usr/lib/python2.7/dist-packages/gnuradio/uhd/uhd_swig.py", line 2671, in make return _uhd_swig.usrp_source_make(args) RuntimeError: RuntimeError: Expected FPGA compatibility number 19, but got 38: The FPGA image on your device is not compatible with this host code build. Download the appropriate FPGA images for this version of UHD.

Setup Details

I ran the following:

sudo /usr/lib/uhd/utils/uhd_images_downloader.py Images destination: /usr/share/uhd/images Downloading images from: http://files.ettus.com/binaries/images/uhd-images_003.009.002-release.zip Downloading images to: /tmp/tmp8657SB/uhd-images_003.009.002-release.zip 26296 kB / 26296 kB (100%)

/usr/bin/uhd_image_loader --args="type=x300,addr=192.168.10.2" linux; GNU C++ version 5.3.1 20151219; Boost_105800; UHD_003.009.002-0-unknown

Unit: USRP X310 (3176C86, 192.168.10.2) FPGA Image: /usr/share/uhd/images/usrp_x310_fpga_HGS.bit -- Initializing FPGA loading...successful. -- Loading HGS FPGA image: 100% (121/121 sectors) -- Finalizing image load...successful.

it loaded the image into the board but I still have the same issue.

michaelld commented 1 year ago

Did you power cycle the USRP? That's required for the new FPGA image to take effect. If so, then there's a very good chance you have 2 different UHD versions installed on the host computer. There will be some text before that shown at the top (before -- X300 initialization sequence...) ... that might shed some light here.

jose100310 commented 1 year ago

Hello, I have power cycle the device. to installed uhd I only ran '''sudo apt-get install libuhd-dev uhd-host''', I dont think i have another version. I am using ubuntu 16.04, and I installed the required dependencies. when it works it just gives me:

''' Executing: /usr/bin/python -u /home/caai/Downloads/gr-doa-master/apps/estimate_X310_TwinRX_constant_phase_offsets_and_save.py

linux; GNU C++ version 5.3.1 20151219; Boost_105800; UHD_003.009.002-0-unknown

-- X300 initialization sequence... -- Determining maximum frame size... 1472 bytes. -- Setup basic communication... -- Loading values from EEPROM... -- Setup RF frontend clocking... -- Radio 1x clock:200 -- Detecting internal GPSDO.... No GPSDO found -- Initialize Radio0 control... -- Performing register loopback test... pass -- Initialize Radio1 control... -- Performing register loopback test... pass Traceback (most recent call last): File "/home/caai/Downloads/gr-doa-master/apps/estimate_X310_TwinRX_constant_phase_offsets_and_save.py", line 80, in main() File "/home/caai/Downloads/gr-doa-master/apps/estimate_X310_TwinRX_constant_phase_offsets_and_save.py", line 74, in main tb = top_block_cls() File "/home/caai/Downloads/gr-doa-master/apps/estimate_X310_TwinRX_constant_phase_offsets_and_save.py", line 38, in init addresses=input_variables.RxAddr File "/usr/local/lib/python2.7/dist-packages/doa/twinrx_usrp_source.py", line 64, in init self.uhd_usrp_source_0.set_subdev_spec(' '.join(subdevs[:sources]), 0) File "/usr/lib/python2.7/dist-packages/gnuradio/uhd/uhd_swig.py", line 3254, in set_subdev_spec return _uhd_swig.usrp_source_sptr_set_subdev_spec(self, spec, mboard) RuntimeError: ValueError: The subdevice specification "A:0 A:1 B:0 B:1" is too long. The user specified 4 channels, but there are only 2 rx dsps on mboard 0. '''

the device I am using is the USRP X310 which it has 4 channels. There are two RX boards inside the X310. And every board has two channels.

I guess my question would be what is the images use when it was tested. because the one that works but gives me the error of not recognizing the 4 channels is http://files.ettus.com/binaries/images/uhd-images_003.009.002-release.zip

michaelld commented 1 year ago

TwinRX requires UHD 3.10.0.0 or newer ( https://kb.ettus.com/TwinRX#TwinRX ) ... assuming you're using 2x TwinRX daughterboards since you're running a TwinRX specific script ...