Ich habe eine CCU2 und möchte gerne auf eine “freie” Softwareschnittstelle zu den angebundenen Geräten wechseln. Dabei bin ich über Homegear gestolpert und finde den Ansatz total genial (Daumen hoch!)
Für die CCU2 bin ich gerade dabei eigene HM Wired Module zu entwickeln. In der CCU2 muss man für die neuen Module eine XML-Datei, die beschreibt wo sich die Konfigurationsparameter im Modul-EEProm befinden, welche Frames mit dem Modul ausgetauscht werden können/sollen usw. erstellen. Das Verfahren klappt recht gut, auch bei selbst entwickelten Modulen wenn man versteht wie diese XML-Dateien aufzubauen sind (siehe HM485-LIB im github).
Wie ist das mit dem Homegear realisiert? Wo wird hier eine Beschreibung der Hardware abgelegt? Gibt es eine “zentrale Datei” wo die Module beschrieben werden? Muss dazu das Coding geändert werden?
Im Prinzip haben wir wegen des unlogischen Aufbaus nur die Adress-Parameter entfernt und stattdessen die drei Attribute “channel_offset”, “peer_address_offset” und “peer_channel_offset” eingefügt.
In Homegear Version 0.6 werden wir aber ein komplett neues XML-Schema verwenden (aus urheberrechtlichen Gründen - eQ3 sagt, ihr XML-Schema sei urheberrechtlich geschützt). Es wird aber einen Converter geben und vielleicht auch ein Tool zum leichten Erstellen von XML-Dateien.
Mittlerweile habe ich auch ein wenig rumprobiert und mir die Logdateien angesehen. Ich werde mal versuchen meine erstellten XML-Dateien für Homegear anzupassen.
Kurzer Status zur Eigenentwicklung von HMRS485 Modulen:
Ich habe eine XML-Datei für Homegear zusammen gebaut - Ich muss schon sagen das die XML-Dateien für Homegear viel strukturierter sind als für die CCU. Also nochmals Daumen hoch für die geniale Arbeit! Mein selbst entwickeltes Modul kommuniziert nun auch mit Homegear (zumindest wird z.B. ein kurzer oder langer Tastendruck erkannt und auch in den log-Dateien aufgelistet. Zusätzlich versucht Homegear diese “Events” über die RPC Schnittstelle anderen Systemen mitzuteilen… ich bin begeistert!
Als nächstes werde ich die Gegenrichtung, also mit Homegear z.B. einen Aktor setzen, testen.