Difference between revisions of "Application Notes"

From Ettus Knowledge Base
Jump to: navigation, search
(46 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 +
Application Notes (AN) and technical articles written by engineers, for engineers. These articles offer experienced analysis, design ideas, reference designs, and tutorials—to make you productive and successful using USRP devices.
 +
 
{| class="wikitable"
 
{| class="wikitable"
 
!colspan="4"|Application Notes
 
!colspan="4"|Application Notes
Line 4: Line 6:
  
  
! style="text-align:center;"| Application Number
+
! style="text-align:center;"| Number
 
! style="text-align:center;"| Title
 
! style="text-align:center;"| Title
 
! style="text-align:center;"| Abstract
 
! style="text-align:center;"| Abstract
Line 10: Line 12:
 
|-
 
|-
  
||AN-0101
 
|| [[Building and Installing the USRP Open-Source Toolchain (UHD and GNU Radio) on Linux]]
 
|| This AN talks about cool stuff.
 
||<center> Ettus Research </center>
 
|-
 
  
||AN-0101
+
|style="width: 10%; text-align: center;"| AN-445
|| [[Building and Installing the USRP Open-Source Toolchain (UHD and GNU Radio) on OS X]]
+
|style="width: 30%;"| [[Building and Installing the USRP Open-Source Toolchain (UHD and GNU Radio) on Linux]]
|| This AN talks about cool stuff.
+
|style="width: 50%;"| This AN provides a comprehensive step-by-step guide for building, installing, and maintaining the open-source toolchain, specifically UHD and GNU Radio, for the USRP from source code on the Linux platform. Other alternate installation methods are also discussed.
||<center> Ettus Research </center>
+
|style="width: 10%; text-align: center;"| Neel Pandeya
 
|-
 
|-
  
||AN-0101
 
|| [[Building and Installing the USRP Open-Source Toolchain (UHD and GNU Radio) on Windows]]
 
|| This AN talks about cool stuff.
 
||<center> Ettus Research </center>
 
|-
 
  
||AN-0101
+
|style="width: 10%; text-align: center;"| AN-788
|| [[Daughterboard Compatibility]]
+
|style="width: 30%;"| [[Building and Installing the USRP Open-Source Toolchain (UHD and GNU Radio) on OS X]]
|| This AN talks about cool stuff.
+
|style="width: 50%;"| This AN provides a comprehensive step-by-step guide for building, installing, and maintaining the open-source toolchain, specifically UHD and GNU Radio, for the USRP from source code on the Mac OS X platform.
||<center> Ettus Research </center>
+
|style="width: 10%; text-align: center;"|Michael Dickens
 
|-
 
|-
  
||AN-0101
+
 
|| [[Design Process for Smart, Distributed RF Sensors]]
+
|style="width: 10%; text-align: center;"| AN-111
|| This AN talks about cool stuff.
+
|style="width: 30%;"| [[UHD Device Eraser and Certificates of Volatility]]
||<center> Ettus Research </center>
+
|style="width: 50%;"| This AN provides an overview of the UHD Device Eraser utility as well as links to the Certificates of Volatility for all Ettus products.
 +
|style="width: 10%; text-align: center;"|Michael Dickens
 
|-
 
|-
  
  
||AN-0101
+
|style="width: 10%; text-align: center;"| AN-611
|| [[Examples Provided with UHD]]
+
|style="width: 30%;"| [[Building and Installing the USRP Open Source Toolchain (UHD and GNU Radio) on Windows]]
|| This AN talks about cool stuff.
+
|style="width: 50%;"| This AN provides a comprehensive step-by-step guide for building, installing, and maintaining the open-source toolchain, specifically UHD and GNU Radio, for the USRP from source code on the Windows platform.
||<center> Ettus Research </center>
+
|style="width: 10%; text-align: center;"|Derek Kozel
 
|-
 
|-
  
||AN-0101
+
 
|| [[GPSDO Selection Guide]]
+
|style="width: 10%; text-align: center;"| AN-936
|| This AN talks about cool stuff.
+
|style="width: 30%;"| [[Verifying the Operation of the USRP Using UHD and GNU Radio]]
|| <center> Ettus Research </center>
+
|style="width: 50%;"| This AN explains how to use UHD and GNU Radio, once installed, to verify the correct operation of the USRP. Several test procedures are explained in detail. Several tests make use of an optional spectrum analyzer and signal generator.
 +
|style="width: 10%; text-align: center;"|Neel Pandeya
 
|-
 
|-
  
||AN-0101
+
 
|| [[Experiments with the UBX Daughterboard in the HF Band]]
+
|style="width: 10%; text-align: center;"| AN-561
|| This AN talks about cool stuff.
+
|style="width: 30%;"| [[Implementation of a Simple FM Receiver in GNU Radio]]
||<center> Ettus Research </center>
+
|style="width: 50%;"| This AN shows a quick and simple implementation of an FM receiver for the USRP using GNU Radio. The goal is to easily demonstrate a practical application, and to verify that the USRP is functioning properly.
 +
|style="width: 10%; text-align: center;"|Neel Pandeya
 
|-
 
|-
  
  
||AN-0101
+
|style="width: 10%; text-align: center;"| AN-188
|| [[Getting Started with UHD and C++]]
+
|style="width: 30%;"| [[Interrogating Passive Wireless SAW Sensors with the USRP]]
|| This AN talks about cool stuff.
+
|style="width: 50%;"| Typical interrogator design for wireless SAW sensor systems require many discrete components and lengthy build times, making it difficult to rapidly adapt to sensor designs in a research environment. We have employed the USRP B200 as a SAW sensor interrogation system. Interrogation of wideband orthogonal frequency coded (OFC) SAW sensors imposes strict requirements on the timing and synchronization of the transceiver. The USRP FPGA has been modified to operate in a synchronous, pulsed mode of operation, allowing rapid data acquisition and the full 56MHz bandwidth to be utilized. Data from the USRP is passed to a custom matched filter correlator routine to extract sensor parameters. The system is capable of interrogating multiple sensors, simultaneously. Demonstration of the system is accomplished by wirelessly interrogating SAW sensors at 915MHz and extracting temperature.
||<center> Ettus Research </center>
+
|style="width: 10%; text-align: center;"|Trip Humphries
 
|-
 
|-
  
||AN-0101
+
 
|| [[HF Reception with a USRP Device]]
+
|style="width: 10%; text-align: center;"| AN-322
|| This AN talks about cool stuff.
+
|style="width: 30%;"| [[Experiments with the UBX Daughterboard in the HF Band]]
||<center> Ettus Research </center>
+
|style="width: 50%;"| We show the results of experiments with the UBX daughtercard on an USRP X310 platform for use in the HF frequency range, from 1.8MHz to 30MHz. While the UBX is nominally rated for use only down to 10 MHz, with careful flow-graph design, and pre-filtering, it provides quite-good performance across the HF bands.
 +
|style="width: 10%; text-align: center;"|Marcus Leech
 
|-
 
|-
  
  
||AN-0101
+
|style="width: 10%; text-align: center;"| AN-363
|| [[Interrogating Passive Wireless SAW Sensors with the USRP]]
+
|style="width: 30%;"| [[Implementation of an ADS-B/Mode-S Receiver in GNU Radio]]
|| This AN talks about cool stuff.
+
|style="width: 50%;"| This AN guides the reader through the implementation of an ADS-B receiver using the gr-air-modes Out-of-Tree (OOT) module for GNU Radio. An explanation of ADS-B is also provided, and several real-world, over-the-air examples and profiled.
||<center> Ettus Research </center>
+
|style="width: 10%; text-align: center;"|Nate Temple
 
|-
 
|-
  
  
||AN-0101
+
|style="width: 10%; text-align: center;"| AN-177
|| [[Overview of Packet Flow Control]]
+
|style="width: 30%;"| [[About USRP Bandwidths and Sampling Rates]]
|| This AN talks about cool stuff.
+
|style="width: 50%;"| This AN provides insight into the topics of USRP architecture, system bandwidth, host interface throughput, and available sampling rates.
||<center> Ettus Research </center>
+
|style="width: 10%; text-align: center;"|Neel Pandeya <br> Nate Temple
 
|-
 
|-
  
  
||AN-0101
+
|style="width: 10%; text-align: center;"| AN-881
|| [[Selecting a USRP SDR Model]]
+
|style="width: 30%;"| [[Selecting a USRP Device]]
|| This AN talks about cool stuff.
+
|style="width: 50%;"| This AN explores the USRP family at a high level, compares devices across several primary features, and walks the reader through the process of selecting a particular device for the their application.
||<center> Ettus Research </center>
+
|style="width: 10%; text-align: center;"|Neel Pandeya <br> Nate Temple
 
|-
 
|-
  
  
||AN-0101
+
|style="width: 10%; text-align: center;"| AN-492
|| [[Selecting an RF Daughterboard]]
+
|style="width: 30%;"| [[Selecting a RF Daughterboard]]
|| This AN talks about cool stuff.
+
|style="width: 50%;"| This AN explores the RF daughterboards used by the N-series and X-series USRP devices at a high level, compares devices across several primary features, and walks the reader through the process of selecting a particular device for the their application.
||<center> Ettus Research </center>
+
|style="width: 10%; text-align: center;"|Neel Pandeya <br> Nate Temple
 
|-
 
|-
  
  
||AN-0101
+
|style="width: 10%; text-align: center;"| AN-204
|| [[Synchronization and MIMO Capability with USRP Devices]]
+
|style="width: 30%;"| [[Getting Started with UHD and C++]]
|| This AN talks about cool stuff.
+
|style="width: 50%;"| This AN explains how to write and build C++ programs that use the UHD API and introduces
||<center> Ettus Research </center>
+
|style="width: 10%; text-align: center;"|Neel Pandeya <br> Nate Temple
 
|-
 
|-
  
  
||AN-0101
+
|style="width: 10%; text-align: center;"| AN-117
|| [[USRP Bandwidth]]
+
|style="width: 30%;"| [[GPSDO Selection Guide]]
|| This AN talks about cool stuff.
+
|style="width: 50%;"| This AN explains how to select and use a GPSDO with the USRP B-, N-, and X-series devices.
||<center> Ettus Research </center>
+
|style="width: 10%; text-align: center;"|Neel Pandeya <br> Nate Temple
 
|-
 
|-
  
  
||AN-0101
+
|style="width: 10%; text-align: center;"| AN-503
|| [[Implementation of a Simple FM Receiver in GNU Radio]]
+
|style="width: 30%;"| [[Converting an X310 into an NI-USRP Rio]]
|| This AN provides a step-by-step guide for building a FM Receiver with USRP and Gnuradio
+
|style="width: 50%;"| This Application Note explains how to use an Ettus Research-branded USRP with LabVIEW, and in effect, convert it into an NI-USRP RIO.
||<center> Ettus Research </center>
+
|style="width: 10%; text-align: center;"|Tim Fountain
 
|-
 
|-
  
||AN-0102
+
|style="width: 10%; text-align: center;"| AN-638
|| [[Design Process for Smart, Distributed RF Sensors]]
+
|style="width: 30%;"| [[Running UHD and GNU Radio on NI-USRP RIO]]
|| This AN talks about cool stuff.
+
|style="width: 50%;"| This AN explains the process to updating your USRP-Rio to run UHD and GNU Radio.  
||<center> Ettus Research </center>
+
|style="width: 10%; text-align: center;"|Neel Pandeya <br> Nate Temple
 
|-
 
|-
  
||AN-0103
+
|style="width: 10%; text-align: center;"| AN-882
|| [[Front-Ends, Sub-Device Specifications, and Antenna Port Selection]]
+
|style="width: 30%;"| [[Synchronization and MIMO Capability with USRP Devices]]
|| This AN talks about cool stuff.
+
|style="width: 50%;"| Discusses the requirements for Multiple-In-Multiple-Out (MIMO) and phased-array systems. Summarizes the MIMO capability of each USRP device and daughterboard, and shows how to build MIMO systems with the USRP product family.
||<center> Ettus Research </center>
+
|style="width: 10%; text-align: center;"|Neel Pandeya <br> Nate Temple
 
|-
 
|-
  
 +
|style="width: 10%; text-align: center;"| AN-309
 +
|style="width: 30%;"| [[About the Motherboard and Daughtercard EEPROM on USRP Devices]]
 +
|style="width: 50%;"| This AN discusses the EEPROM storage on various USRP devices and daughtercards. This guides explains how to update the EEPROM contents and recover from EEPROM corruption. The product codes, which are also stored in the EEPROM, for all USRP devices and daughtercards are also given for reference.
 +
|style="width: 10%; text-align: center;"|Trip Humphries
 +
|-
  
||AN-0104
+
 
|| [[HF Reception with a USRP Device]]
+
|style="width: 10%; text-align: center;"| AN-325
|| This AN talks about cool stuff.
+
|style="width: 30%;"| [[N200/N210 Device Recovery]]
||<center> Ettus Research </center>
+
|style="width: 50%;"| This application note covers the details of recovering your N200/N210.
 +
|style="width: 10%; text-align: center;"|Neel Pandeya <br> Nate Temple
 
|-
 
|-
  
  
||AN-0105
+
 
|| [[Integration of a Low Noise Amplifier and a USRP Device]]
+
|style="width: 10%; text-align: center;"| AN-504
|| This AN talks about cool stuff.
+
|style="width: 30%;"| [[USRP N Series Quick Start (Daughterboard Installation)]]
||<center> Ettus Research </center>
+
|style="width: 50%;"| This application note is a detailed step-by-step guide to install a daughterboard into the USRP N200/N210.
 +
|style="width: 10%; text-align: center;"|Neel Pandeya <br> Nate Temple
 
|-
 
|-
  
||AN-0107
+
|style="width: 10%; text-align: center;"| AN-904
|| [[Implementation of an ADS-B / Mode-S Receiver in GNU Radio]]
+
|style="width: 30%;"| [[USRP X Series Quick Start (Daughterboard Installation)]]
|| This AN talks about cool stuff.
+
|style="width: 50%;"| This application note is a detailed step-by-step guide to install a daughterboard into the USRP X300/X310.
||<center> Ettus Research </center>
+
|style="width: 10%; text-align: center;"|Neel Pandeya <br> Nate Temple
 
|-
 
|-
  
  
 +
|style="width: 10%; text-align: center;"| AN-311
 +
|style="width: 30%;"| [[Software Development on the E310 and E312]]
 +
|style="width: 50%;"| This application note covers the software development process on the USRP E310 and E312.
 +
|style="width: 10%; text-align: center;"|Martin Braun<br>Nicolas Cuervo
 +
|-
  
  
||AN-0111
+
|style="width: 10%; text-align: center;"| AN-296
|| [[Synchronization and MIMO Capability with USRP Devices]]
+
|style="width: 30%;"| [[Using Dual 10 Gigabit Ethernet on the USRP X300/X310]]
|| This AN talks about cool stuff.
+
|style="width: 50%;"| This short guide is meant to help in quickly setting up an X-series USRP for use over two 10 Gigabit Ethernet links simultaneously.  
||<center> Ettus Research </center>
+
|style="width: 10%; text-align: center;"|Paul David
 
|-
 
|-
  
||AN-0112
+
 
|| [[Verifying the Operation of the USRP Using UHD and GNU Radio]]
+
|style="width: 10%; text-align: center;"| AN-823
|| This AN talks about cool stuff.
+
|style="width: 30%;"| [[Getting Started with RFNoC Development]]
||<center> Ettus Research </center>
+
|style="width: 50%;"| This application note gives a brief introduction into the steps required to start developing RFNoC blocks on your computer with UHD 3.  
 +
|style="width: 10%; text-align: center;"|Martin Braun<br>Nicolas Cuervo
 
|-
 
|-
  
|}
 
  
 +
|style="width: 10%; text-align: center;"| AN-178
 +
|style="width: 30%;"| [[Resolving Audio Codec Enumeration Issues On The E31x]]
 +
|style="width: 50%;"| This application note covers Resolving Audio Codec Enumeration Issues On The E31x.
 +
|style="width: 10%; text-align: center;"|Logan Fagg
 +
|-
  
<DynamicPageList>
 
category = Application Notes
 
ordermethod = sortkey
 
order = ascending
 
</DynamicPageList>
 
  
  
{| class="wikitable"
+
|style="width: 10%; text-align: center;"| AN-244
!colspan="4"|Application Notes
+
|style="width: 30%;"| [[Direction Finding with the USRP™ X-Series and TwinRX™]]
 +
|style="width: 50%;"| This application note covers using the USRP™ TwinRX™ daughterboard in a direction find application using the MUSIC algorithm.
 +
|style="width: 10%; text-align: center;"|Srikanth Pagadarai<br>Travis Collins<br>Alexander M. Wyglinski
 
|-
 
|-
  
  
! style="text-align:center;"| Number
+
 
! style="text-align:center;"| Title
+
|style="width: 10%; text-align: center;"| AN-335
! style="text-align:center;"| Abstract
+
|style="width: 30%;"| [[Streaming processed data from the E31x with GNU Radio and ZMQ]]
! style="text-align:center;"| Author
+
|style="width: 50%;"| This application note will demonstrate using the USRP E310 to remotely stream processed data to a host machine. 
 +
|style="width: 10%; text-align: center;"| Nate Temple
 
|-
 
|-
  
 +
|style="width: 10%; text-align: center;"| AN-121
 +
|style="width: 30%;"| [[Debugging FPGA images]]
 +
|style="width: 50%;"| This application note covers the basics to get you through the process of probing the signals inside an FPGA. In order to accomplish that, we will review briefly the 'Xilinx ChipScope Analyzer' and will apply it to one of our core RFNoC blocks: the RFNoC Signal generator.
 +
|style="width: 10%; text-align: center;"|Nicolas Cuervo<br>Sugandha Gupta
 +
|-
  
|| <center> AN-445 </center>
+
 
|| Building and Installing the USRP Open-Source Toolchain (UHD and GNU Radio) on Linux
+
|style="width: 10%; text-align: center;"| AN-732
|| This AN provides a comprehensive step-by-step guide for building, installing, and maintaining the open-source toolchain, specifically UHD and GNU Radio, for the USRP from source code on the Linux platform. Other alternate installation methods are also discussed.
+
|style="width: 30%;"| [[USRP E312 Battery Replacement Instructions]]
||<center> Neel Pandeya </center>
+
|style="width: 50%;"| This application note covers replacing the battery cell inside the USRP E312.
 +
|style="width: 10%; text-align: center;"| Robin Coxe
 
|-
 
|-
  
 +
|style="width: 10%; text-align: center;"| AN-305
 +
|style="width: 30%;"| [[X300/X310 Device Recovery]]
 +
|style="width: 50%;"| This application note covers the details of recovering the USRP X300/X310 via JTAG. 
 +
|style="width: 10%; text-align: center;"| Nate Temple
 +
|-
  
|| <center> AN-611 </center>
+
 
|| Building and Installing the USRP Open-Source Toolchain (UHD and GNU Radio) on Windows
+
|style="width: 10%; text-align: center;"| AN-832
|| This AN provides a comprehensive step-by-step guide for building, installing, and maintaining the open-source toolchain, specifically UHD and GNU Radio, for the USRP from source code on the Linux platform.
+
|style="width: 30%;"| [[Mapping Between ER-USRP and NI-USRP Product Numbers]]
||<center> Derek Kozel </center>
+
|style="width: 50%;"| This application note covers the details of the mapping between Ettus Research USRP and National Instruments USRP product numbers.  
 +
|style="width: 10%; text-align: center;"| Nate Temple
 
|-
 
|-
  
  
|| <center> AN-788 </center>
+
 
|| Building and Installing the USRP Open-Source Toolchain (UHD and GNU Radio) on OS X
+
|style="width: 10%; text-align: center;"| AN-315
|| This AN provides a comprehensive step-by-step guide for building, installing, and maintaining the open-source toolchain, specifically UHD and GNU Radio, for the USRP from source code on the Linux platform.
+
|style="width: 30%;"| [[Software Development on the E3xx USRP - Building RFNoC UHD / GNU Radio / gr-ettus from Source]]
||<center> Michael Dickens </center>
+
|style="width: 50%;"| This application note is one of a multi-part series which will cover the software development process on the USRP E310, E312 and E313. It will cover building the rfnoc-devel branch of UHD, GNU Radio and gr-ettus from source for the host machine, and cross-compiling the rfnoc-devel branch of UHD, GNU Radio and gr-ettus for the E3xx USRP.  
 +
|style="width: 10%; text-align: center;"| Nate Temple
 
|-
 
|-
  
  
|| <center> AN-936 </center>
+
 
|| Verifying the Operation of the USRP Using UHD and GNU Radio
+
 
|| This AN explains how to use UHD and GNU Radio, once installed, to verify the correct operation of the USRP. Several test procedures are explained in detail. Several tests make use of an optional spectrum analyzer and signal generator.
+
|style="width: 10%; text-align: center;"| AN-142
||<center> Neel Pandeya </center>
+
|style="width: 30%;"| [[Transmitting DVB-S2 with GNU Radio and an USRP B210]]
 +
|style="width: 50%;"| This application note will demonstrate using an USRP B210 and the GNU Radio DTV example flowgraph to transmit a DVB-S2 video stream to an off-the-shelf satellite receiver.  
 +
|style="width: 10%; text-align: center;"| Nate Temple
 
|-
 
|-
  
  
|| <center> AN-561 </center>
+
 
|| Implementation of a Simple FM Receiver in GNU Radio
+
 
|| This AN shows a quick and simple implementation of an FM receiver for the USRP using GNU Radio. The goal is to easily demonstrate a practical application, and to verify that the USRP is functioning properly.
+
|style="width: 10%; text-align: center;"| AN-158
||<center> Neel Pandeya </center>
+
|style="width: 30%;"| [[Using Ethernet-Based Synchronization on the USRP™ N3xx Devices]]
 +
|style="width: 50%;"| This application note provides instructions for synchronizing multiple USRP N3xx devices using White Rabbit Ethernet-based synchronization.  
 +
|style="width: 10%; text-align: center;"| Dan Baker
 +
Wan Liu
 
|-
 
|-
  
  
|| <center> AN-188 </center>
+
 
|| Interrogating Passive Wireless SAW Sensors with the USRP
+
|style="width: 10%; text-align: center;"| AN-642
|| Typical interrogator design for wireless SAW sensor systems require many discrete components and lengthy build times, making it difficult to rapidly adapt to sensor designs in a research environment. We have employed the USRP B200 as a SAW sensor interrogation system. Interrogation of wideband orthogonal frequency coded (OFC) SAW sensors imposes strict requirements on the timing and synchronization of the transceiver. The USRP FPGA has been modified to operate in a synchronous, pulsed mode of operation, allowing rapid data acquisition and the full 56MHz bandwidth to be utilized. Data from the USRP is passed to a custom matched filter correlator routine to extract sensor parameters. The system is capable of interrogating multiple sensors, simultaneously. Demonstration of the system is accomplished by wirelessly interrogating SAW sensors at 915MHz and extracting temperature.
+
|style="width: 30%;"| [[Using the RFNoC Replay Block]]
||<center> Trip Humphries </center>
+
|style="width: 50%;"| This application note guides a user through basic use of the RFNoC Replay block and explains how to run the UHD Replay example. This example covers use on the X300/X310 and N310 products.
 +
|style="width: 10%; text-align: center;"| Wade Fife
 
|-
 
|-
  
  
|| <center> AN-322 </center>
+
|style="width: 10%; text-align: center;"| AN-630
|| Experiments with the UBX Daughterboard in the HF Band
+
|style="width: 30%;"| [[Writing the USRP File System Disk Image to a SD Card]]
|| We show the results of experiments with the UBX daughtercard on an USRP X310 platform for use in the HF frequency range, from 1.8MHz to 30MHz. While the UBX is nominally rated for use only down to 10 MHz, with careful flow-graph design, and pre-filtering, it provides quite-good performance across the HF bands.
+
|style="width: 50%;"| This application note will provide step-by-step instructions on writing a file system disk image to a SD card using Linux.  
||<center> Marcus Leech </center>
+
|style="width: 10%; text-align: center;"| Nate Temple
 
|-
 
|-
  
 +
|style="width: 10%; text-align: center;"| AN-524
 +
|style="width: 30%;"| [[Building and Installing UHD and GNU Radio in an Offline Environment]]
 +
|style="width: 50%;"| This application note will provide step-by-step instructions on building and installing UHD and GNU Radio in an offline environment.
 +
|style="width: 10%; text-align: center;"| Nate Temple
 +
|-
  
|| <center> AN-363 </center>
+
|style="width: 10%; text-align: center;"| AN-525
|| Implementation of an ADS-B Receiver in GNU Radio
+
|style="width: 30%;"| [[Building and Installing UHD and GNU Radio to a Custom Prefix]]
|| This AN guides the reader through the implementation of an ADS-B receiver using the gr-air-modes Out-of-Tree (OOT) module for GNU Radio. An explanation of ADS-B is also provided, and several real-world, over-the-air examples and profiled.
+
|style="width: 50%;"| This application note provides step-by-step instructions on building and installing UHD and GNU Radio to a local directory.  
||<center> Nate Temple </center>
+
|style="width: 10%; text-align: center;"| Nate Temple
 
|-
 
|-
  
  
|| <center> AN-177 </center>
+
|style="width: 10%; text-align: center;"| AN-725
|| About USRP Bandwidths and Sampling Rates
+
|style="width: 30%;"| [[USRP N320/N321 LO Distribution]]
|| This AN provides insight into the topics of USRP architecture, system bandwidth, host interface throughput, and available sampling rates.
+
|style="width: 50%;"| This application note provides an overview of using the LO Distribution of the N320/N321 USRPs.
||<center> Neel Pandeya <br> Nate Temple </center>
+
 +
|style="width: 10%; text-align: center;"| Brian Avenell
 
|-
 
|-
  
  
|| <center> AN-881 </center>
+
|style="width: 10%; text-align: center;"| AN-452
|| Selecting an USRP Device
+
|style="width: 30%;"| [[5G NR EVM Measurements with the USRP N320/N321]]
|| This AN explores the USRP family at a high level, compares devices across several primary features, and walks the reader through the process of selecting a particular device for the their application.
+
|style="width: 50%;"| Example EVM measurements are shown using the USRP N320/N321 receiver and the 5G New Radio (5G NR) modulation standard. The use of I/Q image calibration and spur-dodging are demonstrated as methods to improve EVM performance.  
||<center> Neel Pandeya <br> Nate Temple </center>
+
|style="width: 10%; text-align: center;"| Drew Fischer
 
|-
 
|-
  
 +
|style="width: 10%; text-align: center;"| AN-620
 +
|style="width: 30%;"| [[Troubleshooting X300/X310 Device Discovery Issues]]
 +
|style="width: 50%;"| Troubleshooting guide to intended to cover some of the most commonly recommended steps to enable USRP connectivity.
 +
|style="width: 10%; text-align: center;"| Sam Reiter
 +
|-
  
|| <center> AN-492 </center>
+
|style="width: 10%; text-align: center;"| AN-088
|| Selecting an RF Daughterboard
+
|style="width: 30%;"| [[USRP Host Performance Tuning Tips and Tricks]]
|| This AN explores the RF daughterboards used by the N-series and X-series USRP devices at a high level, compares devices across several primary features, and walks the reader through the process of selecting a particular device for the their application.
+
|style="width: 50%;"| This application note provides various tips and tricks for tuning your host computer for best performance when working with USRP devices.  
||<center> Neel Pandeya <br> Nate Temple </center>
+
|style="width: 10%; text-align: center;"| Nate Temple
 
|-
 
|-
  
 +
|style="width: 10%; text-align: center;"| AN-355
 +
|style="width: 30%;"| [[Modifying an X310 Chassis for External LO Sharing]]
 +
|style="width: 50%;"| This document describes how to modify an X310 chassis to wire the LO out of the back plate. Doing this will allow the user to export and import an LO signal as desired when using a compatible daughterboard such as the TwinRX.
 +
|style="width: 10%; text-align: center;"| Sam Reiter
 +
|-
  
|| <center> AN-204 </center>
+
|style="width: 10%; text-align: center;"| AN-500
|| Getting Started with UHD and C++
+
|style="width: 30%;"| [[Getting Started with DPDK and UHD]]
|| This AN explains how to write and build C++ programs that use the UHD API and introduces
+
|style="width: 50%;"| This application note walks through the process to get started with the Data Plane Development Kit (DPDK) driver within UHD.
||<center> Neel Pandeya <br> Nate Temple </center>
+
|style="width: 10%; text-align: center;"| Nate Temple
 +
Alex Williams
 
|-
 
|-
  
 +
|style="width: 10%; text-align: center;"| AN-800
 +
|style="width: 30%;"| [[Enabling Ethernet Connectivity on Octoclock and Octoclock-G]]
 +
|style="width: 50%;"| This document supplements the UHD Manual's guide for updating the Octoclock bootloader to allow for Ethernet communications with the device.
 +
|style="width: 10%; text-align: center;"| Sam Reiter
 +
|-
  
|| <center> AN-117 </center>
+
|style="width: 10%; text-align: center;"| AN-621
|| GPSDO Selection Guide
+
|style="width: 30%;"| [[Troubleshooting N310/N320 Device Discovery Issues]]
|| This AN explains how to select and use a GPSDO with the USRP B-, N-, and X-series devices.
+
|style="width: 50%;"| Troubleshooting guide to intended to cover some of the most commonly recommended steps to enable USRP connectivity. Serves as a supplement to the N3xx getting started guide.  
||<center> Neel Pandeya <br> Nate Temple </center>
+
|style="width: 10%; text-align: center;"| Sam Reiter
 
|-
 
|-
  
 +
|style="width: 10%; text-align: center;"| AN-883
 +
|style="width: 30%;"| [[Synchronizing USRP Events Using Timed Commands in UHD]]
 +
|style="width: 50%;"| Guide to cover common USRP synchronization scenarios and deep-dive into the use of timed commands within USRPs.
 +
|style="width: 10%; text-align: center;"| Sam Reiter
 +
|-
 +
 +
|style="width: 10%; text-align: center;"| AN-400
 +
|style="width: 30%;"| [[Getting Started with RFNoC in UHD 4.0]]
 +
|style="width: 50%;"| This AN describes how use RFNoC in UHD 4.0, including building FPGA images for RFNoC, changing which blocks are included in the build, and creating your own RFNoC blocks.
 +
|style="width: 10%; text-align: center;"| Sugandha Gupta<br>Brent Stapleton<br>Wade Fife
 +
|-
  
 
|}
 
|}

Revision as of 10:02, 12 September 2020

Application Notes (AN) and technical articles written by engineers, for engineers. These articles offer experienced analysis, design ideas, reference designs, and tutorials—to make you productive and successful using USRP devices.

Application Notes
Number Title Abstract Author
AN-445 Building and Installing the USRP Open-Source Toolchain (UHD and GNU Radio) on Linux This AN provides a comprehensive step-by-step guide for building, installing, and maintaining the open-source toolchain, specifically UHD and GNU Radio, for the USRP from source code on the Linux platform. Other alternate installation methods are also discussed. Neel Pandeya
AN-788 Building and Installing the USRP Open-Source Toolchain (UHD and GNU Radio) on OS X This AN provides a comprehensive step-by-step guide for building, installing, and maintaining the open-source toolchain, specifically UHD and GNU Radio, for the USRP from source code on the Mac OS X platform. Michael Dickens
AN-111 UHD Device Eraser and Certificates of Volatility This AN provides an overview of the UHD Device Eraser utility as well as links to the Certificates of Volatility for all Ettus products. Michael Dickens
AN-611 Building and Installing the USRP Open Source Toolchain (UHD and GNU Radio) on Windows This AN provides a comprehensive step-by-step guide for building, installing, and maintaining the open-source toolchain, specifically UHD and GNU Radio, for the USRP from source code on the Windows platform. Derek Kozel
AN-936 Verifying the Operation of the USRP Using UHD and GNU Radio This AN explains how to use UHD and GNU Radio, once installed, to verify the correct operation of the USRP. Several test procedures are explained in detail. Several tests make use of an optional spectrum analyzer and signal generator. Neel Pandeya
AN-561 Implementation of a Simple FM Receiver in GNU Radio This AN shows a quick and simple implementation of an FM receiver for the USRP using GNU Radio. The goal is to easily demonstrate a practical application, and to verify that the USRP is functioning properly. Neel Pandeya
AN-188 Interrogating Passive Wireless SAW Sensors with the USRP Typical interrogator design for wireless SAW sensor systems require many discrete components and lengthy build times, making it difficult to rapidly adapt to sensor designs in a research environment. We have employed the USRP B200 as a SAW sensor interrogation system. Interrogation of wideband orthogonal frequency coded (OFC) SAW sensors imposes strict requirements on the timing and synchronization of the transceiver. The USRP FPGA has been modified to operate in a synchronous, pulsed mode of operation, allowing rapid data acquisition and the full 56MHz bandwidth to be utilized. Data from the USRP is passed to a custom matched filter correlator routine to extract sensor parameters. The system is capable of interrogating multiple sensors, simultaneously. Demonstration of the system is accomplished by wirelessly interrogating SAW sensors at 915MHz and extracting temperature. Trip Humphries
AN-322 Experiments with the UBX Daughterboard in the HF Band We show the results of experiments with the UBX daughtercard on an USRP X310 platform for use in the HF frequency range, from 1.8MHz to 30MHz. While the UBX is nominally rated for use only down to 10 MHz, with careful flow-graph design, and pre-filtering, it provides quite-good performance across the HF bands. Marcus Leech
AN-363 Implementation of an ADS-B/Mode-S Receiver in GNU Radio This AN guides the reader through the implementation of an ADS-B receiver using the gr-air-modes Out-of-Tree (OOT) module for GNU Radio. An explanation of ADS-B is also provided, and several real-world, over-the-air examples and profiled. Nate Temple
AN-177 About USRP Bandwidths and Sampling Rates This AN provides insight into the topics of USRP architecture, system bandwidth, host interface throughput, and available sampling rates. Neel Pandeya
Nate Temple
AN-881 Selecting a USRP Device This AN explores the USRP family at a high level, compares devices across several primary features, and walks the reader through the process of selecting a particular device for the their application. Neel Pandeya
Nate Temple
AN-492 Selecting a RF Daughterboard This AN explores the RF daughterboards used by the N-series and X-series USRP devices at a high level, compares devices across several primary features, and walks the reader through the process of selecting a particular device for the their application. Neel Pandeya
Nate Temple
AN-204 Getting Started with UHD and C++ This AN explains how to write and build C++ programs that use the UHD API and introduces Neel Pandeya
Nate Temple
AN-117 GPSDO Selection Guide This AN explains how to select and use a GPSDO with the USRP B-, N-, and X-series devices. Neel Pandeya
Nate Temple
AN-503 Converting an X310 into an NI-USRP Rio This Application Note explains how to use an Ettus Research-branded USRP with LabVIEW, and in effect, convert it into an NI-USRP RIO. Tim Fountain
AN-638 Running UHD and GNU Radio on NI-USRP RIO This AN explains the process to updating your USRP-Rio to run UHD and GNU Radio. Neel Pandeya
Nate Temple
AN-882 Synchronization and MIMO Capability with USRP Devices Discusses the requirements for Multiple-In-Multiple-Out (MIMO) and phased-array systems. Summarizes the MIMO capability of each USRP device and daughterboard, and shows how to build MIMO systems with the USRP product family. Neel Pandeya
Nate Temple
AN-309 About the Motherboard and Daughtercard EEPROM on USRP Devices This AN discusses the EEPROM storage on various USRP devices and daughtercards. This guides explains how to update the EEPROM contents and recover from EEPROM corruption. The product codes, which are also stored in the EEPROM, for all USRP devices and daughtercards are also given for reference. Trip Humphries
AN-325 N200/N210 Device Recovery This application note covers the details of recovering your N200/N210. Neel Pandeya
Nate Temple
AN-504 USRP N Series Quick Start (Daughterboard Installation) This application note is a detailed step-by-step guide to install a daughterboard into the USRP N200/N210. Neel Pandeya
Nate Temple
AN-904 USRP X Series Quick Start (Daughterboard Installation) This application note is a detailed step-by-step guide to install a daughterboard into the USRP X300/X310. Neel Pandeya
Nate Temple
AN-311 Software Development on the E310 and E312 This application note covers the software development process on the USRP E310 and E312. Martin Braun
Nicolas Cuervo
AN-296 Using Dual 10 Gigabit Ethernet on the USRP X300/X310 This short guide is meant to help in quickly setting up an X-series USRP for use over two 10 Gigabit Ethernet links simultaneously. Paul David
AN-823 Getting Started with RFNoC Development This application note gives a brief introduction into the steps required to start developing RFNoC blocks on your computer with UHD 3. Martin Braun
Nicolas Cuervo
AN-178 Resolving Audio Codec Enumeration Issues On The E31x This application note covers Resolving Audio Codec Enumeration Issues On The E31x. Logan Fagg
AN-244 Direction Finding with the USRP™ X-Series and TwinRX™ This application note covers using the USRP™ TwinRX™ daughterboard in a direction find application using the MUSIC algorithm. Srikanth Pagadarai
Travis Collins
Alexander M. Wyglinski
AN-335 Streaming processed data from the E31x with GNU Radio and ZMQ This application note will demonstrate using the USRP E310 to remotely stream processed data to a host machine. Nate Temple
AN-121 Debugging FPGA images This application note covers the basics to get you through the process of probing the signals inside an FPGA. In order to accomplish that, we will review briefly the 'Xilinx ChipScope Analyzer' and will apply it to one of our core RFNoC blocks: the RFNoC Signal generator. Nicolas Cuervo
Sugandha Gupta
AN-732 USRP E312 Battery Replacement Instructions This application note covers replacing the battery cell inside the USRP E312. Robin Coxe
AN-305 X300/X310 Device Recovery This application note covers the details of recovering the USRP X300/X310 via JTAG. Nate Temple
AN-832 Mapping Between ER-USRP and NI-USRP Product Numbers This application note covers the details of the mapping between Ettus Research USRP and National Instruments USRP product numbers. Nate Temple
AN-315 Software Development on the E3xx USRP - Building RFNoC UHD / GNU Radio / gr-ettus from Source This application note is one of a multi-part series which will cover the software development process on the USRP E310, E312 and E313. It will cover building the rfnoc-devel branch of UHD, GNU Radio and gr-ettus from source for the host machine, and cross-compiling the rfnoc-devel branch of UHD, GNU Radio and gr-ettus for the E3xx USRP. Nate Temple
AN-142 Transmitting DVB-S2 with GNU Radio and an USRP B210 This application note will demonstrate using an USRP B210 and the GNU Radio DTV example flowgraph to transmit a DVB-S2 video stream to an off-the-shelf satellite receiver. Nate Temple
AN-158 Using Ethernet-Based Synchronization on the USRP™ N3xx Devices This application note provides instructions for synchronizing multiple USRP N3xx devices using White Rabbit Ethernet-based synchronization. Dan Baker

Wan Liu

AN-642 Using the RFNoC Replay Block This application note guides a user through basic use of the RFNoC Replay block and explains how to run the UHD Replay example. This example covers use on the X300/X310 and N310 products. Wade Fife
AN-630 Writing the USRP File System Disk Image to a SD Card This application note will provide step-by-step instructions on writing a file system disk image to a SD card using Linux. Nate Temple
AN-524 Building and Installing UHD and GNU Radio in an Offline Environment This application note will provide step-by-step instructions on building and installing UHD and GNU Radio in an offline environment. Nate Temple
AN-525 Building and Installing UHD and GNU Radio to a Custom Prefix This application note provides step-by-step instructions on building and installing UHD and GNU Radio to a local directory. Nate Temple
AN-725 USRP N320/N321 LO Distribution This application note provides an overview of using the LO Distribution of the N320/N321 USRPs. Brian Avenell
AN-452 5G NR EVM Measurements with the USRP N320/N321 Example EVM measurements are shown using the USRP N320/N321 receiver and the 5G New Radio (5G NR) modulation standard. The use of I/Q image calibration and spur-dodging are demonstrated as methods to improve EVM performance. Drew Fischer
AN-620 Troubleshooting X300/X310 Device Discovery Issues Troubleshooting guide to intended to cover some of the most commonly recommended steps to enable USRP connectivity. Sam Reiter
AN-088 USRP Host Performance Tuning Tips and Tricks This application note provides various tips and tricks for tuning your host computer for best performance when working with USRP devices. Nate Temple
AN-355 Modifying an X310 Chassis for External LO Sharing This document describes how to modify an X310 chassis to wire the LO out of the back plate. Doing this will allow the user to export and import an LO signal as desired when using a compatible daughterboard such as the TwinRX. Sam Reiter
AN-500 Getting Started with DPDK and UHD This application note walks through the process to get started with the Data Plane Development Kit (DPDK) driver within UHD. Nate Temple

Alex Williams

AN-800 Enabling Ethernet Connectivity on Octoclock and Octoclock-G This document supplements the UHD Manual's guide for updating the Octoclock bootloader to allow for Ethernet communications with the device. Sam Reiter
AN-621 Troubleshooting N310/N320 Device Discovery Issues Troubleshooting guide to intended to cover some of the most commonly recommended steps to enable USRP connectivity. Serves as a supplement to the N3xx getting started guide. Sam Reiter
AN-883 Synchronizing USRP Events Using Timed Commands in UHD Guide to cover common USRP synchronization scenarios and deep-dive into the use of timed commands within USRPs. Sam Reiter
AN-400 Getting Started with RFNoC in UHD 4.0 This AN describes how use RFNoC in UHD 4.0, including building FPGA images for RFNoC, changing which blocks are included in the build, and creating your own RFNoC blocks. Sugandha Gupta
Brent Stapleton
Wade Fife