Skip to main content



Using the UHD Python API to control USRPs: Spectrum analyzer example

I recently discovered the UHD Python API for controlling USRPs. It is really nice, and the performance isn't too shabby, when you use numpy for signal processing. You have nearly all of the UHD C API available on Python, and some additional high level calls, such as recv_num_samples. We're currently in the process of implementing an open source software defined ionosonde using just the UHD Python API. Stay tuned. Here's a simple example, which implements a spectrum analyzer. We've been using this to test that our system meets the frequency licensing requirements: #!/usr/bin/env python3 import numpy as n import uhd import scipy.signal as ss import time import matplotlib.pyplot as plt import h5py def acquire_spectrum(freq=12.5e6,                      sample_rate=25e6,                      N=250000,                       N_windows=10000,                       subdev="A:A",                      ofname="spec.h5"):     usrp = uhd

Latest posts

SIMONe Argentina: Exploring the MLT dynamics over southern Patagonia

SIMONe Peru: After 6 months of operations.

April 16th 2020 bolide in Peru

Incoherent scatter radar measurement techniques - Part 2

Incoherent scatter radar measurement techniques - Part 1

Statistics of incoherent scatter radar signals


Polar bear and dogsledding

Transmitting a simple sine wave in gnuradio using the USRP - and measuring it's power

Towards A 21st Century Understanding of Earth's Upper Atmosphere

Oblique ionograms between Sodankylä and Longyearbyen

USRP BasicTX and LFTX - what is the maximum transmit power?

Studying the polar cap ionosphere with HF radar

One more pass of the anti-satellite debris cloud

Indian anti-satellite debris measured with the EISCAT Tromsø Radar

Exploring an ice cave

Shoveling snow under the aurora