Session: HomeKit, Weave oder Eclipse SmartHome – Best Practices für erfolgreiche Smart Home Projekte

Sessiongeber / Eckdaten

Namen Sessiongeber: Thomas Eichstädt-Engelen
Twitter: @teichsta
Art der Veranstaltung: Vortrag
Teilnehmerzahl: 12

Verlauf / Inhalte der Session

Mögliche Inhalte der Dokumentation zur Orientierung:

  • Ausgangslage: Vorstellung von Erfahrungen mit der Arbeit mit bestehenden Frameworks
  • Fragen: Wie kann eine eigene Lösung für ein IoT-Problem geschaffen werden, ohne eine komplett neue Lösung zu bauen?
  • Ideen: Vorhandene Ressourcen nutzen und diese für sich zu individualisieren. Wichtig dabei: Einsatz eines Community Managers

Der Sessiongeber berichtet darüber, wie sein Unternehmen mit bereits bestehenden Lösungen gearbeitet hat, um eigene Produkte zu bauen.

Dazu stellt er folgende Frage: Wenn man selbst ein Smart Home bauen wollen würde, wie könnte man das angehen? Muss man etwas Neues erschaffen oder können bereits bestehende Systeme/Elemente verwendet werden? Beispielsweise bietet der Raspberry Pi Menschen eine einfache Möglichkeit, selbst etwas zu bauen.

Herausforderung

Um etwas Eigenes im Bereich IoT zu bauen, braucht es:

  • Software-Architektur
  • Modularisierung
  • Konnektivität
  • Interoperabilität
  • Regeln/Automation
  • User Interfaces
  • Systemtest/Wartung

Es wird deutlich, dass es nicht ganz so einfach ist, eigene IoT-Lösungen zu entwickeln. Vielleicht ist es besser zu prüfen, ob sich nicht schon etwas auf dem Markt befindet, das sich nutzen und adaptieren lässt.

Lösung

Das Framework HomeKit von Apple ist eine mögliche Lösung. Seit 2002 haben sich hier bereits 35 Allianzen gebildet, die bei IoT unterstützen wollen. Die meisten haben sich in den letzten 2 Jahren gegründet.

Eclipse smarthome ist ein Hersteller-unabhängiges Framework. Es bietet eine offene Architektur und ist auf Erweiterbarkeit ausgelegt. Zusätzlich verfügt der Anbieter über eine große Community und eine populäre Programmiersprache.

Ein Aufbau könnte wie folgt aussehen:

Basis OS, darauf wird JVM aufgesetzt, anschließend OSGi-Container und eclipse smarthome als Module. Darauf können verschiedenen Lösungen, die jeder hat bzw. nutzt, installiert werden.

Learning

Der erste Schritt war, eine Komplett-Lösung bauen zu wollen. Dies war keine gute Idee, wie der Sessiongeber berichtet. Es ist nicht sinnvoll, einen Open Hub aufzubohren, sondern es empfiehlt sich, direkt von vorne anzufangen.

Besser ist deshalb auch, fehlende Features zu identifizieren, den Schichten einzeln zuzuordnen und anschließend Lösungen dafür zu formulieren. In diesem Prozess ist es wichtig, GitHub Issues anzulegen und darin Lösungen zu formulieren.

Empfehlenswert ist es, einen EHS Community Manager zu besetzen. Dieser begleitet den Prozess und hält fest, welche Issues geschlossen wurden und was bereits erledigt ist.

Sehr wichtig ist es zudem, mit der Entwicklung Schritt zu halten. Individuelle Entwicklung sollte klein gehalten werden, da es zu unübersichtlich werden und negative Folgen auf den Entwicklungsprozess haben kann. Darum ist es wichtig, dass sämtliche Änderungen, die in der Software vorgenommen werden, durch den Community Manager überwacht werden. Denn es ist wichtig zu wissen, wo welche Veränderungen vorgenommen wurden. Auch eine Dokumentation der ständigen Entwicklungsprozesse ist wichtig.