Skip to content

Releases

AXLink v0.2.0-alpha.3

AXLink v0.2.0-alpha.3 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 11 Nov 12:36

Prerelease, not yet on the air. The test plan: BENCH.md.

A security update since v0.2.0-alpha.2; how AXLink works does not change.

  • golang.org/x/net 0.53.0 → 0.55.0: fixes a denial of service in its HTML parser.
    golang.org/x/sys 0.43.0 → 0.45.0 comes along.
  • Docs: serial port access is the group dialout on Fedora, Debian, Ubuntu and Raspberry Pi OS,
    uucp on Arch. Transmitting needs an amateur radio licence; AXLink comes as is, without warranty.

Packages as before: Linux (amd64, arm64, armv6), Windows (amd64, arm64, with wintun.dll),
macOS (arm64, amd64), SHA256SUMS. Start: QUICKSTART.md.
The programs are not signed. Use your own callsign; every operator is responsible for what is
allowed on their frequency.

AXLink v0.2.0-alpha.2

AXLink v0.2.0-alpha.2 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 03 Nov 08:03

Prerelease for the first test with radios. Tested in the lab and in CI, not yet on the
air
. The test plan: BENCH.md.

What is new since v0.2.0-alpha.1:

  • Every station relays by default (settings "Relay", -relay=false turns it off). A relay
    passes a beacon or CQ message on only while a station it hears directly may not have it yet,
    after a random wait in which copies from other relays count too: no relay storm where everyone
    hears everyone, no useless repeats at the end of a line.
  • Packet monitor ("Monitor" / "Mithören" in the web interface): every frame heard and sent,
    those for other stations too, as with an open squelch, with a short description.
  • -pcap FILE writes every frame into a file that Wireshark opens (link type AX.25, decoded
    down to the IP packets); -debug writes every frame into the log.

Lab: two stations pass all checks; three stations in a line (B in the middle) found each other
over B in all eleven runs. Stations that do not hear each other still collide at the relay at
times (one HTTP download of eleven failed); see TODO.

Packages as in alpha.1: Linux (amd64, arm64, armv6), Windows (amd64, arm64, with wintun.dll),
macOS (arm64, amd64), SHA256SUMS. Start: QUICKSTART.md.
The programs are not signed. Use your own callsign; every operator is responsible for what is
allowed on their frequency.

AXLink v0.2.0-alpha.1

AXLink v0.2.0-alpha.1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 03 Nov 07:16

Prerelease. Tested in the lab (simulated radio channel, real kernel IP stacks) and in CI,
where the network adapter passes a ping test on Linux, Windows and macOS. Not yet on the air
with a real radio.
Try it on the bench first.

AXLink turns a KISS radio into a network adapter: ordinary programs (ping, browsers, SSH, small
web servers) talk over AX.25 UI frames at 1200 baud. Tuned to the Quansheng UV-K1 / UV-K5 V3 with
the F4HWN firmware and its KISS TNC app, or our AXLink TNC
with ACKMODE; any KISS TNC works.

Start here: QUICKSTART.md
(Linux, Windows, macOS).

What is in it

  • Network adapter on Linux, Windows (Wintun) and macOS (utun); IPv4 over AX.25 UI/PID 0xCC.
  • Stations find each other by short beacons, no routes to configure.
  • Web interface in English and German on 127.0.0.1:7373: live monitor, stations heard with
    locator and distance, settings that are stored.
  • Chat as APRS messages straight over the radio, no IP: messages to a station (acknowledged,
    repeated, kept in a mailbox until the station is heard again) and a CQ room. Radios with the
    APRS messenger firmware speak the same format.
  • Mesh: a station switched to "Relay" repeats frames; beacons and CQ travel over up to two
    relays, and stations learn the way to each other.
  • Internet gateway: a station shares its internet connection as an HTTP proxy (HTTPS through
    CONNECT); clients choose it in the web interface.
  • Firewall on by default, refusals answered at once; port forwarding of a service of the
    own network; a welcome page per station.

Lab numbers (model of the F4HWN KISS app, not a radio): ping about 2.1 s round trip, a small
HTTP file in 9 s, a chat message acknowledged in 3-5 s; over a relay ping about 5 s and HTTP
about a minute.

Packages

File For
axlinkd-0.2.0-alpha.1-linux-amd64.tar.gz Linux PCs
axlinkd-0.2.0-alpha.1-linux-arm64.tar.gz 64-bit Raspberry Pi OS and other ARM64 Linux
axlinkd-0.2.0-alpha.1-linux-armv6.tar.gz every Raspberry Pi, 32-bit (Pi Zero W too)
axlinkd-0.2.0-alpha.1-windows-amd64.zip Windows 10/11 PCs; contains wintun.dll 0.14.1 and its licence
axlinkd-0.2.0-alpha.1-windows-arm64.zip Windows on ARM; contains wintun.dll 0.14.1 and its licence
axlinkd-0.2.0-alpha.1-macos-arm64.tar.gz Macs with Apple silicon
axlinkd-0.2.0-alpha.1-macos-amd64.tar.gz Intel Macs
SHA256SUMS checksums of all files

The programs are not signed: Windows SmartScreen warns, macOS needs
xattr -d com.apple.quarantine axlinkd once.

Known limits

  • No test with radios yet; the numbers above come from a model.
  • Stations that do not hear each other collide at a relay (hidden stations); TCP and the chat
    repeat what is lost, at the cost of time.
  • 1200 bit/s is shared by all stations on the frequency: a few kilobytes take tens of seconds,
    an HTTPS set-up a minute or two.
  • Windows treats the adapter as a public network and blocks incoming connections in its own
    firewall unless a rule allows them.

Use your own callsign; placeholders are refused. Every operator is responsible for what is
allowed on their frequency. Licence: GPL-3.0-or-later with an additional permission for Wintun;
protocol specifications CC BY 4.0. Changes: CHANGELOG.md.

AXLink v0.1.0-alpha.1 – simulator prerelease

Choose a tag to compare

@TechnikWeber TechnikWeber released this 02 Nov 10:43

The first experimental AXLink simulator state (Codex phase): ordinary UDP and HTTP applications
communicate over two separate Linux TUN/pdn-net/pdn stacks and an AFSK1200 audio simulator. The
IP packets appear as AX.25 UI/PID 0xCC on both sides. With the channel paused the requests time
out; after it resumes they work again with fresh test IDs.

  • Pinned Packet.NET/pdn-net sources and SDK 10.0.107.
  • 13,295 Packet.NET tests passed, 48 skipped; 40 pdn-net baseline tests passed.
  • The receive destination filter defect reproduced; 49 tests pass with the local patch.
  • Eleven Python tests for audit guardrails, UDP retries and negative controls of the traces.
  • Raw frames, routes, counters and test reports in the evidence package.

Start: bash scripts/setup-host.sh, then python3 scripts/test-two-nodes.py.

A simulator prerelease without bundled upstream binaries or container images. Hardware, Windows,
discovery, chat and mesh are not covered. The documents of this tag are in German.


Note (2026-11-02): this tag is the Codex-phase state with pdn/pdn-net as a runtime chain.
Afterwards the core was rebuilt in Go; see
HISTORY,
REVIEW and
DECISIONS.