Getting Started with UHD and C++

Similar documents
Digital Front End (DFE) Training. DFE Overview

Efficient implementation of a spectrum scanner on a software-defined radio platform

Space Weather Station Project. John Ackermann N8UR

Getting Started Guide

PEP-II longitudinal feedback and the low groupdelay. Dmitry Teytelman

Component BW requirement of 56Gbaud Modulations for 400GbE 2 & 10km PMD

Intro to DSP: Sampling. with GNU Radio Jeff Long

Getting Started Guide

FOUR/EIGHT CHANNEL TUNER ADAPTERS FEATURES DESCRIPTION OCTOBER 05 ASI8702, ASI8703, ASI8705, ASI8712, ASI8713

Proposed reference equalizer change in Clause 124 (TDECQ/SECQ. methodologies).

The Internet of Things in a Cellular World

R&S FSQ-K91/K91n/K91ac WLAN a/b/g/j/n/ac Application Firmware Specifications

Internet of Things. RF-Test. Eduardo Inzunza Speaker Title 18-Jun-2017

Receiving DATV on four bands with Digital Satellite TV equipment

TS-590S Issues and Suggestions

SIGFOX END- PRODUCT RADIATED TEST PLAN FOR SIGFOX READY TM CERTIFICATION

WaveDevice Hardware Modules

FPGA Digital Signal Processing. Derek Kozel July 15, 2017

ECE532 Digital System Design Title: Stereoscopic Depth Detection Using Two Cameras. Final Design Report

DSP in Communications and Signal Processing

USB Smart Power Sensor

RF Record & Playback MATTHIAS CHARRIOT APPLICATION ENGINEER

SIGFOX RADIATED PERFORMANCE SPECIFICATION

RF Technology for 5G mmwave Radios

Receiver Testing to Third Generation Standards. Jim Dunford, October 2011

NI USRP-2950R/2952R/2953R/ 2954R

Improving the accuracy of EMI emissions testing. James Young Rohde & Schwarz

WLAN IEEE802.11a/b/g/j/p/n/ac/ax Measurement Application Specifications

CCE900-IP-TR. User s Guide

Noise Detector ND-1 Operating Manual

DHUA-W8S Specifica on

HV-122-DCA DVB-T 2-Way Diversity Receiver Box Quick Installation Guide

Signals Needed for Digital Communications

mmwave Radar Sensor Auto Radar Apps Webinar: Vehicle Occupancy Detection

INTER-PROCESS COMMUNICATION AND SYNCHRONISATION: Lesson-12: Signal Function

AN 776: Intel Arria 10 UHD Video Reference Design

IQORXD Dual-Channel Multimode Fibre Optic Receiver for SDI

5G New Radio Technology and Performance. Amitava Ghosh Nokia Bell Labs July 20 th, 2017

EMI/EMC diagnostic and debugging

Multiband Noise Reduction Component for PurePath Studio Portable Audio Devices

StrataSync. DSAM 24 Hour POP Report

Using AMI Retimer Models in ADS ChannelSim

Training Note TR-06RD. Schedules. Schedule types

DDC and DUC Filters in SDR platforms

USB Smart Power Sensor

R-1550A Tempest Wide Range Receiver

By Jim Norton Bird Technologies Group Applications Engineer

Orbital 4400X & 4400XI Series X-Band Ext Ref LNB

GALILEO Timing Receiver

Datasheet. Full-Duplex, Point-to-Point Gigabit Radio. Tel: +44 (0) Fax: +44 (0)

Datasheet. Dual-Band airmax ac Radio with Dedicated Wi-Fi Management. Model: B-DB-AC. airmax ac Technology for 300+ Mbps Throughput at 5 GHz

ACTIVE IF SPLITTER/COMBINER UHP-IFS

CABLE LOSS MASKING EFFECT

The Third Generation Mobile Telecommunication Terminal Equipment Technical Specifications

Analyzing Modulated Signals with the V93000 Signal Analyzer Tool. Joe Kelly, Verigy, Inc.

OTM FREQUENCY AGILE 750MHz F.C.C. COMPATIBLE TELEVISION MODULATOR INSTRUCTION MANUAL

Product Specification PE613050

Typical applications:

NanoStation NanoStation. NanoStation. Compact, Hi-Power, 2x2 MIMO AirMax TDMA Station. *Respaldo y Garantía. Datasheet

1.2 GHz GS7000 Node RF Split Upgrade Application Note

Installation Guide AT-HDR-EX-70-2PS

Setting PDH Transmit Parameters

3G-SDI Extender via Single Mode Fiber LC Simplex Connector Extends 3G-SDI Link Up To 20 Kilo Meters

DisplayPort and HDMI Protocol Analysis and Compliance Testing

Model PSKIT-H540 Ultrasonic Power Supply Kit 40 khz 500 Watts

Brilliance. Electron Beam Position Processor

L-Band Fiber Optic Links

Arria-V FPGA interface to DAC/ADC Demo

W-CDMA Base Station Transmitter Tests According to TS Rel. 10

The Kaffeine Handbook. Jürgen Kofler Christophe Thommeret Mauro Carvalho Chehab

It receives contents from 4 DVB-T/T2, DVB-S/S2 or DVB-C transponders/muxes and broadcasts them in 4 DVB-T, DVB-C or IP output channels.

S P E C I F I C A T I O N

OTLT / OTLR 3000 Manual. L-Band Fiber Optic Link MHz INSTRUCTION MANUAL

DVB-S2X for Next Generation C4ISR Applications

L-BAND FREQUENCY CONVERTER

FCPM-6000RC. Mini-Circuits P.O. Box , Brooklyn, NY (718)

ENGINEERING COMMITTEE Interface Practices Subcommittee AMERICAN NATIONAL STANDARD ANSI/SCTE

User Manual K.M.E. Dante Module

R&S CONTEST ITS Test cases and applications

Digilent Nexys-3 Cellular RAM Controller Reference Design Overview

SDI Development Kit using National Semiconductor s LMH0340 serializer and LMH0341 deserializer

HDMI Extender Via One MPO Fiber MPO Connector Extends HDMI Link Up To 200 Meters

APM CALIBRATION PROCEDURE Rev. A June 3, 2015

1Chapter INTRODUCTION. This chapter describes the CST-5000 C-Band satellite terminal, referred to in this manual as the CST-5000 (Figure 1-1).

Ultra-ViewRF 8HD Director Monitor. User Operation Manual

Does it Matter What AP You Buy?

Using the oscillator

This guide gives a brief description of the ims4 functions, how to use this GUI and concludes with a number of examples.

DataSAT ACU-2 Controller Wiring Configuration - Operation

Instrumentation Grade RF & Microwave Subsystems

LTE-A Base Station Performance Tests According to TS Rel. 12 Application Note

USB Smart Power Sensor

CP-255ID Multi-Format to DVI Scaler

MAPON digital video distribution in the European ACTS CRABS Project: simulation and experiment

Dual Channel 3.0 GSPS Analog to Digital Input Module. RF Transformer. 2dB Fixed Attn. RF Transformer. 2dB Fixed Attn

AR SWORD Digital Receiver EXciter (DREX)

Ten Tec RX320 Control Panel. Operation Manual (V2.0)

PiMPro Portable Analyzer PiMPro Classic 1821

Internet of Things. a practical component-oriented approach. What is IoT (wikipedia):

PCI Express JPEG Frame Grabber Hardware Manual Model 817 Rev.E April 09

Transcription:

Contents 1 Application Note Number 2 Revision History 3 Abstract 4 Overview 5 UHD Manual 6 Including Header Files 7 UHD_SAFE_MAIN() 8 set_thread_priority_safe() 9 Create Variables 10 Creating a USRP Object 11 Setting the Motherboard Clocks 12 Selecting the Sub Device 13 Getting the selected Sub Device 14 Setting the Sample Rate 15 Getting the Sample Rate 16 Setting Center Frequency 17 Getting the Center Frequency 18 Setting the RF Gain 19 Reading the RF Gain 20 Setting the IF Filter Bandwidth 21 Getting the IF Filter Bandwidth 22 Selecting the Antenna 23 Getting the Antenna 24 Exiting 25 Full Example 26 CMake 27 Compile and Install 28 Running the Application 29 Additional Example Programs Getting Started with UHD and C++ AN-204 Date Author Details 2016-05-01 Neel Pandeya Nate Temple Initial creation This AN explains how to write and build C++ programs that use the UHD API. This Application Note will walk through building a basic C++ program with UHD. This program will initialize, configure the USRP device, set the sample rate, frequency, gain, bandwidth, and select the antenna. The UHD Manual is hosted at http://files.ettus.com/manual/index.html and provides information on how to use the USRP devices and how to use the UHD API to connect to them through your own software. The manual is split into two parts: The device manual, and the UHD/API manual. The first part describes details of Ettus Research devices, motherboards and daughterboards, as well as aspects of using UHD. The second is meant for developers writing UHD-based applications, and includes descriptions of the API, sorted by namespaces, classes, and files. Defines a safe wrapper that places a catch-all around main. If an exception is thrown, it prints to stderr and returns. Set the scheduling priority on the current thread. Same as set_thread_priority but does not throw on failure. Make a new multi usrp from the device address.

Set the clock source for the usrp device. This sets the source for a 10 MHz reference clock. Typical options for source: internal, external, MIMO. Set the RX frontend specification. The subdev spec maps a physical part of a daughter-board to a channel number. Set the subdev spec before calling into any methods with a channel number. The subdev spec must be the same size across all motherboards. For more details on selecting the Sub Device, see the Specifying the Subdevice section of the UHD Manual. Get a printable summary for this USRP configuration. Set the RX sample rate. The rate is in Samples Per Second. Gets the RX sample rate. Returns the rate is in Samples Per Second. Create a tune request, with the RF frequency in Hz. Set the RX center frequency. Get the RX center frequency. Returns the frequency in Hz. Set the RX gain value for the specified gain element. For an empty name, distribute across all gain elements. Sets the gain in db. Get the RX gain value for the specified gain element. For an empty name, sum across all gain elements. Returns the gain in db. Set the RX bandwidth on the frontend. Sets the bandwidth in Hz. Get the RX bandwidth on the frontend. Returns the bandwidth in Hz. Select the RX antenna on the frontend. Get the selected RX antenna on the frontend. Returns the antenna name.

Use the uhd/host/examples/init_usrp/cmakelists.txt file as template Add the names of your C++ source files to the add_executable(...) section Put both modified CMakeLists.txt file and C++ file into an empty folder

Create a?build? folder and invoke CMake the usual way: mkdir build cd build cmake../ make $./usrp_basic linux; GNU C++ version 4.8.4; Boost_105400; UHD_003.010.git-202-g9e0861e1 Creating the usrp device with: addr=192.168.10.2... -- Opening a USRP2/N-Series device... -- Current recv frame size: 1472 bytes -- Current send frame size: 1472 bytes Lock mboard clocks: internal subdev set to: A:0 Using Device: Single USRP: Device: USRP2 / N-Series Device Mboard 0: N210r4 RX Channel: 0 RX DSP: 0 RX Dboard: A RX Subdev: WBXv2 RX+GDB TX Channel: 0 TX DSP: 0 TX Dboard: A TX Subdev: WBXv2 TX+GDB Setting RX Rate: 1.000000 Msps... Actual RX Rate: 1.000000 Msps... Setting RX Freq: 915.000000 MHz... Actual RX Freq: 915.000000 MHz... Setting RX Gain: 10.000000 db... Actual RX Gain: 10.000000 db... Setting RX Bandwidth: 1.000000 MHz...

Actual RX Bandwidth: 1.000000 MHz... Setting RX Antenna: TX/RX Actual RX Antenna: TX/RX Additional C++ example programs using the UHD API are provided within the Ettus Research Github Repository, located in the host/examples/ directory. These examples are installed with UHD and will be located at $prefix/lib/uhd/examples directory of your system.