Releases: claygorman/aw5d-linux
Release list
v1.1.2 — code-audit fixes
Bug fixes from a full code audit (all backward-compatible):
--onceno longer hangs when the cooler isn't found — it makes one attempt and exits.- A transient sensor read error no longer crashes the daemon (e.g. hwmon renumbering on suspend/resume) — the frame is skipped and it continues.
self-updatereports failure instead of falsely claiming success if the service restart fails.install.sh:AW5D_BIN_DIRto a system dir now sudo-writes the launcher; a missing systemd--usersession fails early with a clear message;--uninstallcleans up config + the bootstrap checkout; sed metachars in the Python path are escaped.just set-intervaledits only the interval line instead of overwriting the whole config file.- Clean shutdown (no traceback on an ill-timed SIGTERM), plus regression tests for
--once.
v1.1.1 — installer fix
Patch: the installer now actually works.
install.sh's shell function was named install, which shadowed the coreutils install command it uses to copy files — so it recursed into itself instead of installing (a latent bug in v1.0.0 and v1.1.0). Renamed to do_install.
If you tried the one-liner before and it spun forever printing installing driver…, that's this — please update and retry:
curl -fsSL https://raw.githubusercontent.com/claygorman/aw5d-linux/main/bootstrap.sh | bashAlso added a CI installer smoke test (sandbox run with stubbed sudo/systemctl) so this can't regress.
v1.1.0 — friendlier & self-serviceable
Quality-of-life release. Everything since v1.0.0, all backward-compatible.
New
aw5d-lcdcommand on your PATH —aw5d-lcd doctor,list,--help(installed to~/.local/bin; override withAW5D_BIN_DIR).doctor— diagnoses a dark screen: device present? hidraw writable? sensors? Python version? service?aw5d-lcdon PATH? — each with a fix hint.aw5d-lcd self-update— a manual updater (fetch + reinstall + restart). Nothing auto-updates.- One-line install:
curl -fsSL https://raw.githubusercontent.com/claygorman/aw5d-linux/main/bootstrap.sh | bash— no reboot, no rpm-ostree layering on Bazzite/atomic. - Configurable update interval via
AW5D_INTERVAL(~/.config/aw5d-lcd.env), with a too-low warning + safe clamp. - Installer preflight detects a Python 3.8+ interpreter and renders the launcher + systemd unit with it.
- Unit tests + CI —
build_packetasserted byte-for-byte against the captured golden packet; a required check on PRs. - A
Justfile(just install/doctor/test/logs/...).
See the CHANGELOG. Authored by Claude (AI) with the author; tested on real hardware. Use at your own risk.
v1.0.0 — first light
First public release: drive the iBUYPOWER AW5/AW5D AIO cooler's round LCD natively from Linux — no Windows, no vendor software.
Highlights
- Dependency-free Python driver (
aw5d_lcd.py, stdlib only); auto-detects the HID device and reads k10temp / /proc/stat / cpufreq. - Stock CPU gauge over HID
report 0x10(~1 Hz): usage, exact MHz, temperature — validated against HWiNFO and the on-screen numbers. No handshake. - systemd user service (linger) + udev rule + installer; configurable update interval (
AW5D_INTERVAL). - Full clean-room reverse-engineering writeup in
RESEARCH.md.
See the README for install + the protocol table. Code and docs authored by Claude (AI) with the author; tested on real hardware. Use at your own risk.