40/80 meter antenna for small gardens


I never went into the field with this one, there is not enough copper in the house to make the loading coils. It came out of 4NEC2 and the idea is to create an inverted V dipole that could be used for 40 and 80m only by inserting loading coils near the end of the 40m dipole arm.

Be warned that you need a tuner for the 80m band, because it is a narrow banded high Q antenna. If the SWR has to stay below 2 then the tuning range is probably 50 kHz, which is not a whole lot, I would not recommend it for solid state amplifiers, or at least be careful with the tuning. The other concern is the size and weight of the loading coils. On a  32mm PVC pipe you need something like 100 turns to get it to work. Tell me what you got if you decide to make it, want to verify it? Here is the NEC file:

CM Ernst Schrama, 40/80 meter dipole with a loading coils
GW 1 2 -9.25 0 3.19 -8.26 0 4.18 0.001
GW 2 26 -8.26 0 4.18 -0.44 0 12.00 0.001
GW 3 1 -0.44 0 12.00 0.44 0 12.00 0.001
GW 4 26 0.44 0 12.00 8.26 0 4.18 0.001
GW 5 2 8.26 0 4.18 9.25 0 3.19 0.001
GE -1
LD 0 2 1 1 0 0.00012
LD 0 4 26 26 0 0.00012
GN 2 0 0 0 14 0.006
EX 0 3 1 0 1 0 0
FR 0 0 0 0 3.7 0

Last update 21-april-2020 at 11:00

WSJT-X spectrum produced by a FT991 transceiver

My working hypothesis was that the ALC meter value is relevant for digital modes, the input audio signal should be at a level where you have a small ALC meter value, but where you reach on an external power meter the commanded power of the FT991. The question is whether a higher audio input signal with a increased ALC meter value will cause more splatter in the WSJT-x transmit signal of the FT991.

Setup: FT991 and PC in the configuration the way it is used on the HF bands, both are connected via a microham keyer II. The commanded output power levels on the FT991 are 10, 25, 50 and 80 Watt. (See the discussion below under advisory note discussing the attenuators and the SDR.) Measured are: the peak level in dB of the WSJT-X generated tune signal and the signal level of highest parasitic frequency seen by the sdrplay duo, and also the noise floor in the waterfall graph produced by the SDR. The external power meter is that of a Palstar tuner put in bypass mode.

The following values show the dB difference between the signal peak and the parasitic frequency signal level for the lowest audio input level generated by the PC resulting in a near zero ALC indication and a power on an external power meter equal to the commanded level on the FT991:

  • 80W 25.6 dB
  • 50W 24.2 dB
  • 25W 27.2 dB
  • 10W 26.0 dB

There is an uncertainty of approximately 2dB in the reported values depending on the indicated ALC meter value in relation to the level of the audio input signal send by the PC to the FT991, whereby it should be remarked that the signal level of the parasitic signals relative to the central frequency deteriorate up to 2dB for larger ALC meter values.

Conclusion: there is no indication that a high or a low power level matters in the discussion. High audio levels will increase the level of parasitic frequencies by approximately 2dB, the parasitic frequencies are approximately 26dB below the central peak in the WSJT-x tune signal produced by the transmitter.

Example FT8 spectra made by FT991 measured with SDR console and an airspy HF+

50W zero ALC center part
Figure 1: Center of FT8 spectrum, zero ALC 50W, the level of the parasitic frequencies is some 26dB below the central peak, I suspect that the sound card of my PC is causing this. The width of the green region is 50 Hz. This graph explains why nearby transmitters running FT8 appear several times in the decoded call sign window. The FT8 demodulator would first find the strongest signal, and the successively find in the residuals all parasitic frequencies which can arrive above the noise floor of the used receiver. SNR measurements for nearby transmitters are therefore unreliable in WSJT-x
50W max alc
Figure 2: Zoom out, 50W max ALC, there is no evidence of excessive splatter, the width of the green region is 3200 Hz.
50W zero ALC
Figure 3: Zoom out 50W zero ALC, and to my surprise nothing changed compared to the max ALC version about which has maybe a few more dB  on the parasitic frequencies, the width of the green region is 3200 Hz.

What is causing the spectrum we see in figure 1?

In my opinion the spectrum is not caused by the SDR, it is also not caused by the PC generating the WSJT-x signal, instead this is what the FT991 produces. For comparison, in figure 4 you find the spectrum of the transmitter in CW mode, this signal has nothing to do with the WSJT-x program or the PC, it is directly generated by the FT991 in CW mode. We see the same features as in figure 1.

Figure 4: A 30W CW signal generated by the FT991

I can also rule out the airspy HF+ and the SDRconsole software because a signal generator (for details see this article) is able to create a 25 Hz wide signal with a carrier to noise ratio of at least 100 dB on the waterfall plot. The spectral width is related to the sampling rate of the used software, in reality the bandwidth of the test signal is less than 25 Hz. In the SDRplay directory you find an spectrum analyzer for a SDRplay duo and it offers some more flexibility for sampling the signal, see figure 5:

Figure 5: single CW tone, this is what you get, around -26 dB intermodulation distortion is found by taking the differences of the four markers.

I also tested a FT990 transceiver, same set-up but with the SDRconsole software, the FT990 performs somewhat better than the FT991, it suggests that a TX IMD of -40 dB can be achieved.

Figure 6: The intermodulation of the FT990 is more around -40dB, this is what you find with 5W and a CW tone signal.

Advisory note with regard to attenuators and SDR

Your SDR is already a fairly good spectral analyser, but it is way to sensitive because it lacks the ability to attenuate transmit signals from a FT991.

Do not try to feed anything more than about 1 mW into any SDR because you will kill it (it has protection diodes but I don’t insist on the challenge) For this experiment you need a high power rating attenuator, so the first one on the chain of attenuators should be able to handle at least the power you transmit, the big black body in the figure below can handle up to 100W with an attenuation of 20dB. Even that is not good enough, you need to go down to 130 dB attenuation (in total) to get a signal close to the noise floor of your SDR, so this is where the rest of the attenuators play a role. (The four BNC to BNC attenuators were not used, also the SMA attenuators were not used) Used were as said the 20dB big black block, the 10dB N-N attenuator, and the HP-335C/D stepper attenuators. The last one becomes useful to tune the signal level close to the noise floor of your SDR and of course within its dynamic range.

An n-bit SDR will have a dynamic range of 10log10(4^n) dB, so 8 bit is 48dB, 12 bit is 72 dB and 16 bit is 96 dB, the airspy HF+ has 18 bit ADC, so its theoretical dynamic range is 108 dB. With for instance 100 Watt of transmit power you want the signal to arrive at some 60 dB  (well within the dynamic range of the SDR) above its noise floor which is approximately -140 dBm, so you need a signal level of -140 + 60 = -80 dBm. To reach -80dBm starting from 100W = 10*log10(100*1e3) = 50dBm you need 130 dB attenuation. The BBB plus the N-N connector give me 30dB; the extra required 100 dB comes from the HP335C/D.

Figure 7: My army of attenuators, without these I can not measure any spectrum with a SDR.


There are quality differences between the transmitter intermodulation distortions (TX IMDs). ARRL test reports take a test range of -20 to -35dB, the lower the number the better it is, our FT991 TX IMD measurement is confirmed in the ARRL test report described in QST November 2015, page 45 to 51. The measurement itself is relatively easy to do with a set of attenuators and software, to validate the quality of the SDR spectrum analyzer I used various test signals of around 1dBm to see whether the bandwidth and the obtained carrier to noise ratio are acceptable. Very narrow signals of better than 5 Hz bandwidth and 100dB difference between carrier and surrounding noise can be obtained with the SDRplay frequency analyzer.

The consequence of TX IMD is that any transmitter will always cause some splatter in the spectrum, it will also happen in the FT8 output signal. The consequence is that a receiver can pick up the TX IMD, strong FT8 signals may therefore cause duplicates at nearby frequencies, duplicates of the FT8 signal can picked up by the decoder.

Examples of duplicate FT8 signals occur in my option rather often, at least, I see them every day. In figure 8 there is an example at 947 Hz offset with a nearly duplicate found by the decoder. I could not eliminate this signal in the receiver, reducing the audio signal did not help, what will help is to attenuate the overall signal, but then you will also lose the weaker FT8 signals. The station from Croatia was the only one that was causing this problem and everything suggests that it is caused by the station itself and not the receiver that I used, nor the ALC behavior, nor the audio level. The observed TX IMD may very well explain why we see this in the WSJT-x band activity window.

Figure 8: At 947 Hz offset you see the main signal with a SNR of 13 dB, and a duplicate at -23 dB at 797 Hz, the distance is 150 Hz.

Last update: 15-Jul-2019 6:56


I think this is one of the tools you want to have next to what you already have for the digital modes in hamradio. JTalert is available from https://hamapps.com/ It is helpful because it gives access to https://hamspots.net which is generally faster than https://pskreporter.info/ Also JTalert has automated the way you can log QSOs or query callsigns in various ways. The program can either update your own logbook or a webserver logbook, and it has a lot of filtering for wanted calls, grids, countries, continents, it allows to chat with online JTalert users (just right click on their name and it opens a message window), etc. Contrary to popular believe, JTalert is not a program to replace WSJT-X, instead it works as an overlay for logging and reporting and as far as I can judge, but it does not fundamentally change the way WSJT-X works. JTalert does not make you the superhuman that does not need sleep, or maybe a robot, referring to the talk of Joe Taylor #k1jt in Friedrichshafen.

Last update: 30-Jun-2019 8:06.

A garden loop antenna

For the 10 and 20 meter amateur bands there are in my opinion better antenna’s than the often used end-fed which is prone to picking up local man made noise (QRM) because the shield of the coax should be grounded, actually, a ground plane would be useful. Another reason why the end-fed picks up more noise is that they are E-field receivers while a lot of man-made noise (QRM) which is all around our living area has a high E-field component. If you make a loop then you listen to the H-field, the magnetic component, in theory that should give you and advantage.

My active antenna described earlier on my blog is a low-impedance H-field receiver which you can not use for transmitting, it always outperforms the G5RVj which I already have in the garden, on the image below you see a part of the G5RVj (the upper wire is part of it) which is two times +/- 7.8 meter of wire with a central open line feeder, at the bottom of the open line feeder there is a 1:1 balun to convert it to an asymmetric transmission line, 7mm aircell coax.

The image below is what I denounce to be the garden loop. You don’t need a whole lot of garden, actually one high mast in the back of the garden and a lower pole on one side. Construct a triangle with sides approximately 20/3 meter of length (use your analyser to put it just below or above the 20 meter band, or right in the middle if you have the patience for it), and use a 1:4 balun in one of the corners. The Delta loop is roughly 200 Ohm, and we down-transform it to 50 Ohm. The 20m delta loop is resonant at one lambda, so the 20 meter band, and also works at 10 meter. Drawback is that it takes up more space, I have it running as a weekend and sporadic E-season experiment.

IMG_3815 (1)

Be creative and have fun, antennas offer a lot of playground for that.

Status: last update on 2-Jun-2019 7:00

Receiving ADS-B aircraft data with the RSPduo and sdrplay.


Most aircraft nowadays transmit their position and other data via the so-called ADS-B system. Tune your SDR to 1090 MHz in Europe, decode the data and there you go, but now the specifics:

Antenna: The polarization is usually vertical, so that is the easy part of this project but 1090 MHz is a frequency where you want an outdoor antenna, the signal is weak and it will not easily penetrate walls, windows or roofs. So you need something outside your house with as much as possible with a free field of view. The Diamond X30 was not designed for this frequency, but it does the job in receiving the ADS-B signals. Any discone type of antenna would do it as well. I did not need an LNA, the cable losses and the SDR rspduo sensitivity are in my opinion sufficient to decode ADS-B signals.

Software: on www.sdrplay.com it is explained how you should configure the rspduo. The sdruno software has an ADS-B dual channel mode, route the output to a virtual audio cable and next run dump1090 to decode what comes out of the receiver. Still this is text and data, and you want to present it into a more meaningful way, so you need a translation program called virtual radar server that translates the dump1090 output into a HTML format for a browser. It is a bit of a chain, sdrplay → VAC → dump1090 → virtual radar server → your browser.


So the output comes to URL on your PC usually, this is a place where you get to see what is presented in the figures. The ADS-B tracker picks up ADS-B signals up to 120 km which is roughly twice to three times the normal radio horizon because of the altitude of the transmitters (at least, this is what I saw in the few hours that I ran the ADS-B monitor, better antennas and maybe also weather conditions can boost the visibility).

There are also websites where the ADS-B (and MLAT) data is combined, www.flightradar24.com is one of them. When you monitor ADS-B data some aircraft appear to turn off the identifying information, but they are still there on the website. The reality is (according to PD0G as you can read in the comments) that next to ADS-B also MLAT data is used, this is what we don’t process with our ADS-B monitoring system, details about the difference between ADS-B and MLAT can be found here.

I’m not 100% sure whether all authorities are happy that you distribute ADS-B information that you receive, the general idea is, for hobby and private use all received data is yours, but, if you use the received information against somebody then it is a different issue. Because of this I do not run websites or participate in activities where I freely provide ADS-B tracking data, or I blur or delay the received information such that it will cause no or little harm. Be nice to one another and do not mess up things, think about it.

Antenna considerations

I tested a quarter lambda ground plane antenna for the ADS-B experiment, in my opinion the antenna height is really crucial. For the experiment I used the following setup, that is, stick a glassfiber mast out of the window, tape the antenna to the top and see what happens

And now I can suddenly track ADS-B transmitters up to approximately 250 km distance, which is what I saw after running the experiment for about a half hour.

Last update: 26-Feb-2019 15:36 AM.

Receiving weather images


This blog article is about receiving and decoding the NOAA weather data, it is an old system that still produces data that you can receive with a SDR and a right handed circular polarized (RHCP) antenna called the QFH that I mentioned in the previous blog post.

There are three satellites called NOAA 15, 18 and 19 that routinely transmit scanned images of the cloud deck in infrared and visual. I decided to evaluate the QFH antenna performance described in the previous blog post, the frequencies of the satellites are 137.1 MHz (NOAA 19), 137.620 MHz (NOAA 15) and 137.9125 (NOAA 18) which is below the designed resonance frequency, but the bandwidth is sufficient to cope with this.

At the before mentioned frequencies you set the demodulation to 60k WFM on a rspduo receiver, redirect the audio output to a virtual audio cable and select the VAC as input into the WXtoimg software. And for the rest you wait as the images come by, it is a system that you can leave on all the time. The first results where rather disappointing because the NOAA satellites transmit as right hand circularized (RHCP), and, if you look at the antenna in the previous post then it is really LHCP. But of a blunder but after some soldering, bending and twisting you finally end up with this:


This QFH antenna has the right sense of rotation, which is a difference of nearly 20 dB, in other words the previous QFH was looking at the reflected signal (RHCP becomes LHCP after a reflection) rather than the direct (through the roof) signal of the satellites, a stupid mistake.

Also, there is 30 meter of cable between the QFH and the SDR, together with the connectors and so on it results in loss of a couple of dBs. The intention of the LNA is to boost the signal by 10 dB at cost of some noise which comes from the LNA itself. Also the LNA can use some improvement compared to the previous post, the best advise I can give is to put it in a shielded metal box. This looks less attractive (perhaps) but you don’t want any other signal on the LNA input than the antenna input signal, or stay signals in the neighborhood of the amplifier.

Also, I tweaked around with several metal matches on the PCB of the LNA until all parasitic signals disappear. It is a bit of testing but the LNA noise figure (NF) appears to be about 2 dB. The purpose of the LNA is to raise the signal by 10dB which compensates for the cable losses and maybe the receiver noise floor. Anything that keeps the LNA amplification within the dynamic range of the receiver is fine, actually, you don’t want to amplify too much because the noise floor of the LNA will also go up. In all I hope that 10dB amplification is enough.


The above image shows LNA version 2 in its box, you feed it with 13.8 volt while the MMIC MAR-3 runs at 9.88 Volt. I rerouted some tracks on the PCB compared to version 1, also there was a bit of soldering but the SMA connectors were already there in the metal box before I started the project. The LNA schematic is as follows (it does 10dB amplification with a NF of 2 dB):

And now some results: The first images that I received looked like the one shown below which arrived on 22-feb-2019 at 15:41 UTC. In this case luck played a role because many subsequent images were far worse (left visual and right is infrared I believe):


A few days later I continued with the project, this is what I got, it is a composite image of both channels, the wxtoimg program does all the processing:


The above image is from NOAA 19, it was right overhead on 24-feb 15:20 UTC, the signal to noise ratio (SNR) was >18dB at the highest point in the pass (while this QFH antenna is under the roof). So this is what you want, a RHCP and a 10 dB LNA, not a very good general purpose antenna because that would be one with more gain at low elevation. In this case you need right handed circular polarization (RHCP) and in particular at elevation angles beyond 20 degrees. No problem with the SDRduo to do this, the only thing to do is to reroute the audio via a virtual audio cable (VAC) to the software (wxtoimg):


A bit of luck also helps, the above image should how the PV elements of the neighbors are a bit of a pain sometimes (it is the inverter that makes some noise), but the luck was that the inverter stripes remained out of the reception window.


The above image is the next good pass, it is of NOAA 15 on 17:54 UTC. Here I played around with the filters in SDRplay because they are crucial to get rid of the zebra stripes which are caused by switching power supplies. SDRplay works fine with the following settings: WFM demodulation, 60k width, VOL in WXtoImg should indicated around 60%, adjust the passband in the demodulator window so that it fits all spikes. Please no frequency adjustment because that messes up the decoding (the Doppler effect is not that much, this demodulation window can easily cope with this). Also, put NHCL on and NBW on. Over the Pyrenees in the above image you see what the zebra stripes are when the NBW filter is temporarily off during reception.


WXtoImg also produces various output files, the above one is the same (NOAA 15 24-Feb-2019 at 17:54 UTC) but it accentuates something (still have to read the documentation). Also, whenever the SNR is below 10 dB you only get noise, in that case the test strips in the left and right margin of the raw images will disappear, you need to play around with the elevation margin settings in WXtoImg to skip the passes below your horizon.

Parts of the text on this blog can also be found in the facebook group SDRplay and on twitter. It is a fun project where you learn that the ideal for all circumstances antenna does not exist. The results that I got with the RHCP QFH/LNA combination are beyond anything that I ever got with the Diamond X30 co-linear antenna, which gave me nothing more than zebra striped weather images whatever I tried. This is the main learning experience of this project. What is circular polarization and how do LNAs perform.

About the NOAA weather satellites

For consideration, up to now I was able to track NOAA satellites numbers 15, 18 and 19. These are aging satellites launched in respectively 1998, 2005 and 2009. I do not think that this system will be replaced by additional satellites. The modern solution would be to get a subscription from EUMETsat and receive their broadcast information from a geostationairy satellite. That requires at least a dish and a LNB to downconvert the signal into the RSPduo tuning range. The LNB dish combination is what I like, but I don’t like the subscription idea (not sure how expensive it is). Maybe a project for in the future.

A short youtube demonstration

On how the signal arrives, and how it is processed is here: https://youtu.be/s38gBitsMGQ

Last update: 26-feb-2019 14:04

DIY Arduino CW decoder

A holiday activity, build your own CW decoder that can handle up to 40 WPM including logic control to determine the CW code speed. There is a 567 tone decoder chip and some signal pre-processing, 8 ohm stereo audio goes in, next you print the decoded text on the serial output and on the LCD screen.

Version 2.4 has a status bar, most left number counts frames, then WPM guess followed by quality parameters.

This is version 2.3 that includes a quality of code filter.

This is version 2 that clearly had some bugs that were fixed

Note: I’m not sharing too much details yet because I’m still working on the software which is roughly 1000 lines in C/C++ Arduino style, still it compiles to 11k of code and  less than 1 k of variables. The hardware resembles the design made by WB7FHC Budd but I’ve changed some stuff before it goes in the 567 tone decoder IC. The magazine Electron Dec 2018 jaargang 73 discusses a similar project.

Last update: 9-jan-2019

Panadapter for your rig

Linking everything together

In this setup, the SDR receiver and the PC are a panadapter for the transceiver, a FT-991, but in principle it should work for any transceiver:

  • Install SDRConsole and omnirig on your PC, get microkeyer (or similar) and run it, define three com port COM1 for the radio, COM2 for PTT and COM3 for the mirrored CAT interface. Here we need COM1 and COM3
  • Tell SDRconsole that there is an external radio, via view -> select -> external radio.
  • When you turn the external radio on, it wants to run omnirig, specify here the COM3 port and speed of the mirror CAT line.
  • In my case I also want to use ham radio deluxe, for HRD you go via tools -> 3rd party serial port the connection, here you select mirror CAT port COM3.
  • No virtual audio cables are required, the only thing the SDR does is to listen to its own antenna, the transceiver works with the longwire antenna, SDR console has an option to automute when you transmit, home -> automute is where you need to be.

In the end you should be able to do this:

  1. The SDR and the transceiver exchange all CAT information via COM3, HRD uses COM1 and MK2 takes care of the mirroring between CAT ports. Use the MK2 debugger to check it.
  2. Rotate the frequency dial on your transceiver and the slider on the SDRconsole moves around, also mode changes are transferred.
  3. And the other way around it also works, all actions in the SDRconsole control the transceiver.
  4. You can still use HRD, the logbook receives the correct frequency and the modes via the main CAT or COM1.

See: https://forums.hamradiodeluxe.com/node/42831

Last update: 22-Sep-2018 1:07 AM local

Your own websdr

Get a Raspberry pi 3 (rsp3) and you own a 1 Gb ram 8 Gb flash memory Debian linux box that talks to the internet via wifi and/or wired ethernet. I configured it to run as a headless rsp3, initially you need a HDMI monitor, a USB mouse and a keyboard, and access to a wired ethernet. Once you got ssh to run on the rsp3 you can access it from anywhere on your local area network (LAN) or beyond when you forward ports on your router.

Plug in the airspy and try to run spyserver, initially sdrsharp crashed on a device busy warning. I added airspyone_host-master installed their libraries from github, set the device-type to the airspy you it starts to work, great support via their forums, thanks! Next run sdrsharp on any PC, and configure the input to be the sdr:// device on your lan. IP is the wifi access to my rsp3, and IP is the wired rsp3. The network bandwidth is restricted to 100 MBps by the rsp3 although my network could handle the 10 folds (which is handy if you’ve got children watching youtube).

Bandwidth is a somewhat a concern on your LAN, so tweak the Bandwidth and the IQ format checkboxes in sdrsharp and change it so that the connection is confortable, see also the images below. This setup works both in wifi and wired, the latter allows a bit more bandwidth and is more stable because my WiFi to the access point has an overall bandwidth limitation of 10 MB/s which is shared by everyone in the house.

5 MB/s bandwidth for hifi stereo FM
The airspy connected to the raspberry, connected to the LAN via a cat6 UTP cable (I make them myself but ran out of the rubber caps as you can see)

The benefit for hamradio is that a remote receiver can be set-up in your neighbood, away from the QRM (radio frequency interference, demonstrated in this movie) in your shack. If you live in an apartment building with access to the roof, then try to get the receiver and the antenna to the roof and control everything remotely over the LAN. Often this is easier than installing coax cable over many meters, and oftentimes the LAN UTP cables are already there.


The SDR generates IQ data that is scrutinized by the PC, your PC is fast enough, the RSP3 is also fast enough, but the bandwidth of the local area network (LAN) is often the main limitation. If bandwidth is already an issue on your LAN, then it will certainly be a greater problem when it goes beyond your LAN. This is one of the main limitations of any WebSDR, it may need a lot of bandwidth. But all airspy’s were designed to efficiently handle the compression of IQ data.

The checkbox “Use full IQ” directly under the spyserver select box in image 1 will open up when the connection to the spyserver is closed, the C button right of the select box opens and closes the connection, click it a few times until the “Use full IQ” checkbox is can be selected. With this you tell the spyserver on the RSP3 to compress the IQ data so that a typical 5 to 10 MB/s is reduced to often less than 100 kB/s.

Reduced IQ data has a consequence for the resolution of the spectrum and the waterfall plot resolution displayed in sdrsharp, but the quality of the audio seems unaffected. Other options are the bandwidth and the IQ format which can be selected on the fly. Both also determine the bandwidth over your LAN.

Remember that all data packages on your LAN directly go to the router before they will arrive at their destination, unlike traffic over a USB cable between the SDR and your PC. A gigabit router and CAT6 cabling is advisable in my opinion. Although the RSP3 box and the SDR are physically seen no more than a meter away from your PC, the router is 30m down the cable, while the LAN is shared by some 20 devices because nearly all gadgets in the house carry WiFi these days.

Last update: 25-Jan-2018 14:57