Difference between revisions of "Event:SoftwareDefinedRadioSDRFMDABontvangerworkshop"

From RevSpace
Jump to navigation Jump to search
(3. Quick 'theory' of signal processing)
Line 8: Line 8:
 
  |InfoOpen=20:00
 
  |InfoOpen=20:00
 
}}
 
}}
 +
 +
Goal of the workshop:
 +
- To receive a simple wireless microphone signal from the presenter, using your own laptop
 +
  + software-defined radio receiver
 +
- To understand a few basic concept of radio, signal processing, and software-based radio signalprocessing
 +
  in particular.
  
 
== 1 Prerequisites: ==
 
== 1 Prerequisites: ==
Please bring your own RTL-SDR hardware (very cheap, $20-$40 or less)
+
Please bring your own radio-receiver:
or other SDR hardware (USRP or other GNURadio supported SDR).
+
- A RTL-SDR hardware (very cheap, $20-$40 or less)
 +
- A funcube dongle
 +
- Other SDR hardware (USRP or other GNURadio supported SDR)
 +
- A laptop with GnuRadio and Gnuradio-companion installed (version 3.7.5 ... 3.7.11 is ok)
 
There might be a few available @ revspace coin-op machine by the time the workshop starts.
 
There might be a few available @ revspace coin-op machine by the time the workshop starts.
 +
- Optional: a gqrx installation or other software-defined radio/waterfall receiver with WBFM support
  
 
== 2. Quick introduction ==
 
== 2. Quick introduction ==
Quick introduction into GNURadio companion 3.7.11.1 user interface and concepts and keyboard shortcuts  
+
Quick introduction into GNURadio companion 3.7.x user interface and concepts and keyboard shortcuts  
 
(have it preinstalled and git client to download the samplecode)
 
(have it preinstalled and git client to download the samplecode)
  
== 3. Quick theory of signal processing ==
+
== 3. Theory of signal processing ==
This could take about one to or 1.5 hours
+
This takes about half an hour, it is an interactive session so
Interactive session
+
that we can adapt the speed a bit depending on prior knowledge
 +
of the participants. Questions in between are very welcome,
 +
we will be with a small group.
  
== 3.1 Real signals ==
+
== 4.  Practice of signal processing ==
 +
 
 +
The examples will be provided via git and just need to be started,
 +
so the focus is understanding the signal flow, making modifications
 +
predict what will happen, and then test the result in practice.
 +
This takes about another half hour
 +
 
 +
== 4.1 Real signals ==
 
Real sinewaves
 
Real sinewaves
 
   In the timedomain
 
   In the timedomain
Line 32: Line 51:
 
  Usage of the word 'mixing' in radioterms (multiplication or usage of other non-linearities)
 
  Usage of the word 'mixing' in radioterms (multiplication or usage of other non-linearities)
  
 
+
== 4.2 Complex signals ==
== 3.2 Complex signals ==
 
 
Quadrature or complex (IQ) sinewave signal sources
 
Quadrature or complex (IQ) sinewave signal sources
 
  Displaying IQ signals in timedomain ('constellation' diagram)
 
  Displaying IQ signals in timedomain ('constellation' diagram)
Line 41: Line 59:
 
  Usage of complex multiplication in signal processing
 
  Usage of complex multiplication in signal processing
  
== 3.3 Filtering complex signals ==
+
== 4.3 Filtering complex signals ==
Filtering IQ signals using FIR filters with complex taps. FIR or Finite Impulse Response filters. IIR filters will be skipped.
+
Filtering IQ signals using FIR filters with complex taps. FIR or Finite Impulse Response filters. IIR filters will be skipped. Hilbert transform filters might be skipped too (generating complex analytical signals from real ones).
  
== 3.4 Calculating FIR filter coefficients or parameters ==
+
== 4.4 Calculating FIR filter coefficients or parameters ==
 
Filtering coefficients/taps, impulse response of filter
 
Filtering coefficients/taps, impulse response of filter
(very quick) calculating FIR filter coefficients/taps using gr-filter  
+
  Calculating FIR filter coefficients/taps using gr-filter  
 
Performance limitations, tradeoffs between
 
Performance limitations, tradeoffs between
   computational complexity of filter (number of multiplies per processed sample)
+
   Computational complexity of filter (number of multiply/add operations per processed sample)
   steepness of cut-off frequency
+
   Steepness of cut-off frequency
   flatness of passband of filter (integrity of signal that still should pass through the filter)
+
   Flatness of passband of filter (integrity of signal that still should pass through the filter)
   depth and ripple of stopband of filter (flatness of suppression of unwanted signal)
+
   Depth and ripple of stopband of filter (flatness of suppression of unwanted signal)
Using inverse FFT/inverse DFT and windowing functions to determine filter coefficients/taps
+
  (Using inverse FFT/inverse DFT and windowing functions to determine filter coefficients/taps will be skipped)
 +
 
 +
== 5. Radio receivers and/or detectors ==
 +
- Build a simple mono FM receiver using blocks using built-in feedback networks
  
== 4. Radio receivers and/or detectors ==
+
The transmitter in question is an ordinary wireless presentation microphone for stage-usage.
- Build a simple mono FM receiver using blocks with built-in feedback networks
+
It will generate a mono, wideband FM signal in the 473-494 MHz band.
- Build a RDS FM receiver and connect it with your RTL-SDR or other gnuradio-support SDR/radiodata input device
+
The transmitter will also feature a tone-code of 35 kHz that will be inaudible to the public and normal
 +
receivers. The tone is used to detect nearby presence of the transmitter, and estimate the
 +
signal level.
  
== 5. Bonus ==
+
The goal is to
Build with welle.io a SDR-based DAB+ receiver from source. For this a QTQuick 5.x installation might be required.
+
- find the frequency
 +
- demodulate the FM signal using basic gnuradio blocks
  
 
=== Attendees ===
 
=== Attendees ===

Revision as of 21:10, 5 June 2019

Event Foundations Friday: Software Defined Radio workshop
UpduinoV2.jpg
Name Foundations Friday: Software Defined Radio workshop


Duration 2019-06-28 20:00 - 2019-06-28 23:00
Information


* Location: Overgoo 1, Leidschendam
* Open from: 20:00

Goal of the workshop: - To receive a simple wireless microphone signal from the presenter, using your own laptop

 + software-defined radio receiver

- To understand a few basic concept of radio, signal processing, and software-based radio signalprocessing

 in particular.

1 Prerequisites:

Please bring your own radio-receiver: - A RTL-SDR hardware (very cheap, $20-$40 or less) - A funcube dongle - Other SDR hardware (USRP or other GNURadio supported SDR) - A laptop with GnuRadio and Gnuradio-companion installed (version 3.7.5 ... 3.7.11 is ok) There might be a few available @ revspace coin-op machine by the time the workshop starts. - Optional: a gqrx installation or other software-defined radio/waterfall receiver with WBFM support

2. Quick introduction

Quick introduction into GNURadio companion 3.7.x user interface and concepts and keyboard shortcuts (have it preinstalled and git client to download the samplecode)

3. Theory of signal processing

This takes about half an hour, it is an interactive session so that we can adapt the speed a bit depending on prior knowledge of the participants. Questions in between are very welcome, we will be with a small group.

4. Practice of signal processing

The examples will be provided via git and just need to be started, so the focus is understanding the signal flow, making modifications predict what will happen, and then test the result in practice. This takes about another half hour

4.1 Real signals

Real sinewaves

 In the timedomain
 Displayed using time sink / oscillioscope
 Displayed uisng frequency sink / FFT / spectrogram

Multiplying real-sinewaves, in the time domain

Displayed using time sink / oscillioscope
Displayed uisng frequency sink / FFT / spectrogram
Usage of the word 'mixing' in radioterms (multiplication or usage of other non-linearities)

4.2 Complex signals

Quadrature or complex (IQ) sinewave signal sources

Displaying IQ signals in timedomain ('constellation' diagram)
Displaying IQ signals in frequency domain (using FFT or frequency sinks)

Multiplying quadrature (IQ) sinewaves and spectrogram

Effect of quadrature multiplication (phases of are added) 
Usage of complex multiplication in signal processing

4.3 Filtering complex signals

Filtering IQ signals using FIR filters with complex taps. FIR or Finite Impulse Response filters. IIR filters will be skipped. Hilbert transform filters might be skipped too (generating complex analytical signals from real ones).

4.4 Calculating FIR filter coefficients or parameters

Filtering coefficients/taps, impulse response of filter

 Calculating FIR filter coefficients/taps using gr-filter 

Performance limitations, tradeoffs between

 Computational complexity of filter (number of multiply/add operations per processed sample)
 Steepness of cut-off frequency
 Flatness of passband of filter (integrity of signal that still should pass through the filter)
 Depth and ripple of stopband of filter (flatness of suppression of unwanted signal)
 (Using inverse FFT/inverse DFT and windowing functions to determine filter coefficients/taps will be skipped)

5. Radio receivers and/or detectors

- Build a simple mono FM receiver using blocks using built-in feedback networks

The transmitter in question is an ordinary wireless presentation microphone for stage-usage. It will generate a mono, wideband FM signal in the 473-494 MHz band. The transmitter will also feature a tone-code of 35 kHz that will be inaudible to the public and normal receivers. The tone is used to detect nearby presence of the transmitter, and estimate the signal level.

The goal is to - find the frequency - demodulate the FM signal using basic gnuradio blocks

Attendees

(Nick)Name Has (some) SDR Reciever
cmpxchg Yes
minicom Yes