- HOME
- SDR & GNU Radio
- RPi PROJECTS
- RADIO RPi PROJECTS
- SATELLITES
- WEATHER SATELLITES
- RADIO ASTRONOMY
- QRZ
-
Project 2.1 GNU Radio Tutorial at ARRL TAPR 2012 DCC
|
Below are my notes from watching the videos.
- Episode 51 Part 1: Intro to GNU Radio (Part One) from the 2012 DCC, Tom Rondeau, KB3UKZ.
- GNU Radio was started in 2001.
- GNU Radio is a development platform to develop applications.
- GNU Radio is designed to be real-time. The computer hardware will determine how fast of real-time it can process.
- GNU Radio is programming with processing blocks.
- The scheduler is the core of GNU Radio.
- The scheduler operates on block flow diagram.
- Processing blocks are connected together and define how radio data flows and is processed.
- GNU Radio flow graph moves data from source blocks , to signal processing blocks, then to sink blocks.
- A flow graph is run by the scheduler.
- The scheduler moves blocks of data from one block to another block.
- A flow graph cannot have feedback from one block to another block.
- A signal processing block can have feedback inside the block.
- Rate changing blocks input rate/output rate, 1:1, 1:N, N:1 or M:N.
- Layers: GR Companion graphical programming/user interface at top, next layer Python, the bottom layer is C++.
- File sinks can be use used for debugging the data flow diagram.
- GNU Radio program options
- QT GUI is new interface, WX GUI is the old interface.
- Double click on a block to bring up the block properties.
- Color of the data flow indicates the data type.
- To create block data flow connections, click on the block data output port and then click on the block data input port.
- Red indicates errors.
- GNU Radio default sampling reate is 32 KS/s.
- CPU thread per block operation means faster parallel operation based on how many threads can be operated in parallel on your computer hardware.
- Episode 51 Part 2: Intro to GNU Radio (Part Two) from the 2012 DCC, Tom Rondeau, KB3UKZ.
- Great graphical demo of convolution filtering a signal.
- Nyquist sampling rate is 2X the information bandwidth.
- Sampling change is key to SDR operation.
- Decimation is downsampling.
- Interpolation is upsampling.
- Always filter when changing sample rate.
- Filter before downsampling.
- Filter after upsampling.
- Need to check 2012 Google Summer of Code
- GNU Radio Filter Design Tool greates a CSV file.
- gr_filter_design
- Filter windowing
- Recommend using Blackman-harris
- Worst is Hamming window (Default)
- Build memu.
- Generate icon creates the Python code file.
- QT slider bar example (QT GUI Range).
- Options, ID: top_block, top_block.py file.
- Should change the the name top_block.
- Change Generate Options to QT GUI.
- Block properties short cuts
- Ctrl-c: copy text
- Ctrl-v: past text
- Ctrl-x: copy and cut text
- Block properties variables
- Constants, variables and Python expressions are allowed.
- Red stop sign icon stops the GRC program.
- Zeros in the bottom window indicates dropped data when the program is running.
- In RPi terminal enter python to start the python interperter.
- To quit enter quit().
- Filter transition period.
- Small transition creates a large number of taps. More processing time and power is needed.
- Large transition creates a small number of taps. Less processing time and power is needed.
- GNU Radio uses single precision numbers for floats (one number) and complete (two numbers).
- Use the magnifying glass to search for a block blocks.
- For example, search on WX will show all the WX Widgets and WX Instrumentation blocks.
- GUI Grid Position
- Row starts at 0, column starts at 0, row span, column span
- Throttle block limits the data rate flow (this is poor clock accuracy).
- Do not use the Throttle block with real hardware.
- Use the Throttle block for simulations without hardware.
- Episode 51 Part 3: Intro to GNU Radio (Part Three) from the 2012 DCC, Tom Rondeau, KB3UKZ.
- WX GUI Waterfall Sink FFT Rate default is 15 times per second
- File New or Ctrl-n to start from scratch.
- Options block, change the ID name so that you do not ower write other files.
- Options block, Generate Options: WX tends to have problems with open GL, use QT.
- Save file as same name as top block .grc.
- Block data types need to match, tend to work with complex data, for example I/Q data.
- Data type color are shown in Help, Types.
- Red data flow arrows indicate data type mismatch.
- Click on block, use the up/down arrows to change the block data type.
- Block properties colors
- Orange is number
- Purple is string
- Dark blue is variable name
- Use FIR filters. IIR filters
- Single pole IIR.
- FFT filter
- Convolution is time is equal to multiplication is frequency.
- Greater than 20 taps the FFT filter is faster than FIR filter.
- FIR and FFT filter can downsample (decimation) in their processing block.
- FFT complex in/complex out.
- Episode 51 Part 4: Intro to GNU Radio (Part FOUR) from the 2012 DCC, Tom Rondeau, KB3UKZ.
- Hilbert filters DC to positive frequencies. Removing the negative frequencies.
- Hilbert filters real signal/complex signal (analytic waveform).
- Most SDR designs are based on complex data (I/Q).
- SDR hardware.
- 2004 USRP (~$1+). UHD blocks)
- FunCUBE Dongle (~$100) (see 2011 DCC www.ARVN.tv).
- DVTV RTL Dongle (~20) osmocom group.
- RDS decode.
- Digital demo
Narrow Band FM Receiver block NBFM Receiver
Wide Band FM Receiver block WBFM Receiver
Disable blocks to prevent block to compile.
- HOME
- SDR & GNU Radio
- RPi PROJECTS
- RADIO RPi PROJECTS
- SATELLITES
- WEATHER SATELLITES
- RADIO ASTRONOMY
- QRZ
-
© July 6, 2018
David Haworth,
WA9ONY
www.stargazing.net/david