skillfed

aioasuswrt

Api wrapper for Asuswrt https://www.asus.com/ASUSWRT/

aioasuswrt v2.2.0 75.7K downloads/30d#14,689 on PyPI26
Permissive license MIT AGING released

What it is and what it does

AioAsusWrt is an async Python wrapper for the ASUS WRT router API, allowing you to query router state and network information over SSH. It retrieves connected devices, wireless statistics, ARP tables, DHCP leases, and network throughput in a non-blocking manner using asyncio. The package depends on asyncssh for secure shell communication and bcrypt for credential handling.

The library is in alpha status and targets Home Assistant and IoT integration use cases. It works with various ASUS router models running ASUSWRT firmware, though compatibility varies by router version and firmware revision. The maintainer notes that different router versions sometimes require implementation adjustments, and users are encouraged to report issues with specific hardware and firmware versions.

Use it for:

  • Monitor connected devices and network activity on an ASUS router from a Python application
  • Integrate ASUS router state into Home Assistant or other home automation platforms
  • Retrieve real-time network statistics (throughput, device counts) for monitoring dashboards
  • Query wireless client information and DHCP lease data programmatically over SSH
  • Build custom network management tools that interact with ASUS routers via async Python

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Async Python wrapper for querying ASUS router state over SSH, retrieving connected devices, network statistics, and wireless information.

Yes, if you need to query an ASUS router over SSH from async Python code and accept alpha-stage stability. Install friction is low and the MIT license is permissive. However, maintenance is aging (188 days since last release) and the maintainer is planning a repository move, so expect slower response to new issues. Verify your router model and firmware version are compatible before relying on it in production.

Install

aioasuswrt on PyPI

pip

pip install aioasuswrt

uv

uv add aioasuswrt

poetry

poetry add aioasuswrt

Installing aioasuswrt

Before you install

Low install friction with just two runtime dependencies (asyncssh and bcrypt). Maintenance is aging—last release was 188 days ago and the repository shows minimal recent activity, though it remains unarchived.

License in practice

MIT license permits free use, modification, and distribution with minimal restrictions, making it suitable for both open-source and commercial projects.

Quickstart

pip install aioasuswrt

import asyncio
from aioasuswrt.asuswrt import AsusWrt

component = AsusWrt('192.168.1.1', 22, username='admin', password='pass')
await component.async_get_connected_devices({})

Requires Python 3.13 or later. SSH access to the router with valid credentials is required.

Verify before relying

  • Exact set of ASUS router models and firmware versions supported by current release
  • Whether asyncssh and bcrypt versions have known compatibility constraints
  • Current state of the planned repository migration mentioned in the description

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.13)
Install friction low — pure-Python wheel
Runtime dependencies 2 — asyncssh, bcrypt
Maintenance aging — 188 days since the last release
Last repo commit
First released
Downloads 75,654/month — #14,689 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: aioasuswrt-2.2.0-py3-none-any.whl

Keywords: Asus, development, hass, homeassistant, iot, router

Development Status :: 3 - AlphaIntended Audience :: DevelopersProgramming Language :: Python :: 3Topic :: Software Development :: Libraries

Tags

asus router api wrapperasuswrt ssh clientasync router statusasus device discoveryrouter network monitoringasuswrt python libraryconnected devices query
async-sshhome-automationrouter-management

More Libraries packages