aiohomematic¶
Modern async Python library for Homematic and HomematicIP devices.
aiohomematic powers the Homematic(IP) Local integration for Home Assistant, enabling local control of Homematic devices without cloud dependency.
Features¶
- Async-first: Built on
asynciofor non-blocking I/O operations - Type-safe: Fully typed with strict
mypyenforcement - Auto-discovery: Automatic entity creation from device parameters
- Extensible: Custom entity classes for device-specific features
- Fast startup: Paramset caching for quick initialization
- Multi-backend: Supports CCU3, CCU2, Homegear, and RaspberryMatic
Quick Start¶
Installation¶
Basic Usage¶
import asyncio
from aiohomematic.central import CentralConfig
from aiohomematic.client import InterfaceConfig
from aiohomematic.const import Interface
async def main():
# Configure the central unit
config = CentralConfig(
name="my-ccu",
host="192.168.1.100",
username="Admin",
password="your-password",
central_id="my-central",
interface_configs={
InterfaceConfig(
central_name="my-ccu",
interface=Interface.HMIP_RF,
port=2010,
),
},
)
# Create and start the central
central = config.create_central()
await central.start()
# Access devices
for address, device in central.devices.items():
print(f"Device: {device.name} ({address})")
# Stop the central
await central.stop()
asyncio.run(main())
Documentation Overview¶
For Users¶
- Getting Started - Installation and first steps
- Glossary - Terminology reference
- Troubleshooting - Common issues and solutions
For Developers¶
- Architecture - System design overview
- Extension Points - How to add device support
- Consumer API - API reference for integrations
- Event System - Event handling patterns
For Contributors¶
- Docstring Standards - Code documentation guidelines
- Naming Conventions - Naming patterns and rules
- ADRs - Architecture decisions
Supported Devices¶
aiohomematic supports a wide range of Homematic and HomematicIP devices:
| Category | Examples |
|---|---|
| Climate | HmIP-eTRV, HmIP-BWTH, HM-CC-RT-DN |
| Cover | HmIP-BROLL, HmIP-FBL, HM-LC-Bl1 |
| Light | HmIP-BDT, HmIP-BSL, HM-LC-Dim1T |
| Lock | HmIP-DLD, HM-Sec-Key |
| Switch | HmIP-PS, HmIP-BSM, HM-LC-Sw1 |
| Sensor | HmIP-SRH, HmIP-SWSD, HmIP-SMI |
| Siren | HmIP-ASIR, HmIP-MP3P |
For a complete list, see the Extension Points documentation.
Integration with Home Assistant¶
aiohomematic is designed to work seamlessly with the Homematic(IP) Local integration:
Home Assistant
│
▼
Homematic(IP) Local Integration
│
▼
aiohomematic Library
│
▼
CCU3 / RaspberryMatic / Homegear
│
▼
Homematic Devices
See Home Assistant Lifecycle for detailed integration flow.
Links¶
- GitHub: sukramj/aiohomematic
- PyPI: aiohomematic
- Issues: Report a bug
- Discussions: Ask questions
- HA Integration: homematicip_local
License¶
MIT License - see LICENSE for details.