NOTE: This was written before the GFSK modification to FT8 that has solved most of the inter-symbol and start-up splats. Leaving it here for historic interest, but the overdriven audio issue is still valid. The low tones issue with harmonics is mostly solved if you select split or fake-it split, so you never transmit with a base tone less than 1500 Hz, but that’s just a Band-Aid, you should set your TX level slider so you only just reach the power you want. If the power does not back off 3dB when you drop the WSJT-X slider by 3dB, you are not in the linear zone yet.
I have been playing with FT8 on 144MHz, as there is loads of activity, but there are also some rotten signals. Hard to understand why, when the mode is supposed to be very narrow and it is full carrier, so it ought to work even with a class-C non-linear amplifier, like FM, right? Well, as it turns out, perhaps not.
Being neighbourly, I decided I had better check out my Elad FDM-DUO SDR radio and make sure I understood how to drive it without causing problems for others. As FT8 is a constant-carrier mode, I thought that normal intermodulation distortion from amplifier nonlinearity should not be an issue. However, there are well-characterised sidebands from the modulation which need to be taken into account, and that changes the picture quite radically.
FT8 uses eight tones, spaced 6.25Hz, and they are modulated by FSK at 6.25 symbols per second. The tones take up less than 50Hz in theory, but there is a wide comb of FM/PM products either side. The relationship is complex as there are different sized FSK steps in multiples of 6.25Hz. Rather than try to do any analysis, and going back to University days with Bessel functions and other terrors from the past, I simply ran a CQ call from WSJT-X 1.8 in FT8 mode and used Spectrum Lab to look at the generated signal directly from the output stream of the program, using a Virtual Audio Cable.
So this what the raw FT8 for “CQ G4DBN IO93” looks like when averaged over 10 seconds. At around -60dB relative to the peak tones, it is 400Hz wide. At -90dB it is still there at about 2kHz wide.
OK, so now we feed that via a USB audio interface, still in digital form, to the SDR radio. The DUO has a low-level 0dBm output which I use for LF and for VHF/UHF/SHF transverters. That output is spectacularly clean on SSB with a digital two-tone drive, so as you’d expect, the FT8 output from the DUO is pretty good. I used a good quality 10dB SMA 50 ohm attenuator on the 0dBm output for this test.
That looks very similar to the raw audio from WSJT-X, again about 400Hz wide (two divisions) at about -60dB relative to the peak tone levels. This was using much wider FFT bins on the 4406 than in Spectrum Lab. The blip as the left is carrier feedthrough, at least -70dB relative to the peak tones. The cut-off from about 300Hz above that is caused by the audio tailoring in the DUO. So it looks like, even at 100% on the slider, the 0dBm output is pretty much a perfect copy of the input, with no additional spreading.
Right. Now to test the main output, through the QRP linear amplifier in the DUO. I set the output to 5 watts through a 30dB 4GHz-rated power attenuator and the 10dB SMA attenuator, leaving everything else pretty much alone. For the test, I did the same thing as for the 0dBm output test, firing up a CQ, then starting the analyser after a couple of seconds and leaving it running for about 10 seconds. Here is what it looked like:
Now there are some new artefacts in there. One is a bit of 100Hz PSU hum on the carrier at -80dB relative to the tones, and that is mixed with the main tones. Same with the carrier feedthrough at -70dB, it seems to have a bit of the signal at -80dB on the LF side. Very low-level, all of those features.
At the -60dB level, the width is still about 400Hz. I’d say that was still remarkably clean.
A closer-in view of the 5W output looks like this:
That is in 2Hz bins, and shows the same 400Hz width at -60dB as in the original WSJT-X audio source.
A 20kHz wide view is like this (note that the larger FFT bins mean the noise floor is raised by 17dB relative to the plot at 2kHz wide)
OK, so overall, it looks decent, clean and presentable.
However, that is not the full story. I was seeing wideband clicks (more like splats actually) at the start of some transmissions. To capture those, I ran the E4406A analyser in peak capture mode with wide FFT bins and let it collect for 15 minutes. Things started to look very much less pleasant at that point.
Here is a plot. The blue trace is the maximum seen at each FFT bin, the yellow trace is the current active transmission spectrum. Width is 10kHz. You need to take the spectrum with a bit of a pinch of salt because the bin size is 200Hz, to make sure I could capture the very fast splats.
Now that is pretty grim, with some serious energy at -60dB from the peak around 9kHz wide instead of 400Hz in the original waveform. So, what is going on here?
The DUO appears to have that spawn of the Devil, ALC. It is setting the overall level based on a running average of the original signal. As usual with *ANY* ALC system , this is really bad news, as the initial attack results in a bit of an overshoot, then the amplitude is dragged back to the preset ALC cap, and after a few milliseconds, it settles down, but the fast amplitude and phase change that the ALC imposes results in wideband AM/PM modulation and that nasty splat.
Checking what is going on, the Windows device which represents the digital audio input to the FDM-DUO was set to a level of 100 in Windows Sound. I wound that back until the mean level of the transmission fell back to around 90% of the ALC-limited power. That was at a level of 60 in my case.
Retesting for another 15 minutes with no other changes, the spectrum was improved hugely:
The raised noise floor of the blue line is an artifact of the wide resolution bandwidth, but the shape of the spectrum looks very much like the original, at least up to 2700Hz and down to 300Hz, where the transmit filters chop off the modulation sidebands.
Charlie NN3V put me on to this with a question on the EladSDR@groups.io mail forum, so thanks to him for setting me off on this interesting investigation!
Right, so that should be an improvement in the cleanliness of my FT8 and other constant-carrier digimode signals. We are done. Or perhaps not…
There are a couple of issues still there. That sharp LF cutoff is pretty close to the peak of the modulated envelope, only 25dB down. Cutting off the higher-order modulation products is going to have an effect on the demodulation process as it will cause distortion of the symbols. The tests were done with FT8 set to 890Hz, but imagine if it was at 450Hz, like some signals I’ve seen. That leads to serious distortion of the symbols and may explain why some signals are hard to decode even when they are loud.
There is another issue with using low-ish tone settings. Here is a transmission from a local that I saw today. The tone setting in FT8 was about 320Hz.
In the spectrum grab, you can see a set of eight tones at nearly 20Hz spacing, starting at 960Hz or so, then another set or eight, much weaker, spaced more than 30Hz apart starting at 1600Hz. These must be odd harmonics of the original audio. A pretty good justification for the WSJT-X recommendation to use frequencies around 1500Hz so that any harmonics are out of the transmit passband. It would also mean that the skirt of the LF side would not be cut off so much.
I’ve been labouring under the misapprehension that FT8 was “about 50Hz” wide, but it is actually a *lot* wider, and even though it is a nice, well-behaved constant-carrier mode, ALC pumping in the initial milliseconds of each transmission is still able to make you into a very bad neighbour.
No obvious sign of the 50/100Hz mains hum sidebands I see on a lot of WSPR signals, but that’s a whole other blogpost!
7 thoughts on “FT8 and splatter and the ugliness of ALC”
I have one question about the last two spectrum analyzer pictures.
The second to last picture shows the splatter (peak-hold trace) created by the ALC outside of the audio passband.
And in the last picture that ALC splatter is eliminated. But in the last picture the peak-hold trace still shows strong sidebands within the audio band.
What is source of those sidebands? Is it generated by the FT8 waveform being turned on and off without enough baseband filtering?
Hi Mikko, the raw FT8 spectrum is very wide as a result of the abrupt phase changes (at the zero crossing) and the instantaneous start/stop of the waveform. I did a more detailed analysis of the issues in my RSGB talk in 2018. ALC is not really a huge issue unless you overdrive things radically. I now always tell folks to back off the level in the WSJT-X until a 3dB drop of the slider reduces their output power by 3db, then go back up one step, make sure ALC is off and fiulters are as wide as possible and that they are using Fake-It split. Hard to make a bad signal if you do those things!
My talk is at http://www.g4dbn.uk/?p=907
The YT vid and the full slide set are on that page.
Neil, thanks for the reply.
Last question if you don’t mind.
If the Spectrum Lab has a “peak hold” mode, have you tested how the audio spectrum looks at the WSJT_X output, if you include the turn-on and turn-off transients?
Great article Neil. Perhaps this is why FT8 mode should be treated as needing AM mode power level maximum to protect the PA. Just lost an IC7300 probably due to using 40W instead of it’s advised max of 25W.
Perhaps a RADCOM article explaining this would be a good idea.
Yes a RadCom article would really help with full details on how to adjust ALC settings so you still get the power levels you require without overdriving and causing harmonics. There seems to be a minefield on ALC settings , some say no problems others that its important. The same seems to apply with power settings I thought the FT8 was a weak signal mode but some stations local to me run massive power levels and can be heard right across the bands.
Hi Rodney, “weak signal” really means weak at the receiving side, so I guess it’s fair that transmitters can run full licenced power and high gain antennas if they are chasing DX over really high-loss paths like the Pacific or Alaska or US west coast on 160 metres. The thing about ALC is that there is never a reason to use it with digital modes, you should follow the technique of dropping the power slider in your software with an @1000 Hz tone until it starts to show about 3dB down from full carrier, then boost it up a bit from there. if the power doesn’t start dropping by the time you’ve dropped the level a few dB on the slider, then you have insufficient attenuation between the sound card and the radio. I only use SDRs, so the issue doesn’t really arise, but I’ve seen setups with boat-anchor SSB radios where dropping the slider by 25dB resulted in no drop in power output, so the setup was over-driving the radio by at least a factor of 300. Setting the gain between the sound card and the radio so you get full power output with the slider at the top is obviously the ideal. In 90% of cases, when receiving stations see wide, distorted signals from loud stations, but don’t see baseband harmonics or hum sidebands, the actual problem is either poor receive or transmit local oscillator phase noise, or poor receiver front ends getting overloaded. Phase noise is a much bigger problem that most folks realise, and there are so many terrible receivers out there that can’t survive an in-band signal at even -20 dBm. Other issues are not disabling IF-derived AGC on receive, so loud signals in the IF depress the gain and weak signals disappear. If you are seeing signals from all loud stations across wide sections of the bands, suspect your local oscillator phase noise or other receive performance issues. If it is only on some, and you can hear similarly loud signals that aren’t wide, then it’s probably the wide stations using radios with rotten phase noise that are the problem. In general, ALC should be entirely irrelevant if folks would just understand the levels in their audio/modulator stages
One way to test whether it’s them is to insert coax attenuators in the feed to your receiver in 3dB steps and check that the main signal and the unwanted products fall by the same amount. If the products drop faster, then they are artefacts created in your receiver. If not, then they could still be phase noise in your local osc. That’s easy to check, just make a very clean crystal oscillator with well-bypassed supplies and only just enough power to keep oscillating, set up a receive antenna near to it so it makes the same level in your receiver as the offending station’s signal and make sure there are no unwanted products. If you see products from the xtal osc other than 50/100 Hz hum sidebands, then it’s pretty certain that you have receiver issues. Not much that you can do other than run attenuation if it’s overload, or use a phasing box to reduce their signal but leave others intact. If it’s phase noise then you have very few options, and also you would be transmitting the same amount of phase noise. There have been some truly appalling radios sold in the last 15 years or so, but at least they are better than the horrors we used to see on VHF, usually from contesters who are using older rigs. I used to be able to tell when one local group were using a certain amateur’s rig in a contest without tuning closer than 50 kHz. The shape of the phase noise it transmitted was that obvious. Hope you manage to work the world despite the challenges. I gave up on HF years ago when VDSL wiped me off the air, and then VHF when LED lights and solar panels wiped out those bands. I still get to do a bit on 136/472/topband, but then I don’t do any of the bands below 10 GHz at the moment, although I should be back on 6cm, 9cm and 13cm soon.
The key things I’d say for any FT8 operation are:
1) Turn off AGC if you can. If not, try fiddling with RF/IF gain to see if you can improve your receive dynamic range
2) Set the receiver to produce about 20 to 30dB on band noise on the WSJT-X “thermometer” (find a quiet frequency for that if you can!)
3) Turn off ALC if you can
4) Reduce the power slider control in WSJT-X in TUNE mode or using @1000 until your transmit power drops a bit. If you have some sort of audio channel gain setting, you can use that instead, but check that when you drop the slider in WSJT-X by 3dB that your TX power drops by 3dB.
Always assume that a bad signal is a receiver problem unless:
a) you can see in-band audio harmonics of their signal that have 2/3/4/5/6/7 times the correct tone spacing
b) you can see hum sidebands at 50/100 (or 60/120) Hz intervals either side, usually with decodable signals
c) other similarly-strong signals are clean in comparison