2. Final Report of Project:
A Low-Complexity Cognitive Radio
using COTS equipment
Author:
Jan Salomón, Gilberto Blas, Héctor Tosado,
Radamés Peña, Oscar García
Advisor:
Lizdabel Morales, PhD.
University of Puerto Rico, Mayagüez
Campus
ECE - Electrical and Computing Engineering
Department.
IWINC - Intelligent Wireless Networking
Communications Laboratory
May 18, 2011
3. Table of Contents
1. Introduction 4
2. Theoretical Frame 5
3. GNURadio Installation 10
4. Outcomes: The OFDM communication Demo 13
5. Conference and Meetings 16
6. LoCom Blog 18
7. LoCom Outreach and Workshop participation 19
8. Future Works 20
9. Bibliography 21
4. Introduction
This report, far from being a more detailed summary of activities that have
been realized by LoCom, shows the structure of our group and the problems
that we have encountered in the execution of the project between January and
June 2011. We will start by mentioning the state of the project at the
beginning of the semester, its evolution in those months, a comparison
between our project and those worked on by our fellow colleagues in the
Electrical and Computer Department (ECE) and finally our future works for
next semester.
To enter into context, in this work we can envision how is the current
panorama, both regionally and worldwide, in aspects relating wireless
communication, software radio and cognitive radio. Accordingly, they teach
what are our motivations, expectations and goals in the future.
Among the activities mentioned in the report we can find the literature review
of the fundamental theoretical concepts in the area of digital signal
processing, communications, software defined radio, cognitive radio and
programming languages. Similarly, the experiments that were done in the
laboratory, first to prove the functionality of the USRP and GNU Radio, and
then to test common theoretical aspects of software defined radio. Also
mentioned in the report are the meeting and conferences that we have
attended where we have reported and shared our results with fellow peers
and the engineering community in general.
5. Theoretical Frame
Currently, society has a big demand in its communication processes for:
connectivity, mobility, performance and throughput. We live in a world of high
demand for faster and more efficient connectivity; we wish to be able to
access theses recourses anywhere and on the fly, having slow output might
mean significant losses to a company or poor efficiency could end up costing
the company more resources than what they need to and could limit their
potential. Wireless communication devices have demonstrated to meet the
aforementioned demands with certain outcomes leaving a lot of room for
improvement. Within them, different prototypes of radios are still being
developed to reach these specific goals. According to present and future
demands in communication, Cognitive Radio (CR) is one of the solutions
considered that can address most of the problems being encountered in
wireless communications in a more cost efficient way than what is being used.
Next, we will define the most important concepts in our research:
• Software Defined Radio:
Software Defined Radio (SDR) is a radio communication system where
components that have been typically implemented in hardware are instead
implemented by means of software on a personal computer or embedded
computing devices. Software radio is the technique of getting code as close to
the antenna as possible. The fundamental characteristic of software radio is
that software defines the transmitted waveforms, and software demodulates
the received waveforms. It turns radio hardware problems into software
problems giving more flexibility with one piece of hardware.
• GNU Radio:
The GNU Radio project is an open source toolbox to develop code and deploy
software radios. There are three ways to access the resources of the GNU
Radio: GNU Radio Companion (GRC), C++ and Python. C++ is used in
applications with signal processing that are closer to the physical layer. On the
other hand, Python is used to display relevant information to the end user
through an API. GRC is a development tool bundled with GNU Radio; it utilizes
block libraries to build SDR systems. Many blocks are bundled and ready for
use, even though, the programmer can build his own blocks. All blocks are
built on C++ functions and the signal processing outcomes are displayed with
Python to the end user.
6. Figure 1. Structure of GNURadio
• Universal Software Radio Peripheral
The Universal Software Radio Peripheral (USRP) is a very flexible USB
device that connects a personal computer to the RF world.
consists of a small motherboard co
sample/sec analog-to-digital
digital-to-analog converters, a million gate
(FPGA) and a programmable USB 2.0 controller, 4 extension sockets (2 TX,
2 RX) in order to connect 2
through 4 Basic TX/Basic RX daughterboards (16 pins each). The USRP
daughterboard features an ISM band filter that suppresses the RF signal
outside the 2402-2480 MHz band and attenuates it withi
one dB or two. The flexibility of the USRP comes from the two
programmable components on the board and their interaction with the
host-side library.
Figure 2. Parts of
Figure 1. Structure of GNURadio
Universal Software Radio Peripheral:
The Universal Software Radio Peripheral (USRP) is a very flexible USB
device that connects a personal computer to the RF world. The USRP
consists of a small motherboard containing up to four 12
digital-converters, four 14-bit, 128M sample/sec
analog converters, a million gate-field programmable gate array
(FPGA) and a programmable USB 2.0 controller, 4 extension sockets (2 TX,
n order to connect 2-4 daughterboards, 64 GPIO pins available
through 4 Basic TX/Basic RX daughterboards (16 pins each). The USRP
daughterboard features an ISM band filter that suppresses the RF signal
2480 MHz band and attenuates it within such band by
one dB or two. The flexibility of the USRP comes from the two
programmable components on the board and their interaction with the
Figure 2. Parts of LoCom’s USRP
The Universal Software Radio Peripheral (USRP) is a very flexible USB
The USRP
-bit 64M
bit, 128M sample/sec
field programmable gate array
(FPGA) and a programmable USB 2.0 controller, 4 extension sockets (2 TX,
4 daughterboards, 64 GPIO pins available
through 4 Basic TX/Basic RX daughterboards (16 pins each). The USRP
daughterboard features an ISM band filter that suppresses the RF signal
n such band by
one dB or two. The flexibility of the USRP comes from the two
programmable components on the board and their interaction with the
7. • Cognitive Radio:
Cognitive Radio is a hybrid technology that involves the use of a software
defined radio with a host personal computer. An SDR is an important device in
our design because of the reconfigurability it offers. On the other hand, a
computer is capable of executing functions of artificial intelligence. When both
come together, it is said that we now have a CR system. One of the important
qualities of the CR is that it has the capacity of selecting the best option
between the available channels to insure a better communication. In this way
the usage of the electromagnetic spectrum will be improved. The key concept
is that CR has the ability of responding to the changes in its environment and
adapts its system’s parameters. Possible functions of cognitive radio include
the ability of a transceiver to determine its geographic location, identify and
authorize its user, encrypt or decrypt signals, sense neighboring wireless
devices in operation, and adjust output power and modulation characteristics.
• Why use ISM Band in 2.4 GHz?
The 2.4Ghz is used for two main reasons: because this band does not require
a license to tamper with (free to use) and because the USRP device operates
on the 2.4-2.8Ghz range (the former is actually the reason for the latter). What
this number means is that the USRP will broadcast at a frequency that is
within the legal boundaries of civilian use. A glance at FCC regulations
confirms that the band of frequencies around 2.4 GHz has been assigned,
along with a handful of others, as the industrial, scientific, and medical radio
bands.
Figure 3. ISM Band Frequency Spectrum
One of our main projects with the USRP will be creating a spectrum analyzer
for Bluetooth devices which also happen to operate around the 2.4Ghz range.
Since the USRP is well equipped to operate around this band, the spectrum
analyzer will attempt to detect any Bluetooth (or any commercial device, as a
8. later project) operating around this frequency. Creating a spectrum analyzer
out of a cheap commercial programmable radio can potentially save
thousands of dollars for people who wish to purchase a analog spectrum
analyzer which price is well over $5000 in most cases. We cannot, however,
detect anything below this frequency such as AM and FM radio or
police/military radios since the USRP does not operate within this range.
However, having a spectrum analyzer to detect commercial devices does have
its applications such as troubleshooting devices, or ensuring that any
transmitter working within this range can be detected.
Figure 4. Traditional Spectrum Analyzer
In short, the 2.4-2.8Ghz range will be ideal for testing and analyzing the
spectrum of commercial devices. The development of a cheap spectrum
analyzer will potentially allow access of a spectrum analyzer to those with a
small budget or those interested in saving money for a analog spectrum
analyzer working in the 2.4-2.8Ghz range.
• Bluetooth Sensing
Currently, the FCC is currently concerned with traditional licensed-based
policies and trying to move toward the adoption of “spectrum sharing”
strategies like ultra-wideband (UWB) and cognitive radio. While UWB systems
help achieve a more efficient spectrum usage by overlaying existing
narrowband systems, cognitive radios find and use the empty frequency
bands. Cognitive radios rely on the fact that a significant portion of the
spectrum allocated to licensed services shows little usage over time.
So where does Bluetooth come in and how is this related to cognitive radio?
Bluetooth is a proprietary open wireless technology standard for exchanging
data over short distances (using short wavelength radio transmissions) from
fixed and mobile devices, creating personal area networks (PANs) with high
levels of security and operates within the license-free ISM band at 2.402-
2.480 GHz.
9. Figure 5. A Bluetooth Peripheral
Since Bluetooth is a relatively new and recent technology that is available
from phones to any kind of residential, commercial or scientifical peripheral
means that one day there might be enough Bluetooth devices at any given
place that there might be interference among the devices in the same
frequency band. Cognitive radio could attempt to solve this by detecting free
space within its portion of the ISM band to ensure complete and uninterrupted
communication. This means not only that interference would be reduced, but
faster more reliable communication is ensured between devices.
10. GNURadio Installation
To install GNURadio in any operating system result in a big effort for any
people. After many tries, nights and endless reads, we have a guide to install
GNURadio from scratch and straight-forward on Ubuntu. The installations were
probed on Ubuntu 9.10, 10.04 and the release Maverick 10.10.
• First Method - Manual Installation
This is the most complicated of the three ways, but you can install the last
release version or any version and to control in all steps of the process. To
install GNURadio step by step follow the next steps:
1) First, you need to download the latest development code. To accomplish
this, open the terminal and enter the following command:
$ git clone http://gnuradio.org/git/gnuradio.git
(This step takes a few minutes, so please, make sure to wait until the
download is complete)
2) Then, you need to open Synaptic Package Manager and add GNU Radio
sources onto it.
Go to System > Administration > Synaptic Package Manager. Then, go to
Settings > Repositories > Other Software and click Add.
Then add the following sources:
deb http://gnuradio.org/ubuntu stable main
deb-src http://gnuradio.org/ubuntu stable main
deb http://mirrors.kernel.org/ubuntu maverickmain universe
Close that window and click Reload.
3) Search for gnuradio, right click on gnuradioand click Mark for Installation.
After that, click on the apply button.
11. 4) By this point, you are ready to test the GNU Radio. Go to Places > Home
Folder > gnuradio > gnuradio-examples > python > audio and then run
noise.py. If this works, you have installed GNU Radio correctly.
5) In order to connect a USRP (Universal Software Radio Peripheral) devices,
you need to add a 'usrp' user group. Go to your terminal and add this
lines (Be careful, you need to substitute MachineName for the real name
of your machine):
$sudo addgroup usrp$ sudo addgroup 'MachineName'usrp$ echo
'ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="fffe",
ATTR{idProduct}=="0002", GROUP:="usrp", MODE:"0660"' > tmpfile
$sudo chown root.root tmpfile$ sudo mv tmpfile /etc/udev/rules.d/10-
usrp.rules
Then,
$sudo service udev restart$ sudo ldconfig
6. Restart your machine and test your connection to the USRP by running
examples codes from:
…/gnuradio-examples/python/usrp/
• Second Method – Synaptyc Package Manager or Software
Center
The methods of installation were found to work two ways: either with the
synaptic package manager or the software center for more recent versions of
Ubuntu. The synaptic and terminal method is preferred due to the fact that it
always fetches the most recent version of the GNU radio library.
The steps to follow for the synaptic package manager are divided into two
parts:
1. Change repositories in the synaptic package manager
Some repositories need to be changed in order for the installation of the GNU
Radio to work. The installation will fail unless these are changed.
2. Checkmark GNURadio from the Synaptic Manager list
This will download the GNU Radio package. It is self-installing so not much
work is required
12. Figure
An alternate way of installation for the less tech savvy can be completed
through the Ubuntu Software Center. The Software Center is a
program for browsing, installing and removing software on the
operating system. The GNU Radio Library can be found in the Software Center
besides it is an almost fool
beginning of the research this was not available due to the fact that previous
version of Ubuntu was used that did not have the Software Center, but it is a
viable alternative.
Figure
Since up-to-date versions of the GNU Radio library can be found through the
use of the synaptic/terminal method, it is the preferred method. This
guarantees less error during compilation and more stable programs to be
written and run. The step by step inst
at the GNU Radio Wiki.
Figure 6. Ubuntu Software Center
An alternate way of installation for the less tech savvy can be completed
through the Ubuntu Software Center. The Software Center is a comp
for browsing, installing and removing software on the
operating system. The GNU Radio Library can be found in the Software Center
it is an almost fool-proof way of a successful installation. At the
ginning of the research this was not available due to the fact that previous
version of Ubuntu was used that did not have the Software Center, but it is a
Figure 7. Ubuntu Software Center
date versions of the GNU Radio library can be found through the
use of the synaptic/terminal method, it is the preferred method. This
guarantees less error during compilation and more stable programs to be
written and run. The step by step instructions using this method can be found
An alternate way of installation for the less tech savvy can be completed
computer
for browsing, installing and removing software on the Ubuntu
operating system. The GNU Radio Library can be found in the Software Center,
successful installation. At the
ginning of the research this was not available due to the fact that previous
version of Ubuntu was used that did not have the Software Center, but it is a
date versions of the GNU Radio library can be found through the
use of the synaptic/terminal method, it is the preferred method. This
guarantees less error during compilation and more stable programs to be
ructions using this method can be found
13. Outcomes: The OFDM
Communication Demo
The demonstration shown in the IAP event is the most relevant outcome by
LoCom. This demo consists in the transmission of a voice signal from one
USRP to another. The software was coded using GNURadio Companion. To
capture the voice was used a microphone and after the signal was sampling
for GNURadio from the Computer’s audio card. In the receptor, the voice
transmitted was listened with commons speakers. The step by step
description is shown next:
• Transmitter (Tx)
First the block Audio Source allow to
GNURadio load the audio in the audio
card sampling to 48 KHz. The signal
loaded is a float data type variable in
the range between -1 to 1. It is desired
to have a signal among 0 and 255, thus
1 is added to the signal with the Add
Const block and after multiplied for 128
with the Multiply Const block.
The next step is to modulate the audio signal with an OFDM
modulation. The input of this block must be UChar type, is for
this reason that in the before step finish up with the block
Float to UChar.
The last step is amplifying the signal with Multiply
Const before send it to the USRP to transmit it with
USRP1 Sink. To observe the output of the USRP a block
WX GUI FFT Sink is used.
14. Two Slider Bars allow
the transmission frequency
When the program is running appears the
Figure 8. GUI of the OF
Two Slider Bars allow changing the transmission power and
the transmission frequency through WX GUI Slider blocks.
the program is running appears the following GUI:
Figure 8. GUI of the OFDM TX
the transmission power and
blocks.
15. • Receiver (Rx)
In the same way, the receiver has the same blocks that the Tx or blocks with
inverse functions, because in this case we want to demodulate the RF signal
and send it to the audio card to listen it. The following GRC program
correspond to a radio frequency receiver with modulation OFDM:
Figure 9. GRC program of RX
16. Conferences and Meetings
This semester Low Complexity Cognitive Radio group had the opportunity to
attend various conferences and meetings. There we were able to present our
research through power point and/or poster presentations. From the
conferences accepted are the: Puerto Rico Louis Stokes Alliance for Minority
Participation (PRLSAMP), Computing Alliance for Hispanic Serving Institutes
(CAHSI) and Industrial Affiliate Program (IAP).
• PRLSAMP - PRISM
The Puerto Rico Interdisciplinary Scientific Meeting The Puerto Rico
Interdisciplinary Scientific Meeting is the annual island wide forum for
undergraduate science, technology, engineering and mathematics
(STEM) students to present their research projects Every March over
350 undergraduate and graduate STEM students majors from the
different universities in Puerto Rico present their research projects to an
audience of over 750 faculty members and peers. The event opens with
a plenary conference by a nationally recognized scientist.
This year's PRISM took place at UIA-Bayamon campus on March 12,
2011 with the opening done by Dr. Tyrone Hayes presenting in the field
of biology.
In this conference Hector Tosado had the opportunity to do our first
presentation of the semester. There he presented our approach towards
achieving a Software defined radio, the tools used and what’s our
motivation into achieving a Cognitive Radio.
• Computing Alliance of Hispanic Serving Institutions CAHSI
Annual Meeting
This conference was celebrated March 27 through the 29th
at the Caribe
Hilton Hotel at San Juan, Puerto Rico. Different talks and workshops
were offered varying from the importance of minority participation and
the importance of the GRE. In this conference both Jan Salomon and
Hector Tosado participated in the poster presentation. In this poster we
already had running examples of GRC in where we had a spectrum
analyzer receiving the signal of a nearby Bluetooth device.
• Industrial Affiliate Program - IAP
This meeting was taken place at the University of Puerto Rico at
Mayaguez on April 6 and 7. This meeting brought the opportunity to
present our work to a few of the leading companies in the industry,
17. companies like Texas Instrument, Harris and Verizon, so that t
see our research progress. We presented them with a demo that
consisted of two USRP’s successfully communicatin
One USRP was used to receive an audio signal from a microphone input
and the other USRP was used to receive the signal wirelessly and play it
back. This was done using the
Radio.
like Texas Instrument, Harris and Verizon, so that they could
see our research progress. We presented them with a demo that
consisted of two USRP’s successfully communicating with each other.
One USRP was used to receive an audio signal from a microphone input
and the other USRP was used to receive the signal wirelessly and play it
back. This was done using the GNU Radio Companion (GRC) from
hey could
see our research progress. We presented them with a demo that
g with each other.
One USRP was used to receive an audio signal from a microphone input
and the other USRP was used to receive the signal wirelessly and play it
Companion (GRC) from GNU
18. LoCom Blog
Currently Low Complexity Cognitive Radio group has a blog
keep track of our events, accomplishments and
regarding our investigation.
outside can keep tabs on our progress and ask about anything they don’t
understand or comment about a specific subject.
information about our past conferences, outreach done by our professor and
students from the research group, and
2.4 GHz and OFDM type modulation.
Blog
Currently Low Complexity Cognitive Radio group has a blog up and running to
keep track of our events, accomplishments and any important information
regarding our investigation. This can work as a tool so that people from the
outside can keep tabs on our progress and ask about anything they don’t
understand or comment about a specific subject. At the moment we have
information about our past conferences, outreach done by our professor and
students from the research group, and extra information about our use of the
and OFDM type modulation.
up and running to
important information
people from the
outside can keep tabs on our progress and ask about anything they don’t
At the moment we have
information about our past conferences, outreach done by our professor and
extra information about our use of the
19. LoCom Outreach and
Workshop participation
As part of the IWinC objectives LoCom had been invited to various events and
workshops to show our developments and to meet our experiences in the
disciplines of Digital Signal Processing, Communications and
Cognitive/Software Radio. Among the events are:
• Undergraduate students Orientation by area of emphasis
• High School students Orientation in CROEM
• Open House of University of Puerto Rico at Mayaguez.
• Workshop for anniversary of 100 years of University of Puerto Rico at
Mayaguez.
• Workshop of Digital Signal Processing, organized by the Sociedad de
Ingenieros Electricistas de Puerto Rico, Chapter UPR Mayaguez.
20. Future Works
At our purpose of build a cognitive radio, for the next semester the LoCom
group plans:
• Review more literature.
• Design and code more Software Radios (not only USRP1).
• Study and deploy one low complexity cognitive algorithm in Python
language.
• Design and implement our own GRC block.
• Transmit and receive an image.
• To design validation experiments and create a guide for education
experiments that can be incorporated into core classes.
• To create an outreach program that can motivate students in high
school and university level to study communications and DSP.
21. Bibliography
1. Reed J. Software Radio, A Modern Approach to Radio Engineering.
Prentice Hall, 2002.
2. http://www.ettus.com/
3. http://www.gnuradio.org
4. Ziemer R.E, Tranter W.H. Principles of Communications: Systems,
Modulation, and Noise, 5th Edition. John Wiley & Sons, Inc., 2002.
5. Pilgrim M. Dive Into Python 3. Apress, 2009.