RP108FA
RP108FA
ABSTRACT
The GNU Radio and USRP are important tools that can
be used by students to learn the theory of various areas,
such as digital signal processing and telecommunications.
This work presents how the GNU Radio and USRP
has been used to transmit/receive signals in wired and
wireless channels for a wide range of frequencies. Two
case studies are discussed: cellular phone jamming and Fig. 1. Simplified block diagram of how GNU Radio and USRP can be
modulation classification. When dealing with these two configured.
(and other) topics, the students get involved with several
important theoretical as well as practical issues. The work
summarizes strategies to benefit from the combination daughter-boards, to operate in frequencies from DC to
of GNU Radio and USRP and increase their impact on 6 GHz.
engineering education. GNU Radio is a development toolkit that provides signal
processing blocks to implement software radios. Using
Keywords: GNU Radio, jammer, modulation the GNU Radio, it is possible to create (or to receive)
classification, PBL, USRP. digital data streams that can be transmitted (or sampled)
by hardware (for example, the USRP) or , simply written
1. I NTRODUCTION (or read) to (from) a file [4].
The PBL (Problem-Based Learning) is a Several institutions in the world have foreseen the
student-centered learning method in which students advantages of using the USRP and GNU Radio. The 2012
are encouraged to solve real-world problems, most of the IEEE Globecom conference, in Anaheim, held a session
time, in groups [1], [2]. The idea is that the students can specifically about the adoption of such software radio tools
apply and learn the necessary theory in a practical way, for teaching purposes. Institutions such as UT Texas at
helping them to learn the content as well as improving Austin, USA, and RWTH Aachen University, Germany,
their thinking strategies and interpersonal relationships. have developed and distributed teaching material regarding
In this context, the USRP (Universal Software Radio several basic and advanced concepts. This work follows
Peripheral) and GNU Radio are important tools for this trend with the specific characteristic of using PBL in
teaching telecommunications and associated areas, given projects that are of interest for research. This way one can
that they are, respectively, a relatively low cost hardware benefit from the synergy of research and education-oriented
and open-source software. projects, in an environment where both undergraduate
Figure 1 illustrates how the USRP and the GNU Radio and graduate students cooperate. Therefore, the approach
operate together. Each one is briefly described in the adopted here is to describe two specific case studies and
sequel. The USRP is a generic hardware to transmit and/or indicate the concepts that are emphasized.
receive signals [3]. It is composed by a motherboard The work is organized as follows. Section 2 presents
that can be connected to several daughter-boards that the general task of how to use the GNU Radio and USRP
provide a variety of interfaces from simple analog filters to send/receive signals through a real channel. Sections 3
to complex down and up conversion circuits for many and 4 describe two case studies: cellular-phone jamming
frequencies bands. Thereby, the USRP is able, with the and modulation classification, both implemented with GNU
Radio and an USRP. They are followed by the conclusions.
where
2. GR C OMPANION FOR TASKS USING THE EXISTING
E is the symbol energy ;
FUNCTIONALITIES IN GNU R ADIO
T is the symbol Period;
The GNU Radio project provides a set of signal t is a any time, 0 ≤ t ≤ T ;
processing blocks that can be aggregated to build fc is the carrier frequency.
flow-graphs. These blocks are written in C++ and run Figure 3 shows the blocks used in a bit transmission
in Python, which brings several advantages, such as easy over wireless channel. The block Vector Source sends
instantiation and connection of existing blocks and easy a vector specified by the user. When executing this
GUI (Graphical User Interface) creation, as shown in project, the vector is composed by 0s and 1s; the block
Figure 2. The user only needs knowledge of how each repeats the vector whenever it reaches the end. The Vector
block works, which is an invitation to the proper study of Source output is connected to a Packet Encoder which is
algorithms that process the samples in frames (or blocks). responsible for encoding the data, such that the receiver
can find the beginning of the transmitted data.
Fig. 2. GNU Radio graphical user interface. After the encoder, the encoding data are sent to PSK
Mod which is responsible to modulate the information
The existing blocks in GNU Radio cover various using PSK. In this block, it is possible use different
applications from simple mathematical operations to configurations like if it is desired use gray code and
complex digital filtering, modulators/demodulators, differential encoding as well as the number of points in
channel coding blocks, voice codecs and others. constellations, among others. In this example, the PSK Mod
A special class of blocks are the input/output blocks. was configured as a BPSK modulator.
They create an interface with the real world, the most The value of the samples in PSK Mod output is modified
known of them are UHD (USRP hardware driver) blocks (multiplied by a constant) by Multiply Const block, such
and Audio blocks. that the power of modulated signal can be changed. Lastly,
The UHD blocks are created to use the USRP in transmitter, the signal is sent to UHD: USRP Sink block
and normally put/get signals from wireless medium. which is responsible for interact with the USRP. This block
Alternatively, the audio blocks put/get the signal from has several parameters that are used by the hardware like
sound card. sampling frequency, carrier frequency and what antenna is
being used on the daughter-board.
2.1. Wireless transmission example using USRP Figure 4 shows the blocks used in reception of wireless
At the Federal University of Para, students with access BPSK signals. The UHD: USRP Source block abstracts all
to a USRP use the GNU Radio to transmit signals through the hardware in reception (USRP and daughters-boards)
wireless channels. As an example of the procedures, this and its outputs are the samples of the received signal in
subsection presents a wireless digital communication using baseband. In this block, like the UHD: USRP Sink, it
BPSK (binary phase-shift keying) modulation. is possible to define several parameters of the hardware.
As it is well-known, in BPSK modulation there are The UHD: USRP Source output is connected to PSK
only two symbols, representing the bits 0 or 1. They are Demod block that demodulates the PSK signal (BPSK
separated by a π phase shifting. The bits 0 and 1 could be in this example), recovering the encoding data. After the
represented by [5]: demodulation, the encoding data is sent to Packet Decoder
r block which decodes the data and outputs the bits (the
2E information sent by Vector Source). Once the information
s0 (t) = cos(2πfc t) (1)
T was recovered, the Char to Float block converts the byte in
r float, so that the information can be used by others blocks.
2E For this wireless example, the students used an USRP
s1 (t) = cos(2πfc t + π) (2) with two daughter-boards (RX2400) and two antennas,
T
Fig. 4. GNU Radio BPSK receiver flow graph. Fig. 7. BPSK received signal spectrum.
each one used on transmitter and receiver, as shown in To exemplify the data transmission using a sound card,
Figure 5. It was sent a sequence of 0s and 1s. Figures 6 the authors created a flow-graph transmitting/receiving a
and 7 show the FFTs of the transmitted and received signal, QAM signal. GNU Radio already has QAM modulator and
respectively. demodulator, so we only need to instantiate and connect the
This wireless experiment allows students to implement blocks using GNU Radio GUI (GNU Radio-companion),
and study several telecommunication concepts, such QAM transmitter flow-graph can be seen in Figure 8, and
as channel estimation, noise analysis and modulation QAM receiver can be seen in Figure 9.
development.