Migration von anderen Smarthome Plattformen - jens-maus/RaspberryMatic GitHub Wiki

Einleitung

Viele Anwender haben vermutlich bereits eine Smarthome Plattform laufen undwollen auf RaspberryMatic (oder RaspberryMatic als AddOn von Home Assistant)migrieren. In vielen Tutorials und Videos wird hier genannt, dass die HomeMaticGeräte entweder von der alten Zentrale abgelernt oder komplett auf Werkszustand zurückgesetzt werden müssen. Es gibt jedoch eine Lösung, wiesich HomeMatic Geräte mit etwas Aufwand migrieren lassen. Zudem ist ein Parallelbetrieb mit RaspberryMatic und des alten Smarthome Systems möglich. Exemplarisch wird hier die Migration von HomeMatic-Geräten (also kein HomematicIP) von FHEM auf RasberryMatic beschrieben. Auf AES wird hier nicht eingegangen.Für die Änderung sind einige Linux-Kenntnisse nötig, z.B. SSH-Zugriff, Navigation im Dateisystem undÄnderungen von Files in der Kommandoebene mittels vi.

Grundlage

Jedes Gerät, das von der Zentrale gesteuert werden kann, ist mit ihr gepaired. Grundlage dafür ist die sogenannte HM-ID, auch als BidCos-Adresse bezeichnet. RaspberryMatic bietet zum jetzigen Zeitpunkt keine Möglichkeit, diese über das Webinterface zu ändern. Es gibt aber eine Möglichkeit, dies aufBetriebssystemebene auf RaspberryMatic zu tun.

Reuse HM-MOD-RPI-PCB

Häufig wird Homematic unter FHEM mit Hilfe eines HM-MOD-RPI-PCBauf einem Raspberry PI betrieben. Dieses Setup kann weiterhin so laufen.Entweder mit RaspberryMatic auf dem Raspberry Pi als eigene Zentrale oder alternativ den Raspberry Pi als LAN-Gateway konfigurieren und in die Zentrale (z.B. als AddOnunter Home Assistant) als LAN-Gateway einbinden.Leider werden Lösungen mit einem HM-MOD-RPI-PCB in Verbindung miteinem ESP8266 (z.B. Wemos D1 Mini als WLAN-Homematic-Interface) nichtunterstützt. Wer aber ein ähnlich kompaktes Setup einsetzen möchte, sollte das HM-MOD-RPI-PCB mit einem Raspberry Pi Zero betreiben.

Setup

Generell sollte RaspberryMatic wie hier im Wiki beschrieben installiert werden. Wird ein RaspberryMatic mit einem LAN-Gateway betrieben, so sollte dieses schon mit der Raspberry Matic Zentrale verbunden sein. Sowohl in der Zentrale als auch im Gateway muss SSH aktiviert sein. Der Zugriff auf SSH erfolgt über den user „root“ und das festgelegte SSH-Passwort.

Änderung HM-ID

Generell übernimmt RaspberryMatic nach dem ersten Setup die HM-ID von dem ersten angelernten Homematic Interface. Selbst wenn jetzt ein weiteres Interface eingesteckt oder ein anderes verwendet wird, bleibt die HM-ID erhalten. Ebenso bringt es nichts, die HM-ID nur im LAN Gateway zu ändern. Um diese zu ändern, muss dies sowohl bei der Zentrale als auch (falls verwendet) beim konfigurierten LAN Gateway gemacht werden. Am besten wird jeweils nur eine RaspberryMatic Instanz gestartet und die HM-ID auf diesem Gerät geändert, damit kein Austausch der HM-ID zwischen der RM-Zentrale und dem RM-LAN-Gateway stattfindet. Die HM-ID wird immer in der Datei "ids" gespeichert. Diese Datei liegt sowohl in der Zentrale als auch im LAN-Gateway in folgenden zwei Ordnern:

/var/ /etc/config/

In der Datei wird die HM-ID als BidCos-Address bezeichnet. Beide Dateien sollten sowohl in der Zentrale als auch im RaspberryMatic-LAN-Gateway geändert werden. Also Anmeldung per SSH am RM-LAN-Gateway, Abändern der HM-IDin den Dateien „ids“. Es kann sein, dass die HM-ID in ids in der Zentrale nicht als Hex-Wert abgespeichert ist, sondern als Dezimalwert. Der Hex-Wert sollte dann als Dezimalwert umgerechnet und so abgespeichert werden.

Z.B. HM-ID 0x123ABC -> 1194684

Sind alle HM-ID in der RaspberryMatic-Zentrale und im RaspberryMatic-LAN-Gateway aktualisiert, können beide Geräte neu gestartet werden. In der RM-Zentrale sieht man nach dem Hochfahren, ob das RaspberryMatic-LAN-Gateway noch verbunden ist.

Änderung RaspberryMatic-AddOn in Home Assistant

Falls RaspberryMatic als AddOn in Home Assistant installiert wurde, lässt sich nicht per SSH auf das AddOn zugreifen. Somit können auch nicht die HM-IDs in den Dateien geändert werden. Workaround ist hier, mit Backups zuarbeiten. Man benötigt einen weiteren Raspberry Pi, auf dem RaspberryMatic installiert ist. Dabei sollte ein Backup im RaspberryMatic-AddOn in Home Assistant erstellt und dieses auf dem weiteren Raspberry Pi wiederhergestellt werden. Hier kann jetzt per SSH zugegriffen und wie beschrieben die HM-ID geändert werden. Dann muss wiederum von RaspberryMatic auf dem Raspberry PI ein Backup erstellt und auf dem RaspberryMatic-AddOn in Home Assistant wiederhergestellt werden.

Anlernen der HM Geräte

Sind alle Schritte wie beschrieben erfolgt, sollte RaspberryMatic mit der gewünschten HM-ID senden. Falls FHEM noch parallel läuft, lässt sich die testen, indem ein HomeMatic Gerät per Serial angelernt wird. Im Log vomFHEM erscheint dann die Meldung

2025.01.01 10:00:00 CUL_HM _HM-Devicename_ attack::01123ABC…

Im Hex-Code steckt also die neue HM-ID und FHEM erkennt, dass eine weitere Homematic-Zentrale versucht, auf ein in FHEM bereits angelerntes Gerät zuzugreifen. Falls die HM-ID mit der von FHEM übereinstimmt, kann es bereitssein, dass das Gerät, was in RaspberryMatic angelernt wird, im Posteingang auftaucht. Für das richtige Anlernen in RaspberryMatic sollte jedoch das Homematic Interface von FHEM deaktiviert werden, damit es zu keinen Störungen kommt.

Für das Anlernen sollte die Seriennummer des Geräts aus FHEM genommen und in RaspberryMatic zum Pairen über die Seriennummer verwendet werden. Da jedes Gerät bereits mit FHEM verbunden ist, muss an den meisten Homematic-Geräten nichts mehr gemacht werden. Dies trifft auf alle Geräte zu, die fest mit Strom verbunden sind (z.B. Rollladenaktoren, Unterputz-Relais, …). Heizungsthermostate oder Wandthermostate senden normalerweise nur alle drei Minuten und Fensterkontakte senden nur bei Öffnen oder Schließen des Fensters. Hier sollte zum Anlernen die Anlerntaste gedrückt werden, damit die Geräte auch RaspberryMatic antworten.

Sind alle gewünschten Geräte in RaspberryMatic angelernt, ist auchderen Konfiguration in RaspberryMatic übernommen. Es bleiben z.B.Heizungsprogramme in den Thermostaten oder Rollladen Laufzeiten inRollladenaktoren erhalten und können in RaspberryMatic eingesehen und geändert werden.

Nun kann auch FHEM parallel wieder eingeschaltet werden. Die Geräte lassen sich nur über FHEM und RaspberryMatic steuern. Dies sollte jedoch nur eine temporäre Lösung sein, es könnte zu unerwünschten Effekten kommen.