Some essential properties

User-Friendly

  • GUI-Based, flexible screen layout, powered by the Windows Presentation Foundation (WPF).

  • Usable on large as well on small screens, by collapsable and expandable sub-windows.

  • Collapsed mode for using minimal space on the screen. DAB mux and service selection remain possible.

  • Number inputs on the main screen are done very fast by using the mouse wheel.

  • Aircraft and DAB TII Database Updates by a few mouse clicks from within the app.

  • Persistence on the hard-disk of all relevant parameters, accompanied by the saving of the complete GUI layout.

Feature-Rich

  • Multi-Frontend, TCP/IP- or file-input based, locally and remotely, allowing the simultaneous reception of up to three hardware devices of the same or different types, like RTL-SDR dongles, sdrplay or Airspy devices.

  • Raw-file replay (8- or 16-bit) of arbitrary sized files (many GBytes), with exact timing information, seekable. All GUI-based.

  • DAB, AM, FM, SSB and ADS-B Signals can be demodulated.

  • DAB Standard Features, like mux and service selectors, scanner with DX-features, Slideshow, Audio Recording of WAV or AAC files.

  • DAB Technical Information, like service quality, synchronization information, enabling experienced users to control their DAB reception.

  • DAB spectra, like Channel Impulse Response (CIR), Constellation and more, being displayed in collapsable windows.

Innovative

  • TII Decoder. First SDR to decode the DAB Transmitter Ident Information (TII) of all transmitters contributing to a multiplex.

  • Map Integration, showing on a geographical map the Aircrafts detected by the ADS-B decoder or the DAB transmitters found by the TII detector.

  • GNSS Integration. Synchronized logging of the receivers geographical location together with the I/Q data when recording and/or replay raw data files.

  • Receiver Calibration. First app to integrate an ultra-fast method for the frequency calibration of cheap receivers usually showing many ppm's of frequency error, by using DAB.

  • Constellation visualization. First app to implement a linear (in contrast to circular) display of the DAB bit constellation, for a reliable Signal to Noise Ratio (SNR) calculation. Others have followed.

  • Airband Features not found in any other SDR, like the Channel Input or the Flip Switch for a quick exchange between the active and standby channels.


Introductory Remark

QIRX is a Software Defined Radio (SDR), written in C#, downloadable from this site. In its Version 3 it comes with many new features compared to the previous versions. It is no longer - as in its still available V2 - restricted to the DAB demodulator, but additionally features other basic ones like AM, FM, SSB. Its ADS-B decoder integrates with its map feature, and the AM demodulator has some properties especially useful when listening to the airband monitoring the pilot-ATC communication (legal restrictions may apply!).
Originally intended to run on Windows, a Linux port of the "DAB-Only" version with restrictions due to limitations of the Mono environment is available in the download. It has been tested on Win7 and Win10, and on Linux Debian V9 ("Stretch"), all in their 64-Bit version.

It would be great if you considered to use the QIRX SDR. In case the unprobable happens and you find an error, please send an email about it. Here you can find the history of the software. In case you think something might be wrong, please let me know! All comments are welcome!


Installation and Setup

The Quick-Startup Guide provides you with a step-by-step instruction how to get the various versions running. The description of the Setup informs about the necessary settings in local or remote scenarios.


Features

QIRX like most SDRs processes so-called I/Q Data. In case you are not yet familiar with this important concept, you may find a nice introduction on the site I/Q Data for Dummies" .


QIRX is offering the following main features:

  • TCP/IP Based: QIRX accepts I/Q-Data either from TCP/IP servers like the widely known rtl_tcp, or from pre-recorded files (both 8-bit and 16-bit) containing the raw I/Q-data.
    Both QIRX and its I/Q-Data Server may run on the same machine or on separate ones. The data servers can be started automatically without additional user actions, also when used remote via a LAN.
  • Hardware Support:

    The following hardware is supported by QIRX:

    • rtl-sdr dongles. They need the rtl_tcp server.
    • RSP1A, RSP2, RSPduo (single-tuner mode), by sdrplay. They need the RSP2_tcp server.
    • Airspy Mini, Airspy R2, by Airspy. They need the airspy_tcp server.

  • Multi-Hardware: QIRX is able to connect to more than one hardware receiver at the same time. The number of devices is configurable in the qirx3.config file. It is pre-configured for three receivers which seems a reasonable limit for a fairly fast PC. The different hardware devices can be of the same type (e.g. RTL-SDR dongles) or of different types.
  • Demodulators: QIRX is able to demodulate WFM, NFM, AM, SSB, DAB and ADS-B Signals. The audio bandwidth is selectable in a wide range, suiting the selected demodulator. For ADS-B, unlike most web-based programs, QIRX is able to display the aircraft's ground movements.
    In case you are interested in the cooperation of ADS-B (showing the aircrafts on the map) and the corresponding communication between Air Traffic Control and the pilots, you might have a look at the youtube video I made at Zurich airport in Switzerland.
  • Map: QIRX features an integrated map based on Openstreetmap. It is used for the display of ADS-B detected aircrafts and/or the locations of DAB transmitters.
  • Database Integration: The data for the DAB stations and the ADS-B-detected aircrafts are retrieved from databases. For DAB, the data are provided by OFCOM (UK) and DABLIST (other countries).
    Aircraft data are provided by Opensky-network.org.
    For both databases (DAB and ADS-B), an update dialog is provided.
  • GNSS Integration: If available, a GNSS sensor can be activated, showing the current own position on the map. Raw file recordings obtain a second file, logging the GNSS position once a second. Synchronous replay of recorded raw files together with their GNSS data is possible.
    TII logs also obtain the current GNSS data.
  • Squelch: Where appropriate, QIRX provides a digital squelch, enabling to monitor the selected stations – when not transmitting - without annoying background noise.
  • Frontend Calibration: QIRX - thanks to its DAB-Mode - allows for the frequency calibration of the receiving frontend by one mouseclick. In that case, the tuned DAB transmitter serves as a highly accurate frequency reference. The working principle is covered in detail in the three-part tutorial "Calibrate your rtl-sdr in 15 seconds".
  • Raw Data File Recorder and Player: The raw I/Q data can be saved to a file. A second file is recorded automatically, containing the GNSS position. It is possible to replay I/Q-data files, having been stored in 8-bit or 16-bit format. On the GUI, you can position ("seek") to any arbitrary timed position in the recorded data. As a consequence, long raw recordings become usable, usually consisting of very large (many GB) raw data files.
    With recordings having made in a mobile environment, the moving position of the recorder is displayed on the map.
  • Audio File Recorder: For all demodulators, the audio output can be saved to .wav files, independently for each of the both receivers. For DAB+ this allows for high-quality audio recordings. AAC-Audio (DAB+) can be saved into raw AAC files (playable with the popular applications VLC Player or foobar2000), thus saving a lot of disk space.
  • Spectrum: For each receiver, QIRX provides a RF spectrum viewer being able to show the RF and/or Waterfall spectrum. For performance reasons, the spectrum GUI has been completely re-designed. It provides all of the usual features like adapting the desired frequency resolution in a wide range, paired with the possibility to zoom frequency and magnitude. For DAB, additional spectra like CIR (Channel Impulse Response) or the raw I/Q data are available.
  • RF Level: For RTL-SDR dongles with an R820T-based tuner, the spectrum displays absolute level values, selectable as Power Spectrum or Power Spectrum Density (PS/PSD). This feature is based on the extensive research by Bernhard, DB9PP and rundfunkforum user Oldenburger.

  • Some DAB features:

    • QIRX provides a comfortable DAB and DAB+ demodulator and decoder (Transmission Mode I). It is the first C#-based SDR providing this facility. Some standard libraries like the Viterbi decoder are used as C/C++ packages, accessed via P/Invoke. QIRX decodes "Standard" DAB as well as DAB+ frames.
    • Scanner:
      A configurable DAB scanner is included. On scanning, the TII file logger is switched-on automatically. The scanner is widely used by DAB DX-ers.

    • DAB Spectrum Display
      • Constellation of the bits in a linear display, showing the accuracy of the decoded bits with high resolution.
      • TII Carriers: This display shows the carriers of the Transmitter Identification in the Null-Symbol. QIRX has been the first SDR to display this information.
      • Channel Impulse Response (CIR), showing the relative delays of a signal having taken either different paths along its way to the receiving antenna, or stemming from different transmitters.
      • Time Domain, showing the magnitude of time domain (I/Q) data. As these look like random in nature, the display can be synchronized with the start of a frame showing the Null Symbol followed by the Phase Reference Symbol.
      Regrettably these features are not available in the Linux version, as the Mono environment does not support the necessary GUI features.
    • Transmitter Identification: In DAB mode, QIRX detects and displays the Transmitter Ids (TII values). This should work also in complex mobile receiving environments. QIRX has been the first SDR providing this feature.
    • TII Logging: QIRX offers a simple, text-based logger of the TII codes. The logging takes place in a fixed time raster of one second. The combination of the logging and the highly configurable DAB-scanner might be a helpful tool for DX-ing applications. The log files are ready for import into Excel (Tab as delimiter). The own position coming form a GNSS sensor is included in the logging.
  • Remote I/Q Data Server Automatic Startup: A separate executable, called "StubForRemoteStart.exe" can be used for an automatic start for a remote I/Q data server. Once started on the remote machine, it listens permanently to commands from the local QIRX for the creation and deletion of the I/Q data server process like rtl_tcp.
  • Linux Port: As mentioned, QIRX runs under Linux, although with serious restrictions. This was intended as a practical experiment of how simple or difficult it is to run non-trivial .NET Framework software under Linux. With respect to currently ongoing activities in the field (Mono, .net5, Xamarin), QIRX has been completely ported to .net5, in the hope that Microsoft will be able to provide the WPF GUI also on other important platforms like Linux. No official commitment from MS could be found though.
    A short report describing the Linux experience has been added to this website.


Hardware Access

QIRX receives its I/Q-data via TCP/IP. It provides no direct USB interface. As a consequence, hardware-specific inteface programs ("I/Q Servers") are necessary relaying the I/Q-data coming across the USB interface to a TCP/IP socket. This necessity is due to the unfortunate fact that the hardware vendors do not provide Ethernet access to their devices, for whatever reason.
As these Servers are relatively small programs - usually without a GUI - they are not restricted to running on Windows. They might very well be located e.g. on a RaspberryPi running Linux.
The following I/Q Data Servers are provided in the QIRX distribution:

  • rtl_tcp.exe: The version is the one provided by rundfunkforum user Oldenburger. The sources are available on GitHub. It provides some unique features lacking in other versions, like:
    • Back-Channel providing information like the receiver gain, or the tuner register values, visible on the GUI,
    • RF-Filters to narrow the received bandwidth, enabling e.g. DAB DX-reception of weak multiplexes with strong neighbors.
    • IF-Sideband selection to get rid of interference in special situations. These "sidebands" must not be confused with the - also switcheable - voice sidebands in SSB reception.
  • RSP2_tcp.exe: It provides access to the RSP-hardware by SDRplay Ltd.. QIRX supports their RSP1A, RSP2, RSPduo (single tuner mode) in the following way:
    • Various Sampling Rates: 2.048, 4.096, 8.192 Msps can be selected.
    • Various Bit Rates: Although the hardware provides 16-bit data (14-bit ADC), QIRX can reduce it to 8-bit, thus halving the necessary network bandwidth. For situations where the enhanced dynamic range of the 14-bit is not required (most DAB situations), this is the preferred bitness.
      The sources are available on GitHub.
  • airspy_tcp.exe: It provides access to the Airspy-hardware by Airspy. The R2 and the Mini are supported. The sources are available on GitHub. The driver is a modified version of the one programmed by Thierry Leconte, available on GitHub, however strongly modified for the use by QIRX:
    • Various Sampling Rates: 2.048, 3.000, 4.096 Msps can be selected.
    • Various Bit Rates: The 16-bit provided by the hardware can be reduced to 8bit. The same advantages like the one described with the sdrplay hardware apply.
The following picture shows an example of some of the mentioned features, when using a dongle with a R820T tuner.
  • High Resolution FFT Display, showing details in the gap of about 200Hz between the central carrier of the transmitter and the voice sidebands. It is an airband VOLMET broadcast AM transmitter.
    The bent lines in the waterfall show Doppler shifts of the central carrier caused by reflection at an aircraft flying by.
  • "Flat Top" FFT window of type HFT70 , allowing for a precise calculation of the FFT magnitude levels.
    The indicated peak shows an absolute value of 17dBuV in the FFT Power Spectrum (PS checkbox selected).
  • Tuner register values The table on the left shows all bit values of the R820T tuner. Many of them are settable.
  • Gain An overall gain of 77dB is indicated. Its range is between 0 and about 90dB.


Operating Environments

QIRX V3 is able to work flexibly in various configurationsv, purely local (i.e. the hardware connected to the local PC), purely remote (i.e. the hardware connected to one or more remote PCs), ore mixed local-remote.

  • Pure Local: The upper and middle picture show two purely local scenarios, configured for three receivers.
    Upper picture: As an example, a "Kerberos" hardware setup is shwon, with three of its four RTL-SDR dongles connected.
    Middle picture (upper part): Three RTL-SDR dongles are assumed to be connected to the local PC, for instance belonging to a configuration of the upper picture. They all use the same I/Q server program rtl_tcp.exe. The three instances must be distinguished by their USB index, settable in the "Settings" dialog.
    Middle picture (lower part): In this - also purely local - configuration, three different receivers are to be used, each using its own I/Q Server. Either a separate USB hub or three USB entries at the PC must be available.
  • Mixed Local-Remote: The picture at the bottom shows a scenario with one locally connected hardware and two remotely connected ones. The "Setup" page on this website explains in detail how to configure such a situation with the "Setup" dialog.


Basic Operating Principle

The pictures in the following paragraphs are taken from QIRX V1. They are still valid though.
As mentioned, the operating principle of QIRX is based on very simple Fast Fourier Transform (FFT)-based down conversion (Decimation) of the incoming I/Q data.
  • Down-Conversion In QIRX, down-conversion takes place in the frequency domain. The user selects - as usual - a center frequency from the spectrum showing a signal of interest. Interesting signals have different bandwidths with respect to their modulation. For instance, a FM radio station has a much larger bandwidth than an AM station in the airband or a NFM station in the amateur radio band.
    For down conversion, a suitable part of the available spectrum of about 2MHz is cut out such that this spectrum piece satisfies the necessary bandwidth. To proceed with the following inverse Fourier Transform it needs to have a length of a power of two.
    An Inverse Fast Fourier Transform (IFFT) switches from the frequency domain back to the time domain, providing samples directly suitable to be fed into the demodulator. The demodulator provides the audio samples to be presented at the headphones output of the PC.
  • Example1: Airband. Assuming a total available bandwidth of 2.048MHz, with a down-conversion factor of 128, a part of 2048kHz / 128 = 16kHz symmetrical to the desired center frequency is cut out of the spectrum. After IFFT time domain I/Q samples with a sample rate of 16kHz are obtained. After demodulation audio samples with a bandwidth of 8kHz are the final result.
  • Example2: FM Radio Stations. Assuming a total available bandwidth of 2.048MHz, with a down-conversion factor of 16, a part of 2048kHz / 16 = 128kHz symmetrical to the desired center frequency is cut out of the spectrum. After IFFT time domain I/Q samples with a sample rate of 128kHz are obtained. After demodulation audio samples with a bandwidth of 64kHz are the final result.
Remark: The following picture shows the selection of two frequencies out of one data set of a bandwidth of 2.048MHz. Such a feature was offered in QIRX V1 (the origin of the picture) and is no longer offered in V3. Version 3 offers to connect more than one hardware receiver. These can be tuned independently. The principle of down conversion illustrated here remained the same.


Digital Audio Broadcast (DAB+) Demodulator

In DAB, radio stations grouped together are called an "Ensemble". Each Ensemble covers a "used bandwidth" (containing decodable information) of 1.536MHz, with some adjacent space for proper separation from neighbouring ensembles, together using a "channel bandwidth" of 1.712MHz. This is making DAB with its mandatory sampling rate of 2048000 samples per second an ideal candidate for reception with a RTL-SDR dongle, showing a bandwidth of 2.048MHz. No down-conversion is necessary, the whole spectrum is used, perhaps with some filtering to weaken strong neighbouring ensembles. The various radio stations within an ensemble are called "Services". To receive a DAB radio station, a user has to select the Ensemble and the Service. Ensembles are transmitted on published frequencies. DAB+ (in contrast to DAB) uses an enhanced Reed-Solomon error correction within a so-called superframe.

For a more detailed description, please consult the Technical Report available in the download section.

The picture shows a nearly ideal spectrum of a DAB+ ensemble, 20-fold averaged (the degree of average is GUI-controllable).

  • Comparison with the Standard: The shown spectrum has been scaled and overlaid in Photoshop for a comparison with a theoretical spectrum published in the Standard. The coincidence is excellent. However, very often the DAB spectra look not so ideal due to disturbances like multipath reception.
  • Coarse timing: DAB signals are organized in frames, composed of symbols. The frame start is indicated by a transmission of a number of zero-intensitiy I/Q samples, the "Null Symbol". This fact is used to roughly find the start of a frame. As a peculiarity, in the Null Symbol the "Transmitter Identification" TII is sent with a low power. This allows for identifying the different transmitters contributing to a receiving situation. It might be noted that in the DAB SFN (Single Frequency Network) the TII is the only information transmitted in an ensemble differing between the different transmitters involved. QIRX has been the first DAB SDR providing this information.
  • Coarse Frequency: DAB imposes stringent synchronization requirements in time and frequency on the receiver. As a result, the center frequency must be identified down to at least 1kHz. The frequency of the receiver hardware might deviate considerably from its nominal frequency. Usual cheap RTL-SDR dongles show frequency deviations of 50ppm and more.
    In previous versions of QIRX (until 0.9.1) the center frequency has been found by inspection of the spectrum shape and searching for the central "dip" (suppressed central carrier). While this usually worked well, the method has been omitted in favour of a correlation-based method in order to get synchronization also in more adverse receiving conditions like weak or strongly distorted signals. The accuracy achieved is about 250Hz. Unexpectedly during the development, the finding of the coarse frequency error of the receiver has been one of the most difficult items for the reliable synchronization of marginal quality signals.
  • Fine timing: To find the start of a frame within the accuracy of a sample, the Phase Reference Symbol is used. It is always sent with identical, constant values of its samples, overlaid by noise due to the HF transmission. The undisturbed values are stored in the software, already in the frequency domain. The two blocks are compared by using a fft-based cross correlation ("Phase Correlation"). In this way the exact start of a frame can be identified.
  • Fine Frequency: While the “Coarse Frequency Synchronization” is responsible for finding the frequency of the transmitter down to 1kHz, the “Fine Frequency Synchronization” should find it down to 10Hz. This corresponds to an accuracy of 5*10e-8. This high accuracy becomes possible because additional information is sent within the symbols of a frame, the "Cyclic Prefix" (CP). Each symbol is prepended by a CP, being a copy of the last (504 in mode I) samples of the symbol. Frequency shifts in the Hz region are obtained by measuring the phase shift between the CP and the end of the frame.
  • Permanent Correction: The fine timing adjustment is checked after every frame and corrected if necessary. The fine frequency deviation also is frequently checked, at a much lower rate. Its permanent correction imposes a high processing load on the PC. Details can be found in the Technical Report.

    Coarse timing and frequency checks are only performed after a complete synchronization loss.

  • Receiver Calibration: In QIRX the speed and accuracy of finding the receiver's frequency error can be used as a tool to calibrate the receiver. Having gained a stable DAB synchronization, selection of the menu item "Options, Calibrate" re-programs the receiving hardware with the frequency ppm error. The quality of the calibration can be controlled immediately on QIRX' GUI by inspecting the "Frequ. Shift" values. The broader foundation of the method is covered in the "Calibration" tutorial on this website.


DAB Bit Constellation

In DAB the information like audio is transmitted digitally. The receiver obtains the bits by a calculation of an angle of a subcarrier with its predecessor. Ideally, this angle has one of the four values 45°, 135°, -135°, -45°. These four possible values correspond to two possible bits with the values 0, 1, 2, 3. The arrangement of the bits with respect to their angles is called “constellation”.

Usually the constellation is displayed showing the bits as dot heaps in a polar diagram, like in the following picture, from a report by Andreas Müller, ETH Zurich. The dot heaps show the single bits, the heaps being separated by 90 Degrees.
QIRX uses a different, linear display for an improved visual control of the synchronization accuracy.

The picture shows an example: The spectrum (upper part) shows regions of strong multipath reception reducing the signal strength around 178 MHz. The constellation (lower part) shows – for each subcarrier – how well the bits are arranged on their correct position. Each dot corresponds to a single bit value. The reduced signal strengths around 178MHz clearly shows a much larger scattering of the bits off from their correct values. In a polar display it would not be possible to assign regions of large scattering to the frequency regions (subcarriers) with reduced signal strength.

This kind of constellation display can be used to obtain additional information.

  • Sampling Rate Error: A sampling rate error shows up in the constellation by displaying the bits - depending on their subcarrier - with a misalignment from their ideal positions. In a polar plot, this would show up as a slight distortion, not easily being recognized. The sampling rate error is in the same order of magnitude as the frequency error of the dongle, assuming both are derived from the same clock.

    In QIRX, the sampling rate error is permanently corrected. For more information and possible benefits of the sampling rate error correction you might wish to read the third part of our "Calibration" tutorial .

  • Constant Angle Error: Slightly changing the frequency (e.g. in manual mode) results in a shift of the whole constellation by a constant angle. QIRX permanently monitors the constellation and corrects this type of error. In a polar plot, this error would show up in a rotation of the whole constellation.
  • Constellation Worst Case: The worst case for a bit decoder is the one where all of the bits are arranged between two quadrants. In such a situation clearly no unambiguous decoding is possible. QIRX' control loop will shift the constellation into an unambiguous state, seemingly showing a properly aligned constellation. However, this loop cannot have any knowledge whether it shifted the bits into the correct quadrant. The solution to this problem consists in rotating the whole constellation by values of 90 degrees until a reception becomes possible. As soon as this happens, the rotation is stopped. The Fast Information Channel (FIC) is used as an indicator whether a proper decoding took place. The FIC bits are CRC-protected, making a reliable decision about the correct quadrant possible.

DAB Transmitter Identification

As already mentioned, the Transmitter Identification Information (TII) is sent with low power in the Null symbol. The details about how the TII is coded can be found either in the Standard or in our tutorial about "TII Collisions" explaining the construction of the TII Ids using a "real-world" example. The following is to illustrate how the QIRX software presents the TII information to the user in different receiving situations.

  • Simple Receiving Situation: The picture shows on its left side the "DAB+" dialog, enhanced by the "Transmitter Identification" part. As the "Show TII Spectrum" checkbox is selected, the TII spectrum is displayed in the window on the right usually showing the constellation.
    The four red-framed boxes in the spectrum all contain the same coded information about the transmitter. This information consists of a "Main Id" and a "Sub Id". The Ids are displayed in the table of the dialog.
    Only a single transmitter contributes to the received signal. The number in the "Strength" column is an approximate value how much an average signal strength exceeds the selected "Threshold" value.
  • Medium Complexity Receiving Situation: The next picture shows a somewhat more complex receiving situation. Three different transmitters contribute to the reception of the "BR Bayern" ensemble. They are listed according to their relative strength in the table of the "DAB+" dialog. All three transmitters show the same "Main Id". The reason might be that "Bayerischer Rundfunk" assigns to transmitters in a certain region the same Main Id and different Sub Ids. However, in Germany no common organizational scheme exists for these Ids.
  • High Complexity Receiving Situation: The last picture of this series shows a highly complex receiving situation, having been recorded during a flight. Although the frequency spectrum looks fair enough, not less than seven different transmitters are contributing to the received signal. The indicated center frequency does not correspond to the shown ensemble, as the picture has been taken from a raw-data playback where frequencies are irrelevant.
    Such a situation makes a synchronization more unreliable, because signals violating the guard interval contribute to Inter Symbol Interference with its accompanying negative impact on synchronization.
  • Related Problems: The sketched "complex" receiving situation leads to the problem where to position optimally the "FFT-Window". The term "FFT-Window" used in this context means the positioning of the FFT start in the time domain sample stream, in order to make best use of the guard interval when several transmitters contribute to a reception. In mobile environments receiving situations change rapidly. As a consequence, when such decisions are to be made on a symbol-by-symbol basis, a pure Software-based solution is limited by the possible performance.
    Nevertheless, the simple possibility to identify different transmitters in recorded raw-data opens the door to tackle these and other problems in a systematic way.
  • Geographic Locations: In the DAB Standard ETSI EN 300401 V1.4.1 from June 2006, there has been the FIG0/22 in paragraph 8.1.9 ("Transmitter Identification Information (TII) database"), specifying how to transmit the geographical locations of transmitters having a certain MainId/SubId pair. The locations of all possible transmitters of the multiplex having been sent in the specified way. This enabled a receiver - together with the TII recognition - to find out the geolocations of the actually received transmitters of the multiplex.
    Unfortunately, this paragraph in the Standard has been deprecated. In the version 2.1.1, dating from Janaury 2017, it is indicated as Void.

    Fortunately, there are alternatives. The German UKW/TV Arbeitskreis e.V. maintains its worldwide DABLIST database of radio broadcast DAB (and FM) stations. In the UK OFCOM even provides an official public database of DAB transmitters with many parameters.

    QIRX - since its V2 - is using both sources to display the geographical positions of DAB transmitters on the map, together with the position of the receiver. The picture shows how QIRX displays two transmitter locations of the "Bayern" multiplex on its map.
    Remark: QIRX is a main source of the TII Main/Sub Ids in the DABLIST database.


DAB Guard Interval

One of the big innovations of the DAB technology was the introduction of a so-called "Guard" interval. It enables a robust reception also in "multipath" situations.
DAB processing takes place mainly in the frequency domain. The I/Q samples derived from the antenna signal are collected, and subsequently transformed into the frequency domain by applying a "Fast Fourier Transform" FFT.
The position in the I/Q data stream, where the FFT starts its work is important for a successful DAB synchronization in a multipath situation.

  • What is "Multipath" Reception:
    It indicates that two or more copies of a signal of identical origin arrive at the receiver, having taken different paths from origin to the receiver. The signal could have arrived on the direct way ("Line of Sight", LOS), and also could have been reflected by e.g. mountains or buildings and arrived later due to the reflection. At the receiver, both signals arrive as one signal consisting of the LOS part and the delayed part, added together.
    A DAB network consists of stations at different locations transmitting exactly the same content, all on exactly the same frequency, synchronized down to the last microsecond. This is called a SFN (Single Frequency Network). As a consequence, a receiver located at different distances from say two transmitters encounters the same situation like in a multipath environment: It receives the identical information from two sources, entering its antenna as a signal added together from two sources. Without additional information like the TII decoding it cannot be decided whether a multipath situation is due to multiple paths of one transmitter or identical signals originating from two or more transmitters.
  • Guard Interval: The guard interval or "Cyclic Prefix" is a copy of the last 504 samples of a symbol (in Mode I), copied to the start of the symbol (see above and picture here). Due to the cyclic nature of the FFT, the start of the FFT can be positioned anywhere within the guard range.
  • Finding a good "FFT Start" position: Assume a receiving situation with signals from three DAB transmitters of the same multiplex arriving at the receiver, like in the picture. By applying suitable correlations, the software is able to detect the relative delays between the different signals. The guard end position of the strongest signal (#1) is taken as the reference point. Signal #2 comes somewhat later, and signal #3 is the one arriving earliest.
    The software tries to find the overlapping region in the guard range of all three signals (In the picture the region between the red dashed lines). The "FFT Start" is then taken as the middle of that region (red dash-dotted line). As this calculation is only made after each frame and not after each symbol (what would be preferred but needs too much performance), it is expected that the relative delays do not much change from frame to frame. In case such a range can be found, there will be no degradation due to inter symbol interference (ISI), thanks to the cyclic nature of the FFT.
    In case no overlapping region can be found, there will ISI, reducing the probability of a correct symbols decoding. ISI manifests itself in a larger scattering of the decoded bits in the constellation (see above).
    It may be noted that in the commercial world the solutions with respect to finding the optimal "FFT Start" position seem to be kept confidential. This has been pointed out in the paper by Roland Brugger (IRT) and David Hemingway (BBC) covering this and related problems, titled "OFDM receivers - impact on coverage of inter-symbol interference and FFT window positioning" . This paper found its way into a technical report titled "SFN Frequency Planning and Network Implementation with Regard to T-DAB and DVB-T" latest edition of 2013.

  • Spectrum Examples: The first spectrum shows a pronounced ripple across the whole frequency range, due to the simultaneous reception of two transmitters. The fact that there are two transmitters involved has been verified with the TII decoding facility. An analysis shows a delay of about 130 samples between the two transmitters, corresponding to a difference in the travelling of the waves of about 19km (This very rough estimate ignores possible delays in the transmitters often applied for network optimization). The maximum possible range covered by the guard symbols is about 75km.
    The second spectrum was already shown above and is here repeated for convenience. The two notches in the spectrum are due to a true multipath reception and correspond to a delay of about three samples, corresponding to a "deviation" of the delayed signal of about 400m.


Acknowledgements

I would like to express my special thanks to the following persons and organizations, as they generously have provided hardware for testing the various features of the QIRX software:
  • Carl Laufer: Running rtl-sdr.com, Carl is an institution in the RTL-SDR community. He and the Kerberos team with Othernet and Tamás Pető made the very remarkable direction finding software for their coherent receivers. Apart from it, the Kerberos with its multi-rx hardware has been shown to be the ideal device for QIRX.
  • sdrplay: The sdrplay line of devices are here in continuous use, not only due to their ability of covering the whole frequency range from zero to 2GHz, but also due to their excellent long-time coherence, being able to run DAB virtually "forever" without losing a single sample.
  • Youssef Touil: As is well known, Youssef is the responsible one not only behind the Airspy products, but made also the (much admired) software SDR#. On several occasions, he friendly help me out with his big Signal Processing expertise.


License

QIRX is usable under a non-commercial license. See here for the English version or or here for the German version or in the License file in the download.


  • Cookies helfen uns bei der Bereitstellung unserer Dienste. Durch die Nutzung unserer Dienste erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen