ac-client
Apache-2.0
The USP/TR-369 device agent for OpenWRT. Open sourced because it runs on OpenWRT — and that's the right thing to do.
Use it, modify it, distribute it. Commercial use permitted. No copyleft conditions. Build your own managed WiFi product on top.
GPL compatibility.
The honest answer.
ac-client runs on OpenWRT. It calls uci subprocess, reads dnsmasq lease files, and uses nl80211 — deep integration with OpenWRT's GPL-licensed components.
Distributing ac-client as an opkg package on OpenWRT triggers GPL copyleft obligations on linked components. Apache-2.0 resolves this cleanly — no ambiguity, no risk, no legal grey area for operators who include it in their CPE.
It's also the right call for the community. The OpenWRT ecosystem has 30,000+ router models. An open USP agent that any router can run is a rising tide.
reads /tmp/dhcp.leases
dnsmasq lease file → Device.Hosts.Host.{i}. Every DHCP client visible to Argus with zero configuration. This is how IoT device inventory works.
reads /proc/net/arp
ARP table → catches devices that skipped DHCP. MAC + IP → OUI lookup → device classification. Argus sees everything.
calls uci subprocess
WiFi config reads/writes via UCI → Device.WiFi.* data model. Radios, SSIDs, clients, channels. Full TR-181 coverage on any OpenWRT device.