TL;DR — Raspberry Pi WSPR Beacon in an Afternoon
- Core idea: Use your Raspberry Pi GPIO pin as a low-power WSPR transmitter for HF propagation testing.
- Why it matters: You get real, logged reports from stations worldwide that show how your antenna actually performs.
- Key benefit: No dedicated radio hardware needed, just a Pi, low-pass filter, and a band-specific antenna.
- Who it's for: Licensed hams who enjoy tinkering, antenna experiments, and seeing their call sign pop up on WSPRnet.
WSPR turns your station into a tiny digital beacon that quietly reports how well your signal gets out. With a Raspberry Pi, a low-pass filter, and a resonant antenna, you can build a low-power WSPR transmitter that runs for days and shows real-world propagation on a live map.
WSPR (Weak Signal Propagation Reporter) is a digital mode created by Joe Taylor, K1JT, for measuring propagation paths using very low power. A single WSPR transmission carries your call sign, grid locator, and power level, and takes about two minutes to send. On the receive side, stations all over the world decode and upload your spots to WSPRnet.
The clever part is that a Raspberry Pi can generate RF directly on one of its GPIO pins using software such as WsprryPi. With a proper low-pass filter and a safe antenna, you get a tiny standalone beacon you can park on a band and use to compare antennas, test band openings, or just see how far a few milliwatts will go.
What is WSPR and why use a Raspberry Pi?
WSPR is designed to be decoded at signal levels far below the noise. That makes it perfect for antenna and propagation testing. Instead of calling CQ, you let the Pi send a beacon every few minutes while you check the spots map at WSPRnet.org.
A Raspberry Pi is ideal for this job: it runs 24/7, sips power, has built-in networking for NTP time sync, and can generate stable RF on GPIO4 (pin 7) with the right software. You still need a low-pass filter and a band-appropriate antenna, but you don’t need a full HF rig dedicated to beacon duty.
Typical Raspberry Pi WSPR Beacon Specs
| Metric | Value | Why It Matters |
|---|---|---|
| RF output power | About 5–10 mW into 50 Ω | Enough for thousands of miles of coverage while staying very low power. |
| Spot count in 24 hours | Dozens to hundreds of reports | Gives a dense picture of band conditions and antenna performance over time. |
Step-by-step: turn your Raspberry Pi into a WSPR beacon
Below is the basic flow I use when setting up a Pi based WSPR transmitter. I am assuming you already have Raspberry Pi OS installed, the Pi is on your network (SSH or local screen), and you have a valid amateur radio license for the band you plan to use. If you are brand new to radio, take a look at some material in the Getting Started section first.
-
Wire GPIO4 to an RF connector
The WsprryPi software uses GPIO4 as the RF output.- On the 40 pin header, GPIO4 is physical pin 7.
- Use any handy ground pin. I like pin 9 because it sits right next to pin 7.
- Mount an SMA bulkhead on the Pi case (or a small project box) so you can attach a coax jumper to your filter and antenna.
-
Update the Pi and install git
Open a terminal or SSH session and bring the system up to date:
Then install git so you can pull the WsprryPi source:sudo apt-get update sudo apt-get upgrade -ysudo apt-get install -y git -
Download the WsprryPi source from GitHub
Clone the repository that contains the WSPR beacon code:
After this, you should be sitting in thecd ~ git clone https://github.com/sjames/WsprryPi.git cd WsprryPiWsprryPidirectory with a Makefile and source files. -
Build the WsprryPi binary
From inside theWsprryPifolder, run:
On most recent Raspberry Pi OS images this completes cleanly and leaves you with amakewsprbinary in the directory.
If you do hit a compile error, read the exact message, then check the WsprryPi GitHub issues page. The maintainer usually notes any quick one line fixes needed for newer compilers. -
Install the binary system wide
Oncemakefinishes without errors, install it:
This drops thesudo make installwsprcommand into a standard location such as/usr/local/binso you can call it from anywhere.
You can confirm the install with:
If you see usage text instead of a command not found error, the install worked.wspr --help -
Hook up the low pass filter and antenna
The Pi generates a square wave, which is full of harmonics. That is why a low pass filter is not optional.- Connect GPIO4 and ground from your SMA (or header breakout) into a low pass filter built for your chosen band.
- From the output of the filter, run coax to a 50 ohm antenna cut for that band (for example a 20 m dipole or vertical).
- Keep coax runs short at first. Long runs and lossy feedline will make a few milliwatts disappear fast.
-
Make sure time sync and callsign info are ready
WSPR time slots are very strict. Your Pi needs correct time.- Make sure the Pi has internet access so NTP can sync the clock.
- Have your call sign and 4 or 6 digit grid locator handy (for example, EM73 or EM73xx).
- Decide which band you want to start on. WsprryPi uses the band name as a number, such as
20mor10m.
-
Run your first WSPR transmission
A typical test command looks like this (all on one line):
Example with real values:sudo wspr <CALLSIGN> <GRID> 10m
That will send a small number of WSPR transmissions on 10 m and then stop. It is a good smoke test to confirm that:sudo wspr N0ABC EM73 10m- The command runs without errors.
- Your low pass filter and antenna are connected correctly.
- You see a carrier on a nearby receiver or SDR when the slot starts.
-
Set up a continuous beacon on multiple bands
Once the one off test works, you can let the Pi beacon until you tell it to stop. WsprryPi lets you specify several bands in one command. For example:
Where:sudo wspr -r N0ABC EM73 40m 20m 10m-rtells it to repeat transmissions instead of stopping after a few cycles.N0ABCis your call sign.EM73is your grid locator.40m 20m 10mare the bands you want to cycle through.
-
Check your spots on WSPRnet
After at least a few transmissions, go to WSPRnet.org and:- Choose the band you used.
- Set the mode to WSPR.
- Enter your call sign in the callsign field.
- Pick the time window you want to look at, such as the last 6 or 24 hours.
How the Raspberry Pi approach compares to a “real” transmitter
You can run WSPR from a full HF radio and a PC with WSJT-X, and many operators do exactly that. The Pi beacon is a different tool. It’s closer to a small, always-on test instrument you can dedicate to antenna experiments while you keep your main rig free for contacts.
- Pi beacon is ultra low power and cheap to leave running 24/7.
- Full HF rig gives cleaner RF and more power, but ties up a radio and draws more current.
- Standalone Pi setup is great for remote antenna sites or testing different bands over long periods.
Checking your coverage on WSPRnet
Once your beacon is on the air, let it run for at least a few hours. A full 24-hour window is even better, since you’ll see how propagation changes between day and night on your chosen bands.
To see who heard you, go to WSPRnet.org and use the database view: select the band you’re using, set the mode to WSPR, enter your call sign, and choose a time range. Click update and you’ll get a list and a map of receiving stations reporting your signal. It’s a very visual way to see what that new dipole or vertical is actually doing compared to whatever you used before.
Practical tips and safety notes
Even though the Pi beacon runs at just a few milliwatts, it’s still RF, and you’re still responsible for operating legally and cleanly. Treat this like any other transmitter: follow the band plan, identify correctly, and don’t spray harmonics all over the spectrum.
- Always use a proper low-pass filter between GPIO4 and your antenna to knock down harmonics.
- Double-check your callsign, grid locator, power level, and band choices before letting it run unattended.
- Keep the Pi, cabling, and any filters away from metal cases and other gear that might detune your antenna.
Is a Raspberry Pi WSPR beacon right for your station?
If you like tinkering and you’re curious how far your antennas really reach, a Pi-based WSPR beacon is hard to beat. It’s cheap, quiet, and does one job very well: showing you real-world propagation from your station with almost no effort once it’s set up.
- Use it to compare antennas, feedline runs, and locations over days and weeks.
- Let it run in the background while you focus on other parts of the hobby.
- Combine your beacon data with tools like SDR receivers or SDR projects for deeper analysis.
Ready to build your WSPR beacon? Grab a Raspberry Pi using our affiliate link: View Raspberry Pi deals on eBay . Every purchase helps support more ham radio projects like this.