devolo-plc-api
devolo PLC devices in Python
Decision gist · record as of 2026-08-14
Yes, if you own devolo PLC devices and need programmatic control or monitoring. The package is actively maintained, has low install friction, and provides both sync and async interfaces. The GPL-3.0-or-later license is a constraint for proprietary use. No known vulnerabilities. Tested on Linux with Python 3.9+; compatibility with other systems is not guaranteed.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.9 or later.
- Tested on Linux; other operating systems may work but are not officially verified.
- Low friction installation with a pure-Python wheel and six runtime dependencies.
License · maintenance · safety
GPL-3.0-or-later (copyleft) — Licensed under GPL-3.0-or-later (copyleft). Any derivative work or distribution must be released under a compatible license; proprietary use requires careful review or relicensing.
last release 2025-04-14 (487 days) · last repo commit 2026-07-27 · 24 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 73,940 downloads/mo, #14,904 on PyPI
Alternatives
Verify before relying
pip install devolo-plc-api
from devolo_plc_api.network import discover_network
devices = discover_network()
for device in devices.values():
device.connect()
# interact with device
for device in devices.values():
device.disconnect()- Whether the package works reliably on operating systems other than Linux despite the tested environment being Linux-specific.
- Whether firmware version differences across devolo device models significantly affect API compatibility beyond the listed supported devices.
What it is and what it does
devolo-plc-api is a Python library that wraps the devolo PLC (powerline communication) device API, enabling programmatic control and monitoring of devolo Magic and Repeater devices over a network. It uses protobuf for device communication and provides both synchronous and asynchronous interfaces for network operations.
The package handles device discovery, connection management, and communication with supported devolo devices including Magic 2 WiFi, Magic 1 LAN, and various Repeater models. It depends on httpx for HTTP requests, zeroconf for network discovery, protobuf for message serialization, and utility libraries for address handling and retry logic. The project is actively maintained and follows semantic versioning, though it notes that firmware versions and undocumented API changes may affect compatibility.
Use it for
- Discover and enumerate devolo PLC devices on a local network without manually entering IP addresses.
- Build home automation or network monitoring scripts that control devolo Magic or Repeater devices programmatically.
- Implement async-first applications that manage multiple devolo devices concurrently using the async_discover_network interface.
- Integrate devolo device status and configuration into a larger Python-based network management system.
- Query device capabilities and state through a protobuf-based API rather than manual HTTP calls.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you own devolo PLC devices and need programmatic control or monitoring.
The package is actively maintained, has low install friction, and provides both sync and async interfaces. The GPL-3.0-or-later license is a constraint for proprietary use. No known vulnerabilities. Tested on Linux with Python 3.9+; compatibility with other systems is not guaranteed.
Install
devolo-plc-api on PyPI
Before you install
Low friction installation with a pure-Python wheel and six runtime dependencies. The project is actively maintained with recent commits and follows semantic versioning. Tested environment documented with specific versions.
Requires Python 3.9 or later. Tested on Linux; other operating systems may work but are not officially verified.
License in practice
Licensed under GPL-3.0-or-later (copyleft). Any derivative work or distribution must be released under a compatible license; proprietary use requires careful review or relicensing.
Quickstart
pip install devolo-plc-api
from devolo_plc_api.network import discover_network
devices = discover_network()
for device in devices.values():
device.connect()
# interact with device
for device in devices.values():
device.disconnect()
Verify before relying
- Whether the package works reliably on operating systems other than Linux despite the tested environment being Linux-specific.
- Whether firmware version differences across devolo device models significantly affect API compatibility beyond the listed supported devices.
Package facts
| License | GPL-3.0-or-later copyleft |
| Python support | Supports the current Python release >=3.9 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 6 packagesifaddrhttpxprotobufsegnotenacityzeroconf |
| Maintenance | Actively maintained 487 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 73,940 / month, #14,904 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Operating System :: OS IndependentProgramming Language :: Python :: 3 |
Evidence: devolo_plc_api-1.5.1-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “devolo plc device control”
- devolo-plc-apiProvides a Python API to communicate with devolo PLC (powerline…
- devolo-home-control-apiPython client library for the devolo Home Control API, enabling…
- pyadspyads is a Python wrapper for TwinCAT's ADS library that enables…
Give your agent the search over MCP, or paste the wish link into any chat.
More Networking packages
h11 is a pure-Python HTTP/1.1 protocol implementation that handles parsing and serializing HTTP messages without any built-in I/O, letting you integrate it with any network layer you choose.
psutil retrieves real-time information about running processes and system resources (CPU, memory, disks, network, sensors) across multiple operating systems, enabling system monitoring, process profiling, and resource management.
pyOpenSSL wraps OpenSSL's SSL/TLS functionality for Python, providing high-level connection objects and certificate handling through a Python-friendly interface around OpenSSL's cryptographic operations.
uvloop is a drop-in replacement for Python's built-in asyncio event loop, implemented in Cython and using libuv, that accelerates async I/O operations.
execnet lets you spawn and communicate with Python interpreters across local processes, remote hosts, and different platforms, using a simple API for task distribution and inter-process messaging.
However, the aging maintenance status (275 days since last release) means you should verify it meets your concurrency and performance needs before committing to a…
PyZMQ provides Python bindings for ZeroMQ (ØMQ), a lightweight messaging library that enables fast, asynchronous communication between distributed processes and applications.
See also devolo-home-control-api · powerbot-client · pylogix · python-snap7 · flux-led · pydaikin · aiolifx · python-miio · pywemo · pyvesync