--- id: devolo-plc-api version: "1.5.1" license: GPL-3.0-or-later license_treatment: copyleft maintenance: active --- # devolo-plc-api — devolo PLC devices in Python License: copyleft · Maintenance: active · Downloads: 73.9K/mo ## 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 above — verify before relying. Provides a Python API to communicate with devolo PLC (powerline communication) devices over the network using protobuf-formatted messages, supporting both synchronous and asynchronous operations. 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 pip install devolo-plc-api uv add devolo-plc-api poetry add devolo-plc-api ## Installing devolo-plc-api 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. 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() Requires Python 3.9 or later. Tested on Linux; other operating systems may work but are not officially verified. 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_current - Install friction: low - Maintenance: active - Downloads: 73.9K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags devolo plc device control, powerline communication api, devolo magic repeater python, network device discovery, plc device communication, devolo home automation, async device api, device-api, powerline-communication, async-support [View on SkillFed](https://skillfed.io/packages/devolo-plc-api) · [View on PyPI](https://pypi.org/project/devolo-plc-api/)