WSPR Web--:--:-- UTC·dev

About

WSPR Web 0.1.0

A mobile-first Progressive Web App for WSPR (Weak Signal Propagation Reporter) transmission. The protocol core, the waveform renderer and the scheduler run entirely on your device; frames are verified symbol-for-symbol against WSJT-X and decoded by WSJT-X's own wsprd in the development test suite. No accounts, no telemetry.

Timing: the app estimates UTC from HTTPS timing exchanges with its own server (an estimate, not NTP-grade), schedules the frame on the Web Audio clock at hh:mm:01 of an even minute, and never modulates with JavaScript timers. Receive/decode is a later phase.

Diagnostics · docs/CLOCK_SYNCHRONIZATION.md · docs/AUDIO_TX.md · docs/PWA_IOS.md

Protocol

WSPR at a glance

Information bits
50
Code
K=32, r=1/2
Channel symbols
162
Tone spacing
1.46484375Hz
Symbol length
0.6826667s
Transmission
110.592s

Type 1 message → 50-bit source encoding → K=32 rate-½ convolutional code → bit-reversal interleaver → merge with the 162-bit sync vector → continuous-phase 4-FSK at 12000/8192 baud. See docs/WSPR_PROTOCOL.md in the repository for the audit-level description.

Responsibility

Your licence, your call

Credits

References

  • WSPR protocol and reference implementation: Joe Taylor K1JT and the WSJT-X development group (WSJT-X, GPL v3).
  • Reference vectors for the test suite were generated from unmodified WSJT-X source code and cross-checked against K6HX's independent encoder.
  • “The WSPR Coding Process” by Andy Talbot G4JNT was used as an independent description of every encoding stage.
  • This application contains no WSJT-X code; it is an independent implementation of the published protocol.