PI4 · PharusIgnis4 beacon decoder

pi4d.

Reads a PI4 beacon message out of a WAV file, down to about −22 dB SNR. Linux and Windows.

$ ./pi4d beacon.wav 190500 19 0.5 721 : OZ7IGY
Measured:

A Monte-Carlo sensitivity sweep.

20 trials per level, in the standard 2500 Hz reference bandwidth.

−14 dB
100%
−19 dB
100%
−22 dB
100%
−23 dB
90%
−24 dB
20%
−25 dB
5%
Matches the −22 to −23 dB the PI4 spec targets — and confirmed on a real capture:
143030 19 0.5 721 : OZ7IGY

Under the hood

Sync, demodulate, Fano-decode, done.

A symbol-exact coherent search locates the message; each of its 146 symbols is correlated coherently across its full duration; the convolutional code is fixed with K1JT and KA9Q's own Fano decoder, linked in unmodified; base-38 decoding recovers the text.

Available binaries:

Linux versions need the libfftw3 library, install it from the package manager or type the following command: sudo apt install libfftw3-dev


Built on

PI4 is Bo Hansen's (OZ2M) protocol, built on Joe Taylor's (K1JT) JT4 / WSJT-X architecture, and decoded here with Phil Karn's (KA9Q) original Fano decoder — unmodified.