No agent on the router. No cloud in the middle. Nothing scraped out of LuCI. WrtPulse opens an SSH session and runs the same commands you would type yourself — then shows you the answer.
If OpenWrt can do it at the prompt, the app can do it. If it cannot, the app does not pretend otherwise.
CPU, RAM, flash, load, uptime and throughput from one batched SSH call. The upstream card follows whichever interface actually holds the default route — cable or Wi-Fi client. Reboot, speed test and a one-tap isolated guest network.
Wireless and wired, with signal, lease and per-client usage when nlbwmon is installed. Rename, block, wake-on-LAN, and DHCP reservations from the row.
Subnet, DHCP and static leases, switch VLANs. Every uplink with its port, VLAN tag, protocol and IPv6 — and a connection test bound to the uplink you are looking at. APs and station links, channel scans. Port forwards, scheduled rules, the zone matrix, DMZ, DoS defaults.
A VT screen model with cursor addressing, scrollback, selection and paste. Multiple tabs on one connection.
Live logs, packages (apk and opkg), services, firmware upgrades through five gates, backup & restore, regulatory domain, SSH keys, factory reset.
Every edit is staged and shown as a diff before it lands in one uci batch. A change that carries the connection itself is applied with the router's own rollback armed, so a mistake undoes itself.
The same discipline on every screen, because a router is the one device you cannot walk over and reboot from your phone if you get it wrong.
Every action shows the exact shell command it is about to run. No hidden magic.
Where the router offers one — apk add --simulate, opkg --noaction, sysupgrade -T, a uci diff — the app runs it and shows the answer before anything changes.
Flashing firmware, restoring a backup, a factory reset: each gets its own screen that names exactly what it will cost, and a three-second hold.
Exit code 0 is not success. The app re-reads the router to confirm what actually happened.
Taken on a real router, not a mock.
The app talks to your router and to nothing else. There is no account, no server of ours, no analytics, no ads.
Full details in the privacy policy.