The TAPR WSPR Board for Dummies
The TAPR WSPR transmitter boards — the original “WSPR Without Tears” (WWoT) and the newer “Versatile WSPR” (VW) — are add-on boards that plug onto a Raspberry Pi and turn it into a complete WSPR beacon. This article explains what’s actually happening inside, from GPIO pin to antenna, in plain language.
What Is WSPR and Why Should You Care?
WSPR (pronounced “whisper”) stands for Weak Signal Propagation Reporter. It’s a digital mode created by Joe Taylor, K1JT, that works like a ham radio beacon. Your transmitter sends a short, precisely encoded message containing your callsign, grid square, and transmit power. WSPR receivers around the world pick up these signals and log them to a central database at wsprnet.org.
The magic of WSPR is that it works at absurdly low power levels. It’s routine to transmit 100–200 milliwatts from New Jersey and be received in Australia or Europe. You put your beacon on the air, then sit back and watch from the internet as your signal gets picked up across the globe. It’s a fascinating way to study propagation — how time of day, seasons, and solar conditions affect where your signal reaches.
The Big Picture
The TAPR board solves two problems with using a bare Raspberry Pi as a WSPR transmitter. First, the Pi’s raw output is only about 10 milliwatts — not much. Second, that raw output is a square wave loaded with harmonics that would splatter energy across multiple bands. The board amplifies the signal and filters it clean.
Here’s the complete signal chain at a glance:
Let’s walk through each stage.
Stage 1: The Pi Creates the Signal
This is the clever part. The Raspberry Pi has a programmable clock output on GPIO 4 (physical header pin 7). Software called WsprryPi reprograms the Pi’s internal PLL (phase-locked loop) clock synthesizer to output a signal at the desired HF frequency — say 10.1387 MHz for the 30-meter band.
WSPR messages are encoded using FSK — frequency-shift keying. The protocol uses four tones spaced about 1.46 Hz apart. The software achieves this by making tiny adjustments to the clock synthesizer’s frequency divider every symbol period, nudging the output frequency by just a couple of hertz at a time. The Pi also syncs to internet time servers (NTP), because WSPR receivers need to know exactly when to start listening — timing precision matters.
What comes out of pin 7 is a 3.3-volt square wave at RF frequency, already modulated with your WSPR message. No external oscillator, no sound card, no mixer — just clever software manipulation of the Pi’s own clock hardware. That signal carries about 10 milliwatts of power.
Stage 2: The Amplifier Boosts It
Ten milliwatts isn’t much to work with. The TAPR board uses a BS170 N-channel MOSFET transistor to boost the signal. The Pi’s square wave drives the transistor’s gate, switching current through a drain inductor connected to the 5-volt supply. A small potentiometer on the board lets you set the bias current — the VW version specifies about 60 milliamps.
This stage brings the output up to roughly 100–200 milliwatts (20–23 dBm), depending on which version of the board you have. The signal is still a square wave at this point — just a bigger one. And that’s a problem, because square waves are loaded with harmonic energy. Which brings us to the most important stage on the board.
A Quick Detour: Why Square Waves Are a Problem
This is the key concept that makes the rest of the board make sense.
A sine wave is the simplest possible oscillation. It contains energy at exactly one frequency and nothing else. It is the fundamental building block of all waveforms.
A square wave, by contrast, is built from a stack of sine waves added together. A theorem from the mathematician Fourier tells us that a perfect square wave at frequency f is actually the sum of sine waves at f, 3f, 5f, 7f, and so on — all the odd harmonics — with each one smaller than the last.
So a 10 MHz square wave doesn’t just contain energy at 10 MHz. It’s simultaneously transmitting at 30 MHz, 50 MHz, 70 MHz, and on up. The 3rd harmonic of a 40-meter signal lands right in the 15-meter band. The 3rd harmonic of 30 meters lands near 10 meters. Without filtering, you’d be splattering signals across the HF spectrum — that’s illegal, inconsiderate, and exactly what the low-pass filter is there to prevent.
Stage 3: The Filter Cleans It Up
The 7-pole low-pass filter is the heart of the TAPR board. It’s built from three inductors and four capacitors arranged in a classic LC ladder network. The component values are chosen so that the filter’s cutoff frequency sits just above the operating band.
Here’s what it does: signals at the fundamental frequency pass through with very little loss — the filter is essentially transparent to them. But as frequency increases, the inductors (whose impedance rises with frequency) increasingly resist the signal, while the capacitors (which become better conductors at higher frequencies) shunt that energy to ground. By the 3rd harmonic, the signal is reduced by at least 43 dB — that’s a reduction of more than 99.99%.
Since the fundamental frequency component of a square wave is already a perfect sine wave, removing the harmonics doesn’t create a sine wave out of nothing — it reveals the one that was always there as the dominant component. The filter is subtractive, like a sculptor removing stone to reveal the shape inside.
The Versatile WSPR (VW) version of the board ships without the filter components installed. You solder in the specific capacitor and inductor values for your chosen band, which lets one board design cover everything from 160 meters through 10 meters.
One More Thing: How Does the Signal Become AC?
There’s a subtle detail worth understanding. The Pi’s GPIO pin swings between 0 volts and +3.3 volts — it never goes negative. But an RF signal on an antenna needs to swing symmetrically above and below zero. How does that transition happen?
The capacitors in the signal path make this happen automatically. Here’s the mechanism: during the high portion of the square wave (3.3V), the first coupling capacitor in the circuit charges up. During the low portion (0V), that capacitor discharges back through the circuit. From the perspective of everything downstream, that discharge current is flowing in the opposite direction — and the downstream side sees it as a negative voltage.
In steady state, the capacitor sits charged to the average DC level of the signal (about 1.65V). The output side of the capacitor then swings equally above and below zero: roughly +1.65V during the high periods and −1.65V during the low periods. The total swing is still 3.3V peak-to-peak, but it’s now centered on zero.
The Output
After all of this, what arrives at the BNC connector is a clean sine wave at the desired WSPR frequency, swinging symmetrically positive and negative, carrying 100–200 milliwatts of power. The board also includes a simple diode-and-capacitor RF detector that provides a DC voltage at a test point so you can confirm the transmitter is working without needing a scope or power meter. An LED lights up during transmit as a visual sanity check.
Connect an antenna, and the signal goes out into the world. Receivers across the globe decode your callsign, log it to wsprnet.org, and you can watch from your browser as your 200 milliwatts reaches places thousands of miles away.
Summary
The TAPR WSPR boards are an elegant solution to a fun problem. The Raspberry Pi does something remarkable — it generates a fully modulated WSPR signal using nothing but software manipulation of its clock hardware. The TAPR board then takes that raw signal and does the two things needed to make it legal and useful: it amplifies it from 10 mW to 100–200 mW, and it filters out the harmonic energy that’s inherent in the Pi’s square-wave output, delivering a clean sine wave to your antenna.
The whole thing fits in your hand, costs well under $100, runs unattended, and needs nothing more than a Pi, a power supply, an internet connection, and a wire antenna. Not bad for a propagation laboratory.
