velbus-aio
Asyncio Python library to control the Velbus home automation system.
What it is and what it does
velbus-aio is an asyncio-based Python library for interfacing with Velbus home automation systems. It provides a modern, async-first rewrite of earlier Velbus Python bindings, enabling developers to control and monitor Velbus devices programmatically. The library abstracts the Velbus protocol and supports multiple connection types: direct serial connections, TCP connections through Velbus-to-TCP gateways, and TLS connections to Signum devices (with optional authentication).
The package is built on established protocol documentation and reuses proven code from earlier implementations. It targets Python 3.13 and 3.14, requiring a modern Python environment. Its five runtime dependencies (serialx, backoff, anyio, beautifulsoup4, lxml) handle serial communication, retry logic, async I/O, and XML/HTML parsing for protocol handling. The library is actively maintained, with a recent release and ongoing development.
Use it for:
- Build a home automation dashboard that reads sensor data and controls Velbus switches/dimmers over serial or TCP
- Integrate Velbus devices into a larger home automation system via asyncio-compatible middleware
- Monitor Velbus thermostat and lighting states in real time with async event handling
- Create automation rules that trigger Velbus actions based on external events or schedules
- Connect a Velbus system to a remote gateway using TLS with authentication for secure control
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
An asyncio-based Python library for controlling and communicating with Velbus home automation systems over serial, TCP, or TLS connections.
Yes. The library is actively maintained, has no known vulnerabilities, uses a permissive MIT license, and offers low install friction. It directly addresses Velbus control in Python with modern async patterns. Install it if you need to integrate Velbus home automation into a Python application; the active maintenance and recent releases indicate ongoing support.
Install
velbus-aio on PyPI
pip
pip install velbus-aiouv
uv add velbus-aiopoetry
poetry add velbus-aioInstalling velbus-aio
Before you install
Low install friction with five runtime dependencies (serialx, backoff, anyio, beautifulsoup4, lxml). Actively maintained with a recent release (18 days old) and current last commit on 2026-07-28.
License in practice
MIT license (permissive) allows free use, modification, and distribution with minimal restrictions, making it suitable for both personal and commercial projects.
Quickstart
pip install velbus-aio
import asyncio
from velbus_aio import VelbusConnection
async def main():
conn = VelbusConnection('/dev/ttyACM0')
await conn.connect()
# Use conn to control Velbus devices
asyncio.run(main())
Requires Python 3.13 or later; serial connections require a physical Velbus device or gateway accessible via the specified connection string.
Verify before relying
- Whether the library supports all Velbus module types and protocol versions currently in use
- Performance characteristics and latency for real-time control scenarios
- Compatibility with specific Velbus gateway hardware beyond the Signum model mentioned
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.13) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 5 — serialx, backoff, anyio, beautifulsoup4, lxml |
| Maintenance | actively maintained — 18 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 75,931/month — #14,667 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: velbus_aio-2026.7.25-py3-none-any.whl
Keywords: home, velbus, automation
Tags
More Libraries packages
urllib3 is an HTTP client library that provides…
permissive · top 100 on PyPI
requestsRequests is a Python HTTP library that…
permissive · top 100 on PyPI
pluggyPluggy provides a plugin system that lets you…
permissive · top 100 on PyPI
python-dateutilProvides parsing, arithmetic, and recurrence…
permissive · top 100 on PyPI
sixSix provides utility functions to write Python…
permissive · top 100 on PyPI
pytestpytest is a testing framework that lets you…
permissive · top 100 on PyPI
async-modbusAsync ModBus provides an asynchronous Python…
unclear · top 15,000 on PyPI
elkm1-libAsynchronous Python library for communicating…
permissive · top 15,000 on PyPI
rflinkLibrary and command-line interface for…
permissive · top 15,000 on PyPI
aiohueAsynchronous Python library for controlling…
permissive · top 15,000 on PyPI
pymysensorsPython API for communicating with MySensors…
permissive · top 15,000 on PyPI
aiofastnetaiofastnet replaces asyncio's transport and…
unclear · top 15,000 on PyPI
motionblindsControls Motion Blinds and compatible motorized…
permissive · top 15,000 on PyPI
reolink-aioAsync Python client for Reolink IP NVR and…
permissive · top 15,000 on PyPI
pylogixPylogix reads and writes tag values from…
permissive · top 15,000 on PyPI
pyhiveapiA Python library for controlling Hive smart…
permissive · top 15,000 on PyPI