WSPR and Vacuum Tubes


WSPR (Weak Signal Propagation Reporter) has become an important tool for exploring radio wave propagation, as well as testing radio equipment, antennas, and so on. Standard equipment for WSPR transmission includes either a simple continuous-wave transmitter with a frequency synthesizer, or an SSB transmitter connected to a computer with the WSJT-X software.

This page, however, is mainly about my experiments with non-standard WSPR equipment.

WSPR on a straight key(s) one-tube CW transmitter

The challenge

Can you send WSPR without a computer, using a single vacuum tube? Given that the protocol requires sending a random-looking sequence of symbols at a relatively high baud rate (about 1.465 symbols per second), using 4-FSK with just 1.465 Hz tone separation, it seems like a poor candidate for sending using a straight key.

Transmitter circuit

I started with a single-tube 40m transmitter I designed a few years ago, published in Sprat 179. It uses a DL73/CV2299 miniature VHF tube, and gives an output of about 300 mW at an input voltage of 90V. The 40m WSPR frequency band is at 7.0400 to 7.0402 MHz, which is very convenient since 7.040 MHz crystals are readily available.

Transmitter circuit

There is a picture of my prototype. I do not currently have enough patience or mechanical skills to produce a more visually appealing version.

Frequency shift circuit

For producing frequency shifts of about 1.5, 3, and 4.5 Hz, we need to adjust the capacitance between the crystal and ground by a suitable (very small) amount. I "cheated" a bit, in the sense of using a semiconductor in a vacuum tube transmitter, by using a reverse-biased 1N4003 diode as a varactor. This allows good isolation of the voltage source from the oscillator. I use a 9V battery with 8kohm in series for reverse bias. Key 1 shorts this to ground through 150kohm, while key 2 shorts it through 75kohm. This will have to be adjusted depending on the crystal, voltage, etc. I used a potentiometer in series with the battery, adjusting it to make sure that the shift between no key down and both keys down is close to 4.5 Hz. To send symbol 0 from the WSPR coding alphabet, both keys are pressed simultaneously, pressing key 2 only gives symbol 1, key 1 only gives symbol 2, and both keys up give symbol 3. If one wants to use a pure vacuum tube circuit, one could for instance let the keys short out a large capacitor in series with smaller ones. In this case, care must be taken to avoid hand capacitance.

The human factor

WSPR requires starting transmission at the start of an even minute, give or take one second. In addition, the 162 symbols must be transmitted during 110.6 seconds, with an even interval of 683 ms per symbol. In the transmitter, a symbol is represented as a combination of two binary bits. I extended my wspr-tools software to encode a WSPR message and display on screen when each of the two keys should be pressed. Initially I expected having to train for hours to achieve this manually, because I missed a lot of symbols and felt like I had failed completely. But to my surprise, the WSPR protocol is error-tolerant enough to consistently decode my hand-keyed message even at very low signal-to-noise ratios. I tried the transmitter with machine keying using a Raspberry Pi Zero, and the only difference is that my own time offset is 0.4 seconds higher than the machine -- an interesting way to measure my own mean reaction time!


After ensuring that my keying was good enough to be decoded, I connected my doublet antenna in the attic and sent out another message. To my surprise, I saw on WSPRnet that this very first attempt was decoded by IU1QQM, 1783 km away! After a few more attempts, I have have now been spotted by 12 different stations from all around Europe.

WSPR reception using a one-tube regenerative receiver

How simple can you make equipment for WSPR reception? Do you need a temperature-compensated crystal frequency reference? As my experiments a few years ago demonstrated, you can even use a dual-triode regenerative receiver with the antenna directly coupled to the main tuned circuit. The frequency stabilitiy is getting close to the limit of what WSPR can tolerate, but as you can see even weak signals can be successfully decoded.

Of course, most of the interesting work is performed in the WSJT-X software. Actually decoding weak narrow-band signals using vintage technology is a project for another day. Given the high constraint length non-systematic code, WSPR is probably not practical to decode without a computer at all.


If you are interested in experimenting with digital modes, feel free to use my software for sequential decoding of convolutional codes of the type used in WSPR.

Home |About me |Chinese |Research |Software |Electronics |Radio