🇬🇧 An English version of this README is available below.
Eine Home Assistant Custom Integration für Limodor Airodor WiFi Lüftungsgeräte. Sie ermöglicht die lokale Steuerung und Überwachung des Geräts direkt aus Home Assistant heraus – ohne Cloud, ohne externe Dienste.
Hinweis: Dieses Projekt wurde mit Unterstützung von GitHub Copilot umgesetzt.
- Lüftungsmodus für Gruppe A und Gruppe B anzeigen und setzen
- Timer-Status beider Gruppen als Sensor
- Manuelle Datenaktualisierung per Button
- Konfigurierbares Abfrageintervall (Standard: 30 Minuten)
- Frei wählbare Namen für Gruppe A und Gruppe B
- Vollständige Unterstützung für HACS
Die Integration basiert auf der Python-Bibliothek airodor-wifi-api, die das lokale HTTP-Protokoll des Airodor WiFi Moduls implementiert. Das Gerät wird direkt über seine IP-Adresse im lokalen Netzwerk angesprochen – es ist keine Internetverbindung erforderlich.
Die API stellt folgende Operationen bereit:
| Operation | Beschreibung |
|---|---|
get_mode(group) |
Aktuellen Lüftungsmodus abfragen |
set_mode(group, mode) |
Lüftungsmodus setzen |
get_timer(group) |
Timer-Status abfragen |
- HACS in Home Assistant öffnen
- Benutzerdefinierte Repositories → URL
https://github.com/BenniWi/airodor_home_assistant_integrationmit Kategorie Integration hinzufügen - Integration suchen und installieren
- Home Assistant neu starten
- Den Ordner
custom_components/airodor_integrationin das Verzeichniscustom_componentsdeiner Home Assistant Installation kopieren - Home Assistant neu starten
- In Home Assistant: Einstellungen → Geräte & Dienste → Integration hinzufügen
- Nach „Airodor" suchen und auswählen
- Folgende Werte eingeben:
| Feld | Beschreibung |
|---|---|
| IP-Adresse | IP-Adresse des Airodor WiFi Geräts im lokalen Netzwerk |
| Aktualisierungsintervall | Abfrageintervall in Minuten (Standard: 30) |
| Name Gruppe A | Anzeigename für Lüftungsgruppe A |
| Name Gruppe B | Anzeigename für Lüftungsgruppe B |
| Datei/Ordner | Zweck |
|---|---|
custom_components/airodor_integration/ |
Integrationscode |
custom_components/airodor_integration/manifest.json |
Integrations-Metadaten |
custom_components/airodor_integration/translations/ |
Übersetzungen (de, en) |
CONTRIBUTING.md |
Hinweise für Beitragende |
requirements.txt |
Python-Abhängigkeiten für Entwicklung |
Das Projekt nutzt einen VS Code Dev Container. Zum Starten:
scripts/develop # startet Home Assistant lokal
scripts/lint # führt ruff-Linter ausMIT – © BenniWi
A Home Assistant custom integration for Limodor Airodor WiFi ventilation devices. It enables local control and monitoring of the device directly from Home Assistant – no cloud, no external services required.
Note: This project was built with the assistance of GitHub Copilot.
- Display and set the ventilation mode for Group A and Group B
- Timer status of both groups as sensors
- Manual data refresh via button
- Configurable polling interval (default: 30 minutes)
- Freely customizable names for Group A and Group B
- Full HACS support
The integration is based on the Python library airodor-wifi-api, which implements the local HTTP protocol of the Airodor WiFi module. The device is accessed directly via its IP address on the local network – no internet connection is required.
The API provides the following operations:
| Operation | Description |
|---|---|
get_mode(group) |
Query the current ventilation mode |
set_mode(group, mode) |
Set the ventilation mode |
get_timer(group) |
Query the timer status |
- Open HACS in Home Assistant
- Custom Repositories → Add URL
https://github.com/BenniWi/airodor_home_assistant_integrationwith category Integration - Search for the integration and install it
- Restart Home Assistant
- Copy the folder
custom_components/airodor_integrationinto thecustom_componentsdirectory of your Home Assistant installation - Restart Home Assistant
- In Home Assistant: Settings → Devices & Services → Add Integration
- Search for "Airodor" and select it
- Enter the following values:
| Field | Description |
|---|---|
| IP Address | IP address of the Airodor WiFi device on the local network |
| Update Interval | Polling interval in minutes (default: 30) |
| Group A Name | Display name for ventilation group A |
| Group B Name | Display name for ventilation group B |
| File/Folder | Purpose |
|---|---|
custom_components/airodor_integration/ |
Integration code |
custom_components/airodor_integration/manifest.json |
Integration metadata |
custom_components/airodor_integration/translations/ |
Translations (de, en) |
CONTRIBUTING.md |
Contribution guidelines |
requirements.txt |
Python dependencies for development |
The project uses a VS Code Dev Container. To get started:
scripts/develop # starts Home Assistant locally
scripts/lint # runs the ruff linterMIT – © BenniWi