Key takeaways
- Give the router a fixed address: Use its LAN IP, often 192.168.50.1 or 192.168.1.1, not router.asus.com, so Home Assistant doesn’t rely on DNS.
- Know your admin credentials: Stock ASUS firmware has a single administrator account, so Home Assistant logs in with the same username and password you use for the web GUI. Use a strong, unique password.
- Prefer HTTPS: In the router’s Administration → System settings, enable HTTPS for local access if you can, and note the port.
- Update firmware first: Older firmware sometimes breaks SSH-based polling. Current firmware gives both integrations the best chance.
You can connect an ASUS router to Home Assistant in two main ways. One is the built-in ASUSWRT integration, which works over SSH, Telnet or the router’s HTTP(S) interface and covers presence detection plus basic sensors. The other is the community AsusRouter integration, installed through HACS, which uses the router’s native web API for more accurate traffic data, more sensors and some router controls. For most owners of current ASUS routers on stock or Asuswrt-Merlin firmware, AsusRouter gives the richer setup. ASUSWRT is the simpler, officially maintained choice and the one to use on Padavan firmware.
ASUSWRT vs AsusRouter at a glance
| Feature | ASUSWRT (built-in) | AsusRouter (HACS) |
|---|---|---|
| Install method | Settings → Devices & services → Add integration | HACS custom integration, then add via Devices & services |
| Connection | SSH, Telnet, HTTP or HTTPS | Router’s native HTTP(S) API, the same one used by the web panel and app |
| Device presence tracking | Yes (device_tracker entities, disabled by default for other devices) | Yes |
| Temperature sensors | 2.4/5/6 GHz radio and CPU, where available | Yes |
| CPU / RAM / uptime | Yes in HTTP(S) mode | Yes |
| Traffic per interface (WAN, LAN, Wi-Fi, USB) | Basic, from interface counters | Detailed, with rx/tx and speed sensors |
| Router controls | Limited | More, such as reboot and toggles on supported models |
| Firmware support | Stock, Merlin, Padavan (SSH/Telnet) | Stock 3.0.0.4 / 3.0.0.6 and Asuswrt-Merlin (and derivatives) |
| Minimum Home Assistant | Any current release | 2023.10 or newer |
Before you start
- Give the router a fixed address: Use its LAN IP, often 192.168.50.1 or 192.168.1.1, not router.asus.com, so Home Assistant doesn’t rely on DNS.
- Know your admin credentials: Stock ASUS firmware has a single administrator account, so Home Assistant logs in with the same username and password you use for the web GUI. Use a strong, unique password.
- Prefer HTTPS: In the router’s Administration → System settings, enable HTTPS for local access if you can, and note the port.
- Update firmware first: Older firmware sometimes breaks SSH-based polling. Current firmware gives both integrations the best chance.
Setting up the built-in ASUSWRT integration
- In Home Assistant, go to Settings → Devices & services → Add integration and search for ASUSWRT.
- Enter the router’s IP address, username and password.
- Choose a protocol. HTTPS is the best option on modern stock firmware and unlocks CPU, memory and uptime sensors. Use SSH if you run Padavan or prefer key-based login, and enable SSH in the router’s Administration → System page first.
- Finish the setup, then open the integration’s options. Set the consider home time, which is how long a device can disappear before it is marked away. 180 seconds is a sensible default for phones that sleep their Wi-Fi.
- Enable the device_tracker entities you care about, such as family phones. They are created disabled to avoid clutter.
Setting up AsusRouter through HACS
- Install HACS if you don’t already have it, and restart Home Assistant.
- In HACS, search for AsusRouter, download it, then restart Home Assistant again.
- Go to Settings → Devices & services → Add integration → AsusRouter.
- Enter the router’s IP, the admin username and password, and the port and SSL setting that match your router’s web access.
- Choose which sensor groups and device trackers to enable. Start small: WAN traffic, CPU, RAM, temperature and the few devices you’ll use for presence.
- Adjust the polling interval if needed. Faster polling gives smoother graphs but adds load on older routers.
Note that a Home Assistant session logging in with the admin account can interfere with an open web-GUI session on some firmware. If you get logged out of the router’s web page often, this is the likely cause.
Useful automations once it’s connected
| Automation | Trigger | Action |
|---|---|---|
| Arrive-home lights | Phone’s device_tracker changes to home | Turn on porch and hallway lights after sunset |
| Everyone away | All family trackers away for 10+ min | Set thermostat to eco and arm the alarm |
| Internet down alert | WAN status sensor goes off | Notify via a local channel (for example a speaker announcement) and log the time |
| Bandwidth hog warning | WAN download above 90% of plan for 10 min | Phone notification |
| Router overheating | CPU temperature above a threshold you set from its normal range | Notify. Check ventilation and dust. |
| New device joined | New device tracker created | Notify so you can check for unknown devices |
| Scheduled reboot | Weekly at 4 a.m. (AsusRouter reboot control) | Reboot the router if it has a history of slowing down |
Presence detection: what to expect
Router-based presence is passive. It needs no app on the phone, but it depends on the phone staying connected to Wi-Fi. Modern iPhones and Android phones put Wi-Fi to sleep when idle and use randomized (private) MAC addresses for each network. To make detection reliable:
- Turn off MAC randomization for your home network on each family phone, or mark the private address as fixed for that network.
- Use a “consider home” window of 3–5 minutes so brief sleeps don’t trigger “away”.
- Combine the router tracker with the Home Assistant Companion app’s GPS or Wi-Fi tracker in a person entity. The router confirms you’re home quickly, and the app covers the times when Wi-Fi sleeps.
Mesh systems and multiple ASUS routers
With AiMesh, connect Home Assistant to the main router only. It sees clients across the whole mesh. AsusRouter can also add nodes as separate devices for per-node sensors where supported. Connecting to a node in access point mode gives an incomplete picture of clients.
Troubleshooting
- Cannot connect / authentication failed: Check the port (8443 is common for HTTPS, 80 for HTTP), and check that “Enable Web Access from WAN” isn’t confused with local access settings.
- Traffic numbers look wrong in ASUSWRT: Interface counters can include internal bridge traffic. AsusRouter reads the router’s own traffic API instead.
- Router GUI becomes slow: Increase the polling interval and disable sensors you don’t use.
- Sensors disappear after a firmware update: Reload the integration. For HACS integrations, update to the latest release, since API changes in new firmware are usually patched quickly.
Which should you choose?
- Just need presence and a few health sensors: Built-in ASUSWRT over HTTPS.
- Want dashboards, accurate WAN graphs and router controls: AsusRouter via HACS.
- Running Padavan firmware: ASUSWRT over SSH or Telnet.
- Running Asuswrt-Merlin: Either works. AsusRouter offers more, and SSH scripts remain available for advanced tweaks.