n2OSw

Every error is a measurement.

HFEdge turns an ordinary HF station into an ionospheric instrument. The H-Mode waveform sends a character stream the receiver can already predict; whatever the path changes on the way — a substitution, an erasure, a burst of uncertainty — gets scored character by character, and kept.

WAVEFORM
H-MODE v2 · OTFS
CHANNEL
≤ ~2.8 kHz SSB
PAYLOAD FEC
NONE — BY DESIGN

Errors are not failure.
They are the observation.

Sixty kilometres overhead, the ionosphere decides whether your next contact arrives, arrives garbled, or never arrives at all. It changes minute by minute, and almost nobody is measuring how.

A DPS-4D-class ionosonde runs $250k–500k installed, and there are tens of them on Earth. GNSS receivers integrate along a satellite line of sight at L-band; they never see your HF path. WSPR and PSK Reporter collapse a two-minute transmission into one SNR figure. HFEdge takes the opposite approach: rather than engineering the channel’s imprint out of the signal, it keeps that imprint — at per-character resolution, on equipment amateurs already own. One station records a trace. A network sees the sky move.

IONOSONDE SITE$250–500k
GNSS SCINTILLATION RX$10–20k+
HFEDGE NODE$0

Designed around delay & Doppler.

Most digital modes assume a stable channel and fight the noise. Operators know better. The ionosphere smears a signal across milliseconds of multipath, drags its pitch as the layers move, and fades one frequency while its neighbour holds — often inside the same second. H-Mode v3 organises data along the two axes the ionosphere actually uses: how late the echo arrives, and how fast the path is changing.

01

Know the signal

A shared PCG64 seed lets any receiver regenerate the expected Base36 stream in full. After a short warmup, pilot overhead falls to zero — the payload itself is the reference.

02

Observe the path

That known stream drives continuous channel estimation, residual Doppler tracking, and iterative soft equalisation. Classical waveforms make you choose between low overhead and channel observability; this keeps both.

03

Keep the evidence

There is no payload FEC, and that is deliberate. Every decoded character carries a confidence value, six log-likelihood ratios, and per-resource channel state. Correction would erase the data.

OTFS

PRIMARY
M=8 × N=64 · 72 ms · ≈736 cps capacity

Places data on a delay-Doppler grid in the same two dimensions the ionosphere acts in — dispersion becomes a few clean, measurable taps.

AFDM

ALTERNATE
DAFT · runtime chirp c₁/c₂

Chirp-parameterized alternative for strongly doubly selective paths.

OFDM

CLASSIC
FFT N=128 · CP=16 · 8 kHz

Bit-exact H-MODE-1.0 compatibility; ≈166.7 characters per second by design.

HYBRID

LAYERED
OTFS QPSK core + 16-QAM overlay

Bulletproof core survives deep fades; capacity layer engages when the channel allows.

STATUS Throughput figures of ≈300–500 cps (≈8–12× Olivia-class) are specification design targets validated in simulation and loopback, including Watterson-channel tests. On-air curves will be published as network data accumulates.

Choose the depth. Keep the method.

Four deterministic profiles scale a single measurement method from a ten-second band check to a night-long channel study. All use 64-character frames with ==Fxxxx== markers; frame F0000 identifies the station and is excluded from scoring.

01

PING

720CHARACTERS

Link check / band probeSeconds on the air. The right first observation on any path.

02

SHORT

3,200CHARACTERS

Path characterizationSound error statistics on modest airtime; reveals fades and burst structure.

03

STANDARD

64,000CHARACTERS

Disturbance morphologyResolves TID-period structure; the campaign workhorse.

04

DEEP

1,000,000CHARACTERS

Research statisticsLong-duration collection; converges the full 36×36 confusion matrix.

Disturbance becomes detail.

The transmit stream is shared over the internet, so the pattern of what actually arrives is the disturbance’s signature.

01

Traveling ionospheric disturbances

RHYTHMIC FADING

Plasma waves set off by geomagnetic storms, large thunderstorm systems, sometimes eruptions. Per-character scoring registers the rhythm as a wave passes; spaced receivers can work out its speed and bearing.

02

Sporadic E

SELECTIVE PATHS

Dense, short-lived ionisation near 100 km that can throw a signal a continent away or wall off a path outright. Interleaved good and bad segments show how thick, and how patchy, a given cloud is.

03

Spread F & scintillation

BURST ERRORS

Turbulent plasma bubbles, mostly equatorial and polar, that make signals flutter and smear. Bursts of scrambled and erased characters, precisely timed, mark the turbulence.

04

D-region absorption

SYNCHRONIZED LOSS

Flare X-rays can tip the dayside lower ionosphere from reflecting to absorbing within minutes. Erasure rates rising in step across a continent make a clean, distributed flare detector.

05

Grey-line enhancement

COORDINATED PEAKS

Twilight opens brief, low-absorption corridors along the terminator. Per-character timelines catch the window opening and closing to the second.

06

Geomagnetic storms

MULTI-DAY SHIFT

Auroral absorption, depressed frequencies, unexpected openings that run for days. A network of stations turns every storm into a coordinated, multi-continent experiment.

Not a replacement. A missing piece.

Every widely used mode solves one problem well, and none was built to measure the ionosphere. The better a mode is at delivering a message, the more thoroughly its error correction erases what the channel did along the way. Keep FT8 for DX and JS8Call for chat. HFEdge listens alongside.

ModeGreat atDesignWhat it tells you about the sky
FT8Weak-signal QSOs at −20 dBLDPC(174,87) · 50 Hz · 12.6 sOne SNR scalar per decode — the channel's structure is corrected away.
WSPRGlobal beacons at −28 dB4-FSK · 5.9 Hz · 110.6 sOne SNR number every two minutes. Beautiful map, zero detail.
JS8CallKeyboard chat in poor conditionsFT8-derived · 50 HzDelivery-oriented; FEC removes the error patterns.
OliviaThe tank of text modes8–32 tone MFSK + FECHeavy correction hides exactly the distortions scientists want.
VARAFast email over radioProprietary · up to 2.3 kHzClosed source; ARQ retransmission masks the raw channel.
H-ModeThe path itself is the measurementOTFS/AFDM/OFDM · no payload FEC · ≤ ~2.8 kHzEvery character scored — plus confidence, LLRs, and per-resource channel state.

“H-Mode is to WSPR what a spectrum analyser is to a signal-strength meter
— same antenna, same sky, categorically richer measurement.”

From a reception to a research record.

The running prototype accepts reception logs or compact diff-only uploads over a documented REST surface, and returns scored, geolocated, exportable observations. Its anomaly classifiers are physically reasoned but not yet field-validated. That validation sits on the public roadmap, not in a footnote.

PROTOTYPE · NOT FIELD-VALIDATED
MEASURECER · ERAS · INS · BLER

Core error metrics with 95% confidence intervals, timelines, burst-erasure statistics, and a full 36×36 confusion matrix per report.

LOCATEESTIMATED PIERCE POINTS

Every link geolocated at its model-estimated one-hop ionospheric reflection point — placed in the sky, not just at the endpoints.

INTERPRETTYPED ANOMALY CANDIDATES

The tracking service derives candidate labels — d-region-absorption, sporadic-e, epb-spread-f, tid — with severity and detail fields.

SHAREJSON · CSV ARCHIVE

Open archive exports, duplicate detection, and flagged-report moderation keep the dataset citable and clean.

One station measures a path. A thousand measure the planet.

A few hundred professional instruments watch the entire upper atmosphere. More than a million licensed amateurs already have antennas pointed at it. Amateur networks have mapped sporadic-E drift, caught tsunami-driven ionospheric waves, and run HamSCI’s eclipse campaigns — peer-reviewed work, validated against research instruments. What those networks never had was detail. HFEdge exists to supply it.

01

Casual contributor

Install, let it listen while your shack is idle. Scorecards flow to the network; zero effort after setup.

02

Active experimenter

Scheduled sessions with distant partners across bands and profiles. Compare your morning and evening skies.

03

Club or classroom

A ready-made STEM project — radio, statistics, space science, software. Simulated-device mode needs no radios.

04

Developer

Open specs, test vectors, clean C++20. Write a decoder in an afternoon and verify it character-for-character.

05

Scientist

Time-stamped, geolocated, quality-flagged, openly licensed, auditable end-to-end — a dataset built for citation.

Sunlight is the best modulation.

Amateur radio forbids secret codes; HFEdge treats that rule as a design principle rather than a constraint. The waveform specification, stream protocol, test vectors, configuration schema, and scoring mathematics are public. The seeded payload looks like noise on a waterfall, but it is not a cipher: the seed travels inside the transmission, and any receiver can regenerate the stream and re-score it independently.

§97.113(a)(4)No obscured meaning — full regeneration algorithm published; no encryption anywhere in the stack.
§97.305Occupied bandwidth ≤ ~2.8 kHz per bonded channel; windowing enforces SSB emission masks.
§97.119Frame F0000 carries callsign and six-character grid on every session. Mode ID: H-MODE.
ONE-WAYTest transmissions under licensed control only. Designed for compliance; operators verify local rules.

About.
The future.

This is the personal home of N2OSW. Luke McConoughey is the author of the H-Mode standard, engineering notes, protocol documentation, and the creator of the HFEdge project.

The next version of H-Mode will include error detection and correction. Think of v2 as UDP and v3 as TCP.

FOCUS
HF digital · DSP · citizen science
STACK
C++ 20/23 · Qt 6 · SoapySDR · REST
PRINCIPLE
Open spec · open source · open data
CONTACT
Luke@n2osw.com

Put your signal to work.

One PING is 720 characters and takes moments. Leave the receiver running afterward. The ionosphere is doing something interesting right now.

PATH A~15 MIN

I have a transceiver

Connect over USB CAT or audio — the same hookup as FT8. Native Icom, Yaesu, Kenwood, Elecraft, FlexRadio, and Hamlib. Start with a 720-character PING and watch your first scorecard.

PATH B~10 MIN

I have an SDR dongle

RTL-SDR, Airspy, SDRplay, HackRF, LimeSDR, USRP via SoapySDR. Run receive-only — no license needed to listen, and your reception reports still feed the science.

PATH C~5 MIN

I have only a laptop

Run the built-in simulated device or hfedge_cli --loopback: a full TX→DSP→RX scoring loop with no hardware. Learn the protocol end-to-end.