Difference between revisions of "User:Duggabe"

From GNU Radio
Jump to: navigation, search
(Intermediate User Level)
 
(89 intermediate revisions by 2 users not shown)
Line 1: Line 1:
Guided Tutorials 2.0 outline:
+
<!-- QT_GUI_Chooser.mediawiki -->
 +
This block creates a variable with enumerated options. The gui widget is implemented as a combo box or radio button group. When the label is left blank, the option will be used as the label. Set the number of options to "list" to enter a single list of options and labels.
  
*  Beginner User Level:
+
See [[GUI Hint]] for how to position the GUI within your window.
**      '''Very brief intro to GR, SDR, DSP''', i.e. this page- [[Guided Tutorial Introduction]].  We should reference to external sources for DSP/SDR background for those who need more
 
**      '''Intro to GR usage'''- GRC and flowgraphs, i.e. this page- [[Guided Tutorial GRC]]
 
**      '''Understanding sample rate, and how hardware and decimation/interpolation blocks impact it'''.  So [[Guided Tutorial Hardware Considerations]] and [[Guided Tutorial Extras Sample Rates]] and Barry's new writeup, but we can probably condense it down
 
**      '''Brief intro to PMTs, stream tags, and messaging passing''' (refer to Usage Manual for more info), i.e. this page- [[Guided Tutorial Programming Topics]]
 
**      '''Example practical usage of GR- PSK Demodulation''', i.e. this page- [[Guided Tutorial PSK Demodulation]]
 
* Intermediate User Level:
 
**  '''Understanding a flowgraph's python code''', content can come from [[Guided Tutorial GNU Radio in Python]]
 
**  '''Writing your own block''' (using Embedded Python Block), content can come from [[Guided Tutorial GNU Radio in Python]] and elsewhere
 
**  '''Writing the YAML/XML file for a block'''
 
**  '''Out of Tree modules''', should cover creation/installation and both Python and C++ blocks (but not writing them blocks themselves)
 
**  '''Writing blocks in C++'''
 
* Expert User Level:
 
**  '''Writing flowgraphs in C++''' (new to 3.8)
 
**    '''Volk- what it does, why it rocks, how to write new kernels'''
 
**  '''Working with ALSA and Pulse Audio'''
 
**  (any of the other really niche topics we already have tutorials for, i.e. the order isn't going to mean much)
 
* Developer Level:
 
**    Source level debugging C++ OOT modules with Visual Studio Code, see [[UsingVSCode]]
 
**    Building and Source level debugging C++ OOT modules with Eclipse, see [[UsingEclipse]]
 
**    Using Git with GNU Radio, see [[DevelopingWithGit]]
 
**    (anything else developer centric)
 
<br>
 
<hr>
 
= Draft Tutorials 2.0 =
 
  
== Beginner User Level ==
+
== Example Flowgraph ==
These tutorials are designed to guide new GNU Radio users to a better understanding of the project.
 
* [[Guided_Tutorial_Introduction|'''A brief introduction to GNU Radio, SDR, and DSP''']]
 
* [[Guided_Tutorial_GRC|'''Intro to GR usage: GRC and flowgraphs''']]
 
* [[Guided_Tutorial_Hardware_Considerations|'''Using GNU Radio with Hardware''']]
 
* [[Sample_Rate_Tutorial|'''Understanding sample rate''']]
 
* [[Guided_Tutorial_Programming_Topics|'''Brief intro to PMTs, Stream Tags, and Messaging Passing''']]
 
* [[Guided_Tutorial_PSK_Demodulation|'''Example Usage of GNU Radio: PSK Demodulation''']]
 
  
== Intermediate User Level ==
+
This shows the QT GUI Chooser block and how it looks in the output.
* [[Flowgraph_Python_Code|'''Understanding a flowgraph's python code''']]
 
* [[Embedded_Python_Block|'''Writing your own block''' (using Embedded Python Block)]]
 
* '''Writing the XML file for a block''' (for 3.7)
 
* [[YAML_GRC|'''Writing the YAML file for a block''' (new in 3.8)]]
 
* [[OutOfTreeModules|'''Out of Tree modules''']]
 
** '''Writing blocks in C++'''
 
  
== Expert User Level ==
+
[[File:FunCube_AM_out.png|800px]]
*  '''Writing flowgraphs in C++''' (new to 3.8)
+
<br><br>
* [[VOLK_Guide|'''Volk- what it does, why it rocks, how to write new kernels''']]
 
* [[ALSAPulseAudio|'''Working with ALSA and Pulse Audio''']]
 
* [[TutorialsSimulations|'''Simulations''']]
 
* [[TutorialsTaggedStreams|'''Tagged streams for variable-length PDUs''']]
 
* [[Basic OFDM Tutorial|'''Basics of OFDM''']]
 
  
== Developer Level ==
+
<b>Note:</b> <code>Added field for 3.8.1 in July 2020</code> The "Option 0 (Default)" field has been split into two fields: "Default option" and "Option 0". Whereas the old format forced the default value to be entered as Option 0, the new format allows any of the options to be the default value. Here are what the parameters of the Chooser look like before and after:
* [[UsingVSCode|'''Source level debugging C++ OOT modules with Visual Studio Code''']]
 
* [[UsingEclipse|'''Building and source level debugging C++ OOT modules with Eclipse''']]
 
* [[DevelopingWithGit|'''Git and GNU Radio''']]
 
* [[Octave|'''How to use Octave or Matlab with GNU Radio''']]
 
  
<br>
+
[[File:FunCube_AM_prop.png|387px]]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[[File:QT_GUI_CHOOSER_prop.png|303px]]
<hr>
 
<b>Content we will need to create or extract from existing work</b>
 
<hr>
 
*  '''Writing the XML file for a block''' (for 3.7)
 
*  '''Writing blocks in C++'''
 
*  '''Writing flowgraphs in C++''' (new to 3.8)
 
 
 
<br>
 
<hr>
 
<b>Content which is not used from original Tutorials page</b>
 
<hr>
 
* [[Guided_Tutorial_Extras_Sample_Rates#E2.3._A_Note_on_Resampling]]
 
* [[Guided_Tutorial_GNU_Radio_in_Python|Programming GNU Radio in Python]]
 
* [[Guided_Tutorial_GNU_Radio_in_C++|Programming GNU Radio in C++]]
 
* [[TutorialsCoreConcepts|Core concepts of GNU Radio applications]] - A must-read for everyone
 
* [[TutorialsWritePythonApplications|WritePythonApplications]] - A tutorial on how to develop Python GNU Radio applications.
 
* [[TutorialsQTGUI|QTGUI Tutorial]] - A tutorial on how to develop Python GNU Radio applications.
 
* [http://www.trondeau.com/gr-tutorial/ Tom Rondeau's gr-tutorial] - Some tutorials from the boss himself.
 
* [[OutOfTreeModulesConfig|Tutorial on how to configure OOT packages to find and link against GNU Radio]]
 
* [[TutorialPythonFunctions|Writing a Python Function for GRC]]
 
* [[TutorialsDebugging|How to debug your applications]]
 
* [http://www.trondeau.com/blog/2013/9/15/explaining-the-gnu-radio-scheduler.html The GNU Radio Scheduler]
 
* [http://www.brainshark.com/SPS/vu?pi=zH8zQcV8dzAXPbz0 VOLK Introduction]
 
* [[TutorialsRemoteGUI|Remote GRC Operations]]
 
* [[UsingVim|Using VIM for editing GNU Radio modules]]
 
* [[UsingCB|Using Code::Blocks for editing GNU Radio modules]]
 

Latest revision as of 17:31, 13 July 2020

This block creates a variable with enumerated options. The gui widget is implemented as a combo box or radio button group. When the label is left blank, the option will be used as the label. Set the number of options to "list" to enter a single list of options and labels.

See GUI Hint for how to position the GUI within your window.

Example Flowgraph[edit]

This shows the QT GUI Chooser block and how it looks in the output.

FunCube AM out.png

Note: Added field for 3.8.1 in July 2020 The "Option 0 (Default)" field has been split into two fields: "Default option" and "Option 0". Whereas the old format forced the default value to be entered as Option 0, the new format allows any of the options to be the default value. Here are what the parameters of the Chooser look like before and after:

FunCube AM prop.png      QT GUI CHOOSER prop.png