Skip to content
Gloucester County Amateur Radio Club

Gloucester County Amateur Radio Club

Skunkworks Advanced Project Team

Menu
  • Home
  • Club Activities
    • Saturday Clubhouse Satellite Opportunities
    • Upcoming ISS APRS Activities
    • Upcoming ISS Viewing Opportunities
    • GOES 19 Weather Video
    • Recent DMR Activity
    • Weekly Satellite Report
  • Clubhouse
    • Saturday Clubhouse Weather
    • The GCARC Clubhouse
    • Grounding Project
    • Networking Infrastructure
    • Work and Test Bench
    • Clubhouse Satellite Station
      • Satellite Rotator Controller
      • Satellite Station Remote Operation
    • SatNOGS Ground Station
    • Earth-Moon-Earth (EME)
    • Discovery Satellite Snooping Dish
    • GOES-19 Satellite Reception
    • Clubhouse Remote nRSP-ST Resource
    • Skunkworks GitHub Resource
    • ISS SSTV
    • NOAA Weather Fax
    • ADS-B
  • Technical Resources
    • WSPR Network Resources
      • GCARC WSPR Network — Project Description
      • GCARC WSPR Network — Technical Reference
      • GCARC WSPR Network — Band Selection Guide
      • GCARC WSPR Network — Analysis and Reporting
      • The GCARC WSPR Network — Member Q&A
    • DMR
      • What is a DMR Codeplug?
        • What Are DMR Channels?
        • What Are DMR Timeslots?
        • What is a Talkgroup in DMR?
        • What Are DMR Zones?
      • What is a DMR Hotspot?
      • Configuring DMR Hotspot for GCARC Talk Group
      • Connecting to the GCARC DMR TalkGroup with a Yaesu System Fusion Radio and a Hotspot
      • Using DM-1701 CPS Program
      • Open GD77 on Baofeng DM1701
      • Pi-based OpenGD77 Flasher: Bypassing Windows Driver Headaches
        • OpenGC77 Codeplug
    • Software-Defined Radios
      • Software Defined Radio Demystified
      • Installing an RTL-SDR on a Windows PC
      • SDR Tech Saturday Presentation January 2025
      • SDR Client Applications for Mac
      • Creating a PiAware Station to Track Airplanes
        • Installing PiAware Using the Prebuilt SD Card Image with Raspberry Pi Imager
        • Installing PiAware using Command Line Commands
    • Meshtastic
      • Getting Started with Meshtastic on 915 MHz
      • How to Join the GCARC Channel on Your Meshtastic Device Using a QR Code
      • Installing the Meshtastic CLI on a Windows PC
      • Window-Mounted 915 MHz Meshtastic Yagi Antenna Project
      • Meshtastic CLI Commands
    • Exploring Ham Radio Digital Modes: Packet Radio and WSJT-X
      • Packet Radio (AX.25) in Amateur Digital Communications
      • Exploring WSJT Digital Modes
    • BTECH UV-PRO Radio
      • Satellite Mode for the UV-PRO
    • TIDRADIO H3 Resources
      • TIDRADIO TD-H3 Transceiver: Comprehensive Briefing
      • Overview of Stock Firmware Menu System
      • Comparison of Stock TIDRADIO Firmware vs. nicFW V2 Firmware
    • Balloon Project
      • Balloon Launch – 2025-03-17
    • 3D Printed Projects
    • Tech Saturday Presentations
  • STEM Activities
    • STEM Club Weather
    • STEM Club Villanova Trip
  • Public Service
    • Winlink VHF and HF Gateways
    • APRS Weather Reporting Station
    • AREDN Development
  • The Foundation
  • Blog
  • Contact

GCARC WSPR Network — Technical Reference

WSPR PROTOCOL

Configuration, Operation & Message Format

A Technical Reference for the GCARC WSPR Network  ·  W2MMD  ·  Spring 2026

1  ·  Overview

WSPR (Weak Signal Propagation Reporter, pronounced “whisper”) is a narrowband digital radio protocol designed by Nobel Prize laureate Joe Taylor (K1JT) specifically for automated, unattended propagation beacon operation at the lowest possible power levels. The protocol was first released in 2008 and has grown into a worldwide network of thousands of continuously operating beacons and receive stations.

The core objective is simple: encode the minimum information needed to identify a transmitting station and its location, then transmit that information in a way that can be decoded reliably even when the received signal is far below the audible noise floor. This is achieved through a combination of very slow transmission speed, continuous-phase 4-tone frequency-shift keying, and a powerful forward error-correcting code.

A WSPR beacon transmits 200 milliwatts on a two-minute cycle, around the clock, with no operator intervention. Receiving stations around the world decode the signal, log the spot, and upload it automatically to public databases. The result is a real-time, global map of which propagation paths are open — updated every two minutes, 24 hours a day.

2  ·  Operating Frequencies
2.1   Dial Frequency vs. Transmit Frequency

WSPR uses USB (Upper Sideband) mode. In a conventional SSB transceiver setup, the radio is tuned to a specific “dial frequency” and WSPR audio tones are injected at approximately 1,400–1,600 Hz audio offset, placing the actual RF transmission 1,500 Hz above the dial frequency. In the TAPR HAT / Pi Zero 2W system, the Pi generates the RF signal directly — no SSB transceiver required. The configured frequency is the actual transmitted RF frequency.

The WSPR sub-band on each HF frequency is only 200 Hz wide, centered 1,500 Hz above the dial frequency. Multiple stations coexist within this 200 Hz window because each beacon picks a random transmit frequency within the window on each transmission cycle.

BandUSB Dial (MHz)TX Center (MHz)TX RangeNotes
2190m0.1360000.137500±100 HzLF — special license required
630m0.4742000.475700±100 HzMF — Part 97.303 in USA
160m1.8366001.838100±100 HzNVIS, night only
80m3.5686003.570100±100 HzRegional NVIS, night DX
60m5.2872005.288700±100 HzCheck local allocation
40m7.0386007.040100±100 HzDay + night, popular
30m ★10.13870010.140200±100 HzRECOMMENDED — most active WSPR band
20m14.09560014.097100±100 HzBest global DX range
17m18.10460018.106100±100 HzWARC — no contests
15m21.09460021.096100±100 HzSolar-dependent DX
12m24.92460024.926100±100 HzWARC — no contests
10m ✓28.12460028.126100±100 HzTechnician OK — outstanding DX when open
6m50.29300050.294500±100 HzSporadic-E / Technician OK
2m144.489000144.490500±100 HzMostly local/aircraft scatter

★ 30m note: The 30m band (TX center 10.140200 MHz) is the most active WSPR band worldwide. It is a WARC band — no contest operation, ever — ideal for a 24/7 unattended beacon. For GCARC members, the TAPR HAT dial frequency is 10.1387 MHz.

2.2   Frequency Accuracy Requirements

WSPR decoding requires the transmitter frequency to be accurate to within a few Hz. A 1 PPM error at 10 MHz equals 10 Hz of offset. Typical Pi Zero crystals are within ±1–2 PPM. The WsprryPi software includes a PPM correction parameter to compensate for individual crystal error.

3  ·  Timing and Transmission Schedule
3.1   The Two-Minute Timeslot

WSPR divides time into two-minute slots synchronized to UTC. All WSPR activity worldwide operates on the same grid: slots begin at 00:00, 00:02, 00:04 UTC, and so on throughout the day.

Within each two-minute slot:

  • T = 0:00 — Start of even UTC minute. All stations begin listening.
  • T = 0:01 — Transmissions begin exactly 1 second after the even minute.
  • T = 0:01 to 1:51 — Transmission in progress (110.6 seconds of continuous 4-FSK tones).
  • T = 1:52 to 2:00 — Transmission ends. Decoder processes the received audio.
3.2   Duty Cycle

The TAPR HAT / WsprryPi system transmits on every two-minute cycle by default. This differs from the WSJT-X software implementation which typically uses a 20% duty cycle (one transmission in every five slots). Running every cycle maximises the propagation data contributed to the network.

3.3   Clock Synchronization

Clock accuracy is critical. The decode algorithm will fail if the transmitter’s clock is off by more than about ±1 second from UTC. The Pi Zero 2W synchronizes via NTP over Wi-Fi. Internet connectivity must be maintained at all times during WSPR operation. NTP on a well-connected Pi is typically accurate to within 10–50 milliseconds.

4  ·  Modulation — Continuous Phase 4-FSK

WSPR uses 4-tone frequency-shift keying (4-FSK). The transmitter shifts between four discrete frequencies to encode data. The four tones are spaced 1.4648 Hz apart — the total occupied bandwidth of all four tones is about 6 Hz.

ParameterValueNotes
Tone spacing1.4648 Hz12000 ÷ 8192 samples per symbol
Symbol duration0.6827 secondsReciprocal of tone spacing
Total symbols162(50 + 32 − 1) × 2
Total TX duration110.6 seconds162 symbols × 0.6827 s/symbol
Total bandwidth~6 Hz4 tones × 1.4648 Hz spacing
Baud rate1.46 baudSymbols per second
Bits per symbol2 bitslog₂(4) = 2
Effective info rate~0.45 bits/sec50 info bits ÷ 110.6 sec
5  ·  Message Content
5.1   The Standard WSPR Message

Every standard WSPR transmission carries exactly three pieces of information: the transmitting station’s callsign, a 4-character Maidenhead grid square, and the transmitter output power in dBm.

WB2MNF FM29 23

WB2MNF is the callsign. FM29 is the Maidenhead grid square for Mullica Hill, NJ. 23 is 23 dBm = 200 mW (the TAPR HAT’s typical output).

5.2   The Maidenhead Grid Locator

The 4-character Maidenhead locator (e.g., FM29) identifies a rectangle approximately 2° longitude × 1° latitude — about 111 km × 111 km in the mid-latitudes.

CharactersGrid SizePrecisionExample
2 (field)20° × 10°~1,000 kmFM
4 (square)2° × 1°~111 kmFM29
6 (subsquare)5′ × 2.5′~5 kmFM29qe
5.3   Power Encoding

Power is reported in dBm in 3 dB steps ending in 0, 3, or 7. Valid values: 0, 3, 7, 10, 13, 17, 20, 23, 27, 30, 33, 37, 40, 43, 47, 50, 53, 57, 60 dBm.

dBmMilliwattsNotes
01 mWMinimum
1010 mWQRP
20100 mWTAPR HAT minimum
23200 mWTAPR HAT typical output ★
301 WQRP transceiver
375 WStandard QRP limit
50100 WTypical HF station
601,000 WMaximum
6  ·  Message Encoding — From Text to RF Symbols
Step 1: Source Compression — 50 Bits

The callsign, grid, and power are compressed into exactly 50 bits: 28 bits for the callsign, 15 bits for the grid locator, and 7 bits for the power level. The three values are packed into a single 50-bit integer.

message_50bit = (callsign_bits << 22) | (grid_bits << 7) | power_bits
Step 2: Convolutional Forward Error Correction

The 50-bit message is fed into a rate-1/2 convolutional encoder with constraint length K=32. For every 1 input bit, 2 output bits are produced. Input: 50 info bits + 31 tail bits = 81 bits. Output: 162 coded bits. The long constraint length (K=32) provides very strong error correction, allowing reliable decoding at SNRs as low as −28 dB.

Step 3: Interleaving

The 162 coded bits are reordered using bit-reversed addressing to spread any burst of interference across non-contiguous bit positions. This is a fixed, deterministic permutation — the same lookup table used by every WSPR encoder and decoder in the world.

Step 4: Synchronization Vector

A fixed 162-element pseudo-random sync vector is combined with the data bits. Each transmitted symbol is 2 bits: the sync bit is the most significant bit, the data bit is the least significant.

symbol[i] = 2 × sync[i] + data[i] → values 0, 1, 2, or 3
Step 5: Transmission

The 162 symbols are transmitted as 4-FSK tones. Symbol 0 = base tone, 1 = +1.4648 Hz, 2 = +2.9297 Hz, 3 = +4.3945 Hz. Each tone lasts 0.6827 seconds. Transitions between tones are continuous-phase. The transmitter begins exactly 1 second after the even UTC minute.

7  ·  The Receiver and Decoder

A WSPR signal sounds like a nearly continuous tone with a very slight, slow warble — or at typical SNRs, nothing audible at all. At the end of each 2-minute slot the decoder performs an FFT analysis of the received audio, correlates against the known sync pattern to find candidate signals, extracts the 162 symbol values, reverses the interleaving, and runs the convolutional decoder to recover the 50 information bits.

The decoder reports SNR in dB referenced to a 2,500 Hz noise bandwidth. Typical values range from about +10 dB (strong local signal) down to −28 dB (the theoretical decoding limit). The decoder also reports frequency drift in Hz/minute — a well-calibrated, thermally stable transmitter should show drift close to zero. Values larger than ±2–3 Hz/min will cause missed decodes at marginal SNRs.

8  ·  Spot Data — What Gets Logged

Every successfully decoded signal produces a “spot” record uploaded to wspr.live and wsprnet.org:

FieldExampleDescription
timestamp2026-03-21 14:04:00UTC time of slot start
tx_signWB2MNFTransmitting callsign
tx_locFM29Transmitting grid square
power23Reported TX power in dBm
rx_signK2ABCReceiving station callsign
rx_locEL96Receiving station grid square
distance1,842 kmPath distance (computed)
snr−18Received SNR in dB re 2500 Hz BW
freq10.140152Actual received frequency in MHz
drift0Frequency drift in Hz/min

The wspr.live ClickHouse database stores all of these fields and is queryable via a free public SQL API at wspr.live. The wspr.rocks website provides a browser-based SQL query interface on the same database.

9  ·  WsprryPi Configuration Reference

After installation, configuration is done through the WsprryPi web interface at http://[hostname].local. Key parameters:

ParameterTypical ValueNotes
callsignWB2MNFYour FCC callsign — must be exact
gridFM294-character Maidenhead locator for your QTH
power23dBm — 23 dBm = 200 mW for TAPR HAT
frequency10.1387MHz — 30m for TAPR HAT / Pi system
ppm0Crystal frequency correction in PPM
ntp_serverpool.ntp.orgNTP time server — leave default

To verify operation, go to wspr.rocks within 10–15 minutes of your first transmission and run:

SELECT * FROM wspr.rx WHERE tx_sign=’WB2MNF’ ORDER BY time DESC LIMIT 10
10  ·  Quick Reference Summary
ParameterValue
Protocol typeContinuous-phase 4-FSK
Information contentCallsign + 4-char grid + power (dBm)
Source bits50 bits (28 callsign + 15 grid + 7 power)
FECRate-1/2 convolutional, K=32
Channel symbols162 symbols of 2 bits each
Symbol duration0.6827 seconds (8192/12000)
Tone spacing1.4648 Hz (12000/8192)
Occupied bandwidth~6 Hz
Transmission duration110.6 seconds
Timeslot period2 minutes (120 seconds)
TX start time1 second after even UTC minute
Min decodable SNR−28 dB (in 2,500 Hz BW)
30m TX center freq10.140200 MHz (dial: 10.1387 MHz)
TAPR HAT output100–200 mW (23 dBm nominal)
Spot databasewspr.live (ClickHouse SQL, 4B+ records)
Live mapwspr.rocks
Software (Pi)WsprryPi v2.x — github.com/lbussy/WsprryPi

Additional Resources

  • skunkworks.w2mmd.org — Full project documentation under Technical Resources
  • wspr.rocks — Real-time WSPR spot map and SQL query interface
  • wspr.live — Full ClickHouse SQL database, 4 billion+ spot records
  • wsprnet.org — Original WSPR spot database
  • tapr.org/product/wspr — TAPR Universal WSPR HAT kit ($32)
  • adafruit.com/product/6008 — Raspberry Pi Zero 2W with headers ($15)
  • github.com/lbussy/WsprryPi — WsprryPi software
  • raspberrypi.com/software — Raspberry Pi Imager

W2MMD  ·  Gloucester County Amateur Radio Club  ·  w2mmd.org  ·  Spring 2026

Archives

  • July 2024
  • November 2023
  • April 2023
  • March 2023
  • June 2022
  • July 2021
  • April 2021
  • March 2021
  • September 2020
  • September 2019
  • August 2019
  • July 2019
  • June 2019
  • December 2018
  • November 2018
  • October 2018
  • September 2018
  • August 2018
  • July 2018
  • June 2018
  • May 2018
  • April 2018

Categories

  • Balloon
  • Clubhouse Infrastructure
  • Digital Position Tracking
  • Raspberry Pi
  • Satellite Images
  • Satellite Operations
  • Satellite Telemetry
  • SDR
  • Uncategorized

Meta

  • Log in
  • Entries feed
  • Comments feed
  • WordPress.org
  • Home
  • Club Activities
    • Saturday Clubhouse Satellite Opportunities
    • Upcoming ISS APRS Activities
    • Upcoming ISS Viewing Opportunities
    • GOES 19 Weather Video
    • Recent DMR Activity
    • Weekly Satellite Report
  • Clubhouse
    • Saturday Clubhouse Weather
    • The GCARC Clubhouse
    • Grounding Project
    • Networking Infrastructure
    • Work and Test Bench
    • Clubhouse Satellite Station
      • Satellite Rotator Controller
      • Satellite Station Remote Operation
    • SatNOGS Ground Station
    • Earth-Moon-Earth (EME)
    • Discovery Satellite Snooping Dish
    • GOES-19 Satellite Reception
    • Clubhouse Remote nRSP-ST Resource
    • Skunkworks GitHub Resource
    • ISS SSTV
    • NOAA Weather Fax
    • ADS-B
  • Technical Resources
    • WSPR Network Resources
      • GCARC WSPR Network — Project Description
      • GCARC WSPR Network — Technical Reference
      • GCARC WSPR Network — Band Selection Guide
      • GCARC WSPR Network — Analysis and Reporting
      • The GCARC WSPR Network — Member Q&A
    • DMR
      • What is a DMR Codeplug?
        • What Are DMR Channels?
        • What Are DMR Timeslots?
        • What is a Talkgroup in DMR?
        • What Are DMR Zones?
      • What is a DMR Hotspot?
      • Configuring DMR Hotspot for GCARC Talk Group
      • Connecting to the GCARC DMR TalkGroup with a Yaesu System Fusion Radio and a Hotspot
      • Using DM-1701 CPS Program
      • Open GD77 on Baofeng DM1701
      • Pi-based OpenGD77 Flasher: Bypassing Windows Driver Headaches
        • OpenGC77 Codeplug
    • Software-Defined Radios
      • Software Defined Radio Demystified
      • Installing an RTL-SDR on a Windows PC
      • SDR Tech Saturday Presentation January 2025
      • SDR Client Applications for Mac
      • Creating a PiAware Station to Track Airplanes
        • Installing PiAware Using the Prebuilt SD Card Image with Raspberry Pi Imager
        • Installing PiAware using Command Line Commands
    • Meshtastic
      • Getting Started with Meshtastic on 915 MHz
      • How to Join the GCARC Channel on Your Meshtastic Device Using a QR Code
      • Installing the Meshtastic CLI on a Windows PC
      • Window-Mounted 915 MHz Meshtastic Yagi Antenna Project
      • Meshtastic CLI Commands
    • Exploring Ham Radio Digital Modes: Packet Radio and WSJT-X
      • Packet Radio (AX.25) in Amateur Digital Communications
      • Exploring WSJT Digital Modes
    • BTECH UV-PRO Radio
      • Satellite Mode for the UV-PRO
    • TIDRADIO H3 Resources
      • TIDRADIO TD-H3 Transceiver: Comprehensive Briefing
      • Overview of Stock Firmware Menu System
      • Comparison of Stock TIDRADIO Firmware vs. nicFW V2 Firmware
    • Balloon Project
      • Balloon Launch – 2025-03-17
    • 3D Printed Projects
    • Tech Saturday Presentations
  • STEM Activities
    • STEM Club Weather
    • STEM Club Villanova Trip
  • Public Service
    • Winlink VHF and HF Gateways
    • APRS Weather Reporting Station
    • AREDN Development
  • The Foundation
  • Blog
  • Contact

Gloucester County Amateur Radio Club 2026 . Powered by WordPress