Before the in-depth study of the gnuradio you need to know

Recommended for you: Get network issues from WhatsUp Gold. Not end users.

Original site:

Before the in-depth study of the gnuradio you need to know

Learning GNU Radio needs must have basic computer and in-depth communication and signal processing knowledge, this paper lists some useful resources, including tutorials, Webpage links and some online tutorial. The purpose of this tutorial is to help GNU Radio enthusiasts do some preparation for this exciting tools.


1, To have a clear understanding of gnuradio

2, Write a program for gnuradio

3, Digital signal processing(DSP)

4, Communication system

5, Are you ready?

I believe that you have found the gnuradio fun, and have been eager to use it. Unfortunately, in addition to the infinite pleasure, which also contains many challenges. On the basis of you use gnuradio, you need a wide range of knowledge, including (wireless) communication system, digital signal processing, the design of hardware circuit, and the basic object-oriented programming etc. Anyway, your interest and passion to let those things much easier. This article lists some useful articles and resources, they are very important and perhaps before you dive into gnuradio. There are also some gnuradio community recommended articles, you can also find some useful information here. Remember, before you start learning gnuradio in you, that is not based on you must grasp, but in the next tutorial you will probably have to review these knowledge.

1, To have a clear understanding of gnuradio

If you don't have a clear, please read the Eric BlossomExploring GNU Radio, This is a for a brief introduction to software radio. Eric is the founder of gnuradio project. Please make sure you on how ADC works and why you need to have a certain understanding of RF front end, review the sampling theorem of learning in signal and system course, and then read the two articles: "The Universal Software Radio Peripheral" and"What Goes in the FPGA". This article provides two examples: Dial output and FM receiver. You should do at least understand one. Cannot understand the FM receiver? Don't worry, see second article, Eric Blossom Listen to FM Radio in Software, Step by Step. Not to each line of code to read, but you need to know how to sound signal is extracted from the air.

Looking for any gnuradio related questions should start from the GNU Radio Wiki, Gnuradio Association in providing assistance is also fairly generous, it help through the mailing list. However, before posting a question that is stumping you, do an exhaustive search of the list'S archive to make sure that it has not already been addressed. however, Before the release of your problems in your, The best first carefully on the mailing list in search of a, Make sure that your problem is not treated, Read the e-mail reference provides useful information to ensure, This for others to answer your question will also help. Gnuradio is the software defined radio mainstay, RF front-end is something else. Typically, Ettus Research USRP it is for this purpose.

§ Ettus Research - USRP manufacturers. Here you can order the USRP and accessories.

§ USRP - Frequently Asked Questions - the list of USRP and common problems.

You don't have to USRP (or any RF front end) using GNU Radio, but the actual experiment requires a front end.

2, Write a program for gnuradio

To take full advantage of gnuradio, you should write your own code. In "Exploring GNU Radio'", you know the software structure of gnuradio consists of two layers: the signal processing module all is to use C+ + prepared, python used to create a network or graph and is responsible for the signal processing module together. In this scheme, Python is equivalent to a higher level language. Gnuradio already provides many useful often used modules, so in many cases, you don't need to use C++. The use of Python is efficient in application layer development, use the next tutorial of Python application in gnuradio. However, to complete more complex tasks you must use C+ + to establish their own modules, in this case, Eric BlossomHow to write a block Is exactly what you need, in future tutorials we will these content.

You may want to know which module is realized in gnuradio, unfortunately, unfortunately, GNUradio many places are not well documented, but you still use Doxygen to generate two useful resources. After installing gnuradio-core and USRP module, you can find two HTML package at



I have added a bookmark on my browser. Although they are not clear enough, they can provide you information. GNUradio Doxygen generated document can also online here. If you haven't had a chance to use the Python, please learn Python online tutorial. Here are some of the most important part of:

§ Section 2: Using the Python Interpreter

§ Section 3: An Informal Introduction to Python

§ Section 6: Modules

§ Section 7: Input and Output

§ Section 9: Classes

These concepts are often used in GNUradio programming. If the object oriented programming (OOP) sounds strange, you should read the Section 9 more carefully. If object oriented programming (OOP) sounds unfamiliar to you, you should read section 9 more carefully. link below can help you grasp the essence of object oriented:

§ Lesson: Object-Oriented Programming Concepts

§ Introduction to Object-Oriented programming Using C++

§ The Object Oriented Programming Web

For development, more advanced C+ + knowledge is necessary. For more advanced development, C+ + knowledge will be necessary. the following documents may be useful to you:

§ C++ Language Tutorial

§ C++ Reference

At this stage, Python is more important, so we must master it.

3, Digital signal processing (DSP)

Most of us learn the signal and system course, learn in this lesson is something very important. However, this is not enough. Please make sure that you won't get lost, if the signal converted from analog to digital form to the time domain to the frequency domain, or. You need to know some concepts including the sampling theorem, z transform, how to get the frequency spectrum of a signal and the finite impulse response (FIR) and infinite impulse response (IIR) filter. Here I recommend several of the classic book:

§ Signals and Systems (2nd edition) - Alan V. Oppenheim, Alan S. Willsky

§ Discrete-Time Signal Processing (2nd edition) - Alan V. Oppenheim, Ronald W. Schafer, John R. Buck

§ Digital Signal Processing: Principles, Algorithms and Applications (3rd edition) - John G. Proakis, Dimitris Manolakis

Reading about the discrete time Fourier transform and FIR, IIR filter sections. I know that the book is expensive and tedious, here are some other useful online resources:

§ Digital Signal Processing Tutorial

§ The Scientist and Engineer's Guide to Digital Signal Processing

4, Communication system

We know that send and receive signals are not in the baseband modulation and demodulation, they need. You may am and FM radio concept learning in some courses you at this time, the two belongs to the analog world. For the development of more useful and interesting scheme, we need the digital communication. At this point, particularly important and interesting is the digital modulation, demodulation and synchronization. In three, you may be more interested in communication theory. In addition, I recommend that you read:

§ Chapters 4 and 5 - Digital Communications (4th edition) - John G. Proakis

The two chapter describes the knowledge is what we need. Here is another good books:

§ Digital Signal Processing in Communication Systems - Marvin E. Frerking

This book has a practical focus, contains a lot of good example. Design of Frerking for a given transmitter or receiver usually offers a variety of solutions, the algorithm rather than a purely theoretical discussion, it can even be used as a communication system design.

5, Are you ready?

I listed above four themes, does not mean that before using GNUradio you need a complete. Of course you can learn them in this tutorial learning process. But at least you should read I mentioned in the GNUradio part of the article.

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download

Posted by June at December 16, 2013 - 10:15 AM