Category Archives: Software

RTL-SDR Active Patch Antenna

Weather-proof: and this is only one of the benefits of this nice tool.

Since August 2021, the RTL-SDR Active Patch Antenna delights the community worldwide. It is small, yet highly efficient. With RTL-SDR Dongle and some software, it combines to a surprisingly high performance receiving post for INMARSAT, IRIDIUM (which I first used with a mobile phone 20 years ago on a tour through Mongolia and China with stunning quality), and GPS – all for just about 100 US-$.

Plug the USB stick into your PC, connect the patch antenna to the stick’s by a cable and set it on a flexible tripod (all contained in the set!), and the sky becomes open. In the screenshot below, I used the nuandRF to show at least half of the bandwidth of the antenna, because this SDR covers 60 MHz:

The 60MHz wide window of the nuand bladeRF SDR shows half of the bandwidth and sensitivity of the RTL-SDR Patch antenna. Caveat: With the bandwidth of the antenna being nearly 140MHz and the bandwidth of the SDR only ca. 60MHz, this screenshot still doesn’t show the complete performance of the antenna. The seemingly (sic!) reduced sensitivity at the lower and upper end of the signal/noise is due to the receiver, not the antenna!

Aero makes a good start with powerful signals and free software JAERO which can also run in multi instances to cover all the channels in parallel.

In the upper window you see the SDR GUI, namely free SDRC software. It shows some aero channels with their signal-to-noise radio, or SNR, achieved with the active patch antenna and the RTL-SDR dongle. The two windows at the bottom show the JAERO decoder in action on a 1200bps channel.

You may also set sails for some maritime experience with the std-C Decoder (full version: 55 US-$). It even visualizes e.g., buoys and areas (rectangle, circle and free format) a Open Street Map.

Top: a maritime satellite channel. Bottom: Safety Message for the marked area in the Gulf of Bengal, off the coast of Cuttack/India.

You may also receive the GPS C/A code signal on 1.575420GHz, and IRIDIUM on which John Bloom wrote the pageturner “Eccenctric Orbits – The Iridium Story“, which I can only highly recommend as a truly thrilling backgrounder. As low-orbiting satellites, the channel has to be handed over to another satellite after about nine minutes.

The RTL-SDR Active Patch Antenna is a great, little tool providing high SNRs at a small form factor of 17.5 x 17.5 cm. Its low noise amplifier (powered via bias tee from the SDR stick) together with the SAW filter to suppress any signals outside its passband from 1.525 to 1.660GHz shows unsurpassed performance at this price tag. It is a must, and absolutely a no-brainer. Did you miss a large suction cup to mount it on your window? Wait a minute – it is also included in the turnkey package …

WSPR & Propagation [MH370] – an Experiment

Completely unintentionally, my last blog on WSPR and MH370 had led to more of a social psychology experiment than a technical science discussion. I expressed my doubts whether it is possible to recognize aircraft scatter from the historical WSPR data by “unusual signal changes” without essential knowledge of further circumstances.
As a reminder: WSPR works with weak transmission power at modest antennas in a rhythm of 110.6 seconds. Apparently this average value is noted and made available as SNR at the receivers.

I objected that practically all other influences on the signal on its way from the transmitter to the receiver (“channel”, with refractions both at the dynamically in three dimension, plus density, changing ionosphere and at the ground) exceed those effects by far, as they are to be expected by airplane scatter. I proved this with 3 x 10’000 level data and 30+ Doppler tracks.

The main proponent of the theory, that the proof is possible against all those odds, reacted with a juicy complaint to the German amateur radio association DARC, in which he argued exclusively personally, but not technically-scientifically. A behavior even more bizarre than trying to prove his actual thesis. The DARC immediately jumped over the stick held out to it, and published few hours later – apparently without or against better knowledge – a sweetish-mendacious “press release“, in which a so far not by technical-scientific papers noticed employee praised that as only beatifying truth.

[Auf Wunsch einiger deutschsprachiger Leser erfolgt in einem weiteren Blog eine Erläuterung dazu.]

WSPR vs. high-resolution data

For all those, however, who are interested in technical contexts, this blog answers a still open question from my last blog:

  • What is the smoothing/generalizing influence of the evaluation of mean values over 110 seconds – which is how the WSPR logbook is supposed to work – on the mapping of the actual signal changes?

Let’s simply test it
For this purpose I have analyzed on September 22nd, 2021 with the professional SDR Winradio Sigma between 07:00 and 12:00 UTC the broadcasting station CRI Kashi, which transmits continuously on 17’490 kHz with 500 kW towards Europe – 5’079 km, two hops. My antenna is a professional active vertical dipole antenna with 2 x 5 m long legs, namely MD-300DX.

With the software SDRC 17’930 level values were noted in dBm/Hz, every second. The FFT analysis was performed with a high-sensitivity resolution of 0.0122 Hz, resulting in a process gain of 53.1 dB compared to the data from WSPR, measured in a 2’500 Hz wide channel. Assuming the carrier power of the transmitter to be 250 kW and the gain of the transmitting antenna HR4/4/.5 to be typically 21 dBi, this results in an additional gain of 47 dB compared to a WSPR transmitter of 5 W on a dipole, which is already strong by its standards. Thus, the total gain of this experiment is 100 dB compared to a WSPR signal. If we assume that signals with SNRs between -20 and -30 dB can still be evaluated, the gain is still a robust 70 to 80 dB. Thus, if aircraft scatter were to be detected on a WSPR signal, it would be even more striking with this factor.

The spectrogram of the five hours’ recording see below, followed by an explanation of the annotations (as with all screenshots: double-click to get the original resolution):

Kashi’s carrier over 5 hours, shown within a window of ±50Hz and a resolution bandwidth of 0.0122Hz at an dynamic range of 90 dB. Explanation see the following text.

The spectrogram reveals a couple of different strong influences to level and frequency of the carrier. Most prominent is the Doppler shift by a moving ionosphere, plus the split-up into o- and x-rays due to the magnetionic character of the ionosphere. You may simulate it with PropLab 3.1, but only in 3D mode. Aircraft Doppler is very weak. It has been verified as such by a different spectrogram with better time resolution, not shown here. You see also some Doppler from meteorite’s plasma in the vicinity of the carrier.

The level of the carrier can be seen from the following screenshot at a time resolution of 1 second, enriched with some statistical data:

Levels over 5 hours. Mean = -44.02 dBm, Standard Deviation 7.872, Range 58.81 dBm. Max/min: -21.97 dBm/-80.78 dBm

The next screenshot shows the whole 17’930 datapoints, split up into consecutive groups of 110 each. This should simulate the the 110.6 seconds which the WSPR logbook boils down to one SNR value plus on “drift” value. To read this contour map:

Vertically you see 163 columns. Each column contains the levels 1 … 110, and 110 x 163 = 17’930 total level values. For the first time, you can see here the dynamic within a column of 110 values each.

Contour diagram, showing all 17’930 level data, grouped to 163 blocks of 110 data points each.

So far, we retained the level information of all 17’930 data points. What happens if WSPR boils them down to chunks of 110 seconds only? This question answers the next screenshot:

What is lost by boiling down the 17’930 level values at 1 second’s distance to 163 chunks of the mean of 110 values? This screenshot shows the answer.

If it still isn’t understood that information which simply are not palpable in the 110-seconds’ chunk cannot be “interpreted” as this or that, a zoom-in must convince you:

Same as above, but zoomed into. WSPR logbook will keep only the Chunks. So all information has to be derived from just the red line! Imagine that you don’t have any more information – no “Raw”, no “Spectrogram”.

Looking at the both screenshots above: are you still sure to see any faint details (refer to spectrogram on top of this blog) like any Aircraft Doppler just from the chunks? You have also seen that the “drift”, shown in the WSPR logbook, may have manifold sources, ionospheric Doppler prevailing.

Stanag 4285 & PSKSounder – a better mode

There, of course, is a way out of this dilemma: since many years free PSKSounder provides an excellent tool to extract many more information from STANAG 4285 signals, see the following screenshot:

PSKSounder shows relative “time of flight” of a Stanag 4285 signal. Here with FUV, French Navy in Jibuti. You see that the structure of the spectrogram of the signal at the right has it source in two strong and different paths of the signal. Their times of arrival differ by about one millisecond. This procedure is very sensitive and is also used to reliably reveal meteorites and – aircraft!

Finally two things: The path between two stations does not always have to be exactly reversible – that is, if two stations are equipped exactly the same, it is very likely that a different signal will be detected in each case. And if the black box of MH370 should indeed be found in the area supposedly designated by WSPR, it is due to many things, but certainly last of all to WSPR.

After which methods it might be tried nevertheless, one can read already now in Grete De Francesco’s “The Power of the Charlatan”, Yale University Press, New Haven/USA, 1939.

MH370 and WSPR: Aircraft Scatter on HF – A Critical Review

Some articles had been published stating that processing of WSPR logs can assist in reconstructing the route of an aircraft (i.e., MH370) by a method known as bistatic radar. Nils Schiffhauer, DK8OK, has some doubts. Read his reasoning below.

Some Doppler traces in vicinity of the carrier of China Radio International from Xian-Xianyang, broadcasting with 500kW (250kW carrier) on a curtain array antenna providing nearly 25dBi gain towards 190°. More on the lower than on the upper sideband you see some aircraft Doppler traces at distances of 8Hz to 17Hz (LSB), corresponding to a relative velocity of the aircraft from about 200 to 600 km/h. Frequency resolution: 0.0047 Hz.

Again and again, efforts by radio amateurs make the rounds to have identified the crash site of MH370, for example, on the basis of the evaluation of WSPR logs. For this purpose, they primarily evaluate “unusual” level changes in the WSPR logs.
The fact that RF signals are scattered by the metal hull of aircraft is nothing new. The best way to see this effect is to look at the Doppler tracks that form at a certain distance from the actual carrier frequency of the transmitter. This is based on the theory of bistatic radar (see for example “Bistatic Radar” by Nicholas J. Willis, Raleigh NC, 1995).

Aircraft Scatter: Bistatic Radar

This concept has been used worldwide for decades, in the HF range primarily in the form of various over-the-horizon (OTH) radars.
In principle, a signal with known properties (amplitude, waveform …) is transmitted and received again after having passed through the “channel”. Comparing the transmitted signal with the received signal, the properties of the channel can be deduced.
Professional systems with powerful transmitters, beam antennas with high gain and signals with precise characteristics, whose scattering is evaluated with highly specialized algorithms, allow the detection of even small aircraft and ships in rolling seas. Intelligent evaluation includes the extensive elimination of interference factors, from sea clutter to changes in the ionosphere. These also have a considerable influence on the received signal – including amplitude and frequency (Doppler and split-up into x and o rays).

WSPR: A challenging mode

Transferring this technology to the evaluation of level and frequency of WSPR signals faces a couple of challenges:

  • The effective transmit power of WSPR signals is only roughly known at best, but in terms of magnitude it is at least 50 dB below that of professional OTH equipment.
  • The quality of the transmitted signal in terms of frequency stability, noise and possible amplitude changes (power supply!) is not known.
  • The changes of the ionosphere (attenuation, Doppler, multipath …) is not known.
  • The waveform WSPR, as well suited as it is for QRP communications, has not been developed for its use as bistatic radar.

All previous evaluations, especially in connection with flight MH370, are based primarily on evaluations of level changes, measured as just one mean value of a 110 seconds long transmission. It has been postulated that aircraft scatter increases the overall level of the signal. (“Drift” seems not to be a proxy for “Doppler”, see below). A possible evaluation of the Doppler shift fails so far largely because of the data situation. This also prevents the inclusion of the current state of the ionosphere and its local fine structure. Catching up ray tracing – moreover only two-dimensional! – can by no means compensate this disadvantage.

Correlation vs. Causality

However, far-reaching expectations are attached to the existing and modest material [Sensational new finding for MH370 flightpath], which in my opinion are already epistemologically, but also technically on feet of clay. This is like one can make Mozart’s “Kleine Nachtmusik” sound out of pure noise by suitable filtering. This also happens to high-ranking scientists, for example, when they detect neuronal correlates in the brain of a dead salmon and erroneously conclude that it is solving mathematical problems … there has been everything. Correlation doesn’t always mean causality.

My doubts about using WSPR logs for the purpose of locating aircraft are based on two main points:

  • We know little to nothing about the actual state of the fine structure of the ionosphere, which primarily affects the signal.
  • We have only guesses about the extent to which (amplitude, Doppler …) an object flying in an unknown direction scatters the signal (type, height, direction, speed …).

Furthermore, raytracing in those examples calculates with unusually low elevation angle of under 3°. PropLab 3.1 [most recent build #43] sees the main elevation of, e.g., a vertical dipole at more than 20°.

Just as an aside, when the central paper on “WSPRnet Propagation Technical Analysis” states, “Flat ice or calm ocean provide the best surface’s for WSPRnet signal reflection.”, the opposite is true, at least as far as the conductivity of ice is concerned. It has the worst conductivity and thus reflectivity of all soils on the earth’s surface and, at 10-4 S/m, is in last place in this respect according to ITU-R P.527-4.

HF Scatter: What the Experts say

The relevant literature on HF radar deals with such central matters as radar cross section (which defines the return power of an modeled object, which can vary by several 10 dB under different circumstances), scatter in Rayleigh and Mie regions (dependence on wavelengths and dimensions of the object), and inhomogeneities of different layers of the ionosphere – concepts of which most previous studies on the subject of “WSPR and MH370” make sparse use at best.
I do not want to bore now with long-tongued recounting of these things, but to pick out thesis-like only some points from the NATO paper HF-OTH Skywave Radar for Missile Detection” as a quotation (bolded by me):

* We must deal with heavy propagation losses due to the very long travelling distances as well as strong absorption losses mainly due to the D layer of the ionosphere. The whole loss contribution can be up to 100-150 dB.

* The apparently simple propagation mechanism hides the complexity of the ionosphere structure. This implies a challenging target localization that could be achieved by a smart system calibration combined with a three dimensional reconstruction of the signal path through the ionosphere.

* OTH radar system functionalities are strongly dependent on the ionosphere and on the environment noise level that means geographically dependent performances. Accordingly the radar siting represents one of the key choices.

* High values of peak power are necessary in such systems to deal with strong losses.

* It is essential a simulative approach that can provide a predicted radar cross section variability as a function of the operating frequency and of the aspect angles that are unusual for ordinary radar systems.

Certainly, these military requirements do not have to be transferred 1:1 to our more semi-professional approach. Nevertheless, they set such narrow limits to even our modest approach that their meaningful application threatens to disappear almost completely in fading and noise.

Amateur’s Choice: +70 dB – and more

In order to verify at least some basic assumptions in practice, I have conducted a series of investigations on carriers of shortwave broadcast transmitters. These have several key advantages over WSPR:

  • They provide a known signal in terms of frequency stability and amplitude.
  • Their effective transmit power is about 70 dB higher than that of WSPR transmitters.
  • Each station transmits continuously for at least 30 minutes, allowing relatively large integration times to improve the frequency resolution (up to 0.005 Hz, or adding another 57 dB in a 2’500 Hz channel) and thus the sensitivity for detecting the Doppler signals.
  • This setup allows a clear separation of original signal (via ionosphere) and aircraft scatter by shape and frequency. This eliminates what I consider to be the biggest unknown of the WSPR approach.

However, there is one drawback: only between 0 and 10% of even these strong transmitters can be used to detect Doppler traces from aircraft. Only with a smart match of frequency, time, flightpath, propagation … you will have some success.

Let me pick a typical example from a series of experiments – all with similar outcomes. The Chinese transmitter at Xian is received with 500 kW (carrier: 250 kW) on a GPS-locked SDR Elad FDM-S3. Its carrier on 17’530 kHz was first displayed under magnifier of two software, namely PSKOV (screenshot on top of this blog, for a first introduction click here) with 0.005Hz resolution, and SDR software SDRC with 0.39 Hz resolution, see screenshot below. The latter provides the numerical output used in the following post-processing.

Situation with software SDRC, compared to the PSKOV-screenshot at top of this blog.

Needle in a Haystack?

The next step is to answer the following question: Is it possible to detect the influence of the Doppler tracks in the overall signal? After all, this is the method that is tried using WSPR.
For this I first divide the total signal of 100 Hz width into three channels: Carrier, Doppler and Noise, see below. The Doppler signals are clearly visible, the respective correlation coefficients between the channels “Carrier”, “Doppler” and “Noise” are all well below 0.1, which shows the independence of the three different signals from each other and their separation. Mean Level of Carrier is -59.1 dBm, standard deviation 5.71. Mean Level of Noise is -108 dBm, standard deviation 4.5.

Signal levels over 10’000 seconds for all three channels.

In the following step, I sum up the channels “Carrier” and “Doppler” (de-logarithmize the dBm values in mW, addition, re-logarithmize the mW values to dBm).

If I now compare the data “Sum level of Carrier and Doppler” with the “Carrier”, the correlation diagram shows a near-complete agreement between both data sets – see screenshot below:

Correlation diagram fo Carrier and Carrier+Doppler (blue marks) shows only miniscule differences from 100% identity (red line).

Are rounding errors the reason for those miniscule differences? No, as we see in the following screenshot where you can see that the Doppler trace increases the signal of the carrier by 0.2 dB to 0.3 dB at most, except for a single exception: 0.6 dB.

But these values are almost completely lost in the overall signal with its standard deviation of 5.71, if they are not anyway below the measurement accuracy of many SDRs and their software.

The screenshot below draws the difference between [Carrier+Doppler] and [Doppler] – values left Y-scale – together with the original Doppler signal – right Y-scale. Judge for yourself …

The Doppler traces are practically lost in the fluctuations of the carrier signal.

For the complete overwiew of the steps see the workflow below:

Workflow, done with Elad FDM-S3, SDRC, MatLab R2021a.

WSPR & Aircraft Scatter? I have my doubts.

We started with the challenge to see some signal enhancement by scattering from aircraft in WSPR logs. Those should lead to “unusual” changes within the signal. A WSPR transmission lasts for 110.6 seconds and delivers just one mean SNR value representing his time (plus drift with a resolution of 1 Hz only).

It was suggested that from these signal levels (and drift data) aircraft scatter can be derived. This had been tried to underpin with 2-dimensional ray-tracing propagation simulation, based on statistical, rather then real data.

I tested those assumption with 10’000 level data at one second resolution, +70 dB in transmitting power, added by a few 10 dB of processing power. Doppler traces from 30+ aircraft had been analyzed. Backed by this, it can be stated:

  • On HF over longer paths (from two hops/with multipath propagation), usual aircraft scatter has nearly no effect on the overall reception level. Without prior knowledge, it is hard, or even impossible, to conclude aircraft scatter from the sum signal.
  • Doppler effects occure in the region of about 5 Hz to 20 Hz and don’t coincide with the much lower “drift”, I saw in the WSPR logs.
  • The power of a typical WSPR setup is many ten dBs down to what it should be to reliably identify aircraft scatter.
  • We usually know near nothing about the transmitter’s and receiver’s site – power, noise, drift etc.
  • We know near nothing about the channel (propagation) at the refracting points. This makes it difficult to separate different effects from each other, of which aircraft scatter is just a minor one, with multipath fading being the absolutely prevailing one.
  • The statistical population/resolution of the data one gets from the WSPR logs is too small (due to the 110 seconds) to apply robust statistical methods to cope for a dynamic environment.
  • The simulation capabilities of PropLab are not sufficient for such long-range statements due to, for the given case, poor temporal and spatial resolution of the usable ionospheric data. In addition, the simulation with PropLab was, to put it mildly, not optimally implemented – 2D instead of 3D, airy assumptions about the angle of incidence of the signal, and wrong assumption about ground conductivity.

My final conviction is: the detection of aircraft scatter and its assignment to specific flights from WSPR data is far more wishful thinking than reality. Only with considerable prior knowledge and using other data sources as well as possible coincidences these statements can be explained. WSPR in itself is not likely to contribute to this.
There are far more RF signals that are far better suited for this purpose for a variety of reasons. Trump, however, would be digital beacon project, whose waveform is suitable for also qualitative studies of the propagation path. Here, a private initiative seems to be active, after amateur radio clubs continue to stick to analogue technology (NCDXF, once meritorious).

Just a quick answer …

… to a question, I have been asked:

Q: “WSPR is sampling SNR for 110 seconds, boiling this down to one value. The resolution of your approach is one second. Does this influence the results?”

A: “Surely – higher resolution = more details, better insights!”

Q: “Can you show me?”

A: “I warn curious, but that you are, gladly!”

The screenshot below offers an answer to the question: “What does the WSPR log see, which only notes the sum voltage and also this only as an average value (?) – and also this not every second, but in intervals of 110.6 seconds?” Because with WSPR one has only this one sum value. For this purpose, exactly this situation was simulated with the originally good 10,000 data values collected every second and these were divided into groups of 110 seconds each, whose mean value was formed. This then corresponds to the SNR value in the WSPR logs.I boiled down my data of “Carrier+Doppler” and “Doppler” to 91 groups of 110 seconds each, and then I calculated the mean values of each group. In my view that should match the SNR values of WSPR (“Carrier+Doppler”).

Sum level and Doppler level. Allegedly, one should be able to conclude from “unusual” sum levels to aircraft Doppler. Which without prior knowledge leads predominantly to false-positive (FP) and false-negative (FN) results, of which only some are entered here. Rolling the dice gives a better result.

I then calculated the 95% confidence interval from these largely normally distributed mean values and restricted the plot in the above screenshot to those values that lie above the upper limit of this confidence interval of 58.02 dBm. These are “unusual” values in my eyes, although this is only a reasonable guess, because the authors do not specify further what they mean by “unusual”. The course of the values “Carrier+Doppler” is scaled on the left Y-axis, from -58 dBm to -54 dBm.
According to theory, a Doppler signal should now be lurking behind each of these values above -58 dBm, at least in the “unusual” peaks. Is this true? To check this, I plotted the corresponding processed Doppler levels in the same diagram, scaling on the right Y-axis, -110 dBm to -98 dBm.
Already a first look shows that the connection of both curves is rather random. With FP like “false positive” I marked for clarification at least some of those positions, where due to the “unusual” sum signal an aircraft Doppler would have been expected – but was not present. With FN are marked, vice versa, some of the positions, where there was a Doppler signal, but no “unusual” course of the sum level indicated it. A clear assignment “unusual sum signal -> aircraft Doppler” is therefore unlikely.

Comments welcome: dk8ok at


Oh, yeah, we had some comment! Richard Godfrey rebuked my technical-scientific based criticism on his website (“Serving the MH370 Global community”), which explicitly invites discussion, with the following “arguments”:

“You are not welcome on this blog!You were thrown out of the German Radio Amateur Club (DARC) in 1992. Despite 3 appeals at regional and national level as well as in court, you are still excluded from membership 29 years later. There are very good reasons for this. …I have complained to Christian Entsfellner DL3MBG, the current Chairman of DARC, about your demands to protest against my work and that of Dr. Robert Westphal (DJ4FF) officially on the DARC website regarding MH370 and WSPRnet.Your paper is plain wrong and your arguments are misplaced.I suggest you go elsewhere as I am sure there are other MH370 websites who will welcome the likes of you. Und Tschüss!”

” Ambition should be made from sterner stuff.” [Shakespeare, Julius Caesar, Act III]

I like to recommend a website where you find much ado about sterner stuff concerning MH370 and WSPR:
MH370 and Other Investigations – Following the Data Towards Discovery.

GMDSS: Some new exciting Features

In my last blog, I wrote about my experiences with BCS-GMDSS multi-channel decoder. Chris, the software author, had added some smart features in the meantime. I would like to briefly introduce some of them in loose order.

Newly introduced is a window showing “Frequency and Time Statistics”. This somewhat sober, albeit highly informative table can be spiced up a bit yourself – see the following three screenshots (double-clicking onto them shows them in full resolution):

Thes statistics table neatly lists all channels with their messages – either all (here) or Coastal Stations only. A smart feature is that it presents the data as a heatmap.

The heatmap shows clearly that 8MHz is the most productive channel. It shows also how propagation works – see fade-in and fade-out of those channels on 12MHz and 16MHz. From a DXer’s point of view, however, 2187.5kHz can be considered some of the most interesting channel. Another new window gives an overlook about all those Coastal stations received, and how often, on what channel, and when for the first/last time.

This table lists all received Coastal station with some essential data. I marked some interesting ones, from a DXer’s point of view, which were exclusively received on 2187.5kHz

Furthermore, Chris introduced a (basic) map where you can see the locations of those Coastal stations you have received – if you don’t know exactly where to locate e.g., Taman Radio or Marzara del Vallo Radio … Even better, as the map is living: double-click to a location, and a window with your logs of this Coastal is popping up!

A basic map, which can be zoomed in/out, locates all the received Coastals. Double-clicking on a location opens a window with your log of this one – here Arkhangelsk Radio.

The log is organized as a database. This opens the chance for many applications in logging, searching and presenting your logs. Many of those option are already built-in, like searching all stations within a specific time frame or matching one or more specific fields, let it be MMSI, Ship Owner or country. One special format supports that used by highly recommended

Here, BCS-GMDSS software had converted some Coastal’s logs into the DSC List format (Utilities -> Export Database Search Results as DSC List). I just copied and uploaded it. Smart!

The recent version of BCS-GMDSS also supports a search option for MMSI: just double-click the wanted MMSI to open a specific Google search. In nearly all cases I tried, the first result lead straight to much more information on a handful of websites, providing e.g., location, map with position and often a photo of the vessel:

Just double-click a MMSI, and a Google search starts. Clicking onto the first result revealed a map with the postion of the “Imperious” north of Banda Aceh/Indonesia, a photo plus some additional data. So we have received this Oil Products Tanker on her way from Malaysia to Fujairah/UAE.

Finally, Chris was kind enough to respond to the request of a single, elderly gentleman and provide for the export of all data in a form that separates all possible data fields by CSVs – analogous to the official ITU publications, among others. This offers many more and very specific possibilities for search and (statistical) evaluation. The nice elderly gentleman has already tried this (“Great!”) with Access:

Here, the CSV data from nearly 30’000 messages have been imported to Access database and sorted by ship’s name.

After so much data then for writing reception reports with some nice results:

MRCC Klaipeda answered my reception report within minutes with this stunning e-QSL card …
… as also RCC Australia and …
… Valparaiso Playa Ancha Radio did. Thanks to all of them!

Ahoy! Decoding eight GMDSS Channels in a Convoy

Decoding all GMDSS channels at once: Black Cat System’s groundbreaking GMDSS Decoder.

Chris Smolinski, W3HFU, did it again: after his multi-channel attack to ALE, he now offers this highly innovative concept also for GMDSS – Black Cat GMDSS. In addition to an extraordinary sensitive decoder, it also includes smart processing of the data – from looking up vessel’s complete data from ITU’s Ship Station List (internet connection needed) to saving all data to a fully-fledged database. Welcome aboard! Now let’s set sail!

3000+ Messages a Day – received on HF

The Global Maritime Distress and Safety System is a system of different maritime communications tools on frequencies ranging from as low as 424kHz [NAVTEX] over HF and VHF up to satellite channels in the GHz region. This blog entry focus on Black Cat GMDSS decoder, hence on HF. There, the six main channels range from 2MHz to 16MHz. Reception of both, Coastal Stations and vessels, is from around the world. In this case from Vestmannaeyjar Radio in Iceland to Cape Town Radio in South Africa, and from Valparaiso Playo Ancha Radio in Chile to Taupo Maritime Radio in New Zealand. You may hear vessels of each and every kind, from small ones for pleasure to the biggest oil tankers, and all over the world. Monitoring on all six main channels in parallel, often raises 3000+ messages a day!

Robust FSK mode

Transmission is done in 2-FSK with 170Hz shift and at speed of 100Bd. Waveform is ‘kind of SITOR-B, repeating each character twice with a 400ms spread to enhance proper decoding under adverse propagation (Rec. ITU-R M.493-11). To establish a call, each station has been assigned to an unique MMSI, or Maritime Mobile Security Identity number consisting of now nine digits, in future 10 digits. MMSIs starting with 00 denote a Coastal Station, e.g., 004123100 for Guangzhou Radio/China. There is a set of 127 symbols, with the first numbers 00 to 99 representing numbers, and each of the remaining number specific situations like “110” denoting “Man over board”. The software has to look up those source-coded messages in a codebook to print a readable message, giving some sense.

Smart coding

One message is about 6.4 seconds long. it starts with a short dot-pattern/phasing sequence for automatic tuning, followed by the content. In this live example, JRCC Australia (MMSI 003669991) is calling Merchant Oil tanker Signal Maya (MMSI 248410000) on 12577kHz at 15:59:43 UTC on November 21, 2021.
There are transmitted 23 groups (“Symbols”) in GMDSS :

  • 120 120 021 007 061 000 000 108 000 050 030 000 010 118 126 126 126 126 126 126 126 122 111

and decoded as follows:

  • 120 120 -> Format
  • 021 007 061 000 000 -> Address – MMSI of called station
  • 108 -> Category
  • 000 050 030 000 010 -> Self MMSI – MMSI of calling station
  • 118 126 -> first and second [none in this case, “idling”] telecommand message
  • 126 126 126 -> frequency message [none in this case, “idling”]
  • 126 126 122 -> end of message
  • 111 -> error-check character [ECC]
  • After a look-up in the codebook this turns into:
  • Format: Individual call
  • Address [to]: 210761000
  • Category: Safety
  • Self MMSI [from]: 005030001
  • First telecommand: Test

… even smarter decoding!

Still not much enlightment. But BCS-GMDSS is at your service. It looks up all the cryptic numbers at different sources, even tapping official ITU webpage to enrich the vessel’s MMSI with its stunning mutltitude of information. Wrapping it up, decoding and looking-up in an internal codebook (Coastal Station) as well as in ITU sources (vessels), the above mentioned 23 symbols come out in full glory reading:

[2021-11-21 14:59:43] 12577
Symbols: 120 120 021 007 061 000 000 108 000 050 030 000 010 118 126 126 126 126 126 126 126 122 111
Self MMSI: 005030001 – Australia – JRCC AUSTRALIA 26 20′ 48″ S 120 33′ 52″ E 13669 km, 92 deg
Address: 210761000 – Cyprus
Ship: SALT LAKE CITY | Callsign: C4DS2 | MMSI: 210761000 | Cyprus (Republic of) (CYP) | Vessel ID: 9314129 | EPIRB: BE1 | 06/12/2017
Class: Merchant | Bulk carrier | | 89076 tons | 26 persons | INMARSAT C MINI M INMARSAT M VHF DSC | 24 hr service
Misc: Former Name: THALASSINI NIKI | | EPIRB ID: 210761000 | | Telephone Bands: STUV | AAIC: GR14 | | CO | |
Format: Individual call Category: Safety First telecommand: Test

As you have seen, I already mixed some theory with some practice – as you know me.

Now for some features of the software, plus some hints to make the most out of it.

Some basics, you must be tuned to

BCS-GMDSS offers up to 8 channels in parallel which by default are set to the main six GMDSS channels plus two with only rarely traffic observed, also on 2MHz. Those channels are fed by a SDR, ideally covering the whole range from 2MHz to 17MHz, alias-free. In this range you have to place the up to eight channels, RX1 … RX8, and have their output set to VAC1 … VAC8. The inputs of the decoder have to match those VAC numbers – see screenshot.

Here, six GMDSS channels have been set with SDRC software, controlling a Winradio Sigma SDR at 20MHz bandwidth.

Take some care to think about mode, tuned frequency and audio frequencies, and bandwidth. Mode can be USB, CW-U or FSK, whatever your SDR’s software offers. It is, however, mandatory that the center frequency of the audio output must match the centre frequency of the input of the decoder! Otherwise there will be no decoding.

I am using free SDRC software by Simon Brown, G4ELI, easily providing all eight channels via VAC software. I am using CW-U and a bandwidth of 400Hz, giving some room for stations which might deviate by some 10Hz from the assigned channel – the decoder automatically compensates for this. With this setup (see screenshots below), the frequency readout shows the assigned channels, plus centre frequencies of decoder and receiver are matching (here 1700Hz, as ITU recommends). The bandwidth offers a good balance of SNR and tolerance for stations with a slight offset. Your mileage may vary in some aspects, e.g., you may prefer SSB-USB mode, or your software has a BFO if you use CW …
You may also use the wrong sideband (LSB instead of USB) with your receiver – but than you just have to tick “Invert” in the decoder’s Setting menu as it then changes Mark and Space frequencies.

Center frequency set to 1700Hz, low to 1500Hz, High to 1900Hz – resulting in a bandwidth of 400Hz. The signal of Finisterre Radio on 8414,5kHz matches these values.
With center frequency of the audio output (1700Hz) and center frequency of the decoder (1700Hz) matching, a signal falls into both passbands – that of the receiver on the right side with spectrum and spectrogram, and that of the decocoder on the left with spectrum, amplitude and also the Setup menu.

Order! How to cruise through this Ocean of Messages

BCS-GMDSS cleverly combines a most powerful decoder with some extras to calm the rogue waves of decoded information. First, you may reduce (or extend) the degree of information you fetch form the ITU page: Edit -> Settings -> MMSI Lookup. It is very interesting to see the maximum of data (“Most Details”), but with everyday’s monitoring just “Basic” or “Detailed” may run the show. This creenshot is showing the differences:

Five different depth of data output: from “Details: None” to “Details: Most Details” – with all the same audio being decoded.

The second step is to distinguish the vessels from the coastal stations by color. I set the latter ones to show up in blue:

Here, messages from Coastal Stations are printed in blue (Edit -> Highlight Coastal Stations, set color).

Next, BCS-GMDSS offers a Coastal Station’s database. It is a real database which, e.g., each column can be sorted. In the screenshot below, I had sorted them according to their total messages received. Then “Yusa Radio” has been double-clicked to inspect the timestamps of reception:

Coastal Station do have an extra porthole offering some interesting statistics. Each column can be sorted, and a double-click reveals timestamps of one station.

The “Loggings Database Search” is like a supertanker, containing all your logs which can be sorted by a double-click, plus being queried for each column, also combining different criteria. This is the most powerful database any GMDSS decoder has on board. See screenshot below for just one example:

The whole log of 12’590 entries had been queried for messages from Coastal Stations on 2187.5kHz on November 21, 2021 for 24 hours. This answer is of course just a small part of the whole reply from the database.

Addendum: Where are they cruising?

The location of most Coastal stations is openly available, and their geographical coordinates are internally looked up by the software – even calculation of the distances to your location (Edit -> Settings -> Latitude:/Longitude:) is done automatically.
But where are the vessels cruising? They only rarely transmit their location in GMDSS on HF. But if they have an AIS, or Automatic Identification System, you have a fair chance to get the actual location. This system comes in two tastes: AIS and LRTI, or Long Range Identification and Tracking. AIS is using VHF. Propagation restricts the range to some ten kilometers. LRTI is using satellite (INMARSAT). There are some webpages where you get at least AIS for free – just to mention VesselFinder, VesselTracker and MarineTraffic. Their business model is to offer subscriptions for one year at a price of about 1’200 US-$ for LRTI (satellite) data, aimed mainly to the professionals. But most of those companies offer (limited) access to their AIS data for free. The two screenshots below show the difference.

Scattered with vessels: VesselFinder’s professional version listen to all seven oceans via satellite, but offers …
… free acces to AIS data (VHF) which is due to propagation and volunteers feeding this net to those coastal regions.

The example above, bulk carrier Salt Lake City, is only availabe on LRIT. So free data are about one week old. Nevertheless, you get at least a clue where the ship had been. And if time plays no role, just look it up exactly this week later …

For free, we get only a weeks’s old satellite information. At least we can can see the bulk carrier had started from Manila on November 14, heading to Abbot Point in Australia where it is expected on November 29. A rough estimate is that she may have been cruising through the Banda Sea at the time of being called by JRCC Australia.

If you have received the following message, you are lucky:

[2021-11-22 17:02:38] 2187.5
Self MMSI: 229375000 – Malta
Ship: CMA CGM FORT DESAIX | 9HA5478 | 229375000 | MLT | MLT | 9400174 | 229375000 | 04/08/2021
Address: 002275300 – France – MRCC CORSEN 48 40′ 60″ N 2 19′ 0″ W 947 km, 252 deg
Format: Individual call Category: Safety First telecommand: Test

This vessel is covered by AIS (VHF) with its up-to-date data available for free at VesselFinder.

Multi-channel ALE Decoder: Listing and Logging

As if by magic, a file [invoked, marked yellow] completes the decoded messages to a complete and easily readable log. ALE callsign “111111” had no entry in the file, therefore this unidentified USAF aircraft cannot be solved.

Chris Smolinski’s Black Cat Systems ALE Decoder has changed monitoring ALE messages which are widely used onf HF to provide an automatic link establishment. It has set the standard not only by its unsurpassed sensitivity and the option to decode up to 24 channels in parallel, but also with its look-up table for “translating” cryptic ALE callsigns into stations and locations of flesh and blood. Tahnks to this, the usual decoded message of just

  • 7527.0 [Frequency in kHz] USB [mode] 2021-11-10 22:54:24 [date/time] 16 [BER] TO TSC TIS K62

turns into:

  • 7527.0 USB 2021-11-10 22:54:24 16
    TO TSC COTHEN Technical Service Center Orlando FL USA
    TIS K62 USGC MH-65D/E Short Range Recovery Helicopter Dolphin #6562 USA

This blog entry provides a description of the system as well as a list of 3’200+ ALE callsigns as a First Aid Kit.

How Callsigns come into Life

This feature is a major achievement in DXing. And it is, too, that innovative that we have to set our sails into unchartered sea. [Do you remember the completely blank OCEAN-CHART. in Lewis Caroll’s “The Hunting of the Snark” from 1876? You are here!]

The general idea of the software is to look-up each decoded callsign in a list of tab-separated information where you already had collected metadata like organization, station, location, country – anything you consider important.
The software then looks up each callsign – as above TSC and K62 -, introduces all the information in a neat way and prints it all together in the window. Even more, as the software automatically fills a logfile with all this for later inspection, edition and further processing by spreadsheet or database. Smart! And unique!

The callsigns’ document and its quality (extent, reliability, consistency …), of course, plays a pivotal role, see following illustration – shit in, shit out.

Information is circling from your Reference Database into the decoder’s look-up files (folder “ale_callsigns”) and back.

Whatever format your Reference Database may have, it will and must put out a simple tab-separated textfile.

It helps if you think of different type of data (organization, location, country …) as of different fields or cells, each separated by a TAB from each other – see an example with just one entry below.
All data fenced in by TAB can contain arbitrary characters, such as spaces, brackets, commas etc.

ALE CallOrganizationNameLocationTypeITU
HNCUSCGHarriet LanePortsmouth VAWMEC-903USA
Each cell/field is separated by a TAB. “Harriet” and “Lane” are separated by just a blank and as a result handled as one cell/field “Harriet Lane”.

Different output Formats for different Tastes

The decoder may present the same decoded message plus the same information from your callsign file in different ways, controlled by the “Settings” menu of the decoder:

Let us now decline the different Message Formats for a simple message of LNT calling J10 on November 6th, 2021 at 22:19:59 UTC, with data from “ale_callsigns”, see lines 16 to 18 :

Same message and same decode, but different formats and different log entries as well.

The sources for e.g., line 42 are marked in colors:

Divide and conquer

The look-up table(s) must be saved in a directory called “ale_callsigns” (lower case!) in the Documents directory for your user account.

The look-up table must be saved in the Documents directory for your user account.

Above you see not only one callsigns’ file, but many. There is a reason for that: If you have a large callsign file, undoubtedly some one and the same callsign will be valid for two or several stations. If the software detects this case, it prints (original decoded message):

  • 03 5732.0 USB 2021-11-10 22:29:03 31 TWAS J51 Ambiguous – multiple entries

This is because the list contains (in this case) two entries under callsign J51, namely:

  • J51 Royal Moroccan Armed Forces MRC
  • J51 USGC MH-60T Medium Range Helicopter #6051 USA

You can evade this ambiguity by defining different jobs with matching callsigns lists. If you want to check the channels of USCG/COTHEN, you should query your database for USCG only, save this set and invoke just this reduced set of callsigns instead of the complete bunch – divide et impera. This technique in most cases reduces the problem or even avoids it at all.
There maybe also the effect of a “false positive”: if a callsign doubles on two different stations, but you have listed only one under this callsign, being this the wrong one for the given case.

Basic Reference List: Database or Spreadsheet

I keep my data in a very simple FileMaker database with each entry carrying an individual number ALE_ref.

Example for one entry in my FileMaker database

Then you can query the list: “Tell me all USCG entries located in Alaska!”, getting this window out of your database. This must be exported as TAB-separated file (“USCG_ALS”) and put into the “ale_callsigns” folder of your “Documents” directory.

Result after asking for all USCG entries, located in Alaska.

Of course, you may use any type of spreadsheet and/or database.

You can see the content of folder “ale_callsigns” in the dropdown menu “Callsigns” of the decoder. There you have the choice to select one, two or many files or even “all”.

Under “Callsigns” there are listed all available callsigns files. Here I choose file “” with 3175 entries of which 2956 are unique – as the decoder tells you under tab ” Channel 1″.

Callsigns: A First Aid Kit, 3’000+ entries

To become a bit acquainted with this new function, I prepared a list of callsigns containing only very few basic data. It must, of course, contain the callsign for looking up. I then provided fields for the organziation (USCG), the station itself, its location and the ITU 3-letter code. All fields/cells mut be separated by a TAB. For each field which is left empty (i.e., if you don’t know the location), you must insert a TAB instead. Otherwise, the other data may be wrongly allocated in your log. I also tried to keep a balance of streamlined data and the obvious desire not to have be a Rear Admiral of the Navy to understand all the acronyms. The list works perfect for the decoder, plus as sink and as source for your by far more flexible reference database/spreadsheet.

I plan to extend the list as well as to correct the mistakes. Your support is welcome!

The list is a first approach in format and content. It surely works fine. As all work in this field, it combines information from many different sources, contributors to UDXF must be named first. The list is also flavored with my own monitoring log of more than 11000 entries, being all different in call/frequency. In addition, there is a lot of information around in the web – surprisingly often from the organizations themselves, but also from flight spotters, vessel spotters etc. I am sure that all information used is “open”, as otherwise I couldn’t had no access to it … got it?

You can download the zipped list here:

If this doesn’t work, drop me a line under

Black Cat ALE: Decoding 24 ALE Channels in parallel!

Here shown with 13 decoders only, Black Cat ALE decoder will read up to 24 different channels in parallel.

Since its development in the late 1980s’, Automatic Link Establishment, or ALE, has made HF communications as easy as just pressing the PTT key of a transceiver. In the days before the MIL-STD-188-141-standard HF communications needed some knowledge about propagation and interference. Only 30% of first attempts to establish communications were successful. With the advent of ALE, this number jumped to about 90%, re-vitalizing HF as a reliable tool of communications.

Motto: Leader of the Pack. The Shangri-Las, 1965

HF Communications via ALE: Just press the (PTT) button

With ALE, the knowledge of an expert simply slipped into software. It starts with planning a network, defining the locations (regional, continental, worldwide) and the main times of traffic (daylight, dusk, night). This information is used to develop a set of, say, ten channels of which at least one or, better, two will provide communications under all given circumstances.

This set of channels is programmed into the transceivers of all participants of a network. The headquarters then cycles through all the channels all 30 minutes, or so. It transmits a short message in a very robust, redundant mode (8-FSK) with forward-error correction. Each receiver of the net is scanning through all channels, listening on each channel for about one second. The length of the transmission must be a bit longer than the number of channels, multiplied with the hold time of the scanner, at least ten seconds in the case of ten channels.

If the scanner identifies an ALE signal, it decodes it and saves some results like the quality of reception. After a while, it builds up a table of channels with each of its reception quality. To establish communications, one just has to press the PTT key: the software looks for the best channel, switching to it, and you can speak or do some other type of communications.

Great and world-wide activity

Since its introduction a generation ago, this concept is the tool of choice used worldwide by forces, diplomatic services, emergency agencies, police, militia, UN missions, drug enforcement, border control and even amateur radio. It is used from aircraft like AWACS, as from aircraft carriers, from mobile units to fixed stations. Within the last three years, I have logged 10’000 different combinations of call signs and frequencies from Chile to Australia, from Alaska to South Africa.

Usually, you will receive the so-called sounding of the stations, like TWAS CHONKAPKA, reading “this was Cho’n-Chapka, Kyrgyz border control on the border to Kazakhstan”. However, DXer’s business is not always that easy, needing some detective work and even direction finding to nail cryptic callsigns like HQ3, AAA or 344013. UDXF is a smart group which will help to unveil many of these secrets.

Now for the 3rd generation of ALE Decoders

The first generation of monitoring saw the DXer sticking to one channel for hours waiting for a signal. The second generation mimicked a network’s receiver, scanning through all the network’s channels. Now, state-of-the art covers up to 24 channels in parallel. This nothing other like a paradigm shift (Thomas S. Kuhn) is done with a wide-band SDR, free SDRC software featuring up to 24 demodulators, and a multi-channel decoder, accepting up to 24 different input signals to digest them. Demodulators and decoders are connected via Virtual Audio Cable, a software.

After having worked with one decoder, multi-instances, what proofed cumbersome when it came to e.g. 10+ parallel channels, we now embrace with the Black Cat ALE decoder the very first multi-channel ALE decoder doing all this as one-stop shop.

The Black Cat ALE decoder has been developed by Chris Smolinski, W3HFU, the smart brain behind Black Cat Systems. Chris already has developed a couple of unique (decoding) software, first for MacOS, then opened many of them also for Windows.

Paradigm Shift changes Monitoring Strategies

Chris has written his manual with also the practitioner in mind, plus giving some backgrounds of how his software works. so this doesn’t need too much echoing it – RTFM. I will concentrate on how to use it for efficient monitoring.

One decoder only: “Point and click” on a new level

Let’s start with one decoder only. This is the case where you want to analyse a recording by point-and-click to the ALE footprints on a spectrogram, made by SDRC’s File Analyzer. By this highly efficient technique you dig out new stations/frequencies.
Doing this for the first time with Black Cat ALE decoder, you soon will see that this software excels in raising incredibly weak signals you may even not hear or see in the spectrogram. From my findings, Black Cat ALE decoder surpasses each and every other software on the market, being this professional or for hobbyists. The user may set the sensitivity and the reliability of the results under its Settings tab: if the software listens deeper, the probability that noise or interference is interpreted as “signal”, is raising a bit. But this “deep decoding” is absolutely worthwhile using it.
The screenshot below shows this basic technique of clicking to a footprint in a spectrogram, done with SDRC’s File Analyser tool, and decoding it. You may double-click the screenshot to better read the details.

Decoding by point and click, see text.

Multi-channel decoding: The right stuff

Using one decoder is a good start to get acquainted with all or at least many settings of the software and raising stations. The ultimate step is then to continuously monitor up to 24 channels, live. See the screenshot below for a first impression.

Live monitoring of 16 channels of the U.S. Department of State, see text.

The screenshot above is the result of the following workflow which I consider “best practice”.

Step by step: How to prepare for multi-channel monitoring

The usual task is to monitor a network, in this example that of the U.S. Department of State (DoS) with their Embassies, Consulates General and other Diplomatic Missions.

This starts with a given set of frequencies, or channels. It also helps if you have a list of callsigns and the stations, associated with them. In this case – as in some others -, UDXF provides such a list.

I start with programming SDRC software with all 16 channels – RX1 … RX16, with their output feeding VAC1 … VAC16. Don’t forget to set AGC to fast in order to use always the highest sensitivity in case a strong signal is followed by a weak one. The latter may be missed with AGC slow. Check also if each channel is set to the correct sideband, usually USB, and a matching bandwidth, e.g. 600 to 2650Hz. Save this set of channels under the Favourites tab, see screenshot below, where the set of 16 DoS channels had been saved under – DoS_16.

Favourites: Follow the red arrow to save your set of channels …
… all the channels appear in the RX window of SDRC. Don’t forget to activate them “All”!

With the receiver being prepared, start to prepare the decoder: first the input channels with their VAC number VAC1 … VAC16 and frequency, here 4553.6kHz … 24883.6kHz. Save these settings in a folder “Decoder Configuration”. From there, this and all other decoder’s configuration can be loaded into the decoder. This file is plain text, it may be edited, e.g. with free text editor Notepad++. The frequency notation must follow the international pattern 12345.6 and not 12345,6 which is used in some European countries. In the latter case, the 100Hz position is automatically set to zero.

Part of the Decoder Configuration file, containing the number of entries (16), followed by frequency and input of each channel, opened in Notepad++.

Last step maybe to set up a text file with the call signs of a net plus additional information. For this, you have to follow the instructions in the manual. In this case, I set up a file of 306 known DoS callsigns and their locations, duly saved it in the folder “ale_callsigns” and invoked it into the decoder – see screenshot below.

Load the callsigns’ list.

Now all has been prepared to continuously monitoring the given set of channels (net) and see the results with their proper frequency, date, time, decoded callsign and matching text – as in the screenshot below, where I monitored some COTHEN channels in the way described above.

Part of decoded messages – monitoring 18 COTHEN channels. For P21, T1B and 715 there had been found no matching entry in the callsigns’ list.

This output can be performed in a couple of formats (-> Setup), matching different formats. One of them is the format required by UDXF, also including your location/the source in brackets. Other formats are matching different needs for further processing with §rd-party software – spreadsheets and/or databases.

Limitations, hints, and twists

PC power: Please be aware of a few limitations of this setup. The number of channels is limited by the power of your PC. This technique eats up some resources, especially using 24 channels over say, 24MHz with 16bit SDR. If your PC doesn’t stand such approach, first try to reduce the HF span, say from 30MHz to 25, 20 or 15MHz – your mileage may vary. Many networks are regional, their channels are often located in a range of just a few MHz width. With a worldwide net, spanning (nearly) the whole HF range from 3 to 30MHz, you may reduce the span to about 15MHz, and shifting the range according to propagation at day or night.

One example: The DoS net spans from 4MHz to 25MHz and needs at least a HF bandwidth of 21MHz, alias-free. In practice, this calls for a 30MHz bandwidth for unattended 24/7 monitoring. If your PC doesn’t allow for this, you may use 15MHz or 20MHz bandwidth, using e.g., 10MHz to 25MHz at daylight and 4 to 19MHz at night.

To do so, just shift the lower bar in the SDRC GUI to the channels possible and/or needed. Channels outside this range will simply give no output. If you want to reduce the power requirement further, you should set these “dead” VACs to “Not used” at the decoder – but don’t forget to change this after againg having shifted the range. See screenshots below, showing the shifting of the range.

With the bandwidth spanning 33MHz, the alias-free reception range will cover all 16 DoS channels from 4MHz to 25MHz. See yellow box at the bottom (“slider”) and broken line within the spectrum.
If only a smaller bandwidth is possible (here:16,6MHz), change the bar at the bottom according to propagation. Here it is set to cover only channels 6 … 16 (broken line) and the slider (yellow box) has been shifted downwards to cover the lowest channels for night-time reception.

Sensitivity: Another “limitation” is to find the right balance between sensitivity of the decoder and preventing it to interpret noise as valid signals. In my experience, you have to use some care from BERs around 30 and higher. You may limit decoding to this value, but then you miss correct calls which can be received at BERs above 30.
Whenever you are in doubt: if the same callsign is seen on at least two or better three different channels, this is a reliable indicator for a valid callsign. Chris, the software author, has provided default settings, balancing near-perfect between high sensitivity and reliability. Change these defaults only if you know what you are doing. It is always a good idea to check and re-check a so far unknown callsign before logging and publication. You are responsible for trusting this or that result – not the software!

Audio files: Blackcat ALE Decoder also features a decoding from audio files. These are decoded in just a fraction of the original time. This welcome feature depends on your PC’s power; I reached a reduction of 1:13. You may mark several audio files which are decoded one after another.
This tool is ideal to experiment with different settings, i.e., trading reliability for sensitivity. Thanks to the butterfly effect [Edward D. Lorenz, 1972], the results when decoding ultra-weak signals or noise may or may not be the same when repeating this.

Callsigns/Configuration files: Keep them tidy and up-to-date. If needed, correct and/or complement them as soon as possible. They are the tools and the face of the software, of your results! They represent your skills.
It is a good practice to keep a separate “Callsigns” file for each (bigger) network. By this, you evade ambiguity, i.e. “HQ3” as used by a couple of different networks.
Always keep in mind the aim of your task which mainly will be monitoring one network. If needed, you can invoke more than one callsign files which the software will look up.
These files are both a great tool and a great temptation. Carefully used, they offer new perspectives, see below the live decoding (not redacted) of U.S. Coast Guard Medium Surveillance Aircraft #2313, ALE callsign N13, from which soundings on eight consecutive used transmitting channels had been received on October 29, 2021, in the late afternoon in Germany. Not bad for this HC-144 “Ocean Sentry” from EADS with its effectively radiating kind-of V-antenna, stretching from top of its tail fin down to its rear fuselage …

That’s live/life: USCG Medium Surveillance Aircraft #2313, decoded soundings on eight channels within 90 seconds.

Thanks, Chris, for this unprecedented achievement in ALE monitoring!

Decoding ADS-B with free QIRX software

QIRX’ dashboard, decoding ADS-B: in the middle you see spectrum and spectrogram (“waterfall”) of the ADS-B signals. The window at the bottom lists alls received aircraft with additional data, whereas the top window places them onto a map.

In the last two blog entries, I took a look at the DAB capabilities of free software QIRX by Clem Schmidt, DF9GI, from Frankfurt. It directly works with RTL-SDR, Airspy and RSP2 SDRs. I tried this very smart software from my location near Hannover/North Germany now also with ADS-B, mostly with my RSP2.

ADS-B stands for “Automatic Dependant Surveillance – Broadcast” and is an automatic service where aircraft continuously transmits several vital data on around 1.090MHz. Most important part of these data is the 2D location of the aircraft which it gets by GPS plus height by a baromatric altimeter. From this position data, many other data are derived, e.g. climbing/sinking or speed. If matched to databases, you will also see type of aircraft, flight number and many other data.

“The internet” provides many services showing the results of ADS-B and other data, collected from receivers all over the world, among them Flightradar24, OpenSky, FlightAware and AirNavRadarbox. They each provide many additional data, somtimes available at different schemes. Most provide free access to much of their data, with some more specific data behind their paywall. OpenSky as a scientific and non-profit organization offers billions of datasets for free, see Scientific Datasets. QIRX uses an OpenSky data base with about 650’000 entries.

Backbone of all these services is a net of ADS-B receivers, connected via the internet and curated by each company.

QIRX shows some capabilities of such a receiving station, using a proper antenna and a simple SDR. It decodes the I/Q stream of it. ADS-B is transmitted via pulse-position modulation, or ppm. The system is explained in ICAO Annex 10 Volume IV [free download].

With QIRX, you must set the sampling rate of you SDR to 200000[Hz], as other sampling rates won’t work, see screenshot below.

To decode ADS-B, you must set the sample rate for your SDR to 2000000Hz.

After that, and having started QIRX in ADS-B mode, decoding is done automatically. Release your seatbelts, and simply relax by viewing the activities above your head. Coverage largely depends on the “view” of you antenna and a few other factors like te sensitivity of your SDR and the attenuation of your cable connecting your antenna with your SDR. Some web services, thanks to anticipatory obedience/security reasons/data protection etc., do mute some “special” flights . This is not the case, of course, with this setup. QIRX always provides stable decoding at even low SNRs – great!

Last, but not least, please find below a comparison of FlightRadar24 and QIRX setup with Flight Number TK1554/THY6KG, Hannover->Istanbul, starting from Hannover Airport. One difference between both screenshots is that at my location (Burgdorf), I got the Airbus only after it had climbed to an atlitude of 200m or so, whereas the FR24 receivers are placed at positions allowing for tracking the aircraft from even the runway.

Starting from Hannover to Istanbul: the airbus on track around Hannover. Top window shows the flight via FlightRadar24 web service, and even from the runway. Bottom window shows it received with QIRX from Burgdorf (red point in the northeast).

Also small aircraft is equipped with transponders, but not necessarily with ADS-B transponders, broadcasting the position, derived from their GPS. These small aircraft may haveonly Mode-S transponders on board, transmitting identification, height and squawk (transponder code) as assigned by their responsible ATC, or Air Traffic Control.

DAB: Unique Software Qirx for SDR – smart, Feature-rich and free (2/2)

In this second part about DAB/QIRX, I will deal with anaylzing some results of QIRX’ log.

Figure 1: Tag cloud of all DAB ensembles, revealed by a 24h scan of the whole DAB frequency range at DK8OK’s location near Hannover/Norther Germany. The bigger, the better.

QIRX software provides several tools and data for DAB reception which it stores in a file called TII logger. TII stands for Transmitter Identification Information. Most important of these data are:

  • Time of reception
  • Ensemble ID – identification of the DAB-VHF channel received
  • Signal-to-Noise ratio, or SNR, of the whole 1.536MHz wide VHF channel. Maximum values here are about 34dB from locals. Audio can be expected from about 9dB, reliable decoding of metadata from around 7dB
  • Main ID and Sub ID of the physical transmitter’s location
  • Strength – the average of the amplitudes (magnitudes) of the TII carriers of each transmitter at that moment. The strongest carrier within an ensemble gets value “1”, the other carriers a number from 0 to 1 in respect to their relative magnitude, compared to the strongest carrier. Scale is linear, not logarithmic.

For mobile use, also GPS data in 3D are stored, extracted from an NMEA stream, provided by e.g., an external GPS mouse.

There are two principal methods of collecting data:

  • Scanning the whole DAB-band with all ensembles or scanning a couple of ensembles, as set in the Options’ tab, see Figure 2. This is done to get an overlook over all or many ensembles.
  • Scanning of just one ensemble, mostly to scrutinize propagation from the physical transmitter’s locations – Figure 3.

For scanning, the position of the Threshold slider is important. This can be considered as “kind of a squelch”. It sets the threshold where an ensemble/service is logged. You can control this feature via the window “TII Carriers”. A high threshold results in reliably logging of the strongest station(s). A low threshold will save also weak(er) signals but may be prone to false positive logs which have to been checked/erased manually.

Figure 2: Scanning the whole DAB band or just some ensemble(s). The results are automatically written into the TII logfile – here opened, in the background.
Figure 3: Scanning just one ensemble, here 5D. Under the TII tab, your first must start TII Recording for logging. After that, you may access this file by double-clicking the page icon at the right of this row.

Scan the whole Band

A scan of the whole band with a high threshold (here 0.54) resulted in the ensembles of Figure 1. Reception has been done from a fixed location with a largely vertical-polarized discone antenna at a height of about 50m near Hannover, in the lowlands of Northern Germany. The radio horizon is about 30km, following the equation given by Armbrüster/Grünberger: Elektromagnetische Wellen im Hochfrequenzbereich, München/Heidelberg [Siemens], 1978, p.48. Their factor of 4.1 is a bit higher than other values also found, ranging around 3.6. Receiver is an SDRPlay RSP2.

Figure 4 shows the SNRs of three ensembles, transmitted by the local Telemax tower at 15.8km with antennas at a maximum height of about 340m above sea level, or ASL. This results in a radio horizon of 75km.

Both 10kW signals of ensemble 5C and 5D show a more or less similar SNRs, but at different medians of 27.0dB [ensemble 5C], 31.3dB [5D] and 27.1dB [7A], respectively. With (nearly) the same power and the same horizontal polarization – matching my vertical Discone antenna -, with 5D leading the pack by a whopping 4dB, or factor 2.5, presumably using another antenna pattern at the transmitters’ site. What puzzles me more is that the variance of ensemble 7A with 1.56 is more then double as high as with the other signal (0.62 and 0.70).

Figure 4: Three ensembles from the local transmitter deliver different SNRs, see text.

The next diagram (Figure 5) shows the SNR from ensemble 11C, transmitted from Brocken mountain. With a height of 1141m, it is also virtually line-of-sight. There we see a much lower SNR, due to the fivefold distance, plus the transmitter’s power of being only a fourth that of Hannover Telemax. With 10.2dB, the median SNR is barely above the reliable threshold of around 10dB to provide audio at all. Showing a variance of 0.9, it is prone to sink under this vital level – returning no audio then. The three bigger dips largely coincide with local sunrise, noon and sunset. Further studies are needed to get a clue on that.

Figure 5: The SNR from ensemble 11C, as transmitted via the Brocken mountain, sometimes drops under the vital threshold of 10dB; see text.

The last diagram of this series, Figure 6, shows a splash of DX: From my location, the transmitter “Eggegebirge/Lichtenauer Kreuz” only provides marginal reception – with a median SNR of 8.6dB and a variance of 0.3 only rarely jumping over the threshold of 10dB. Sometimes, even metadata are lost, resulting in a somewhat thinned-out appearance of the diagram.
If you compare the diagrams from Brocken above and from Eggegebirge below, you may see some similarity in SNR over time with also pronounced dips around sunrise, noon and sunset.

Figure 6: Only marginal reception is provided by ensemble 11D, Radio fuer NRW, from Eggegebirge. It rarely jumps over an SNR of 10dB which is needed for audio.

Scanning one Ensemble

In a second step, I scanned just one ensemble for 24 hours, namely 9B “NDR NDS LG” on 204.640MHz with a choice of six stations – some easy, but e.g. Stade a bit challenging. Figure 7 shows the locations and some results, from a whopping number of 276’092 logs. For this, “Threshold” had been set to the lowest possible value, combining highest sensitivity with a maximum of false hits (here: nearly 30%) to be sorted out later – which of course had been already done in this example.

Figure 7: Visselhövede transmitter provided continuous reception with nearly 80’000 hit counts when having scanned ensemble 9B for24 hours. From this diagram you see the relation of hits, distance and transmitting power of all received six locations.

To get the performance of each transmitter’s locations within one ensemble, you cannot use the SNR values, as they refer to the strongest station within the ensemble: Visselhövede in this case. Hence, I had to use column “Strength” of the TII log, running from “1” for the biggest signal in the ensemble to “0” on a linear scale. Here, the smart guys of UKW/TV Arbeitskreis e.V. have invested much work in identifying the TIIs. If you match the Main/Sub Id of your TII log with their free publications, you can assign the IDs to their locations.

This has been done for Figure 8, sorted by distances of the transmitters. The Bispingen/Egestorf (74.2km) transmitter is running only 2kW, hence its strength is weaker and more patchy than e.g. 10kW transmitter Dannenberg/Zernien, despite its distance of 91.2km. Most prominent in the diagram of this transmitter, you see two peaks between 18:00 and 00:00 UTC. They occur – each time-shifted and weaker – also in the diagrams from Egestorf, Lüneburg and Rosengarten plus, much weaker, Visselhövede. Source of these peaks almost surely is a “moving reflector”, being more an airplane than an atmospheric phenomenon, enhancing reception currently. Websites like Flightradar24 with their playback function will help to find some suspects.

Figure 8: Strength of all six transmitters, observed at ensemble 9B over 24 hours. Please observe each different linear scale!

Finally, an alternative look at strengths. In Figure 9, I combined the strengths of just three transmitters, now having set a logarithmic vertical scale, rather than a linear scale to emphasize the weaker signals.

Figure 9: Signal strength of three transmitters from ensemble 9B, compared over 24 hours at a logarithmic scale. Compare this view to the linear diagram above to see here a much better resolution of weak signal strengths.

Some Notes on Propagation

Last but no least, I like to add some notes on propagation. In the DAB frequency range, of around 170 to 255 MHz, propagation largely follows “line of sight”, primarily controlled by the height of transmitters’s and receiver’s antenna – plus power of the transmitter and sensitivity of the receiver. Antenna polarization also plays a role – the polarization of the receiver’s antenna must match that of the transmitter’s antenna to avoid losses by a mismatch. Bear in mind that many transmitter’s antennas may have a non-omni-directional diagram.

This general propagation can be enhanced or degraded by atmospheric phenomenons, high or low pressure/temperature; by rain and fog, by aircraft scatter and other factors.

The SNR of an ensemble is mostly as better as the signal is stronger. There is an exception: if the same ensemble is received by two transmitters at a relative distance of more than about 75km, the “Guard Interval” is too short to sort them out. Result then is a reduced SNR at a high signal level. However, I never faced this situation.

Clem dropped my attention also to another most valuable tool, provided by They maintain detailed databases also on DAB transmitters, their antennas, powers, ensembles etc., and a web service which will draw circles of coverage onto a map. This is a cool and free tool, you must not miss – see Figure 10.

Figure 10: A web service of provides a tool for drawing the coverage (“footprint”) of specified stations, locations, frequencies etc. onto a map. This has been done here for ensemble 9B of six transmitters. Receiver “Burgdorf” can be found som 20km north-east of Hannover, at the bottom of the maß in the middle. Coverage from Dannenberg/Zernien had been highlighted.

The above mentioned tool does not take into account topographic data which may be important to calculate the coverage in mountainous regions. Here Nautel, a Canadian producer of transmitters, provides a free webtool after registration, see Figure 11.

Fgiure 11: Radio Coverage of DAB transmitter “Brocken”, taking into account terrain data.

DAB: Unique Software Qirx for SDR – smart, Feature-rich and free (1/2)

The dashboard of QIRX shows the power of this software. My location [Burgdorf] is marked green (not red) because QIRX is getting the location via GPS; especially useful being mobile . Click for better resolution – as with all following screenshots!

Digital Audio Broadcast, or: DAB, now is common with most household and car radios – after a more than bumpy start. Pressed into market with voluptuous grants from the tax payer and unabashed blackmailing of ceasing all FM broadcast and, hence, making all analogue FM radios obsolete without any financial compensation.

After fierce protests, there is some coexistence between both ways to the listener – mostly thanks of the pressure of commercial broadcasters which often belong to media giants.

Software defined radios, or: SDRs, make an excellent start to discover both worlds. Here, I will focus on DAB with free software QIRX by Clem Schmidt, DF9GI, from Frankfurt. It directly works with RTL-SDR, Airspy and RSP2 SDRs. I tried this very smart software from my location near Hannover/North Germany, mostly with my RSP2.

This blog has two parts: in this first part (1/2), I want to get some ground under my feet – regarding DAB as well as QIRX. The second part (2/2) deals with some results of QIRX’ logs.

QIRX excels in a number of analytic tools, and an OSM-based map showing your location as well as the locations of the transmitters, all metadata transmitted plus other features like connection to GPS receiver’s NMEA output for mobile use. It can be also used very basically: just to listen.

DAB – an efficient concept

In the first step, you have to find out which transmitters you receive at your location. Each transmitter beams a so-called “ensemble” (also dubbed “bouquet”) into the country, or a bundle of programms. Many of these programms or services can be packed into just one physical DAB-VHF-channel (“block”, e.g. 5D) of 1,536MHz width, via a robust and spectrum-efficient mode, called OFDM. This is a special combination of phase-modulated carriers, commerically pioneered for DAB by Munich-based Institut für Rundfunktechnik from 1981. Each ensemble carries an Ensemble ID (EId), like 11F7 for “Antenne DE”. Thanks to the “Extended Country Code”, this EId is worldwide unique. In turn, each station/programme/service within an ensemble carries an unique Service ID (SId), like 121A for “Absolut OLDIE”.
Some identical ensembles may be aired from different locations/ transmitters within a service region. In this case, they work together as a presumably GPS-synchronized Single Frequency Network – to which we’ll come later.

QIRX – the easy start

QIRX offers a scanner, catching all these ensembles from all the transmitters within the reach of your antenna:

First step: The DAB scanner of QIRX automatically catches all DAB transmitters which will provide a useful signal at your location.

At my location, QIRX scanner offers nine to ten such ensembles. For this example, I choosed the ensemble “Mitteldeutscher Rundfunk – Sachsen-Anhalt” (MDR-S-Anhalt), and clicked on the list of eleven services to “MDR Klassik” which shows up with some data on service quality plus multimedia:

Ensemble “6B/MDR S-Anhalt ” offers eleven services, from which “MDR Klassik” has been chosen. It shows also the Slide Show Data with additional information and also pictures.

It offers perfect reception, despite of delivering a signal-to-noise ration of just 10.9dB from a transmitter at a distance of 80+ kilometers.

Scanning is done in the background, and it may loop through (click: “Scan forever”) for hours or even days. It continually writes the results in the TII Logfile for future inspection – a great tool which will reveal even short openings over a specific time – scatter by tropo, aircraft or meteors among these.

How is the signal?

As an SDR aficionado, you will be pleased to see the spectrum and the spectrogram (“waterfall”) of the signal, the receiver is tuned to. The first screenshot below shows a near-perfect case from my local transmitter in 15.8km distance, delivering an SNR of up to more then 33dB, whereas the second screenshot of the ensemble “11D/Radio fuer NRW” at a distance of 115 kilometers shows a bumpy road ahead with SNRs well under 10dB. The “radio horizon” of this specific transmitter’s site already ends at about 85km, thus the margin is not too high.

Spectrum (top) and spectrogram (bottom) show the fine quality of a local ensemble, resulting in an SNR of nearly 30dB, whereas …
… this noisy/mixed reception of the ensemble “11D/Radio fuer NRW” from tranmitters at 100+ kilometers distance resulted in an SNR of more under than above 10dB.

Analytic Tools

One of the most exciting features of QIRX are its analytic tools. To make full use of them, a basic understandig of the concept of DAB is inevitable. ETSI, the European Telecommunications Standards Institute, is the umbrella organisation for maintaining also this concept. They provide a widespread number of different papers with standards and technical reports of which I found EN 300 401 (focusing on receivers) and TR 101 496-3 (focusing on the operation of a DAB network) especially helpful. Clemens, the software author of QIRX, has published some excellent information on these topics on his website, where I especially recommend the two parts dealing with TII, or Transmiter Identification Information. He had put a lot of work into it to present all information to get a clue what happens behind this rather complex and smart DAB system.

The window for the analytic tools comprises up to five sub-windows, with the Audio Spectrum skipped here:

Analytic tools: four sub-windows.

Let’s got through them step by step.

Constellation shows the four phases of the robust DQPSK modulation in a linear manner, representing each of the sub-carrier of the OFDM signal separately. By this, you may see which of the carriers actually is degraded by multipath propagation, caused e.g. by reflection from aircraft.
Above, you see the constellation of a near-perfect reception with an SNR of 33dB. Below, you see two examples at a much lower SNR. At the third example, the robust meta information from the Fast Information Channel (FIC) already is decoded, with however, the signal strength (more exactly, the SNR) just under the threshold to provide audio decoding.

Constellation at an SNR of 12dB …
… and at 8.3dB, just below the threshold of decoded audio.

Channel Impulse Repsonse (CIR) shows the time of flight from all transmitters to the receiver – referenced to the strongest signal, showing up as “0”. You may switch the scale from samples to time in microseconds to (relative) kilometers. These data also show up in the TII window at left-hand, and are used to populate the map.
It is the easy-to-read surface of heavy work under the hood to which also some other radio enthusiasts had contributed.
Below you see first the CIR display, where you see signals from three transmitters. The X-scale is in microseconds, time-of-flight, referenced to the strongest signal. On the left you see a list of all three received transmitters, ensemble 5D, with their real distance (km abs.) from the receiver, their distance relative to the strongest signal (km rel.), and their direction as seen from the receiver (AZM) – to turn your antenna into the right direction …

Right window: Signals from three channels with each different times of flight to the receiver. They are referenced to the strongest signal (“0”). The left window lists the received DAB-VHF-blocks plus its main and the sub identification.
Here you see the three received locations of one DAB-VHF-Block (“5D” – frequency) and one ensemble (11F7) plus their main ID (“51”). The following sub-IDs 1, 2 and 4 mark the actual transmitter’s site. The location with the green mark (5D/11F7/51 1) is the one which actually is decoded at this moment – the strongest one which in this case is also the nearest one on Telemax in Hannover at a distance of just 15.8km.

TII Carriers is a unique and exciting tool of QIRX software to look a bit deeper into the structure of the Single Frequency Network to which DAB is organized. Let’s take the map above with three transmitter on the same DAB-Block, or: VHF channel. TII or Transmitter Identification Information tells us just what transmitter(s) we do receive. Clem, the author of QIRX, put a lot of work not only to get this tool running, but also in describing the background and how to use this feature – you must not miss this (there are two parts …)! I can give only a weak echo of his very well placed explanations there.

Basically, it decodes the “Null symbol” of the TII which is transmitted with low power within what seems a “pause” of only 1.3ms of duration between each frame of DAB stream, being itself 96ms long.

The most easy situation is to receive and decode only one transmitter. The following screenshot shows this situation with DAB-VHF-Block 9B, transmitter Visselhövede. In the TII window you see 4 x 4 carriers, separated within four compartments by a dashed vertical yellow line. Each of the four groups of carriers contain the same information, but each taken from a different part of the spectrum to enhance overall sensitivity for weak(er) stations. The position of the TII subcarrier defines the sub-ID, and, hence, the individual transmitter. In this case, the sub-ID is “1”, denoting Visselhövede as transmitter location.
The mapping of DAB-VHF-Block, Main/Sub-ID and transmitter site has been mainly done by UKW/TV-Arbeitskreis e.V., a smart group of enthusiasts dealing with reception above 30 MHz.

4 x 4 single TII carriers show reception of just one transmitter site.

If you play around with the “Threshold” detecting TII carriers this may reveal also other transmitter locations, transported via the same DAB-VHF-Block. So, I lowered the threshold to 0.010 (x10). As a result, much more TII carriers become visible in the four compartments. They belong to other sites, hence, bearing other sub-IDs. To decode them, they must show up almost similar within all four compartments of the carrier spectrum window (right). Only then they are duly listed under the TII tab on the left side, and show also up in the map at the top.

With a much lowered threshold, four additional transmitter sites show up, carrying DAB-VHF-Block “9B”. Audio-decoded is the best signal, namely Visselhövede, marked green in the map. (Remember: click picture to enlarge for showing more details!)

You see 4 x five carriers, jumping over the gray threshold. On the left, they all are listed with their metadata including their sub-IDs of:

  • 1 Visselhövede – 65,8km/10kW,
  • 2 Dannenberg/Zernien – 91.2km/10kW,
  • 5 Bispingen – 74.2km/2kW,
  • 6 Lüneburg/Neu-Wendhausen – 96.1km/4kW and
  • 4 Rosengarten/Langenrehm – 106,8km/10kW

The additional four sites duly show up in the map, in red with the fifth, Visselhövede, marked green as carrying the best signal.

I/Q Data: The diagram always shows the time sequence of IQ data, in units of samples. Here, one sample corresponds to the system clock time of 1/2048000 sec, i.e. about 1/2 microsecond. The Y-axis can be switched between “Magnitude” (roughly the absolute amplitudes of I/Q), or just the amplitudes of the I-data (“I-Data” ticked). The first is the tool of choice to reveal the above mentioned “Null symbol” of 1.3 milliseconds, see screenshot below. For a detailed explanation, which is out of scope of this blog entry, please refer to QIRX’ website.

Two transmitters with each different time of flight: the strong and nearer signal’s end frame end first, followed by the much weaker end frame of station 2. After these frames of 96ms follows a period of 1.3ms, in which the null symbol is hidden. A slight notch in this period marks that both signals do comply with ETSI specs.

One additonal feature of DAB, much worthwhile to be mentioned, is the so-called “Guard Interval“. It guarantees that all transmitters involved in an Singe-Frequency Network, with their individual stations distinguishable only by their TII codes, can all transmit on exactly the same frequency – whereby the relative distances can be up to approx. 75km apart without interfering with each other. This has the consequence that e.g. the Bundesmux (5C – DR Deutschland) needs only one frequency nation-wide, which is e.g. selected once in the car and then works in the whole republic, not requiring any re-tuning by the driver. By the way, all locations of a block stored in the database can be displayed in QIRX with one mouse click.

Caveat: “Threshold” is as sensitive, as it is sensible. Too low a threshold may result in errors, too high a threshold may miss some transmitters. It is a good idea to start at a threshold allowing only one or two transmitters coming through, and then reduce this threshold by carefully checking the results for probability (etc. by their distance).

At some locations, there may occure a collision of the same sub-ID from different transmitters. This can be de-fuddled by QIRX’s function “Show Collisions for Sub ID”, but this is beyond this mere introduction. I have also to skip many more interesting applications of this software, e.g. using it for multipath detection by carefully observing the spectrum and measuring its deviations from a near-perfect brick-like shape – so that you can even calculate the delay caused by this effect.

We all have to be indebted to Clemens not only for his smart achievement in writing QIRX software, but also for his explanations and examples on his website!
He also helped in explaining some details for this text.

P.S.: Don’t miss the second part of this blog, showing some examples of analyzing QIRX’ logged data!

P.P.S: The best: the QIRX story isn’t over with just DAB. It features also a ADS-B decoder for those flight messages on 1.090MHz, drawing them on a map, and filing them. I will come back to this also stunning feature soon – stay tuned!

« Older Entries Recent Entries »