Tutorials: Difference between revisions
Jump to navigation
Jump to search
(42 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
= | = GNU Radio Academy = | ||
The following sequence of tutorials will carry a new user through the core GNU Radio concepts, while providing examples along the way. If you already have experience with GNU Radio, feel free to skip the first several. | |||
# [[Guided_Tutorial_Introduction|'''A Brief Introduction to GNU Radio, SDR, and DSP''']] | |||
* | # [[Guided_Tutorial_GRC|'''Introduction to GNU Radio Usage: GRC and Flowgraphs''']] | ||
# [[Porting_Existing_Flowgraphs_to_a_Newer_Version|'''Porting Existing Flowgraphs to a Newer Version''']] | |||
# [[Sample_Rate_Tutorial|'''Understanding Sample Rate''']] | |||
# [[IQ_Complex_Tutorial|'''IQ and Complex Signals''']] | |||
# '''Simulation Examples (we recommend going through at least one):''' | |||
#* [[Simulation_example:_FSK|'''Frequency Shift Keying (FSK)''']] | |||
#* [[Simulation_example:_AM_transmitter_and_receiver|'''AM transmitter and receiver''']] | |||
#* [[Simulation_example:_Single_Sideband_transceiver|'''Single Sideband transceiver''']] | |||
#* [[Simulation_example:_Narrowband_FM_transceiver|'''Narrowband FM transceiver''']] | |||
#* [[Guided_Tutorial_PSK_Demodulation|'''QPSK Modulation / Demodulation''']] | |||
#* [[Simulation_example:_BPSK_Demodulation|'''BPSK Demodulation''']] | |||
#* [[Basic_OFDM_Tutorial|'''OFDM Basics''']] | |||
# [[Guided_Tutorial_Hardware_Considerations|'''Using GNU Radio with Hardware''']] | |||
# [[Flowgraph_Python_Code|'''Understanding a Flowgraph's Python Code''']] | |||
# [[Embedded_Python_Block|'''Writing your own block''' (using Embedded Python Block)]] | |||
# [[Polymorphic Types (PMTs)|'''Polymorphic Types (PMTs)''']] | |||
# [[Stream Tags|'''Stream Tags''']] | |||
# [[Message Passing|'''Message Passing''']] | |||
# [[Understanding_ZMQ_Blocks|'''Understanding ZMQ Blocks''']] | |||
# [[Packet_Communications|'''Packet Communications''']] | |||
# [[OutOfTreeModules|'''Out of Tree modules''']] | |||
# [[XML_GRC|'''Writing the XML file for a block''' (for 3.7)]] or [[YAML_GRC|'''Writing the YAML file for a block''' (for 3.8+)]] | |||
# [[Guided_Tutorial_GNU_Radio_in_C++|'''Writing blocks in C++''']] | |||
= Developer Resources = | |||
* [[VOLK_Guide|'''Volk- what it does, why it rocks, how to write new kernels''']] | * [[VOLK_Guide|'''Volk- what it does, why it rocks, how to write new kernels''']] | ||
* [[GNU Radio 3.8 OOT Module Porting Guide|'''Porting Existing OOTs from 3.7 to 3.8''']] | |||
* [[GNU Radio 3.9 OOT Module Porting Guide|'''Porting Existing OOTs from 3.8 to 3.9''']] | |||
* [[ALSAPulseAudio|'''Working with ALSA and Pulse Audio''']] | * [[ALSAPulseAudio|'''Working with ALSA and Pulse Audio''']] | ||
* [[ | * [[UsingVSCode|'''Using Visual Studio Code for Source level debugging of C++ OOTs''']] | ||
* [[UsingEclipse|'''Using Eclipse for Building and Source level debugging C++ OOTs''']] | |||
* [[UsingCB|'''Using Code::Blocks IDE for GNU Radio Development''']] | |||
* [[ | |||
* [[ | |||
* [[DevelopingWithGit|'''Git and GNU Radio''']] | * [[DevelopingWithGit|'''Git and GNU Radio''']] | ||
* [[Octave|'''How to use Octave or Matlab with GNU Radio''']] | * [[Octave|'''How to use Octave or Matlab with GNU Radio''']] | ||
* [http://www.trondeau.com/blog/2013/9/15/explaining-the-gnu-radio-scheduler.html '''The GNU Radio Scheduler'''] | |||
* [[CustomBuffers| '''Using Custom Buffers for Hardware Accelerated Blocks''']] | |||
* [http://www.trondeau.com/blog/2013/9/15/explaining-the-gnu-radio-scheduler.html The GNU Radio Scheduler] |
Revision as of 20:24, 26 October 2021
GNU Radio Academy
The following sequence of tutorials will carry a new user through the core GNU Radio concepts, while providing examples along the way. If you already have experience with GNU Radio, feel free to skip the first several.
- A Brief Introduction to GNU Radio, SDR, and DSP
- Introduction to GNU Radio Usage: GRC and Flowgraphs
- Porting Existing Flowgraphs to a Newer Version
- Understanding Sample Rate
- IQ and Complex Signals
- Simulation Examples (we recommend going through at least one):
- Using GNU Radio with Hardware
- Understanding a Flowgraph's Python Code
- Writing your own block (using Embedded Python Block)
- Polymorphic Types (PMTs)
- Stream Tags
- Message Passing
- Understanding ZMQ Blocks
- Packet Communications
- Out of Tree modules
- Writing the XML file for a block (for 3.7) or Writing the YAML file for a block (for 3.8+)
- Writing blocks in C++
Developer Resources
- Volk- what it does, why it rocks, how to write new kernels
- Porting Existing OOTs from 3.7 to 3.8
- Porting Existing OOTs from 3.8 to 3.9
- Working with ALSA and Pulse Audio
- Using Visual Studio Code for Source level debugging of C++ OOTs
- Using Eclipse for Building and Source level debugging C++ OOTs
- Using Code::Blocks IDE for GNU Radio Development
- Git and GNU Radio
- How to use Octave or Matlab with GNU Radio
- The GNU Radio Scheduler
- Using Custom Buffers for Hardware Accelerated Blocks