Homematic CCU3 × Apple HomeKit – Praxisleitfaden
Homematic CCU3 mit Apple HomeKit verbinden: Homebridge, Home Assistant und HmIPW-Wired in der Praxis – inkl. Rolläden, Thermostate und Stolperfallen.
Homematic ist eines der verbreitetsten Smarthome-Systeme in Deutschland – aber Apple HomeKit spricht es von Haus aus nicht. Wer seine CCU3-Zentrale mit der Apple Home App verbinden will, steht vor einer Reihe von Entscheidungen und Stolperfallen. Dieser Artikel dokumentiert den kompletten Weg: von der ersten Idee über Homebridge bis zum finalen Setup mit Home Assistant.
Ausgangslage
Das Kundenprojekt umfasst ein umfangreiches HmIP-Wired-Setup mit einer CCU3-Zentrale:
- ~10 Heizkörperthermostate (HmIP-eTRV, HmIP-eTRV-2, HmIP-eTRV-B)
- ~10 Raumthermostate (HmIP-WTH, HmIP-WTH-1, HmIP-WTH-2)
- 3 Jalousie-Aktoren mit 9 Rolläden (HmIPW-DRBL4)
- 12 Fensterkontakte (HmIP-SWDM, HmIP-SWDM-2)
- 8 Wassermelder (HmIP-SWD)
- Lichtschalter, Dimmer, Markise, Alarmsirene, Wetterstation
- Bus-Aktoren im Schaltschrank (HmIPW-DRS8, HmIPW-DRI16)
Das Ziel: Alle relevanten Geräte in Apple Home sichtbar und steuerbar machen.
Phase 1: Homebridge aufsetzen
Hardware-Vorbereitung
Der Kunde hatte eine CCU3 und einen separaten Raspberry Pi (Debian 13 Trixie, aarch64). Erster Stolperstein: Der Pi war per Ethernet-Kabel direkt am Mac angeschlossen und hatte die IP 169.254.10.3 – ein isoliertes Punkt-zu-Punkt-Netz. Die CCU3 saß im WLAN unter 192.168.178.50.
Lösung: Pi per WLAN ins Heimnetz einbinden:
sudo nmcli device wifi connect "WLAN_NAME" password "PASSWORT"
Danach hatte der Pi die IP 192.168.178.80 und konnte die CCU3 erreichen.
XML-API auf der CCU3
Das Homebridge-Plugin homebridge-homematic kommuniziert über die XML-API mit der CCU3. Installation als Addon über die CCU3-Zusatzsoftware-Verwaltung.
Erste Hürde: <not_authenticated/> bei jedem API-Call – obwohl die Authentifizierung deaktiviert war. Die Lösung lag in der CCU3-internen Firewall: Die Script-API musste auf “Vollzugriff” stehen.
Homebridge + Plugin
sudo npm install -g --unsafe-perm homebridge homebridge-config-ui-x
sudo hb-service install --user homebridge
Das Homebridge-UI ist danach unter http://<pi-ip>:8581 erreichbar. Plugin homebridge-homematic installieren und konfigurieren:
{
"name": "HomeMatic CCU",
"ccu_ip": "192.168.178.50",
"subsection": "Homekit",
"enable_hmip": true,
"enable_wired": true,
"platform": "HomeMatic"
}
Phase 2: Das 149-Geräte-Limit
Das Problem
HomeKit erlaubt maximal 149 Accessories pro Bridge. Das Plugin importierte alle CCU3-Kanäle ungefiltert – inklusive 50 virtueller HM-RCV-50-Kanäle und hunderten unbenutzter Bus-Aktor-Kanäle. Ergebnis:
Error: Cannot Bridge more than 149 Accessories
Die Lösung: CCU3-Gewerk als Filter
Das Plugin nutzt den Parameter subsection, der einem CCU3-Gewerk entspricht. Nur Geräte/Kanäle in diesem Gewerk werden nach HomeKit exportiert.
Gewerk “Homekit” auf der CCU3 angelegt mit gezielter Kanalauswahl:
| Gerätetyp | Welchen Kanal | Warum |
|---|---|---|
| Lichtschalter (HmIP-BSM) | nur :4 |
Schaltaktor – schaltet tatsächlich |
| Dimmer (HmIP-BDT) | nur :4 |
Dimmaktor |
| Rolladen (HmIPW-DRBL4) | nur :2/:6/:10/:14 |
Rollladenaktor pro Motor |
| Thermostate | nur :1 |
Sender-Kanal |
| Fensterkontakte | nur :1 |
Sensor-Kanal |
| Wassermelder | nur :1 |
Sensor-Kanal |
Wichtig: Bei HmIP-BSM-Geräten gibt es pro Aktor 9+ Kanäle (Taster, Status, Wochenprogramm, virtuelle Kanäle). Nur Kanal :4 ist der eigentliche Schaltaktor – alle anderen erzeugen nur Duplikate in HomeKit.
Phase 3: HmIPW-Wired-Rolläden – Die große Hürde
Das Problem
Das Plugin homebridge-homematic kannte den Gerätetyp HmIPW-DRBL4 (Wired Jalousie-Aktor) nicht:
[ServiceClassLoader] There is no service for HmIPW-DRBL4:BLIND_VIRTUAL_RECEIVER
[ServiceClassLoader] There is no service for HmIPW-DRBL4:BLIND_TRANSMITTER
Versuch 1: channel_config.json patchen
Die Service-Zuordnung liegt in der Datei channel_config.json des Plugins. Per Python-Script neue Einträge hinzugefügt:
import json
f = 'channel_config.json'
d = json.load(open(f))
d['channelconfig'].append({
'type': 'HmIPW-DRBL4:BLIND_VIRTUAL_RECEIVER',
'service': 'HomeMaticHomeKitBlindServiceIP'
})
d['channelconfig'].append({
'type': 'HmIPW-DRBL4:BLIND_TRANSMITTER',
'service': 'HomeMaticHomeKitBlindServiceIP'
})
json.dump(d, open(f, 'w'), indent=4)
Ergebnis: Die Fehlermeldungen verschwanden, die Rolläden tauchten in HomeKit auf – aber sie reagierten nicht auf Befehle. Der Grund: HomeMaticHomeKitBlindServiceIP ist für HmIP-Funk-Geräte geschrieben und nutzt andere Datenpunkte als die Wired-Variante.
Versuch 2: Alternative Plugins
- homebridge-homematic-asaw (v0.2.234): Aktiv gepflegter Fork – aber komplett dysfunktional. Alle Handler antworteten nicht (“didn’t respond at all”).
- homebridge-ccu (hobbyquaker): In der Plugin-Suche nicht verfügbar.
Versuch 3: Systemvariablen-Workaround
Idee: CCU3-Systemvariablen als Proxy zwischen HomeKit und Rollladenaktor. Variable ändert sich → CCU3-Programm fährt den Rolladen.
Verworfen – zu umständlich, fehleranfällig und schlecht wartbar.
Phase 4: Home Assistant – Die Lösung
Warum Home Assistant?
- Native HmIPW-Wired-Unterstützung über die Integration “Homematic(IP) Local”
- Eingebaute HomeKit-Bridge – ersetzt Homebridge komplett
- Automationen ohne Apple Home Hub möglich
- Alle Gerätetypen werden korrekt erkannt und gesteuert
Installation per Docker
Der Raspberry Pi behält sein Debian – Home Assistant läuft als Container:
sudo apt install -y docker.io
sudo docker run -d \
--name homeassistant \
--restart=unless-stopped \
--network=host \
-v /opt/homeassistant:/config \
--env TZ=Europe/Berlin \
ghcr.io/home-assistant/home-assistant:stable
Nach 2 Minuten erreichbar unter http://<pi-ip>:8123.
HACS + Homematic(IP) Local
Die Standard-Homematic-Integration in Home Assistant übernahm keine Gerätenamen von der CCU3 – nur Seriennummern. Die Lösung: HACS (Home Assistant Community Store) mit dem Plugin “Homematic(IP) Local”.
# HACS installieren
sudo docker exec -it homeassistant bash -c \
"wget -O - https://get.hacs.xyz | bash -"
sudo docker restart homeassistant
Nach der Installation über die UI:
- HACS → Integrationen → “Homematic(IP) Local” herunterladen
- Einstellungen → Geräte & Dienste → Integration hinzufügen
- CCU-Adresse
192.168.178.50+ Admin-Zugangsdaten eingeben
Ergebnis: 76 Geräte mit korrekten CCU3-Namen.
HomeKit Bridge
Home Assistant hat eine eingebaute HomeKit-Bridge-Integration:
- Einstellungen → Geräte & Dienste → Integration hinzufügen → “HomeKit Bridge”
- Domains auswählen:
cover,climate,light,switch,binary_sensor - QR-Code mit iPhone scannen
Alle Geräte erscheinen in Apple Home – inklusive der HmIPW-DRBL4-Rolläden, die mit Homebridge nie funktionierten.
Ergebnis
┌─────────────────────────────────────────────────────────────┐
│ Finales Setup │
├─────────────────────────────────────────────────────────────┤
│ │
│ iPhone / Apple Home │
│ │ │
│ ▼ │
│ ┌──────────────────┐ │
│ │ HomeKit Bridge │ (Home Assistant Integration) │
│ └────────┬─────────┘ │
│ │ │
│ ▼ │
│ ┌──────────────────┐ │
│ │ Home Assistant │ Docker auf Raspberry Pi │
│ │ + HACS │ │
│ │ + HomematicIP │ │
│ │ Local │ │
│ └────────┬─────────┘ │
│ │ XML-RPC │
│ ▼ │
│ ┌──────────────────┐ │
│ │ Homematic CCU3 │ 192.168.178.50 │
│ │ + XML-API │ │
│ └────────┬─────────┘ │
│ │ HmIP-RF / HmIPW-Bus │
│ ▼ │
│ ┌──────────────────────────────────────────────────────┐ │
│ │ Geräte: Rolläden, Thermostate, Licht, Sensoren │ │
│ │ HmIPW-DRBL4, HmIP-eTRV, HmIP-BSM, HmIP-SWDM ... │ │
│ └──────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────┘
Was funktioniert
| Gerätetyp | HomeKit-Funktion |
|---|---|
| HmIPW-DRBL4 Rolläden | Position 0-100%, auf/zu |
| HmIP-eTRV Thermostate | Soll-Temperatur, Ist-Temperatur |
| HmIP-BSM Lichtschalter | Ein/Aus, Stromverbrauch |
| HmIP-BDT Dimmer | Ein/Aus, Helligkeit |
| HmIP-SWDM Fensterkontakte | Offen/Geschlossen |
| HmIP-SWD Wassermelder | Leckage-Erkennung |
| HmIP-FROLL Markise | Position |
| HMIP-SWDO Türkontakte | Offen/Geschlossen |
Lessons Learned
-
Homebridge funktioniert gut für HmIP-RF-Geräte (Funk). Für HmIPW-Wired fehlt die Unterstützung bei allen getesteten Plugins.
-
Das 149-Geräte-Limit in HomeKit ist real. Bei umfangreichen Installationen muss gefiltert werden – am besten über ein dediziertes CCU3-Gewerk.
-
Nicht jeder Kanal gehört in HomeKit. Ein HmIP-BSM hat 9+ Kanäle – nur Kanal
:4(Schaltaktor) ist relevant. Alles andere erzeugt Duplikate und “keine Antwort”-Geräte. -
Home Assistant + Homematic(IP) Local ist die zuverlässigste Bridge für gemischte HmIP/HmIPW-Setups. Docker-Installation auf einem bestehenden Pi ist in 30 Minuten erledigt.
-
Automationen brauchen einen Home Hub (HomePod, Apple TV) in Apple Home. Home Assistant kann dies teilweise kompensieren, da es eigene Automationen unabhängig von Apple ausführt.
-
Direktverknüpfungen auf der CCU3 nicht anfassen. Die funktionieren ohne Zentrale und sind die Lebensversicherung des Systems. HomeKit/Home Assistant ergänzt – ersetzt nicht.