Adaptive Physical Communication System (APCS)

Changelog

All notable changes to this project are documented in this file, from the first text-QR prototype to the current fountain-coded Light and Sound modems.

The format is based on Keep a Changelog 1.1.0. Dates use the ISO 8601 format (YYYY-MM-DD).

Back to the documentation index.


Versioning

The app hasn’t published a tagged release yet; pubspec.yaml says 1.0.0+1. Until the first tagged release, history is recorded as protocol milestones, because the protocol generation is what decides whether two phones can talk to each other.

From the first tagged release, the project will follow Semantic Versioning 2.0.0:

Compatibility rule

Two phones can talk if they run builds from the same milestone. Light frames carry a version byte (APCF v3), and older v2 frames are rejected rather than mis-decoded. Sound frames of different generations simply don’t sync, because the tone plan changed. Each entry below says when a change breaks compatibility.


Unreleased

Silent sound band, faster short texts, the live frequency readout, and the public-release documentation.

Added

Changed

Fixed

Compatibility

Silent frames don’t sync on earlier builds, so both phones need this build to use Silent. Audible frames are unchanged.


2026-09-27: first repository commit

The first commit to the public repository. It contains milestones 1 to 5 below, plus the documentation and branding listed here.

Added

Changed


Milestones 1 to 5 were developed before the repository existed, so they have no individual dates.

Added

Changed


Milestone 4: Sound modem v2 (MT-FSK + Reed-Solomon + fountain)

Added

Fixed

Compatibility

The tone plan replaced the two-tone FSK modem, so Sound frames from earlier builds don’t sync.


Milestone 3: Light v3 (the reliability rewrite)

This milestone addressed the field report: “stuck at 1/3 symbols, DEC 2/s”.

Added

Changed

Compatibility

APCF v3 receivers reject v2 frames on purpose, so both phones need a milestone 3 or later build.


Milestone 2: fountain QR (APCF v2)

Added

Known problems


Milestone 1.5: colour-shift keying (CSK)

Added

Outcome

Too fragile under real white balance and auto-exposure, and about 160× slower than fountain QR v8. It was kept as a library and is no longer offered in the UI.


Milestone 1: prototype

Added


See also the Design Decisions and the Legacy Modems evolution timeline.