Tutorials: Difference between revisions

From GNU Radio
Jump to navigation Jump to search
(Imported from Redmine)
 
(a quick google search of decibels will show dozens of content with this exact info, no need for a separate section for it)
(17 intermediate revisions by 4 users not shown)
Line 1: Line 1:
= Tutorials =
= Guided Tutorials =


{{toc}}
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.


== Guided Tutorials ==
# [[InstallingGR|Installing GNU Radio]]
# [[Guided_Tutorial_Introduction|Introduction]]
# [[Guided_Tutorial_GRC|Working with GRC]]
# [[Guided_Tutorial_GNU_Radio_in_Python|Programming GNU Radio in Python]]
# [[Guided_Tutorial_GNU_Radio_in_C++|Programming GNU Radio in C++]]
# [[Guided_Tutorial_Programming_Topics|Programming Topics]]
# [[Guided_Tutorial_Hardware_Considerations|Using GNU Radio with Hardware]]
# [[Guided_Tutorial_PSK_Demodulation|PSK Symbol Demodulation]]
# [[Guided Tutorial Extras Sample Rates| Guided Tutorial Extras: Sample Rates]]


See the [[Guided_Tutorials|Guided Tutorials]] from the [[UsersWG|GNU Radio Community Development Working Group]]. These cover the basics of what GNU Radio is, interacting with the GNU Radio Companion, programming blocks, advanced programming concepts, hardware issues and exploration, and some details on dealing with digital demodulation.
= Beginner-level tutorials =
 
== Beginner-level tutorials ==


Note that even as a GNU Radio beginner, you'll be delving into the realm of software defined radio, which is a complex field.
Note that even as a GNU Radio beginner, you'll be delving into the realm of software defined radio, which is a complex field.
Line 15: Line 21:
* [[TutorialsQTGUI|QTGUI Tutorial]] - A tutorial on how to develop Python GNU Radio applications. Some DSP and programming background required.
* [[TutorialsQTGUI|QTGUI Tutorial]] - A tutorial on how to develop Python GNU Radio applications. Some DSP and programming background required.
* [http://www.trondeau.com/gr-tutorial/ Tom Rondeau's gr-tutorial] - Some tutorials from the boss himself.
* [http://www.trondeau.com/gr-tutorial/ 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.
* [[TutorialsSimulations|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 ==
= Tutorials on developing with and for GNU Radio =


=== Writing GNU Radio code ===
== Writing GNU Radio code ==


* [[OutOfTreeModules|Developing out-of-tree modules and writing blocks]] - This is the first tutorial you should entirely read and comprehend.
* [[OutOfTreeModules|Developing out-of-tree modules and writing blocks]] - This is the first tutorial you should entirely read and comprehend.
Line 26: Line 33:
* [[TutorialPythonFunctions|Writing a Python Function for GRC]]
* [[TutorialPythonFunctions|Writing a Python Function for GRC]]


=== Advanced Development ===
== Advanced Development ==


* [[TutorialsDebugging|How to debug your applications]]
* [[TutorialsDebugging|How to debug your applications]]
* [[Octave|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
* The GNU Radio Scheduler http://www.trondeau.com/blog/2013/9/15/explaining-the-gnu-radio-scheduler.html
* [http://www.brainshark.com/SPS/vu?pi=zH8zQcV8dzAXPbz0 VOLK Introduction]
* [http://www.brainshark.com/SPS/vu?pi=zH8zQcV8dzAXPbz0 VOLK Introduction]
Line 34: Line 42:
* [[ALSAPulseAudio|Working with ALSA and Pulse Audio (Audio sink/source under Linux)]]
* [[ALSAPulseAudio|Working with ALSA and Pulse Audio (Audio sink/source under Linux)]]


=== Development tools ===
== Development tools ==


* [[DevelopingWithGit|Git and GNU Radio]] - A starter on how to use Git for GNU Radio development
* [[DevelopingWithGit|Git and GNU Radio]] - A starter on how to use Git for GNU Radio development
* [[UsingVim|Using VIM for editing GNU Radio modules]]
* [[UsingVim|Using VIM for editing GNU Radio modules]]
* [[UsingCB|Using Code::Blocks for editing GNU Radio modules]]
* [[UsingCB|Using Code::Blocks for editing GNU Radio modules]]
* [[UsingEclipse|Building and source level debugging C++ OOT modules with eclipse]]


=== Outdated tutorials ===
Kept here for archeological reasons only.
* Alonso's Examples: attachment:alonsos-examples.zip
== Non-GNU Radio-specific tutorials hosted on this wiki ==
* [[AllAboutDecibels|All about decibels (dB)]]
{{include(ExternalDocumentation)}}


The 3rd-party documentation lives on a separate page which can be found [[ExternalDocumentation|here]].
The 3rd-party documentation lives on a separate page which can be found [[ExternalDocumentation|here]].
== Attachments ==

Revision as of 04:52, 8 October 2018

Guided Tutorials

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.

  1. Installing GNU Radio
  2. Introduction
  3. Working with GRC
  4. Programming GNU Radio in Python
  5. Programming GNU Radio in C++
  6. Programming Topics
  7. Using GNU Radio with Hardware
  8. PSK Symbol Demodulation
  9. Guided Tutorial Extras: Sample Rates

Beginner-level tutorials

Note that even as a GNU Radio beginner, you'll be delving into the realm of software defined radio, which is a complex field.

Tutorials on developing with and for GNU Radio

Writing GNU Radio code

Advanced Development

Development tools


The 3rd-party documentation lives on a separate page which can be found here.