Marcus Leach wrote: > See this thread here: > http://lists.ettus.com/pipermail/usrp-users_lists.ettus.com/2016-March/046784.html
I understand how it's supposed to work, and it's always worked that way before including in the outdated http://files.ettus.com/e3xx_images/e3xx-release-4/ setup. With this new image and toolchain (from http://files.ettus.com/binaries/cache/e3xx/meta-ettus-v3.15.0.0-e310_prerelease/ ), though, I can't seen to find out where uhd is getting the image it's loading let alone change it. No matter what files are in standard images path or $UHD_IMAGES_DIR or what I tell args="fpga="... uhd_usrp_probe gives the exact same output that indicates 1 DDC and one DUC. logging doesn't seem to be working (maybe related to the first error) so I've been attempting to use print statements (see "ddd" comments) to trace the long and winding path that "args" takes as it makes its way to MPM and eventually the function loads the fpga. I haven't found it yet. I've gone so far as to delete all the existing fpga images I can find but still uhd finds this one. That's what made me think that it had been somehow baked into the uhd executable. Here are a few outputs, first for uhd_usrp_probe and then for uhd_config_info: root@ni-e31x-*******:~/newinstall# uhd_usrp_probe Error opening log file: basic_ios::clear: iostream error [INFO] [UHD] linux; GNU C++ version 7.3.0; Boost_106600; UHD_3.15.0.HEAD-0-g6563c537 ddd in rpc.hpp mb_args= [ERROR] [UHD] Device discovery error: AssertionError: libusb_init(&_context) == 0 in libusb_session_impl::libusb_session_impl() at /home/mal/315/src/uhd/host/lib/transport/libusb1_base.cpp:36 [ERROR] [UHD] Device discovery error: AssertionError: libusb_init(&_context) == 0 in libusb_session_impl::libusb_session_impl() at /home/mal/315/src/uhd/host/lib/transport/libusb1_base.cpp:36 [ERROR] [UHD] Device discovery error: AssertionError: libusb_init(&_context) == 0 in libusb_session_impl::libusb_session_impl() at /home/mal/315/src/uhd/host/lib/transport/libusb1_base.cpp:36 [INFO] [MPMD] Initializing 1 device(s) in parallel with args: mgmt_addr=127.0.0.1,type=e3xx,product=e310_sg1,serial=309C7C2,claimed=F alse [ddd mb_args=mgmt_addr=127.0.0.1,type=e3xx,product=e310_sg1,serial=309C7C2,c laimed=False INFO] [MPMD dddddd in mpmd_mboard_impl.cpp mb_args=49601 size=4 ] ddd in rpc.hpp mb_args= MPMD Claiming mboard 0 [INFO] [MPMD ddd] Device args: `mgmt_addr=127.0.0.1,type=e3xx,product=e310_sg1,serial=309C7C2,claimed= False'. RPC address: 127.0.0.1 ddd in mpmd_mboard_impl.cpp mb_args=49601 size=4 ddd in rpc.hpp mb_args= [INFO] [MPM.PeriphManager] Found 1 daughterboard(s). [INFO] [MPMD ddd] just called setup_mb [INFO] [MPMD ddd] just called init_property_tree [INFO] [MPMD] Mboard 0 reports 1 crossbar(s). [INFO] [MPMD ddd] Enumerating RFNoC blocks for xbar 0. Total blocks: 3 Base port: 1 Local address: 2 [INFO] [0/Radio_0] Initializing block control (NOC ID: 0x12AD100000003310) [INFO] [MPM.PeriphManager] init() called with device args `mgmt_addr=127.0.0.1,product=e310_sg1'. [INFO] [0/DDC_0] Initializing block control (NOC ID: 0xDDC0000000000000) [INFO] [0/DUC_0] Initializing block control (NOC ID: 0xD0C0000000000002) [INFO] [MPMD ddd] just called setup_rfnoc_blocks [INFO] [0/Radio_0] RX freq = 2.4e+09 [INFO] [0/Radio_0] RX band = 6 [INFO] [0/Radio_0] RX SW1 = 5 [INFO] [0/Radio_0] RX SWC = 0 [INFO] [0/Radio_0] RX SWB = 1 [INFO] [0/Radio_0] RX VCRX_SW = 1 [INFO] [0/Radio_0] RX VCTXRX_SW = 0 [INFO] [0/Radio_0] RX freq = 2.4e+09 [INFO] [0/Radio_0] RX band = 6 [INFO] [0/Radio_0] RX SW1 = 5 [INFO] [0/Radio_0] RX SWC = 0 [INFO] [0/Radio_0] RX SWB = 1 [INFO] [0/Radio_0] RX VCRX_SW = 1 [INFO] [0/Radio_0] RX VCTXRX_SW = 0 [INFO] [0/Radio_0] RX freq = 2.4e+09 [INFO] [0/Radio_0] RX band = 6 [INFO] [0/Radio_0] RX SW1 = 5 [INFO] [0/Radio_0] RX SWC = 0 [INFO] [0/Radio_0] RX SWB = 1 [INFO] [0/Radio_0] RX VCRX_SW = 1 [INFO] [0/Radio_0] RX VCTXRX_SW = 0 [INFO] [0/Radio_0] RX freq = 2.4e+09 [INFO] [0/Radio_0] RX band = 6 [INFO] [0/Radio_0] RX SW1 = 5 [INFO] [0/Radio_0] RX SWC = 0 [INFO] [0/Radio_0] RX SWB = 1 [INFO] [0/Radio_0] RX VCRX_SW = 1 [INFO] [0/Radio_0] RX VCTXRX_SW = 0 [INFO] [0/Radio_0] RX freq = 2.4e+09 [INFO] [0/Radio_0] RX band = 6 [INFO] [0/Radio_0] RX SW1 = 5 [INFO] [0/Radio_0] RX SWC = 0 [INFO] [0/Radio_0] RX SWB = 1 [INFO] [0/Radio_0] RX VCRX_SW = 1 [INFO] [0/Radio_0] RX VCTXRX_SW = 0 [INFO] [0/Radio_0] RX freq = 2.4e+09 [INFO] [0/Radio_0] RX band = 6 [INFO] [0/Radio_0] RX SW1 = 5 [INFO] [0/Radio_0] RX SWC = 0 [INFO] [0/Radio_0] RX SWB = 1 [INFO] [0/Radio_0] RX VCRX_SW = 1 [INFO] [0/Radio_0] RX VCTXRX_SW = 0 [INFO] [0/Radio_0] Performing CODEC loopback test... [INFO] [0/Radio_0] CODEC loopback test passed [INFO] [0/Radio_0] Performing CODEC loopback test... [INFO] [0/Radio_0] CODEC loopback test passed [INFO] [MPMD ddd] just called setup_rpc_blocks [INFO] [MPMD ddd] done _____________________________________________________ / | Device: E300-Series Device | _____________________________________________________ | / | | Mboard: ni-e31x-309C7C2F | | mpm_version: 3.15.0.git-g6563c537 | | pid: 30674 | | product: e310_sg1 | | rev: 4 | | rpc_connection: local | | serial: 309C7C2 | | type: e3xx | | MPM Version: 1.2 | | FPGA Version: 1.0 | | FPGA git hash: f52a643.clean | | RFNoC capable: Yes | | | | Time sources: internal, external, gpsdo | | Clock sources: internal | | Sensors: temp_mb, temp_fpga, ref_locked | | _____________________________________________________ | | / | | | RX Dboard: A | | | _____________________________________________________ | | | / | | | | RX Frontend: 0 | | | | Name: E3xx | | | | Antennas: RX2, TX/RX | | | | Sensors: lo_locked, rssi, lo_lock, ad9361_temperature | | | | Freq range: 70.000 to 6000.000 MHz | | | | Gain range PGA: 0.0 to 76.0 step 1.0 dB | | | | Bandwidth range: 20000000.0 to 40000000.0 step 0.0 Hz | | | | Connection Type: IQ | | | | Uses LO offset: No | | | _____________________________________________________ | | | / | | | | RX Frontend: 1 | | | | Name: E3xx | | | | Antennas: RX2, TX/RX | | | | Sensors: lo_locked, rssi, lo_lock, ad9361_temperature | | | | Freq range: 70.000 to 6000.000 MHz | | | | Gain range PGA: 0.0 to 76.0 step 1.0 dB | | | | Bandwidth range: 20000000.0 to 40000000.0 step 0.0 Hz | | | | Connection Type: IQ | | | | Uses LO offset: No | | | _____________________________________________________ | | | / | | | | RX Codec: A | | | | Name: AD9361 Dual ADC | | | | Gain Elements: None | | _____________________________________________________ | | / | | | TX Dboard: A | | | _____________________________________________________ | | | / | | | | TX Frontend: 0 | | | | Name: E3xx | | | | Antennas: TX/RX | | | | Sensors: lo_locked, ad9361_temperature | | | | Freq range: 47.000 to 6000.000 MHz | | | | Gain range PGA: 0.0 to 89.8 step 0.2 dB | | | | Bandwidth range: 20000000.0 to 40000000.0 step 0.0 Hz | | | | Connection Type: IQ | | | | Uses LO offset: No | | | _____________________________________________________ | | | / | | | | TX Frontend: 1 | | | | Name: E3xx | | | | Antennas: TX/RX | | | | Sensors: lo_locked, ad9361_temperature | | | | Freq range: 47.000 to 6000.000 MHz | | | | Gain range PGA: 0.0 to 89.8 step 0.2 dB | | | | Bandwidth range: 20000000.0 to 40000000.0 step 0.0 Hz | | | | Connection Type: IQ | | | | Uses LO offset: No | | | _____________________________________________________ | | | / | | | | TX Codec: A | | | | Name: AD9361 Dual DAC | | | | Gain Elements: None | | _____________________________________________________ | | / | | | RFNoC blocks on this device: | | | | | | * Radio_0 | | | * DDC_0 | | | * DUC_0 first, using my und cross-compiled build: root@ni-e31x-*******:~/newinstall# uhd_config_info --print-all UHD 3.15.0.HEAD-0-g6563c537 Build date: Thu, 27 Jun 2019 13:41:23 C compiler: GNU 7.3.0 C++ compiler: GNU 7.3.0 C flags: -DUHD_RFNOC_ENABLED -DHAVE_CONFIG_H -DUHD_LOG_MIN_LEVEL=1 -DUHD_LOG_CONSOLE_LEVEL=2 -DUHD_LOG_FILE_LEVEL=2 -DUHD_LOG_CONSOLE_COLOR -DHAVE_LIBERIO -O2 -pipe -g -feliminate-unused- debug-types C++ flags: -DUHD_RFNOC_ENABLED -DHAVE_CONFIG_H -DUHD_LOG_MIN_LEVEL=1 -DUHD_LOG_CONSOLE_LEVEL=2 -DUHD_LOG_FILE_LEVEL=2 -DUHD_LOG_CONSOLE_COLOR -DHAVE_LIBERIO -O2 -pipe -g -feliminate-unused- debug-types -fvisibility=hidden -fvisibility-inlines-hidden Enabled components: LibUHD, LibUHD - C API, LibUHD - Python API, Examples, Utils, Tests, LIBERIO, USB, B100, B200, USRP1, USRP2, X300, N230, MPMD, N300, N320, E320, E300, OctoClock Install prefix: /usr/local Boost version: 1.66 Libusb version: 1.0.23 Package path: /usr/local Images directory: /home/root/newinstall/usr/local/share/uhd/images ABI version string: 3.15.0 then, using the version of uhd on the image from a fresh boot: root@ni-e31x-********:~# uhd_config_info --print-all UHD 3.15.0.git-0-g6563c537 Build date: Fri, 24 May 2019 20:20:44 C compiler: GNU 7.3.0 C++ compiler: GNU 7.3.0 C flags: -DUHD_RFNOC_ENABLED -DHAVE_CONFIG_H -DUHD_LOG_MIN_LEVEL=1 -DUHD_LOG_CONSOLE_LEVEL=2 -DUHD_LOG_FILE_LEVEL=2 -DUHD_LOG_CONSOLE_COLOR -DHAVE_LIBERIO -march=armv7-a -marm -mfpu=neon -mfloat-abi=hard -mcpu=cortex-a9 --sysroot=/home/oe-builder/build/tmp- glibc/work/cortexa9hf-neon-oe-linux-gnueabi/uhd/3.15.0.0- e310_prerelease/recipe-sysroot -O2 -pipe -g -feliminate-unused-debug- types -fdebug-prefix-map=/home/oe-builder/build/tmp- glibc/work/cortexa9hf-neon-oe-linux-gnueabi/uhd/3.15.0.0- e310_prerelease=/usr/src/debug/uhd/3.15.0.0-e310_prerelease -fdebug- prefix-map=/home/oe-builder/build/tmp-glibc/work/cortexa9hf-neon-oe- linux-gnueabi/uhd/3.15.0.0-e310_prerelease/recipe-sysroot= -fdebug- prefix-map=/home/oe-builder/build/tmp-glibc/work/cortexa9hf-neon-oe- linux-gnueabi/uhd/3.15.0.0-e310_prerelease/recipe-sysroot-native= - march=armv7-a -marm -mfpu=neon -mfloat-abi=hard -mcpu=cortex-a9 --sysroot=/home/oe-builder/build/tmp-glibc/work/cortexa9hf-neon-oe- linux-gnueabi/uhd/3.15.0.0-e310_prerelease/recipe-sysroot C++ flags: -DUHD_RFNOC_ENABLED -DHAVE_CONFIG_H -DUHD_LOG_MIN_LEVEL=1 -DUHD_LOG_CONSOLE_LEVEL=2 -DUHD_LOG_FILE_LEVEL=2 -DUHD_LOG_CONSOLE_COLOR -DHAVE_LIBERIO -march=armv7-a -marm -mfpu=neon -mfloat-abi=hard -mcpu=cortex-a9 --sysroot=/home/oe-builder/build/tmp- glibc/work/cortexa9hf-neon-oe-linux-gnueabi/uhd/3.15.0.0- e310_prerelease/recipe-sysroot -O2 -pipe -g -feliminate-unused-debug- types -fdebug-prefix-map=/home/oe-builder/build/tmp- glibc/work/cortexa9hf-neon-oe-linux-gnueabi/uhd/3.15.0.0- e310_prerelease=/usr/src/debug/uhd/3.15.0.0-e310_prerelease -fdebug- prefix-map=/home/oe-builder/build/tmp-glibc/work/cortexa9hf-neon-oe- linux-gnueabi/uhd/3.15.0.0-e310_prerelease/recipe-sysroot= -fdebug- prefix-map=/home/oe-builder/build/tmp-glibc/work/cortexa9hf-neon-oe- linux-gnueabi/uhd/3.15.0.0-e310_prerelease/recipe-sysroot-native= - fvisibility-inlines-hidden -march=armv7-a -marm -mfpu=neon -mfloat- abi=hard -mcpu=cortex-a9 --sysroot=/home/oe-builder/build/tmp- glibc/work/cortexa9hf-neon-oe-linux-gnueabi/uhd/3.15.0.0- e310_prerelease/recipe-sysroot -fvisibility=hidden -fvisibility- inlines-hidden Enabled components: LibUHD, LibUHD - C API, Examples, Utils, Tests, LIBERIO, USB, GPSD, MPMD, N300, N320, E320, E300, OctoClock Install prefix: /usr Boost version: 1.66 Libusb version: 1.0.23 Package path: /usr Images directory: ABI version string: 3.15.0 _______________________________________________ USRP-users mailing list [email protected] http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com
