These tutorials are designed to guide new GNU Radio users to a better understanding of the project: how to work with it, interact with the library, and build your own components and blocks. By the end, you should be comfortable with many of the capabilities of GNU Radio and have some sense for the available tools, functions, and tricks to building your own signal processing project. Please send clearly labeled feedback to: tutorials AT gnuradio.org.
0. Installing GNU Radio
2. Working with GRC
3. Programming GNU Radio in Python
4. Programming GNU Radio in C++
5. Programming Topics
6. Using GNU Radio with Hardware
7. PSK Symbol Demodulation
Note that even as a GNU Radio beginner, you'll be delving into the realm of software defined radio, which is a complex field.
- Core concepts of GNU Radio applications - A must-read for everyone
- WritePythonApplications - A tutorial on how to develop Python GNU Radio applications. Some DSP and programming background required.
- QTGUI Tutorial - A tutorial on how to develop Python GNU Radio applications. Some DSP and programming background required.
- Tom Rondeau's gr-tutorial - Some tutorials from the boss himself.
- Simulations - A tutorial on how to use GNU Radio without hardware to verify performance and simulate RF conditions.
- Basic OFDM Tutorial - Basics of OFDM and how to do rx and tx in GNU Radio
Tutorials on developing with and for GNU Radio
Writing GNU Radio code
- Developing out-of-tree modules and writing blocks - This is the first tutorial you should entirely read and comprehend.
- Tagged streams for variable-length PDUs
- Writing a Python Function for GRC
- How to debug your applications
- How to use Octave or Matlab with GNU Radio
- The GNU Radio Scheduler http://www.trondeau.com/blog/2013/9/15/explaining-the-gnu-radio-scheduler.html
- VOLK Introduction
- Remote GRC Operations
- Working with ALSA and Pulse Audio (Audio sink/source under Linux)
- Git and GNU Radio - A starter on how to use Git for GNU Radio development
- Using VIM for editing GNU Radio modules
- Using Code::Blocks for editing GNU Radio modules
- Building and source level debugging C++ OOT modules with eclipse
Non-GNU Radio-specific tutorials hosted on this wiki
The 3rd-party documentation lives on a separate page which can be found here.