From GNU Radio
Jump to: navigation, search


The last day of the GNU Radio Conference will host a developers summit /
working day that is free and open to anyone interested in spending a day
collaborating with other GNU Radio developers and users. During the
summit we plan to have a series of very practical tutorials. The
tutorials will last between 15-30 minutes and focus on conveying "best
practices" used by GNU Radio developers and users with an emphasis on
knowledge that can be used during the developer summit.

If you are interested in presenting a tutorial send an email to
grcon@gnuradio.org with your tutorial idea. Examples of the kind of
tutorial we are looking for:

  • Code walkthroughs to familiarize people with fixing their own pybombs,

gnuradio, volk issues

  • Debugging GNU Radio (with gdb, pdb, valgrind, whatever tool you like)
  • Managing multiple projects, installations, OOT projects

If you have ideas for short talks you believe would be interesting to
people, let us know and we can try and find a speaker.


Recorded talks[edit]

  • Philip - working with the embedded toolchain
  • Moritz - git bisecting bugs
  • Marcus - gdb and debugging
  • Maitland - checking ABI compliance and a Debian view of GNU Radio
  • Nathan - code walkthrough of VOLK
  • Sebastian&Seth - code walkthrough of GRC
  • Chris&Martin - adding recipes to PyBOMBS and PyBOMBS code walkthrough
  • Marcus Making things better with perf
  • Matt or Balint explain baudline

Lunch 1215-1300[edit]

Whiteboard sessions[edit]

  • Johnathan - whiteboard session on big ideas
  • Nathan(&Johnathan) - 3.8 gr-digital
  • Education Discussion - 1200
  • Future of the GNU Radio Wiki - 1300
  • Also, hacking challenge review - 1500

Requested talks[edit]

1) I would find it useful if someone would do a tutorial on how you filter a signal when you're in the middle of a C++ block. I've had trouble implementing this, never got it to work. It felt like the filter functions were forcing me to interact with data on the input port of the block, instead of my own variable that I created in the block itself. I'm sure this was a C++ programming mistake on my part, but I'd still like to know how to make it work.

Ex: All within an OOT C++ block
1) input signal = x.
2) apply some algorithm to x which turns it into u
3) lowpass filter u and call it v <------- this is what I could not get to work
4) apply another algorithm to v to turn it into y
5) output y

2) Another useful tutorial for me would be a walk through of how things are linked together when doing something like the MPSK SNR Estimator Probe. That block has several files which define various functions. I'm not comfortable with how the mechanisms of that block work. In general, I'm not sure how linking works when say I want to define a custom class in its own file for use in my OOT module. Do I need to create that as a 'noblock' or do I only need to import it properly? Very confusing for me. Not a CS major obviously.

3) When instantiating a flowgraph via a python script, how can we create a GUI which allows the user to start the flowgraph via the GUI, with a button click and stop it with a button click. In general, GUI control via python scripts is something I'd like to understand better. Gaining more control over GUIs would be nice to know as well. For example, I would like to know how to customize the size and placement of a qt gui element in a window, beyond the basic functionality the GUI Hint gives us.

4) A walk through of how you reconfigure a radio via python script would be helpful. Suppose in the middle of a script I want to go from BPSK to FSK. What's the proper way to do this via python?

5) A walk through of how I would start a flowgraph on a deployed system would be nice to see. Send a signal from my homebase computer over the internet to start a deployed radio. What limitations do we have with this method, can I collect statistics about the radio, start, stop, reset the USRPs, etc.