PACTOR
shrike · betaMail sent and received over PACTOR-3
Winlink mail sent and received through WS8EOC over hfmodem’s PACTOR-3. Four messages also received through KB5LZK over PACTOR-1, with a normal session close.
W9SSJ / hfmodem
PACTOR-3 and VARA mail, VarAC chat and file transfers, and HF monitoring. Listen to recorded contacts and inspect the packets, or connect a radio and try the console.
Try WinlinkModes
PACTOR-1/2/3 and VARA are beta. ARDOP, Lanner’s RTTY/SITOR-B/NAVTEX modes, voice and CW are alpha. PACTOR-4 and all other modes are experimental. PACTOR-4 protocol and PRNG.
Carrier placement, timing and mode parameters
PACTOR-1, PACTOR-2 and PACTOR-3. Partial experimental PACTOR-4; on-air PACTOR-4 mail transfer is unproven.
02 / kestrel · betaWinlink mail, VarAC-compatible chat and passive reception at 500, 2300 and 2750 Hz.
03 / besra · alphaWinlink mail and passive reception.
04 / sabir · experimentalOFDM and narrow FSK. The protocol is still changing.
05 / brubru · experimentalAX.25 packet traffic with KISS, Tracker and AGWPE hosts.
06 / bateleur · experimentalMIL-STD and STANAG data modes, ALE scanning and calls, and HF selcall.
07 / lanner · alphaPassive RTTY, SITOR-B reception and NAVTEX bulletins.
08 / macagua + merlin · alphaSpeech recognition, reply drafts, synthesized voice and Morse contacts. The operator approves each transmitted over.
Results
Mail transfers, a BBS download and remotely received beacons. Explore the recordings and evidence.
Mail sent and received over PACTOR-3
Winlink mail sent and received through WS8EOC over hfmodem’s PACTOR-3. Four messages also received through KB5LZK over PACTOR-1, with a normal session close.
Mail delivery and a VarAC BBS download
Winlink mail received through N5TW and delivered through NS0A. A complete bulletin downloaded from KQ4QWH over BW500, with receive frames up to L11.
Mail sent and received
hfmodem received messages through WW2MI and W6IDS. An outbound message through WW2MI reached its destination. Codec checks against ardopcf cover all 59 frame types in both directions.
Beacon decoded at remote receivers
The hfmodem decoder recovered 40 m beacons from recordings at public receivers 103 and 302 miles away. Two transmitted gears decoded at both receivers.
Recorded evidence
PACTOR-3 mail at SL6, VARA mail at L9, a VarAC BBS download, and ARDOP mail transfers. Each recording states what was received, what was confirmed, and what the replay cannot establish.
Winlink mail
Send and receive email through a Winlink radio gateway. Use Python 3.13 on macOS or Linux. Connect the FTDX10's USB CAT and audio, or the FT-891's CAT connection and an external audio interface.
python3.13 -m venv ~/hfmodem-env
. ~/hfmodem-env/bin/activate
python3 -m pip install --pre hfmodem
hfmodem winlinkThe first run guides radio, callsign, licence and audio setup, saving configuration only. Grid is optional; press Enter to skip it. Choose PACTOR-3 or VARA HF and a band your antenna is ready for, then a gateway channel. Choose to receive mail or send a text message; sending asks for a recipient, subject and message. Review the final Start this mail call? prompt. Receiving mail is the default; the hidden Winlink password is kept for this session only.
Guided calls set and check Yaesu DATA USB, the data audio route, RTS PTT and saved RF power (initially 20 W). Read the startup summary; the radio settings persist. Set CAT speed to 38400 baud and watch ALC during transmission while adjusting the provisional audio drive.
In each new Terminal, run . ~/hfmodem-env/bin/activate first. Then use hfmodem winlink pactor or hfmodem winlink vara. Add --refresh for a new gateway list. With setup saved, --dry-run previews without opening radio hardware. Ctrl-C stops the call; read its transfer and teardown results. Read saved messages offline with hfmodem winlink --inbox.
VARA chat
Use hfmodem's Kestrel modem to hear CQs, call a station and exchange text. Chat is included in 0.4.0.
python3.13 -m venv ~/hfmodem-env
. ~/hfmodem-env/bin/activate
python3 -m pip install -e packages/hfhost -e packages/creance -e packages/hfmodem
hfmodem console setup --transmit
hfmodem console vara chat --band 20 --bw 500 --dry-runSetup saves your radio, callsign, licence and audio settings without transmitting. Reuse your saved Winlink setup if you have one. Choose a band your licence and antenna support.
Review the plan, then start the session:
hfmodem console vara chat --band 20 --bw 500This opens the radio and answers incoming calls. Check the calling frequency and watch ALC during transmission.
/heard, then /answer N for a listed CQ. Or type /cq to call CQ on a checked slot./bye to return to monitoring or /quit to exit.Monitor & call
Start a passive decoder at the current dial, or select a frequency or saved peer. You can retune the radio while monitoring.
hfmodem console pactor monitor
hfmodem console rtty monitor --freq 14080
hfmodem console stanag4285 monitor --mode 1200L
hfmodem console monitor --list-modesFrequencies are USB dial kHz in these examples. Set the radio's sideband and receive filter before starting; a wide 4 kHz voice passband is supported.