The purpose of this lesson is to verify that all of your packages have successfully been installed, and that you are able to connect to the USRP X310 and program it. Below is a full list of hardware and software prerequisites:

  • One USRP X310 and its power supply
  • An Ethernet connection to the USRP
  • A USB cable between the host and the USRP
  • A testable bitstream (provided in the gr­rda GNURadio out­of­tree module)
  • The UHD module and the rfnoc-­devel branch (RFNoC alpha)
  • Optional: Create a new rule file in /etc/udev/rules.d/52-digilent-usb.rules with these contents 52-digilent-usb.rules
      This is only necessary if you are installing our tools on a clean machine that has never programmed the USRP with Impact.

Step-by-Step Test

Perform the following tasks in order:
  1. Connect the USRP and the host computer to the same Ethernet network
  2. Connect the JTAG USB cable to the USRP and the host computer.
  3. Power on the USRP
  4. Open a terminal window on the host computer. The testable bitstream will be located in the {PYBOMBS ROOT}/target/share/gr-rda/examples/samples folder.
  5. Program the USRP using xc3sprog with the following command:
    xc3sprog ­c nexys4 [bitstream.bit]
  6. The start of the output should match this:
    XC3SPROG (c) 2004-2011 xc3sprog project $Rev$ OS: Linux
    Free software: If you contribute nothing, expect nothing!
    Feedback on success/failure/enhancement requests: 
    Check Sourceforge for updates:
    Using Libftdi, 
    args[i] = usrp_x310_fpga_HGS.bit
    gnuradio@RDA-VM:~/Projects/pybombs/src/gr-rda/examples/samples$ uhd_usrp_probe
    linux; GNU C++ version 4.8.2; Boost_105400; UHD_003.009.rfnoc-440-g931dbffe

    At this point, the FPGA has been configured with the bitstream x300.bit To test that the bitstream successfully configured to the device, run:

    The output should match:
    linux; GNU C++ version 4.8.2; Boost_105400; UHD_003.008.rfnoc­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 Radio control...
    After plenty of diagnostic messages, you should see this list of RFNoC blocks:
    ­­ ========== Full list of RFNoC blocks: ============
    ­­ * 0/Radio_0
    ­­ * 0/Radio_1
    ­­ * 0/AddSub_0
    ­­ * 0/FIR_0
    ­­ * 0/FFT_0
    ­­ * 0/Window_0
    ­­ * 0/FIFO_0

    Congratulations, your hardware has been successfully tested.

Join the Consolidated Logic Mailing List

Be the first to find out about the new and exciting capabilities yet to come!