Recovered developer material • 2003–2008 era

It came with documentation — and examples.

The surviving material shows an ecosystem that was meant to be understood and reused: a 23-page ACARSd manual, a documented network protocol and, later, sixteen practical libhomeradar programming examples.

2003 • ACARSd manual

Twenty-three pages for a program that had barely begun.

The original English manual describes installation, databases, command-line operation, decoder status, server mode, logs, frequencies, the client protocol, live web access and the libraries used internally.

23 PAGES

Operational documentation

The manual explains decoder and server startup, daemon mode, alternate ports, database reloads, automatic reports and the on-screen error flags.

TCP

A protocol, not just a screen

Client/server status codes cover searches, reports, database contributions, administrative messages, frequency information, keep-alives, client notifications and binary data.

C

Windows was already on the mind

The manual states that ACARSd was completely written in C. A Cygwin build had already succeeded; the remaining issue described there was access to sound input comparable to Linux /dev/dsp.

A wonderfully period-specific detail: the manual says live ACARS in a web browser had been tested with Mozilla, Netscape 6 and Microsoft Internet Explorer. Its acknowledgements also preserve the people around the project — including Peter Brucker as “the roof man and the one with the longest antenna.”
Recovered archive • libhomeradar

Sixteen examples: from “hello aircraft” to a networked data service.

The recovered examples page explicitly says the samples show how to use libhomeradar in another program. It describes the library as C code for Linux and Windows and, at that time, supports Kinetic SBS-1 and AirNav RadarBox sources.

16programming examples
Clibrary API
2SBS-1 + RadarBox source families
Linux / Windowsdocumented targets
EVENTS

Callbacks instead of polling everything

Examples attach handlers such as LHR_ONCONTACT and connection/error events. A program could initialise the library, add a host and let callbacks receive contacts.

DATA

Enrichment built in

Examples load databases and resolve aircraft, registrations, airline and route context. Another demonstrates geographic filtering and distance calculations from a configured receiver position.

NETWORK

More than one receiver

The examples cover multiple hosts, SBS-1 and RadarBox together, statistics, an internal queue, a socket server and forwarding contacts to a collector.

/* the shape of the first recovered example */
LHR H = homeradar_init(16, LHR_AUTOCONNECT, &e, NULL);
e = homeradar_addhost(H, "sbs1.libhomeradar.org", 33033,
                      LHR_SBS1, 0, NULL);
homeradar_onhandler(H, LHR_ONCONTACT, e, newcontact);
...
homeradar_destroy(H);

Museum transcription of the essential calls in example #1. The historical hostname and port are shown only as archival evidence; no live service is implied.

Examples 1–4Single/multiple hosts, new contacts and per-host event handlers.
CONNECTION
Examples 5–9Database support, airline/region filtering, statistics and extended filter rules.
FILTERS
Examples 10–13FullQueue handling, 100-km geographic filtering, database lookups and combined SBS-1/RadarBox input.
DATA
Examples 14–16Socket server, collector contribution and public RadarBox contacts.
NETWORK
2 March 2006 • preserved screenshots

ACARSd had become a complete workstation.

Nine surviving screenshots preserve both the graphical ACARSdGUI and the Linux console interface on the same day. They show live decoding, aircraft imagery, databases, statistics, help, route enrichment — and the deliberately hidden games.

Route enrichment visible in the console: where the flight translation database knew the route, ACARSd could show the calculated route distance and an approximate flight time. One preserved screen displays 5,244 km and approximately 6.0 hours for an Air France flight, alongside the aircraft’s previous contact history.