wiki:Tutorials/Wireless/GNURadioOFDM

Version 3 (modified by prasanthi, 14 months ago) ( diff )

GNURadio OFDM tutorial

Description

This tutorial illustrates the use of GNURadio OFDM blocks for data transfer between a pair of USRPs. The GNURadio flowgraphs used here were obtained from the workshop material provided for the POWDER-RENEW Mobile and Wireless Week 2019. They are mainly based on the GRC examples available in the [GNURadio repository https://github.com/gnuradio/gnuradio/tree/main/gr-digital/examples/ofdm]. For a good understanding of the flowgraphs and the blocks, please refer to OFDM pages on GNURadio Wiki such as OFDM Basics and OFDM Synchronization

Prerequisites

In order to access the test bed, create a reservation and have it approved by the reservation service. Access to the resources is granted after the reservation is confirmed. Please follow the process shown on the COSMOS getting started page to get started.

Resources required

A pair of USRPs in COSMOS or ORBIT testbed.

  • 2 USRP X310s (connected to node1-1,node1-2) in sb2.orbit-lab.org or
  • 2 USRP 2974s (sdr2-s1-lg1,sdr1-md1) in sb1.cosmos-lab.org

Tutorial Setup

Follow the steps below to gain access to the sandbox 1 console and set up nodes with appropriate images.

  1. If you don't have one already, sign up for a COSMOS account
  2. Create a resource reservation on sandbox 1
  3. Login into sandbox 1 console (console.sb1.cosmos-lab.org) with an SSH session. SSH session for COSMOS SB1 with Moba Xterm can be setup as shown, with remote host = console.sb1.cosmos-lab.org, and username = your COSMOS username. X11 forwarding is enabled to access GUI.

No image "mobaxterm_sb1_session.JPG" attached to Tutorials/Wireless/GNURadioOFDM

  1. Make sure all the nodes and devices used in the experiment are turned off:
    omf tell -a offh -t system:topo:all  
    
  2. Load gnuradio_ofdm.ndz on both the nodes
    omf load -i gnuradio_ofdm.ndz -t node1-1,node1-2
    
  3. Turn the nodes on and check the status
    omf tell -a on -t node1-1,node1-2
    
    omf stat -t all
    
  4. Open 2 terminal sessions and ssh into the nodes with -Y for X11 forwarding
    ssh root@node1-1 -Y
    ssh root@node1-2 -Y
    

Experiment Execution

Find the USRPs

Run the GRC application

gnuradio-companion  /root/gr-ettus/examples/rfnoc/rfnoc_fosphor.grc
root@sdr2-s1-lg1:~# gnuradio-companion  /root/gr-ettus/examples/rfnoc/rfnoc_fosphor.grc
<<< Welcome to GNU Radio Companion 3.7.14.0 >>>

Block paths:
        /usr/local/share/gnuradio/grc/blocks

Loading: "/root/gr-ettus/examples/rfnoc/rfnoc_fosphor.grc"
>>> Done

With X11 forwarding enabled, GRC should show up as below. Set Device Arguments in the Device3 block to "resource=RIO0,fpga-path=/root/bit/rfnoc3_15_fosphor_x310.lvbitx".

No image "rfnoc_fosphor_grc.jpg" attached to Tutorials/Wireless/GNURadioOFDM

Set center frequency, bandwidth and run the application to see spectrum display.

No image "rfnoc_fosphor_display.jpg" attached to Tutorials/Wireless/GNURadioOFDM No image "rfnoc_fosphor_display_bed.jpg" attached to Tutorials/Wireless/GNURadioOFDM

Attachments (7)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.