Module Info

Provides blocks and Python classes to build an OFDM transmitter and receiver for research and teaching purposes with dynamically configurable transmission parameters. Includes Python Qt based GUI for visualization.

alt text

Build requirements

In order to build the gr-ofdm module you will need to install the following prerequisites

How to build

In the gr-ofdm folder do

mkdir build
cd build
cmake ../


make install

How to run the apps

Assuming that the module has been compiled but not installed, in the gr-ofdm folder do

cd apps

to run the simulation or

./ ../python/ -f2.45G


./ ../python/ -f2.45G --disable-ctf-enhancer --scatterplot

to run the rf transmission. Then to oberserve everything in th graphical user interface:

./ gui/


./ gui/ --tx-hostname=<hostname>

be careful with the frequency offset of you radio frontend. It might be necessary to apply a small manual correction of a few kHz.

Additional features:


./  --coding  --data-blocks=10

Adaptive OFDM

./ --sinr-est --multipath

with USRPs and adaptive OFDM enabled

./ --rx-hostname=<hostname or ip> -f 2.45G --tx-gain=<gain>
./ --tx-hostname=<hostname or ip> -f 2.45G --sinr-est


Skript for the undergraduate lab


Zivkovic, Milan, Johannes Schmitz, and Rudolf Mathar SDR in teaching: An OFDM communication primer 8th Karlsruhe Workshop on Software Radios, Karlsruhe, Germany, March 2014.

Johannes Schmitz and Milan Zivkovic and Rudolf Mathar Extended Cyclostationary Signatures for OFDM-Based Cognitive Radio 7th Karlsruhe Workshop on Software Radios, Karlsruhe, Germany, March 2012

M. Zivkovic, R. Mathar Preamble-based SNR Estimation in Frequency Selective Channels for Wireless OFDM Systems IEEE VTC Spring 2009, Barcelona, Spain, April 2009.