History

Sticky Remarks:
Please use for your error reports, new feature or other suggestions the Issue Repository on GitHub.
For a comprehensive feature list, please click here.


QIRX Version 4.2.4, November 2024


Bugs fixed:

  • DAB Ofcom TII Database update.
  • Some minor DAB errors.


Enhancements:

  • DAB CIR: Transmitter names benath the TII Id, selectable, persisted.
  • DAB TII Table: ETSI conformance indicated individually for every transmitter.
  • DAB SPI: Progress circle.
  • WFM Stereo Pilot: Precision frequency calculation (<10mHz). Issues #163

Credits:

Many thanks to Jim Parkes for pointing me to the Ofcom bug, and Heiko aka Drehrumbum for reporting some errors and suggesting the WFM Pilot frequency measurement.


QIRX Version 4.2.3, May/June 2024


This is a maintenance release, fixing some errors and supporting the new SDRplay devices.


Bugs fixed:


Enhancements:

  • Support for the SDRplay devices RSP1B and RSP2dxR2.
    Please note that the new SDRplay Service V3.15 must have been installed. QIRX does not do this.
    You can achieve it by installing either one or more of the SDRplay products, downloadable on their site:
    • API V3.15
    • SDRUno®
    • SDRconnect®

Credits:

Many thanks to Heiko aka Drehrumbum for reporting errors.
Many thanks to Bernhard (DB9PP) and Alex aka DABär in the rundfunkforum for performing tests on their RSP1B and RSP2dxR2 hardware.


QIRX Version 4.2.2, May 2024


Some error fixing and enhancements.


Bugs fixed (or tried to..):


Enhancements:

  • #129 - 4.2.1 suggestion: Two enhancements of the Database Browser resulted from discussing this entry:
    • Country selector: The last used country selector is persisted and entered automatically on next use: "Country preference".
    • Block selector: It has been newly introduced and can be used as a filter criterion for the queries.
  • #142 - RSPdx and choosing antenna A, B or C: For the RSPdx and the RSP2 devices, the antenna selection is persisted.
  • #146 - RSpdx and RSP1A Blocked Band: The DAB and WFM notch filter selection for the RSP devices (where available) is persisted.
  • #145 - Feature suggestion: MOT Slides Analyzer for DAB: Bitrate measurements were newly introduced:
    • Viterbi: Pre-Viterbi and post-Viterbi in the MSC channel. The ensemble overview list shows this information.
    • AAC: The bitrate of the DAB+ audio channel is measured, containing the AAC audio and XPad data rates, displayed in the AAC tab.
    • XPad: The XPad bitrate of the DAB+ audio channel is measured, displayed in the AAC tab.
    • PCM samples: The PCM sample rate of the DAB+ audio channel is measured, displayed in the AAC tab.
  • #152 - User selected and preferred recording paths: This "Issue" received four different requests. The No.4 was to create for raw recordings a GNSS file only when a sensor is available. This has been realized.
  • Map display: In the DAB tooltip, the distance from the own position is shown. Thanks to Edgar aka cgfan for the suggestion of this feature.

Credits:

Many thanks to all who commented, suggested enhancements or reported errors. In particular, I would like to thank Edgar aka cgfan for his many measurements, always pedantically documented, as well as for his many useful hints and observations.


QIRX Version 4.2.1, January 2024


Some error fixing, and a DAB database browser as a major enhancement.


Issues:


Enhancements:

  • "#127 - Adding DAB-channel to the filename of an IQ-recording: The ensemble block number ("channel") is now part of the raw file name.
  • "#128 - Automatically stop current file playback and restart file playback when a new file is dropped into the QIRX window: Should work not only with files, but also if a file is requested during a live reception.
  • DAB, Database Browser:
    • New DAB Tab "DB Browser": It might be necessary to make a "Reset Layout" with a following restart to see it.
    • Enter filter values (if any): Select "Country" (always necessary), EId, Main Id, Sub Id (wildcards possible), OR enter a text-(fragment) of the Ensemble name OR enter a text-(fragment) of the site name. The OR selections are exclusive of each other.
    • Click the "Update" button: The table fills with the query results.
    • Click several or all (top) of the table's checkboxes. The checked query results will appear on the map.
    The picture illustrates the enhancement. It shows on the map all checked 417 database entries of all ensembles containing the string "bbc" in their name, case-insensitive.


    Remark:
    • Visibility: Due to the size of the databse browser window, I suggest to undock it and view it as a floating window. The undocked tab windows can also be minimized.

Credits:

Many thanks to all who commented, suggested enhancements or reported errors.

Other:

You may find the updated feature list comparing V3 and V4 here .

QIRX Version 4.1.3, November 2023


Another maintenance release, fixing some of the issues and providing some enhancements.


Issues:


Enhancements:

  • "#19 - Site names in TII-list: Originally requested two years ago by Espen, LA1RQ, it gained new attention, and finally was realized now. The site names are also included in the TII log files, and in the sorting of the TII table.
  • RTL-SDR drivers: The V4 of RTL-SDR.com's popular dongles is now supported. Thanks to old-dab for this driver update.
    Remark: HW-AGC is not working. This has been reported by Bernhard (DB9PP), who also identified the problem. The website of RTL-SDR.com as well mentions this problem in the Quick Start Guide, and in the Users Guide.
    As a result, always select the SW-AGC when using this kind of receiver.
  • Frontend: The "Connection" tab contains a new entry showing the serial of the receiver hardware.
  • SPI logos: In several multiplexes, different services show the same logo. Now all of these services show the logo, not only the first one as before. For instance, this is in Germany the case with regional services.
  • DAB, Ensemble Overview: The picture illustrates the enhancements.


    • Short label: The short name of the ensemble is shown in the tab's' title, in brackets.
    • Free space: A "pseudo service", called "zzz" has been added, showing the unused CU's of the multiplex.
    • Symbols in use: The page contains a new element (at the bottom), showing the symbols in use for the the selected service in the Main Service Channel (MSC). Only the 18 symbols for CIF 0 are shown, as the scheme is repeated for the other CIF's.

Credits:

Again, thank you all contributors having an eye on the proper working of the software (andimik, Drehrumbum), commenting (Herman Wijnants), or suggesting new features (Lucas Gallone, Patrick). All of your input is gratefully acknowledged!
My special thanks go to Carl Laufer of RTL-SDR.com, for providing the V4 hardware to test that new device.

Other:

You may find the updated feature list comparing V3 and V4 here .

QIRX Version 4.1.1, September 2023


This is starting the 4.1 series, as some new features have been added. Please visit also the Updated Feature List, view entries marked with "4.1.1" .
Remark: The "Download" page offers the version 4.1.2, fixing an inconsistency of the 4.1.1. Thanks to user cgfan for his quick test and report!


Enhancements:

  • Streaming Server: QIRX was enhanced by a streaming server, able to re-distribute the raw I/Q data to several clients, limited by the necessary performance. The client just has to connect, and the streaming should start.
    The connection method of rtl_tcp is used, by transmitting the "RTL0" sequence when starting.
    For instance, this feature might be useful in the following scenarios:
    • Feeding an app with raw data from a receiver which the app is not able to handle,
    • Realtime compare of reported parameters of different apps, with the identical I/Q data
    The feature has been tested with some popular apps like SDR# or DAB Player.
  • RDS Decoder
    The WFM RDS decoder shows the PI-Code and the Station Name.
  • File Replay Fast Forward
    The file replay of recorded I/Q data can be accelerated by GUI-selectable factors of 2, 4, 8. Howver in that case it is recommended to not use a demodulator, i.e. select the "None" demodulator on the GUI.
  • Level Indicator
    The WFM demodulator now shows the selected peak SNR (Signal to Noise Ratio) as well as the power in dBm of the selected station, for the SDRplay receivers and the RTL-SDR dongles. Both Rx-es show a calibrated scale for their spectrum.
  • AGC of RTL-SDR
    There are three AGC modes:
    • AGC off: The gain value is entered manually, via a slider on the GUI. Accurate.
    • AGC on, SW checked: The gain value is controlled by the rtl_tcp(2) software. Accurate.
    • AGC on, HW checked: The gain value is controlled by the RTL-SDR hardware. Not accurate.
  • Table Sorting
    The sorting of all the tables underwent a thorough revision, including an addition of the usual column sorting direction indication. Affected are mostly DAB and ADS-B tables. In DAB scanning and ADS-B, the sorting is updated continuously.
  • DAB Short Labels
    The multiplex overview table for DAB will get the additional column "ShortName" for the 8 character label of a service.


More Issues and bug fixing:


Credits:

Many thanks for all of your excellent contributions, suggestions, bug reports! This keeps the app alive! In particular, contributions from (alphabetic):
One request from my side though: Please try to confine one thread in there to one single issue. If other issues emerge, please feel free to open any number of additional issues you think are being necessary. Thanks a lot!

Other:

You may find the updated feature list comparing V3 and V4 here .

QIRX Version 4.0.9, June/July 2023


This is a maintenance release, intended to fix some of the issues having emerged since some time.


Issues:


Enhancements:

  • The so-called "notch" filters in SDRplay's line of receivers are able to block the WFM and /or the DAB band, to avoid intermodulation with strong signals within these bands. These filters can now be switched on the QIRX GUI.

Credits:

To all of you guys putting their requests, bug reports etc into the "Issues", many thanks! This is really helpful!
One request from my side though: Please try to confine one thread in there to one single issue. If other issues emerge, please feel free to open any number of additional issues you think are being necessary. Thanks a lot!

Other:

You may find the updated feature list comparing V3 and V4 here .

Report, June 2023:
Three Views on Signal Quality: C/N-MER-BER, by Bernhard Kistinger (DB9PP)


Bernhard, DB9PP, is an RF expert with a long professional experience in the field. He provided much invaluable input into the QIRX development, in particular when it comes to the interpretation of quality parameters like Carrier to Noise ratio (C/N) or Modulation Error Ratio (MER) and the like.

Often parameters like the one mentioned are not easily interpreted from the pure numbers. Therefore, he wrote a nice and concise DAB-related report, providing insight into them, based on practical measurements with QIRX.
It is very well readable, and will certainly enhance your understanding of the DAB parameters you find on the QIRX user interface.
In addition, you can also download it as pdf, if you wish.

Have a look, and enjoy!


QIRX Console Version 0.9.4, for Linux, June 2023


General Properties (see also below for Console Version 0.9.3):

  • System:
    Also, the necessary "native" (i.e. "C" or "C++") libraries do not need separate QIRX compilations for Linux any more.
  • Ugly USB problem: For some (to me!) unknown reason, my debian11 sometimes decides to set the USB ports into "read-only" mode, resulting in an unsuccessful start of the rtl_tcp driver. For this case, the provided script file "usbWrite.sh" is provided in the package, changing the mode of the USB ports. It needs root privilege.
Commandline arguments:
The commandline interpreter accepts most of the commands also possible in operation.
Important: For compatibility reasons, the name of the data directory like (without quotes) "qirxConsole" always must show up as the first commandline parameter.

  • The new script file startMeRSP.sh demonstrates the usage for the sdrplay devices.: Start RSP3_tcp, port 1236, 8-Bit, Antenna B (in case of an RSP2); In qirxConsole, start as receiver #2.
  • Easier service selection for DAB: The services list of an ensemble is prefixed with a number, which can be selected. The service labels need no longer be entered.
  • Raw file replay: The "load" and "play" commands should play a raw file permanently.
  • Issue #67: Windows path convention used under Linux. The logging file is now stored one directory up of the "base directory".
  • Issue #32: cQirx's behavior after rtl_tcp loss. This important issue needed some activity, because if you pull the USB plug of a receiver, the corresponding TCP/IP connection breaks down, but the system reports nothing. As a remedy, a heartbeat was introduced, triggering after 5sec loss of reception, writes a message, and stops the system. The same problem exists in the GUI version, everything just stops without comment. There, a similar remedy will be realized.
sdrplay RSP device selection :
The selection possibility does not (yet) work in the Console version, if more than one device is connected to USB. Always the first device reported by the driver is selected.

For Installation and first steps, please have a look here In particular, it contains a step-by-step instructions for the newly supported RSP devices.


Credit:

Thanks to Andreas aka andimik for his keen testing the program's behavior and his always excellent error reports, see above "Issues"!

QIRX Version 4.0.8, April 2023


Bug Fixes:

  • "Issues" #82 - No valid info for transmitting location: This was not a bug, but a TII Collision. However, as a result of the difficulty to recognize TII collisions, a feature was added to recognize TII collisions better. See below.
    If the concept of "TII Collisions" should be new to you, you might have a look at my tutorial about it.
  • High-resolution TII spectrum: When hovering over one of the carrier pairs in the High-resolution TII spectrum, the indicated Sub Id was not always correct. This has been fixed.
  • Airspy spectrum and driver: The RF spectrum of the Airspy suffered from the fact that it often showed only noise, without a signal. This seemed to stem from the architecture of the old airspy_tcp driver. As a result, that driver has been retired, and rebuilt completely new using the same basis as the RSP3_tcp driver. This seemed to fix the bug, at least in my tests it did not happen again.
    That new driver got a new name, now called ASPY_tcp.exe. The 8-bit version has been omitted as it is not quite clear which bit width is used internally. Thus, only 16-bit selection is offered in the "Settings" (see picture below).


Enhancements:

  • "Issue" #80- Add to the software a choice option for the "old" rtl_tcp and the new rtl2_tcp: For the RTL-SDR dongles, there is a new drop down box "Driver", allowing to select either rtl2_tcp or the rtl_tcp, for compatibility with other apps. This allows now e.g. for QIRX to be driven from a rtl_tcp running on Linux, like a remote RasPi.
  • "Issue" #78- Saving Pictures from Slideshow: The DAB "Options" tab got a new checkbox where this feature can be activated. The state is persisted in the config file. The pictures are stored in the "...\Pictures\SLS" directory. Duplicates are not saved.
  • "Issue" #7- Max Hold - function request: This long-standing request has finally been realized adding some color to the main spectrum. Espen, thanks for your patience!
  • DAB Filtering: The DAB demodulator got a 1.54MHz FIR Bandwidth filter, to further improve the isolation of the selected mulitplex frequency, and as an anti-aliasing filter for higher sample rates, like 4096ksps or 8192ksps.
  • TII Collision recognition: For the evaluation of a possible TII collision, the sub Id of the colliding multiplexes are necessary. All TIIs which are not unambiguously recognized, get now a Main Id of 99, and show the Sub Id.
  • Automatic Frequency Calibration: The "ppm" correction accuracy has futher been enhanced by a factor of 10, now sending "ppbs" (part of billion).
    At DAB frequencies, in this way the RSPs reach an amazing frequency accuracy of about 0.5Hz (~3ppb).
  • DAB Modulation Error Ratio MER: In QIRX, the MER had been calculated as the Standard Deviation of the angles of the carrier dots around their undisturbed angle (a multiple of 45°), visually presented in the Constellation. As it turned out, that value was too high by the small margin of 0.9dB, compared with the "usual" definition of the MER. The current QIRX version uses the correct MER values.
    This is the result of some extensive research by Bernhard, DB9PP, setting the MER of QIRX on a solid theoretical basis.
  • Constellation spectrum: The "Single Symbol" and "Single Carrier" selections have been deprecated, as the usefulness was not clear.

Credits:

Thanks to all who put their suggestions, error reports etc. into the "Issues"!

Other:

You may find the updated feature list comparing V3 and V4 here .

QIRX Version 4.0.6 and 4.0.7, February 2023


Bug Fixes:


Enhancements:

  • "Issues" #73, #75- Logs QIRX: Multiplexes are now logged even if they have no entry in the database.
  • "Issues" #70- The AGC is too nervous in case of DAB: The AGC for RTL-SDR receivers is changed from "Software" to "Hardware", as there are too little gain indexes for a "step-free" regulation.
  • SPI (Logo and EPG) collection: As this can take some time, e.g. "Bundesmux 1" needs 15 minutes, there is a "blinking lamp" sign on the GUI indicating an ongoing collection, and changing to a steady indication after all have been collected.
  • Large Logos: From this version on, all logos transmitted are collected and stored in the corresponding directory of the service. The one with size of 320x240 is put beneath the Dynamic Label in the "Service" tab. If no such size is available, one of the other larger sizes is selected.
    In this way the logo content can be read, which is often not the case with the small logos.
  • Auto Calibration: The frequency calibration is done automatically and continuously, even if the "ppm" value has a non-zero value. This means that a change from one receiver hardware to another one is possible without user interaction for the calibration. However, if the ppm-step from one hardware to another one is more than about 50Hz, one or two resynchronizations are automatically performed.
    For RTL-SDR dongles, the re-calibration deviation is 10Hz, for RSP devices it is 2Hz.
    The automatism is de-activated by default in the "Sync" tab, and can manually be activated by ticking the checkbox. For tuners with separate crystals for the frequency and the sampling rate, the feature should be de-activated.
    In V4.0.7 its state is persisted in the config file. The necessary entry is created automatically, thus no new config file needs to be generated.

  • High Resolution TII-CIR indication: The TII values can be indicated in the CIR diagram with a higher sensitivity than before, due to the fact that TII carriers can be collected (and indicated) with a high resolution. As the collection of these Hi-Res carriers needs to take place across eight frames, and due to the deep averaging, these Hi-Res indications reach their steady state after about five minutes.
    However there are still some scenarios where it does not work properly. These are under investigation.
    As a result, this is still highly experimental.

    Example: Low resolution.


    Example: High resolution. The indication stabilizes after about five minutes.

    The standard magnitude-based method (see "Low resolution" above) works like before.

Credits:

Thanks to all who put their suggestions, error reports etc. into the "Issues"!

Other:

You may find the updated feature list comparing V3 and V4 here .

QIRX Version 4.0.5, January 2023


Bug Fixes:


Enhancements:

  • General: Upgrade to .net7.
  • Vector Processing: Parallelization of some time-critical functionality, for better performance. For this to become effective, the CPU must be able to process the so-called AVX2 and FMA statements. The "About" box shows an information which level of AVX is available.
  • Logos: As had been found out by Bernhard, DB9PP, it is possible for a DAB multiplex to distribute SPI info (logos) for services not present in that mux. Therefore, the logo reception has been revised to take this (and some other, related) feature into account.
    As a disadvantage, one has to wait e.g. in the German "Bundesmux, 5C" for about 15 minutes until all of the SPI info is received. However, this is necessary only once.
  • "Issues" #55- Bias-T auto off: Bias-T is switched off before stopping. The previous Bias-T state is entered in the config file, for the next start.
  • "Issues" #58- DAB TII logging: DAB Time instead of PC-Time for the looged items.
  • "Issues" #60- DAB TII logging: Better Alignment in the log entries, for easier import into Excel.

Credits:

Thanks to Andreas Mikula aka andimik for his many helpful and careful entries in the "Issues"!

Other:

You may find the updated feature list comparing V3 and V4 here .

QIRX Version 4.0.4, November 2022


Bug Fixes:

  • The CPU load was too high, and should now again have a normal value.


Enhancements:

  • Connected Receiver Indication: In its tab on the GUI (e.g. at the bottom), each connected receiver is marked with a red dot, as a quick visual indication of all "active" receivers.
  • Settings: With a receiver active, the "Settings" are no longer generally disabled. Only the active receivers are disabled. In this way, the Settings of an inactive receiver can be edited, and the Settings of an active receiver can be inspected.
    Additionally, non-receiver related Settings can also be edited, e.g. the logging level.
  • DAB, TII Threshold: The threshold adapts itself automatically to the noise present, thus making the adjustment no longer necessary.
    However, it remains manually settable with a corresponding checkbox.
  • ADS-B: The so-called Squawk has been added to an aircraft entry. This "identity" is a number given to the pilot by ATC.

Other:

You may find the updated feature list comparing V3 and V4 here .

QIRX Version 4.0.3, October 2022


Bug Fixes:

  • Issue #48, "Frequency won't change after a scan"
  • Issue #51, "Map: ADS-B column appears several times"
  • DAB Audio Recorder, Recording of Services having a slash in the name did not work. Example is "Nby/Opf".


Enhancements:

  • Issue #13, "Resizing the DAB scanner window"
  • Issue #50, "Centre the map automatically when GPS mouse is connected"
  • Issue #53, "DAB SPI logos not decoded."
    In Salva's mux, the SPI logos were not detected by QIRX. This was due to a sequence counter error in his software. The solution was to relax the sequence counting check in QIRX, which had been realized according to the Standard.
  • CNR, DAB Carrier to Noise Ratio. It measures the power relation of symbol carriers in relation to the noise, taken from the Null symbol. The suppressed zero carrier is excluded from the measurement (thanks to Bernhard, DB9PP for pointing this out).
    The SNR has been renamed to MER (Modulation Error Rate), as it always measured the quality of the demodulation.
  • PPP-RTK-AdV Recorder, DAB. In the German ensemble “DR Deutschland”, block 5C, there is the data service "PPP-RTK-AdV", providing GNSS correction data, allowing for enhanced GNSS localization precision.
    Remark: The recorder has been introduced in collaboration with Technische Universität Dresden, Geodetic Institute, Prof. Dr. Wanninger.
  • Recorders List, DAB. All recorders are listed and operable from a new tab "Recorders".
    The old operating facilities are untouched.
    Important: In case the old config file is used, a "Reset Layout" command is necessary to view this tab.

Credits:

Thanks to Herman Wijnants and Andreas Mikula aka andimik for their ongoing and qualified support and remarks!


Other:

You may find the updated feature list comparing V3 and V4 here .

QIRX Version 4.0.2, August 2022

Another maintenance release.


Main Changes:

  • Issue #40 , Bug: All DAB windows got a scrollbar, including the spectrum pane. There was still some work to do after the last changes. I hope this issue can be closed soon. Thanks to Andreas Mikula for his comprehensive tests!
  • Issue #45, The tabbed DAB spectrum selections should now be correctly persisted. Thanks to Herman Wijnants for reporting this bug.
  • The "Waterfall Timeline Active" as well as its time are persisted. Thanks to Josef Musger for his report.
  • Issue #46, The DAB "Update Database" dialog now contains an option to load the UK entries from DABLIST and not Ofcom. Thanks to Adam Wisher for his information on this issue.
  • Last but not least, thanks to David Visser for his hint about some too small fields in the Scan dialog.
You may find a more comprehensive feature list comparing V3 and V4 here .

QIRX Version 4.0.1, August 2022

This is a maintenance release, fixing some inconsistencies.


Main Changes:

  • Issue #40 , Bug: All DAB windows got a scrollbar, including the spectrum pane.
  • Issue #42, Enhancement: In the QIRX "Settings" it is now possible to give each of the receivers a name. This is showing up on the GUI after the next restart of QIRX. It is persisted in the config file.
  • Issue #43, Hint: The RSP3_tcp.exe V0.3.4 for sdrplay's interface V3.10 together with the fitting sdrplay_api.dll is now contained in the package.
  • Reset Layout: The command was modified such that erroneously missing parts of the DAB tabbed window all should be restored, after a restart.
  • Map: The "Zoom" slider on the bottom status bar has been removed, as zooming can be most conveniently performed with the mousewheel. Additionally, it is still possible with the control in the upper left corner.
  • Map: The "Dim" slider has been moved to the left margin, thus leaving space for a narrower map size. In addition, the aircraft altitude color bar no longer becomes hidden in case of a low width of the map.
  • License: The license is slightly modified (Par. 2).
You may find a more comprehensive feature list comparing this and the last version here .

QIRX Version 4.0.0, July 2022


Major Changes:
There are a number of significant changes and new features in this version. I hope it will convince you that the new version is well worth the moderate fee which I - regrettably - have to charge, to cover my costs.

  • DAB Marginal Signals: The decoding sensitivity has been significantly enhanced, now being at least as good as the best other DAB solutions.
  • General GUI: The layouter has been enhanced by a commercial window docking solution. This means that you can dock or float the most frequently used windows, like
    • The map
    • All three possible receivers
    • All DAB spectra
    • All "tabbed" DAB windows
    Examples where this is beneficial are
    • On ADS-B, the map can show much more information on a larger screen, together with the tabular display,
    • On DAB, the I/Q constellation spectrum can - independently from other displays - be kept quadratic when floating,
    • On DAB, windows containing a lot of information like the CIR spectrum or the "Ensemble" table, can be inspected much more comfortably when presented as large floating windows.
    In addition to the fact that the complete layout is persisted, on the QIRX top menu bar a new button is provided to save, restore or reset a complete layout.
  • DAB EPG: The program schedules received from the MOT EPG service are - where sent - available as a new tabbed window. The most attractive ones like the one of the BBC in the UK or the DLF in Germany are - among others - available.
  • DAB Bit and Modulation Error Rate (BER, MER): The DAB measurement capabilities have been enhanced by BER (as usual, "pseudo BER") and MER, usually not being found in DAB SDRs.
  • DAB I/Q Constellation: Likewise, the I/Q constellation now provides the measurements of a selectable single carrier or symbol.
  • Map Range Rings: The selectable range ring distance can be selected as km or nautical miles (nm).
  • ADS-B Map Display: Aircraft are now displayed together with their flight id.
  • ADS-B Filter: The ADS-B map and tabular displays can be "decluttered" by applying filters.

    Possible filter values are

    • Altitude
    • Velocity
    • Track
    • Vertical Velocity
    • Distance from own position
    The filter selection is synchronized between the tabular and the map presentation.
  • Map vertical color bar for aircraft tracks: By comparing the track color of an aircraft with the vertical color bar of the map, a quick estimate of the aircraft's altitude can be made.
You may find a more comprehensive feature list comparing this and the last version here .

QIRX Version 3.2.2 February/March 2022


Major Changes:

  • Hardware: Thanks to SDRplay providing a hardware, the RSPdx is now supported. It is a fine piece of hardware with excellent accuracy and stability (my example has -0.11ppm accuracy). All three antenna inputs are selectable, but some other features like the "High Dynamic Mode" for the shortwave region below 2MHz still are waiting to be implemented in the RSP3_tcp.
  • DAB Fine Frequency correction: It has been improved to be now accurate to better than 1Hz in the RSP's, and about 7Hz in the RTL-SDR dongles, due to their lesser frequency accuracy.
  • TII high resolution spectra: These are now showing the carrier pairs with a very good stability. This is a main consequence of the much improved Fine Frequency correction and stability.
  • TII and CIR: An algorithm has been added to associate TII Id's with their corresponding CIR peaks. This is still experimental.
    Credit: The principles ruling this algorithm have been developed by Bernhard, DB9PP.

  • EPG: The recognition of the "Electronic Program Group", currently being used to collect station logos where available, has been changed from the "guessing" of labels to the inspection of the "SPI" Application Type. See also in the Issues #27.
  • Multi EPG services: There exist DAB multiplexes which carry more than one EPG packet service. The only known to me is the Riks mux in Norway with two EPG services. The software has been enhanced to process these correctly.
    Credit: The necessary (large!) test data have kindly been provided by Espen LA1RQ . With his experience in the field, he also was able to enhance my understanding of the importance of the transmitter delays for the planning of a SFN.
  • Constellation: An I/Q data spectrum can be selected.
  • TII recordings: The bearings angle from the receiver to the station is now included in the TII logging file.
    Credit: This feature has been suggested by Herman Wijnants.


QIRX Version 3.2.1, January 2022


General Changes:

  • .net6: Transfer from MS's preliminary version .net5. net6 is the product version of MS, being supported until 2025. Its practical advantage is some new C# features, most notably the "DllImportResolver" (see below under Linux).
  • Reorganization: The non-GUI parts of the software have been encapsuled into an own module, called "Resources.dll". It contains the QIRX kernel mainly consisting of the receiver frontend parts, the demodulator parts and the audio parts. This kernel runs binary identically on Windows and Linux.
GUI Changes :
  • TII Spectrum: It can be manipulated (shifted, zoomed) in the usual way known from other spectra. Additionally, it got a "High-Res" checkbox to display it in high resolution.
SDRplay RSP hardware:
  • API Version 3: The newly developed RSP3_tcp supports now sdrplay's actual service based basic driver (V3.09). In case of more than one RSP device present, QIRX allows for the selection. In this way one gets rid of having to know the (mystery) USB index for the selection of a device. The picture shows an example of three devices present, the selection dialog being displayed in the QIRX startup phase.

  • Caveat: Care must be taken to always stop the device properly, which is usual the case in QIRX when terminating a receiver or the application. Otherwise, the sdrplay service has no chance to release the device. However, there might be situations where the application is terminated in an unusual way, e.g. by killing in Task Manager. In such a case, the selected RSP device might not only not be released in sdrplay's service, but the service could hang altogether, resulting in sometimes weird hardware reactions. In this case the service should be stopped and restarted in the Service console of Windows, reachable with (Win10):
    • Right mouse on Windows "Start Button" -> select "Computer Management"-> "Services and Applications"-> "Services"-> "SDRPlayAPIService".
    • Right mouse on it, select "Stop", then select "Start".
    • In case it cannot be restarted, you should reboot. If you know what you are doing, you could - to avoid a reboot - follow the instructions given here (johan's contribution), but
    • CAUTION!: This not only stops the - unstoppable - service, but deletes it altogether. It has then to be newly created, which can be accomplished in the Windows Powershell with the following command:
      sc.exe CREATE SDRplayAPIService binPath="put here the complete path to sdrplay_apiService.exe"
  • Sample Dropouts: After having Win10 newly installed, there were so many sample dropouts, that DAB was completely unusable. An investigation found that the famous "Nagle Algorithm", often used per default as a TCP/IP optimization, was the culprit. It inserts every now and the transmit pauses of some 100ms, resulting in a timeout in the sdrplay service with a following loss of thousands of samples.
    The remedy has been to insert the parameter TCP_NODELAY in the creation of the TCP/IP socket.
    It is not clear if this could also be the reason for the sometimes reported dropouts happening with rtl_tcp.exe. At least I never saw them.


QIRX Console Version 0.9.3, for Linux and Windows, January 2022


General Properties:

  • System: The "Self Contained Executables" are now binary identical in their Windows and Linux versions, due to applying the very new C# feature "DllImportResolver", allowing for dynamically loading the correct native .dll or .so files, respectively.
    As a most welcome result, no compiler switches to discriminate between "LINUX" and "Windows" are necessary in the code any more.
    Of course, the necessary "native" (i.e. "C" or "C++") libraries still remain separate compilations for both platforms.
  • Ugly USB problem: For some (to me!) unknown reason, my debian11 sometimes decides to set the USB ports into "read-only" mode, resulting in an unsuccessful start of the rtl_tcp driver. For this case, the provided script file "usbWrite.sh" is provided in the package, changing the mode of the USB ports. It needs root privilege.
Commandline arguments:
The new commandline interpreter accepts most of the commands also possible in operation.
Important: For compatibility reasons, the name of the data directory like (without quotes) "qirxConsole" always must show up as the first commandline parameter.
A number of script files (.bat or .sh) examples demonstrate the usage:
  • startMe5C.sh: Start receiver #1, demodulator DAB, ensemble 5C, service Dlf.
  • startAirband.sh: Start receiver #1, demodulator AM, frequency 127.6MHz, and appropriate bandwidth, step and squelch values.
  • startWFM.sh: Start receiver #1, demodulator WFM, some WFM band frequency, bandwidth of 200kHz.
sdrplay RSP device selection (Currently Windows only):
The above described selection possibility does not (yet) work in the Console version. Always the first device reported by the driver is selected.


Linux QIRX Console Version 0.9.1, November 2021


General Properties:

  • System: First native Linux version based on the .net5 system. No .net5 installation necessary, files are self-contained.
  • Base: Code is source-compatible with the Windows version 3.1.8.
  • Audio: PortAudio.
  • Logging: Based on NLog. Realtime output per UDP, viewable with log4view.
  • Configuration: Config file qirxConsole.config, structure identical to the Windows version. If necessary, config files can be changed manually.
  • Hardware: Same as on Windows. However, currently the only Linux TCP/IP server provided is "old-dab's" rtl_tcp for RTL-SDR dongles. This will change in future versions.

Basic Features :
  • Demodulators: DAB with TII output and TII Threshold control, WFM (incl. Stereo selection), NFM, AM, all with frequency and up/down selection.
  • Bandwidth selection
  • Up/down step width.
  • Squelch.
  • Mute.
  • Log level selection.


QIRX Version 3.1.8, November 2021


General Changes:

  • Audio: Change from using NAudio to PortAudio, due to compatibility with .net5 and (coming) Linux.
  • Logging: Change from log4net to NLog, due to compatiblity with .net5. The logging is now always active, the log can be activated and its level can be set in the "Settings" dialog. The log xml output can be viewed with log4view, UDP port 878 (the default).
  • Temporary Database Files are deleted. See item #24 in the issues.
  • Delta kHz: This was removed.
  • qirx_audio V2.1: Program internally re-organized, due to race conditions on slower machines.

GUI Changes :
  • DAB Options Tab: Now visible also on File Replay. Thus, for a DAB database update it is no longer necessary to change to "live" mode.
  • Raw File Replay: "Seek" slider now active also during Pause. See item #12 in the issues.
  • Delta kHz edit field removed.

Bugs fixed:
  • Null Symbol detector: Did not work very well at ppm corrections > 0.
  • FIC information: In case of a Fine Frequecy Correction of exactly 0Hz, there were FIC CRC errors, due to a bug in the software frequency mover.
Credits:
  • Thanks to rundfunkforum user Heiko Vogel aka Drehrumbum for having reported the FIC error.
    In a separate activity, Heiko managed to optimize the Viterbi decoder resulting in a symbol processing time of about 30% less than before. Please see the corresponding remark on the Download page where you can find a link to his code.
  • Thanks to Herman Wijnants for his many useful comments and error reports.
  • Thanks to rundfunkforum user Chief Wiggum, who pointed me to the "DAB Options Tab" problem.


QIRX Version 3.1.7, October 2021


Changes :

  • PPM Frequency Correction and DAB Calibration: Now performed with fractional ppm values (1/100ppm). As a result, e.g. the RSP line of receivers run with a frequency error of about only 1e-8, after warmup of 30 minutes and a constant temperature. This is significantly better than the factory provided value.
  • qirx_audio V1.3: Fix of an error crashing the program occasionally. See item #17 in the issues.
Credits: Thanks to rundfunkforum user Oldenburger for having suggested the fractional ppm frequency correction.
Thanks to Herman Wijnants for reporting the error in qirx_audio.


QIRX Version 3.1.6, August 2021


Changes :

  • RSPs Spectrum Level: 8- and 16-bit settings now show identical spectrum levels.
  • AAC Decoding and Recording: Again decoding with "Audio Specific Coding" ASC instead of ADTS headers. AAC recordings made with LOAS/LATM headers (ASC is a prerequisite). This solves the problem of the audio recordings having a too low pitch, due to the DAB+ mandatory 960 frame length. The VLC player handles the files correctly. Foobar2000 and the Windows Media Player don't play these files. WAV format remains selectable.
  • qirx_audio V1.2: Change to ASC decoding. Additionally, V1.2 solves an error causing a crash when changing from a service with 48kHz sampling rate to one with 32kHz.
    Remark: Older versions of qirx_audio do not work with this QIRX version.
Credit: Thanks to rundfunkforum user andimik for having suggested the LOAS/LATM header some time ago.


QIRX Version 3.1.5, July 2021

Main reason for the release is the fix of the "Audio Loss" error.
Changes :

Credit: Thanks to Espen Lien and Richard Strang for their suggestions.


QIRX Version 3.1.4, July 2021

This is a maintenance release, fixing some errors.
Note: Starting with this release, an issue-tracking repository has been created in GitHub. It is strongly recommended to enter all errors, suggestions etc. there.
Note: The "Open Issue" of the V3.1.3 is still relevant. I put it as the first entry into the issue-tracker.


QIRX Version 3.1.3, June 2021

New features:

  • Moving Map
    The display of the own position in the map can be selected:
    - Centered : Own position stays in the center, map moves in a mobile environment with GPS active.
    - Free: The own position can be moved freely to any arbitrary position, as before.
    - The selection is possible with two image buttons on the map.
  • WFM, NFM
    - WFM: Audio 50Hz highpass filter, to remove a possible DC component in the spectrum.
    - NFM: 12.5kHz frequency raster.
  • Raw Replay
    Drag'n Drop from raw files on empty QIRX frontend surface.
  • DAB
    - Synchronization speed improved.
    - Audio Recording: Files get the DAB time instead of the local time. This is interesting when recording audio files from a recorded raw file.
    - Dynamic Label: Text starting with "www" are assumed to be hyperlinks, and can be clicked.
    - Logos for the Services, where available in an "EPG" service. The collection should be complete after some minutes. Due to some uncertainties and unspecified possibilities, this is still experimental.
    - New "Ensemble" tab showing all components of an ensemble with most parameters. Updateable by right click "Refresh".

Errors fixed:

  • DAB Slideshow: Wrong picture in rare cases, due to identical Transport Id of different services.
  • DAB Replay: No sound after about 5 seconds
  • Windows Taskbar: Not working any more when QIRX runs maximized. This one could not be repaired completely, but for Taskbars in mode "Auto Hide" some workaround is provided: The taskbar appears as usual when touching the screen bottom with the mouse, and disappears when clicking somewhere into QIRX.
  • Vertical Scrollbar on the right side: Not working when touching the scrollbar from the left out of the spectrum.
  • Frontend FIR filter: Checkboxes inconsistent. Digits lacking contrast.
  • Device Frequency selector: After changes, the Rx was sometimes tuned to wrong frequencies.
  • Un-intended change of frequency when the frequency window is partially obscured by another app.
  • Audio recording of standard DAB was broken.

Open Issues:

  • UDP command socket between QIRX and qirx_audio.exe not always released, resulting in - not allowed - two sockets with the same parameters, leading to loss of audio. Reason still unknown.


Credits:

Friends from a number of countries have contributed with their suggestions and error reports to this release. In alphabetic order:

  • andimik, rundfunkforum user, mentioned the possibility to draw a splitter bar beyond the right border of the main window, rendering other parts of the GUI like DAB spectra unreachable.
  • Bernhard (DB9PP) reported the "wrong frequency" error. His RF-expertise is beyond discussion. He also provided raw files of the many muxes he is able to receive with his advanced antenna situation.
  • Dana Diezemann suggested the moving map feature, and reported the FIR filter checkbox error behaviour. All the best of luck to her with her DAB project!
  • Drehrumbum, rundfunkforum user, suggested the DAB audio file service time feature, and constantly showed a critical observation of the program with a number of very useful suggestions and error reports like the Slideshow error or the "No sound after 5s"-error.
  • Espen Lien, LA1RQ from Norway suggested the new 12.5kHz NFM raster, and reported the "scrollbar not working" error.
  • Herman Wijnants from Belgium reported the taskbar problem.
  • Nils Schiffhauer, DK8OK published some very nice articles about QIRX on his website. In case you are interested in Doppler shifts on HF, Nils' site is the place to visit.
  • Richard Strang from Audio Design in the UK provided raw files containing an EPG service ("BBC Guide") transmitting all the nice BBC icons.
Apologies if I should have forgotten someone. If you let me know I'll be happy to correct it.


QIRX Version 3.1.2 (still Beta), April 2021

In this version some glitches and errors have been repaired, together with the development of sme new features:

  • WFM Demodulator
    - Stereo Decoder, together with the corresponding indication on the GUI.
    - Deemphasis
  • New Spectrum Type "Audio"
    - All Demodulators (of course except ADS-B) contain now an "Audio Spectrum". With WFM, this can be switched between the pure Audio Spectrum after the Deemphasis filter, and the complete demodulated bandwidth of about 100kHz, including also the MPX spectrum.
    - With DAB, the Audio Spectrum can be switched on and off in the Spectrum pane, like all other DAB spectra.
  • No DAB Dropouts with RTL-SDR Dongles
    Please note that the distribution contains the new version 0.95 of rtl_tcp.exe, using a modified usblib, eliminating the very nasty effect of sometimes frequent drop-outs on DAB together with RTL-SDR dongles, due to sporadic sample losses.
    All credit is to Rundfunkforum user Oldenburger, who managed to track down this deficiency of the usblib, and was able to repair it. Great thanks for this great achievement!


QIRX Version 3.1.1, February 2021

Since V1, this V3 is the first version to be multi-mode again. It has many - hopefully interesting - new features.
For a more complete description of its abilities please have a look at the Overview page.

  • Multi-Hardware
    Simultaneous operation of up to three receivers each running with different hardware of the same or different type.
  • ADS-B Decoder
    Apart from standard demodulators like AM and FM, it features an ADS-B decoder, showing also (unlike many other Virtual Radar apps) the movements of the aircraft on the ground, when in range.
  • Map
    The map shows the positions of the aircraft found by the ADS-B decoder.
  • Aircraft Database
    The aircraft database of Opensky-network.org provides the properties of about 450.000 private and commercial aircraft. Similarly like the DAB database, it can be updated from within the application.
  • Absolute RF Magnitudes
    For RTL-SDR dongles equipped with a R820T tuner, it shows the absolute values of the RF input, calibrated in dBuV or dBuV/sqrt(Hz).
  • And many more..
    Please check it out!

Credits:

    Bernhard, DB9PP, and Rundfunkforum user Oldenburger performed many detailed measurements of various tuners of RTL-SDR dongles, in a wide frequency range. They were the foundation of the ability of QIRX to show absolute magnitude values of the incoming RF in its spectrum line plot.


QIRX Version 2.1.1.10 (DAB-Only), October 2020

Another maintenance release. Apart from fixing some errors, the following additions were made:

  • Raw Recordings
    The xml headers in the recorded raw files are now 1MB in size, thus providing enough space also for very long recordings.
  • Map
    The map allows for displaying all database entries of a selected Multiplex.
  • TII Recordings
    The absolute and relative distances of the indicated transmitters from the own position have been added.
  • OFCOM Database
    OFCOM again had changed the schema of their .csv file, causing the UK muxes to show up in Africa (thanks Jim for the report).
  • MOT Images
    MOT Images sent in a non-standard size should be displayed correctly.

Open issues:

  • GPS
    Some GPS mice cause the software to stall. The error is presumably an old issue in the way Windows treats Virtual COM Ports. The error could not yet be found, Exceptions are not properly treated by the underlying Windows libraries, causing possible crashes. Thanks to rundfunkforum user andimik for reporting this error.

Credits:

    Again, the friends from the rundfunkforum contributed with many useful suggestions. In particular, I would like to thank users andimik, AustriaMV, Drehrumbum for their very positive input. And, last not least Jim Bryant from the UK demonstrated the usefulness of a direction finding device for locating unknown TII transmitters. Future dreams...


QIRX Version 2.1.1.9 (DAB-Only), April 2020

Another maintenance release. The following bugs and errors are fixed:

  • TII List
    The TII LLog contained old entries. These are removed now. Thanks to Herman Wijnants and Guido Schotmans for reporting this error.
  • Config file checker
    The config file check sometimes reported non-existent errors on startup.
  • OFCOM Database
    OFCOM added an empty column in its .csv file used by the Database Updater, causing an error in the DB Updater. Thanks to rundfunkforum user Austria MV for reporting the problem.

Open issues:

  • GPS
    Some GPS mice cause the software to stall. The error is presumably an old issue in the way Windows treats Virtual COM Ports. The error could not yet be found, Exceptions are not properly treated by the underlying Windows libraries, causing possible crashes. Thanks to rundfunkforum user andimik for reporting this error.


QIRX Version 2.1.1.8 (DAB-Only), January 2020

This is a maintenance release. On high map tile download requests, QIRX sometimes crashed. This should be fixed in the current release.


QIRX Version 2.1.1.7 (DAB-Only), January 2020

This release shows some new or enhanced features.

  • Installer
    Starting with this release, QIRX will be downloadable as a standard Windows Installer file (.msi). The installation is started by double-clicking this file. Per default the code with all necessary files and drivers is installed into the "Program Files" directory.

    The data files are installed in the standard user application data directory, mostly looking like so:
    C:\Users\<your user name>\AppData\Local\qirx\
    The qirx.config file must reside in that directory. All of the other directories might be edited in the qirx.config file if appropriate, by hand.

    For special applications, the introduction of the installer still allows the use of more than instance of qirx. However, to run error-free, the second instance should reside in another directory, like e.g. in a version lower than this one. Please note that in this case also the directories for the data have to be adjusted manually in the qirx.config for that other instance.
  • TII Tab
    TII Averaging: Its time can be adjusted with the "Average" slider. In this way it is possible to adjust the averaging according to the application profile:
    • High sensitivity: Large averaging time.
    • Good realtime response times: Small averaging time.
    Thanks to Petr, OK2HF, who motivated the introduction of this feature, as he noticed the TII values lagging behind due to the large averaging of several minutes.

    TII Collisions: Different Main Ids using the same Sub Id cannot be resolved by the TII decoder. These "collisions" can now be shown by checking the corrsponding checkbox. There will be a tutorial explaining how to make use of this feature, and - with some luck - resolve the collisions.

    TII List Entries: Each contains a checkbox. If selected, ith shows in the TII spectrum the carriers generating the TII.
  • Scanner
    The scanner in its current version sometimes needs more time to stabilize on an ensemble than provided by the default value, in particular when the receiver is not properly calibrated. It is possible to adjust this time in the scanner dialog. It is called "Delay Time Before Ident". This is another feature having been suggested by Guido Schotmans.
  • Map
    Right-clicking into an ensemble icon now offers the "Info" context menu. On activating it, it shows - for that transmitter - the whole information contained in the database.
    Another context menu item selectable by clicking in an empty region of the map allows to remove all presently visible inactive, i.e. grayed icons on the map.
  • Raw Files
    The files of a raw recording are prepended with a xml header, containing the relevant metadata. This feature, suggested by qirx, has been a common effort between the authors of Qt-DAB and QIRX. This header will be described in some more detail elsewhere.
    With this header, it is no longer necessary to change configuration settings for a specific replay. However, for backward compatiblity, raw files without header remain possible.
    In QIRX, - implemented since 2.1.1.5 - it allows e.g. for the following new possibilities:
    • Changing the ensemble during a recording, and having that change reflected in the same way on replay.
    • Display of Frequency and Block Id during a replay.
    • Display of application and device used during the recording.
  • Sampling Rates
    For experimental purposes, different sampling rates can be selected in the configuration. This allows for instance to run the Airspy with its native sampling rate of 3Msps. A corresponding fractional resampler, based on Lagrange Interpolation (with an order of two, using parabolas as polynomials) has been realized, together with the necessary filtering.
    This feature is of course also usable for the replay of corresponding raw files.
  • Hardware Gain Level indication
    For RTL-SDR compatible dongles, an enhanced rtl_tcp.exe reports the value of the overall gain used by the Tuner . It is indicated in QIRX in the "R820T" tab as a percentage level number. 100% mean the tuner is using all of its possible gain.
    In the rtl_tcp.exe, this feature again has been developed by rundfunkforum user Oldenburger, adding another enhancement of this popular hardware to his long successful AGC and HW Filter developments.

QIRX Version 2.1.1.6 (DAB-Only), November 2019

This is an interim release.

  • Frontend
    Bias-T in the "Settings" tab: Tested for Airspy and RSP1A and RSP2. Did not work with RSP2, reason unknown, HW acknowledges ok. The new xxx_tcp.exe TCP/IP servers from this distribution must be used.


    Software Filter with adjustable and persisted bandwidth and order: "Order" means the steepness of the filter cutoff. 100 is a reasonable value. The filter should be activated with marginal signals and scanning (see below). It costs some performance though.


    Airspy: Works now also with a sampling rate of 2048000 (before only 4096000sps). Realisation is such that the device sends samples at 4096000sps, which are filtered and downsampled by a factor of two.


    RSPduo: The Antenna selector in the RSP2 Tab acts as the tuner selector.

  • TII Tab
    The latest TII Log file can be viewed in a text editor (new icon). Notepad is entered in the qirx.config per default. In case another text editor is to be used, the complete path should be entered in the config file. This feature can also be activated from within the scanner window. It has been proposed by Herman Wijnants.
  • Scanner
    The scanner assesses the scanned muxes with a different method compared to older versions. The new method is correlation based and inspects the scanned signal whether a Phase reference signal (PRS) can be identified.
    The block combo box indicator in qirx ("Mux selector") now follows the indication in the scanner window. This drawback in previous versions has been pointed out by Guido Schotmans.
  • IQ Data Viewer
    Right-clicking into one of the splitters separating the spectra shows the new context menu "Create IQ Data Spectrum". The IQ-Data are usually looking like random noise. Clicking the "Sync" button, the output is synchronized to the Null symbol. Using the corresponding buttons, it can also be delayed within half a second, on a millisecond or a sample basis.

QIRX Version 2.1.1.5 (DAB-Only), August 2019

This is a major release showing some new features.

  • Hardware Support
    Airspy: QIRX now supports the Airspy devices. The TCP/IP server airspy_tcp can be selected from the "Settings" dialog. It must be used with a sample rate of 4096000sps and a bit width of either 8 or 16 bit.
    Thanks to Youssef Touil from Airspy who generously provided the necessary hardware for the development and test of our new TCP/IP server "airspy_tcp", which is an adaption of the work of Thierry Leconte's airspy_tcp, available on Github.


    rtl-sdr Dongles: For interested hardware experts who like investigating the R820T tuner in detail, QIRX allows for reading and writing the I2C registers from the "R820T" tab in the "Frontend" section of the GUI. The (incomplete) documentation of the I2C registers can be found here.
    It might be worth noting that Bernhard (DB9PP) was able to reveal the meaning of many until now unpublished bits used to program the R820T Rafael tuner. His findings have been included by Oldenburger in his rtl_tcp version (see below) as comments, completing the documentation, and being a new valuable resource for any interested developer.

    To illustrate the enhanced possibilites of the found results, Hayati Ayguen published two recommendable articles titled "Unexplored Country" with illustrated examples and explanations (currently in German), downloadable here and here. An English translation will follow soon.


    rtl-tcp.exe: This distribution contains the version 0.83 of the TCP/IP server rtl_tcp.exe. The version has been developed and is maintained by rundfunkforum user Oldenburger. QIRX is used as a platform for publication of his excellent and sensitive software. You may download his sources here.

  • Database
    Starting with this release the transmitter database is no longer contained in the distribution. It is now possible to update it from within the application, using the "Update DB" button in the "Options" dialog. The data are downloaded from the two major sources, the official OFCOM database for the UK, and the DABLIST database for the rest of the world. The use of an Excel file serving as the database for QIRX remains unchanged. It is created from the .csv files provided by OFCOM and DABLIST.
    Thanks to Günter Lorenz for providing the DABLIST download possibility.
  • New "Service" Tab
    Dynamic Label: If present, the Dynamic Label text info is displayed.
    Slideshow: If present, the Slideshow pictures are displayed.
  • Scanner
    Starting/stopping the scanner starts/stops the TII file logger as well. This feature has been proposed by Herman Wijnants.
    The scanner now recognizes muxes with the same block id and different ensemble id. This has been a weakness of the scanner. It has been pointed out by rundfunkforum user Austria MV.
  • Other
    Screen Position: On a new start, the program remembers its last absolute position on the screen, together with a possible "maximized" state. This was a propsal by Guido Schotmans, a passionate DX-er. Guido also contributed many very helpful comments and reports.
    Audio Recorder: Files recorded as "AAC"-files (highly compressed, high quality) can now be played with the VLC Player, and are seekable. However, the Windows Media Player still doesn't recognize them.
    qirx_audio: Program responds now to the "Autostart", "Autostop" options in the "Settings".
  • Bugfixing
    Map: The "phantom mux" at the equator has been removed.
    "Joe's Error": Services in the same mux where one name was completely contained in another name, like "Joe" and Joe 70s" were often not recognized. This "nasty bug" has been reported by Guido Schotmans.
    Other: Some minor bugs were fixed.
    Open Issue: A crash of the program when using a Bluetooth GPS sensor could not yet be located, due to lack of testing possibilities. The problem has been reported by rundfunkforum user andimik.

QIRX Version 2.1.1.3 (DAB-Only), June 2019

This is a maintenance release fixing one "nasty" bug in the TII recognition and a number of other, less "heavy" issues.

  • sdrplay RSP
    Naming: RSP devices are now displayed (upper left corner) with their correct name,
    RSPduo now working as an I/Q frontend.
    RSP2_tcp.exe (V0.9.6) MUST be used for correct cooperation with one of the RSP devices. Older version will no longer work properly.
  • Bug-Fixing
    TII Recognition: Thanks to a very trivial but nontheless very hard to find "nasty" bug, TII-Carriers leaked into their neighbours creating False-Positives. (But "with a little help from friends, see Credits...").
    GNSS: With another than my u-blox GNSS mouse, the geolocation did not work any more.
    Program Freeze: Due to a database query error, in some circumstances the software continued to work, but with a complete GUI freeze.
    Gain Settings: were not persisted.
  • Other
    Raw Replay: .sdr file extension recognized again as raw data file
    Console windows: Both console windows (rtl_tcp and qirx_audio) are now started as minimized, thus avoiding desktop cluttering.
    qirx_audio: Program is now terminated together with the qirx main program termination.
  • Credits
    This version is a true Pan-European release. Countries are listed alphabetically (Germany put last):
    Austria: andimik: One of the power-users in the rundfunkforum again provided valuable and critical feedback, as well as information about the incomplete database.
    Belgium: Herman Wijnants is a very keen DX-er. He provided many critical tests and suggestions for this version. His tests gave confidence that the new gain settings in RSP2_tcp are working.
    Italy: Paolo Romani (IZ1MLL) provided patiently many tests to get the geolocation with his GNSS device working. Also the altitude indication should not be wrong any more. I hope his tests will be of use for others as well.
    The Netherlands: Martien, PD1G kindly offered testing with the RSPduo. By now, all sdrplay devices could be verified, except from the (discontinued) RSP1. With respect to gain settings, any member of this family must be treated separately.
    Germany: Those two are friends from the rundfunkforum.
    - Oldenburger made one convincing and far from being obvious test to isolate the TII-carrier leaking "nasty" bug. After his report, the repair was about half an hour. Highest respect!
    - Last but not least: Chief Wiggum (his alias is a message: he's admin!) provided the raw files providing evidence for the TII-False-Positives, and which served as a final test that the repair worked.
    Thanks guys! I hope I didn't forget anyone!

QIRX Version 2.1.1.2 (DAB-Only), May 2019

This is a major release showing several new features, in particular the integration of Openstreetmap, connected to transmitter geographical data from a database. This is supported by the possibility to connect a GNSS sensor (detecting GPS and/or GLONASS satellites) showing the current own position on the map.

  • Map Features

    • Openstreetmap integration, based on an excellent sample project by Samuel Cragg, published on Codeproject.
    • Automatic tile reload from openstreetmap.org (Internet access necessary). Local Storage in a cache.
    • Zoom and Pan. All 18 OSM zoom levels are supported.
    • DAB Transmitter Database as Excel file.
    • DAB Transmitter icons, colored according to their TII receiving strength. No search and filter functions yet.
    • Own Location icon, either positioned locally by Drag and Drop, or from GNSS when connected and activated.

  • Transmitter Data Sources

    The transmitter data come from two different sources having different formats. They have been imported into a single Excel file being used in the software.

    • United Kingdom: OFCOM database, downloadable as .csv file, published here. This comprehensive database is an official and free publication. Regrettably the UK seems to be the only country providing such a great service.
    • Other: DABLIST database, published at the website of UKW/TV-Arbeitskreis e.V. For any questions regarding the DABLIST data or updates (maybe you wish to contribute yourself?), you might contact Günter Lorenz (glorenz (at) fmlist.org).
    • Data Quality. We cannot judge the quality of the data. TII identifiers seem to be complete in the OFCOM data. The DABLIST data have a large number of transmitters with TII identifiers in The Netherlands, Switzerland and Germany. All other countries seem to contain only very few TII identifiers. The geolocation data seem to be rather accurate.
  • GNSS Features

    • Connection. The software expects the GNSS sensor to show up as COM port. Usually it will be a "Virtual COM Port" on a physical USB connection. On first connect, all COM ports between COM1 and COM30 are scanned and checked for a valid response (NMEA telegram). Other parameters should be 9600,8,N,1. Tests have been performed with an u-blox GPS mouse.
    • Connection Dialog. The first connection should be activated via the connection dialog, to be opened by a click on the satellite icon. Subsequent connections on software startup are tried with the detected COM port of the initial connection. The dialog also allows for disconnecting the sensor.
    • Windows 7 Problem. This OS seems to show an old problem when disconnecting and re-connecting a COM port. It sometimes shows up in a software crash which cannot be caught by the software. Windows 10 seems to have the error repaired, at least it never occured during the tests.

  • Recorders
    • TII Recorder: All records now contain the GNSS data. This might be useful for running permanent scans in mobile environments.
    • Raw Recorder: In addition to the usual .raw files containing the I/Q data, a second (.txt) file is created containing the GNSS locations, updated every second. On replay, the data from both files (.raw and .txt with the positions) are synchronously displayed on the map, showing the movement of the own position on the map together with the currently received transmitter icons. This might be useful for mobile recordings. On replay the usage of the GNSS file is optional.
  • TII Dialog
    In the TII dialog, for every detected transmitter the distance between it and the own position is calculated as absolute and relative distance. In this way it might directly be compared to the CIR distances.

  • Bandwith Control
    In the rtl_tcp I/Q data server, the bandwidth can now be controlled when using a R820T tuner. It is based on the work of Alexander, dl8aau, found here. It has been converted into a VisualStudio2017 64-bit project and is included in this distribution. The integrated bandwidth feature has been a joint effort of Hayati Ayguen (h_ayguen (at) web.de), Oldenburger and Bernhard (DB9PP), all of them very seasoned experts being active in the rundfunkform. The bandwidth can be selected in the qirx software and might enhance the signal quality in the case of a mux with strong neighbours.
    Unfortunately, the E4000 tuner gain does not work as in the "old" version of rtl_tcp. Therefore the "old" rtl_tcp is contained in the distribution as well.
    Hayati is preparing a similar release here. However, it is currently not yet finalized.

  • Audio
    The AAC audio decoding and output has been separated into an own -GPL compatible - application, called qirx_audio. The raw AAC frames are sent via UDP to the qirx_audio.exe and are there decoded and output. This separate executable is started automatically by qirx. qirx_audio needs the UDP ports 8766, 8767, 8768, 8769 to be open.
    The reason for this separation has been to free the QIRX application from "viral" GPL-licensed modules.

  • License. Starting with Version 2, QIRX is offered under a non-commercial license , incompatible with the GPL. The main reason is that the GPL allows a commercial use by anyone. As we had to learn, this possibility is exploited in practice (of course, without giving feedback) and definitely not in our interest. The new license covers also the database file qirxDAB.xlsx.


QIRX Version 2.0.1.1 (DAB-Only), April 2019

This version corrects some minor errors related to the Gain Control together with AGC settings.

Another bugfix was the erroneous behaviour of the CIR spectrum when using the RSP2_tcp driver with sampling rates higher than the usual 2048000sps.

QIRX Version 2.0.1.0 (DAB-Only), April 2019

This version corrects many errors and inconsistencies of the Beta version. Thanks to all friends of the rundfunkforum who contributed valuable reports for this version.


QIRX Version 2.0.1.0 (DAB-Only) Beta Version, March 2019

This version features a complete redesign of the GUI and the internal organisation of the software. The GUI technology has been changed from Windows Forms to the much more flexible Windows Presentation Foundation (WPF). To remain open for future enhancements, the framework PRISM is used as the organisational backbone of the screen layout.

  • GUI
    Technology change from WinForms to WPF MVVM, organized by the PRISM Library (Version 7).
    GUI Persistence much improved, the layout of the various parts stored in separate XML files.
    Layout designed for flexibility: Usable from small to large screens.
    Minimized Mode, for "just listening" without the necessity to access the charts and other technical information. Important selections like ensemble, service, audio recording remain accessible.
  • Recorders
    TII Recorder: File record structure improved, files are now directly importable into Excel, with TAB as separator.
    Audio Recorder: For high-quality albeit small files, raw AAC files can be recorded (DAB+ only). The compression factor compared to WAV is between 10:1 and 20:1 or more, depending on the bitrate of the DAB+ audio stream. Although not many players are available to play these files (they still lack an mp4 container), the popular application foobar2000 does the job very satisfactory.
  • DAB Scanner: New algo for improved speed.
    Configurable: Ensembles of little interest can be excluded from the scan.
    DX-Mode : Continuous scan, together with a selectable waiting time after recognition of an established Mux. This can be used together with the TII Logging feature. Thanks to Austria MV for suggesting and testing this feature.
  • Spectra
    CIR Spectrum with indications of the used peaks for the "FFT-Window".
    x-axis scalings: Samples, Distance and Time.
  • Acknowledgement
    Again thanks to Richard Strang from Audio Design, for his testing of this version and great feedback.

QIRX Version 1.0.8 (DAB-Only) Interim Release, October 2018

This is an interim release, offering optimizations in the continuously necessary frequency corrections of all I/Q-Data. They contribute considerably to the PC-load produced by the software.

  • Standard code optimization

    Technically, the frequency correction consists in a multiplication of two complex numbers, usually requiring four floating point multiplications (remember, for every sample). As pointed out on this website, three multiplications can do the job as well. This has long been used in qirx.

    What has been done here, was nothing spectacular, just reducing the critical code to the absolutely necessary steps. In the tests this resulted - astonishingly - in some improvement of the performance.

  • Parallel Threads

    Usually the samples arrive in chunks of about 2.500 I/Q-Data (2048 + 504 = one DAB symbol). Thus it was expected that the mentioned multiplications of such a block could be accelerated by splitting it up into several parts and process these parts in parallel, each part in a separate thread, to be dispatched by the OS on a separate processor kernel.

    Unexpectedly, the result has been disappointing. No speed gain was observed, on the contrary. The main reason might be that the improvement achieved by the parallelization is cancelled by the multithreading signalling overhead. Of course, the threads had been prepared in advance.
    However, these experiments will be continued with larger memory blocks.

    The critical time to observe is the "Average Symbol Time" on the QIRX GUI. When this time exceeds 1.25ms, no stable synchronization can be maintained, because the software cannot keep pace with the arriving samples.

  • Configuration

    For the described changes, a new xml item has been introduced in qirx.config, called
    <Algorithm moveFrequencyParallel="no" />.
    This is the default. To activate the described parallel threads, replace the "no" by a "yes".


RSP2_tcp Version 0.9.3, October 2018

RSP2_tcp is a simple I/Q data server (currently one connection only) based on the sdrplay RSP2 hardware, being compatible to rtl_tcp. RSP2_tcp is an independent console application, written in C++ and running on Windows and Linux. It is delivering 16-bit or 8-bit data behaving like rtl_tcp, thus usable also by other applications. It works with the sdrplay API version of 2.13.

  • RSP2 Only

    In its current version, the RSP2 hardware only is supported. This might change in a future version.

  • 16-Bit or 8-Bit I/Q Data

    RSP2_tcp delivers its I/Q data either as 16-bit values as received from the sdrplay driver dll, or as 8-bit integers. In 16-bit mode, every four bytes form an I/Q sample, in 8-bit mode every two bytes. The mode is selectable by the commandline parameter -W (e.g. -W 1 means 8-bit).

  • Fixed Sampling Rate - Bandwidth Combinations

    The following sampling rate - bandwidth combinations are possible (ksps - kHz)

    • 512 - 300
    • 1024 - 600
    • 2048 - 1536
    • 4096 - 5000 (Nyquist violation)
    • 8192 - 8000

  • Antenna Selector

    Antenna A or B are selectable by the commandline parameter -T (e.g. -T 1 means Antenna A).

  • Compatibility

    In addition to QIRX, the following two popular applications have been tested with RSP2_tcp in its 8-bit mode and a sampling rate of 2048ksps:

    • Andi's Player, a widely used very nice DAB application.
    • SDR# in its TCP/IP mode. The RSP2 is indicated as RTL-SDR (unavoidable).

  • Command line parameters

    They overlap with the ones of rtl_tcp, thus allowing RSP2_tcp to be used in almost the same way as rtl_tcp.

  • Known Issues

    After disconnect, the program sometimes hangs. It is suspected that the "uninitialize" API call does not return. The reason is unknown.

    This might be a serious issue in an unattended operation where continuous operation is required across many connect-disconnect cycles. In its use with QIRX it is of minor importance because QIRX can be configured with "Autostart", each time killing and re-starting the selected I/Q data server.

  • Acknowledgements

    Great thanks to the guys of sdrplay, generously providing the hardware for the development and tests.


SetupRemoteStub, October 2018

The StubForRemoteStart is a listener on a remote machine (w/r to QIRX) waiting for a command from QIRX to start or stop the I/Q Data Server process on that remote machine. It has been a part of QIRX from the beginning, but was rather tedious to use.

The provided installer (Doubleclick on "SetupRemoteStub.msi") copies the "StubForRemoteStart" together with the I/Q data servers rtl_tcp and RSP2_tcp into the selected directory and copies a starter icon on the desktop. Its listening port can be selected as a command line parameter. When connected, it starts or stops the requested I/Q Data Server according to the accompanied command line parameters.

In QIRX, this port must have been entered into the configuration. All this is relevant only in case of the I/Q Data Server is to be run on a remote machine, and the "Autostart" or "Autostop" feature has been selected. In a local configuration, the data server process is started from QIRX directly.


QIRX Versions 1.0.7 (DAB-Only) and 0.9.7, October 2018

Starting with this version, QIRX may also be driven by RSP2_tcp, an I/Q data server based on the sdrplay RSP2 hardware and being compatible to rtl_tcp. Both products are selectable in the Configuration dialog.

  • Automatic Recognition of the Receiver Hardware

    In contrast to the remark made for the June 2018 version, rtl_tcp transmits a tuner identification immediately after connect. This feature is now used in QIRX. Thus, the tuner selection in the configuration has been deprecated. The feature is implemented in a similar way in the newly introduced RSP2_tcp I/Q data server.

  • SNR Calculation for DAB

    The previously used method of the SNR calculation was based on the relation of the spectrum magnitude relation within the region of active DAB carriers to the one in the region without active DAB carriers. This gave rather inaccurate or even completely wrong results, particularly with marginal signals.

    QIRX now uses an entirely different method by measuring the scattering of the constellation bits around their expected value. This allows for the calculation of a SNR purely based on the quality of the received DAB complex signal, different SNRs being comparable to each other also in the most adverse receiving conditions.

  • Configuration

    The configuration dialog has been revised. The following additional selections are possible in the GUI:

    • Selection of the IQ-Data Server product (currently rtl_tcp and RSP2_tcp)
    • Selection of the IQ-Data Server's device index. This is useful only in case more than one device is connected. Thanks to Austria MV from the radioforum for this suggestion.
    • Selection of the Remote I/Q Data Server Starter, called "StubForRemoteStart". In a local configuration this entry has no effect, even in case the StubForRemoteStart is running.
    • Validation of the entries.
    • Hints and explanations in tooltips and on clicking "Ok".

  • TII Logging

    The TII logging now works also in the situation where only "File Mode" (in contrast to "TCP/IP Mode") has been selected. Thanks to andimik from the radioforum for mentioning this error.

  • Known Issues

    Rare crashes, presumably due to a race condition in cooperation with libfaad. Exact reason could not be found yet.


Version 1.0.0.6 (DAB-Only) and 0.9.6, June 2018

This release fixes a bug in 1.0.0.5, in the TII Logger (no decimal separator).


Version 1.0.0.5 (DAB-Only) and 0.9.6, June 2018

This release features a number of changes, mostly in the DAB-Only version.

  • Configuration of the Receiver Hardware (both versions)

    Three Tuner types (E4000, R820 and FC0013) are selectable, to enable the software to send the correct gain settings to the tcp server. Unfortunately, that type must be entered manually in the configuration dialog, as rtl_tcp does not allow readbacks. It is displayed on the GUI, however, and persisted in the config file.
    Another type called "OTHER" is selectable as well, sending the position of the "Gain" slider (here 0-100) to the tcp server. This is intended for experimenting with a newly developed simple sdrPlay tcp server, called RSP_tcp, being compatible to rtl_tcp. This server is still experimental. It enables QIRX to process 16-Bit data produced by a RSP2 device (12-Bit ADC) from sdrPlay in its "live" TCP/IP mode. The "File" mode has long been able to replay 16-Bit files.

  • DAB Mux Synchronization (both versions)

    Marginal signals, particularly those with strong neighbouring muxes, should now synchronize better.

  • DAB TII Logging

    The Transmitter Identification Signals (TII) can be logged into a text file, in a fixed time raster of one second.

  • Receiver Calibration

    The ppm calibration offset of the receiver can now be written with a mouseclick on the new menu item "Calibrate". Its working has been explained in the tutorial "Calibrate your rtl-sdr in 15 seconds".

  • DAB Scan

    All DAB frequencies can be scanned for decodable signals (Menu "Options, Scan"). The recognized set is persisted in the config file.

  • Antenna Tuning Aid for DAB

    A tone generator can be switched on, the tone pitch corresponding to the SNR. This can be used to find the best antenna position without having to watch the computer screen.

  • DAB Channel Impulse Response (CIR)

    The CIR of the four strongest peaks is displayed as lines, the length corresponding to the Guard Interval. A vertical bar indicates the start of the FFT Window, the position calculated such as to be located within the overlap of the detected Guard Intervals. It is also possible to move this position manually with the mouse. This feature is just a GUI representation of the (already present since some versions) inner working of finding a good FFT start position.

  • DAB Error Protection Level

    The error protection level is displayed. With readable, but not too strong signals, the effect of a better error protection can be quite remarkable.

  • DAB Audio UDP Port

    The port number, read from the config file, is now displayed as a tool tip when hovering over the "udp" icon.

  • AAC Decoder

    Until now, the Nero libfaad decoder could only be used in "Audio Specific Coding (ASC)" mode and not with "ADTS" headers, because only ASC decoding was able to cope with the DAB frame length of 960 samples. ADTS mode worked only with 1024 samples frames. A very simple but effective extension was inserted in one of the libfaad files (decoder.c) allowing to use the ADTS mode equally well. QIRX now uses ADTS headers.

  • Known Issues

    Rare crashes, presumably due to a race condition in cooperation with libfaad. Exact reason could not be found yet.
    The reason for sometimes not properly terminating ("process hangs") could (hopefully) be determined. One nasty bug fixed.

  • Acknowledgements

    Thanks to the always helpful and supporting friends in the "mysnip" forum. Escpecially Andreas, Austria MV, cybertorte and (last but only alphabetically) figuren provided great support and help with their suggestions, feedback, raw data files and tests.


Versions March 2018

This release introduces some non-functional changes to make the software more maintainable, and a Linux variant of the "DAB-Only" version.

  • 64 Bit

    QIRX is now 64-Bit software, including all C/C++ parts . All .NET assemblies are compiled with the "AnyCPU" switch. This resolves an inconsistency of the previous versions, where the distributed rtl_tcp.exe has been 64-Bit software, and the C++ qirx-DLLs have been 32-Bit software.
    There are also drawbacks, due to incompatibilities of the Visual C++ and the Linux (gcc) compilers in their treatment of the "long" data type, with the consequence of sometimes hard to locate bugs in the P/Invoke interfaces between .NET and C++.

  • No Installers

    After some experiments it was decided to continue the deployment without installers (.msi). The main reason is that the directory usually used by the installer is write-protected, being unusable for the solution selected here. QIRX uses an instance-individual configuration file (called qirx.config) where configuration items are written to, allowing to run more than one instance (different directories) without mutual interference.

  • qirx_Common

    Both versions, V0.9.5 and V1.0.0.4 now share a common binary code base without source code duplication. The Visual Studio Solution residing in the "qirx_Common" directory contains all projects being identically used for the different versions. This common part contains about 80% of the code.
    In particular, the algorithmic DAB-part is now identical for the versions, ensuring identical DAB behaviour. The newly introduced Linux version is using the shared code base as well.

  • Linux Version

    The "DAB-Only" Version V1.0.0.4 has been ported to Linux (Debian 9 "Stretch") and is running under Mono. Main purpose was to check the compatibility for possible future applications.
    Unfortunately, there are severe restrictions under Mono, in particular in the GUI-related features. Please see the version description below, the installation instructions, and the short report "Porting QIRX to Linux/Mono"

  • Known Issues:

    "Carrier-Missing" detection in the TII spectrum still missing.
    Rare crashes, presumably due to a race condition in cooperation with libfaad. Exact reason could not be found yet.
    On termination, process hangs sometimes.


Version 1.0.0.4 (DAB-Only) and 0.9.5, March 2018

Due to the above described common code base, most changes apply to both versions

  • Raw Files Replay: Round-Robin, i.e. replay continues until stopped by the user.
  • DAB Audio Output:

    Audio Muting per GUI.
    Audio Streaming per UDP Broadcast. This was introduced as a consequence of the difficulty to provide audio output under Linux/Mono. The stream can be fed into the VLC player, see Remark below.

  • V0.9.5

    Bugfix: Frequency jump when changing modulation.
    DAB-GUI: Checkbox if the window is treated as topmost or not.

  • Other:

    TCP/IP Server rtl_tcp start only after having selected TCP/IP menu.
    Separate configuration settings for autostart and autostop of the iq data server.


Version 1.0.0.4 Linux, March 2018

The DAB-Only version has been ported to Linux Debian 9, 64 Bit, running under Mono 5.10.0.160, having been ported with Monodevelop Version 7.4, build 1035. Main goal was to find out the degree of compatibility achievable between Windows and Linux/Mono for the QIRX project.

  • Main features are identical to the Windows version.
    • DAB synchronization, ensemble and service detection and decoding.
    • MP2 and AAC audio decoding.
    • TII detection and decoding.
    • Pcm16 audio data streamed via UDP broadcast, port configurable in the config file (default is 8765).
    • Remark: Among other existing possibilities, the provided 16-Bit pcm stream can be played with the following command-line by the VLC player, identically under Linux and Windows (credit to GQRX).
      vlc --demux=rawaud --rawaud-channels=2 --rawaud-samplerate=48000 udp://@:8765
    • TCP/IP frontend, both synchronous and asynchronous receiving mode.
    • StubForRemoteStart as a server to start rtl_tcp, commanded from a remote machine.
  • Restrictions

    No spectra. The MS-Chart available in .Net Windows does not work in Mono. Although the namespaces are all available in Monodevelop, the functionality is not, important functions throw a NotImplementedException.

    No Linux audio. NAudio does not work under Linux, as is well-known.
    As a consequence, neither Linux built-in audio nor the Audio .wav recorder are available (but see Remark above).


Version 1.0.0.3, February 2018, "DAB-Only"

Another maintenance release of the "DAB-Only" branch of the QIRX software, with adjustable resource requirements, due to the possibility to GUI-control the display update rate.

  • General Performance and TII decoding:

    Performance: Display update rate GUI-adjustable from 100ms to 2sec and OFF. QIRX should now run also on lower-end PCs.
    TII decoding: Better recognition with low-strength signals (interface had to be changed). Also helps to reduce false-positives.
    TII Carrier strength now independent of the threshold always between 0 and 1.

  • GUI:

    RS ok% lamp: Value means percentage of audio superframes without Reed-Solomon corrected errors. Before it showed the CRC-error percentage.
    Some Cosmetics: Stereo indicator, icons for the File Replayer and Recorder.
    Window width now also persisted in the config file, not only the height.

  • Code:

    Audio decoding: libfaad2.dll is produced during the build, therefore msvcr120.dll (from VS2013 builds) no longer necessary. Helps to reduce "DLL-Hell".
    Code Maintenance: All compiler warnings removed.

  • Known Issues:

    "Carrier-Missing" detection in the TII spectrum still missing.
    Rare crashes, presumably due to a race condition in cooperation with libfaad. Exact reason could not be found yet.
    On termination, process hangs sometimes.


Version 1.0.0.2, January 2018, "DAB-Only"

This is a maintenance release of the "DAB-Only" branch of the QIRX software.

  • Changes:

    Some errors corrected.
    Network performance improved (hopefully).
    Configuration file qirx.config is no longer distributed. It is dynamically created when not present.
    Editable items in the "Device" window are saved into the configuration file.

  • Known Issues:

    "Carrier-Missing" detection in the TII spectrum still missing.
    Rare crashes, presumably due to a race condition in cooperation with libfaad. Exact reason could not be found yet.
    On termination, process hangs sometimes.


Version 1.0.0.1, January 2018, "DAB-Only"

This version starts the "DAB-Only" branch of the QIRX software. It is indicated by the leading 1 in the version number string.

  • Non-Functional Changes:

    Project moved to Visual Studio 2015.
    Software partly restructured.

  • Non-DAB Related Changes:

    All information enclosed in a single frame, no floating windows.
    "File" or "TCP/IP" mode can be changed without software restart (thanks to Dave for the hint).
    Possibility to change the receiver frequency in ppm units.

  • DAB Major Changes:

    DAB Multipath Spectrum, displaying the delay difference between multipath signals.
    Zero Symbol detector redesigned.
    Synchronization partly redesigned (thanks to Rolf for the extensive data collection).
    TII Peaks colored according to their transmitter (thanks to Dave for the idea).
    TII Threshold visually indicated in the spectrum.

  • DAB Minor Changes:

    Ensemble Label interpretation error corrected.
    Guard Position now at the right margin of overlapping multipath regions (was in the middle). Still experimental.
    SNR Bar.
    GUI cleaned, little-used controls and indicators removed.

  • Known Issues:

    "Carrier-Missing" detection in the TII spectrum still missing (thanks to Chief Wiggum for the data).
    Rare crashes, presumably due to a race condition in cooperation with libfaad. Exact reason could not be found yet.
    On termination, process hangs sometimes.

  • Acknowledgements

    Special thanks go to

    Dave Bunyan, who provided very useful critical comments, which resulted in a number of changes in the software.
    Rolf, whose many Gigabytes of uploaded data were essential as the test basis to improve the synchronization algorithm.


Version 0.9.4, December 2017

  • DAB:

    The TII decoding is included in the binaries, as dabTII.dll
    Display of the transmitter's geolocation, where still available.
    Presentation of Ensemble Id, Service Id and Transmission Time (UTC) on the GUI.
    Correct Translation of non-ASCII characters

  • Raw Recording and Playback:

    The frequency in Hz is included as a part of the filename.

  • Known Issues:

    Rare crashes, presumably due to a race condition in cooperation with libfaad. Exact reason could not be found yet.
    On termination, process hangs sometimes.


Version 0.9.3, October 2017

  • DAB:

    DAB+ allowed in "Short Subchannels"
    Decoding of DAB (MP2) with audio sample rates of 24000 and 48000Hz.
    Mapping table access error fixed. Inhibited decoding of e.g the BBC services.
    Thanks to Richard Strang from Audio Design, having provided us with the necessaray raw samples for this bug fixing.
    FFT starting position within the guard interval, for more complex and mobile environments. Auto and manual adjust.
    Symbols which do not contribute to a service are ignored. About 15% performance gain.

  • Raw Recording and Playback:

    Stopwatch Pause/Continue feature for playback fixed.

  • Known Issues:

    Rare crashes, presumably due to a race condition in cooperation with libfaad. Exact reason could not be found yet.
    On termination, process hangs sometimes.


Version 0.9.2, September 2017

  • General GUI Form:

    Horizontal Splitters

  • Layout:

    Menu item for predefined GUI layouts.
    Scanner hidden per default.
    Large Waterfalls possible.

  • Device Frontend:

    Slow AGC.

  • DAB:

    Coarse frequency synchronization changed to correlation-based, for improved speed and robustness.

  • Raw Recording and Playback:

    Control element improved. During Recording and Playback, visual feedback by blinking button (red and green, respectively).
    Pause feature for playback.
    Icon to display raw file information.

  • Audio (.WAV) Recording:

    WAV Recording control with file and duration informations.
    Visual feedback by red blinking button.

  • Other:

    qirx.config enhanced. Storing of layout and last-used informations.

  • Bug Fixing:

    Multiple simultaneous .WAV recordings.

  • Known Issues:

    Rare crashes, presumably due to a race condition in cooperation with libfaad. Exact reason could not be found yet.
    On termination, process hangs sometimes.


Version 0.9.1, July 2017

  • Device Frontend:

    Center Frequency Correction in kHz.

  • General Receivers:

    Waterfall Viewer

  • DAB:
    Window Layout
    Legacy DAB (MP2)
    Synchronization of recorded files
    Enhanced manual synchronization control
  • Raw Recording:
    Playback Control
  • Bug Fixing:
    .WAV file size limitation removed


Version 0.9.0, May 2017

Initial Version


  • 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