rwth-ti / gr-ofdm

Out-of-tree module for GNU Radio containing a complete OFDM implementation including GUI for reasearch and teaching
GNU General Public License v3.0
65 stars 42 forks source link

⚠️ THIS REPOSITORY IS UNMAINTAINED ⚠️

gr-ofdm GNU Radio module

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 and install

In the gr-ofdm folder do

mkdir build
cd build
cmake ../
make

Installation is optional

make install

for USRP1 devices copy the special FPGA image

usrp/images/std_1rxhb_1txhb.rbf

to the uhd images directory. This is necessary to obtain a flat frequency response.

How to run the apps

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

cd apps
./run_benchmark_gui.sh

to run the simulation or

./run_app.sh ../python/tx.py -f2.45G

And

./run_app.sh ../python/rx.py -f2.45G --disable-ctf-enhancer --scatterplot

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

./run_app.sh gui/ofdm_tx_gui.py

and

./run_app.sh gui/ofdm_rx_gui.py --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

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

Adaptive OFDM

./run_benchmark_gui.sh --sinr-est --multipath

with USRPs and adaptive OFDM enabled

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

Literature

Skript for the undergraduate lab

https://www.ti.rwth-aachen.de/teaching/laboratory/ofdm/data/SkriptWS1516.pdf

Papers

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.

Copyright information

Copyright © 2015 Institute for Theoretical Information Technology, RWTH Aachen University https://www.ti.rwth-aachen.de/

Unless otherwise stated, all files are distributed under GPL v3 license.