Releases: theoabw/openwrt-presence-agent
Release list
v0.3.0
v0.2.3
What's Changed
Other changes
- fix: Harden presence reconciliation and provider recovery by @theoabw in #5
- fix: use iputils arping package and path by @theoabw in #6
Full Changelog: v0.2.2...v0.2.3
v0.2.2
v0.2.1
What's Changed
Other changes
- Fix token generation on stock OpenWrt by @theoabw in #2
- Use Git tags as the release version by @theoabw in #3
Full Changelog: v0.2.0...v0.2.1
v0.2.0
v0.1.1
This maintenance release prepares OpenWrt Presence Agent for submission to the
official OpenWrt packages feed.
Changes
- Add
--versionand-versioncommands for package-manager and feed CI
validation. - Keep the service protocol and configuration fully compatible with v0.1.0.
See the
installation guide
before exposing the API beyond loopback.
v0.1.0
OpenWrt Presence Agent turns Wi-Fi association changes from OpenWrt into a
small, authenticated, read-only API for local consumers. This is the first
public release.
Highlights
- Pushes normalized association and disassociation events over a versioned
WebSocket API without consumer polling. - Repairs missed or reordered input with bounded authoritative client
snapshots. - Tracks connections across discovered radios and avoids declaring a client
absent while it remains associated with another BSS. - Runs as an OpenWrt-native
procdservice with UCI configuration, generated
bearer credentials, bounded resources, and loopback-only binding by default. - Exposes no router administration, shell, firewall, or generic ubus control
surface. - Provides OpenWrt 24.10
.ipkand OpenWrt 25.12.apkpackages for common
ARM, MIPS, and x86_64 architectures.
The
OpenWrt Presence integration for Home Assistant
is the first reference consumer. The API is consumer-neutral.
Measured performance
Across 110 measured transitions on the live-tested Flint 3 system,
observer-to-Home Assistant propagation was 6.5 ms median, 15.9 ms p99, and
17.2 ms maximum. Every measured transition completed in under 20 ms. These
figures begin after the observer publishes an authoritative event; they do not
include the phone or access point's radio-detection time.
See the
performance methodology and raw sanitized results.
Compatibility status
The complete path has been live-tested only on a GL.iNet Flint 3 (GL-BE9300)
running GL.iNet firmware 4.9.0. Other packages are build-tested with official
OpenWrt SDKs, not hardware-tested.
If you try another router, please
share the result.
Successful, partial, and unsuccessful reports are all useful.
Installation and verification
Choose the package matching the router's OpenWrt release and accepted package
architecture. Follow the
installation guide
before exposing the API beyond loopback.
Every package is covered by SHA256SUMS and GitHub build-provenance
attestations.