Der Grund für die Entwicklung war einerseits Effizienz und andererseits der Lern- und Spaßansatz.
Hardware & Software
MySmartHome basiert auf dem Framework Laravel (v10) und läuft in meinem Heimnetzwerk auf einem Raspberrpi 4B mit 4GB RAM.
Funktionen
Die Funktionen von MSH änderten sich im Verlauf des Betriebs, da einige Funktionen zu umfangreich wurden, um sie in ein so kleines Projekt zu integrieren. Hier sind die Funktionen am Ende von MSH:
- (Dashboard)
- Lagerverwaltung
- Solardaten
- Tankstellenpreise
- Poolthemperatur
Dashboard:
Das Dashboard liefert eine Überblick über die wichtigsten Funktionen und Daten des Smart-Home-System und stellt aktuelle Wetterdaten bereit.

Lager:
Mit dem Lager ist eine kleine Abstellkammer gemeint, in der bspw. Konserven, Nudeln und andere Lebensmittel gelagert werden. Da man bei solchen Lebensmitteln oft das Ablaufdatum vergisst und man am Ende mit abgelaufenen Lebensmittlen verbleibt. Um dieses Problem von vergessenen und somit abgelaufenen Konserven und Lebensmittlen zu lösen, entwickelte ich ein kleines Lagersystem.
In diesem System kann man Lebensmittel mit einem Ablaufdatum (und deren Anzahl) anlegen. Falls das Ablaufdatum innerhalb der nächsten sieben Tage überschreiten werden sollte, bekommt man eine Erinnerung auf das Dashboard des Smart- Home-Systems. Somit wird ein einfacher Überblick über alle Lebensmittel ermöglicht.
Ablauf: Nach dem Einkauf trägt man die Lebensmittel in das System ein. Natürlich ist das System nicht darauf ausgelegt, Lebensmittel wie Joghurt oder andere schnell verderbliche Lebensmittel einzutragen, da man so einen hohen Verwaltungsaufwand hat. Man kann sich auch das Austragen nach dem Verzehr der bspw. Konserve sparen. Das System erinnert einem an ein bald ablaufendes Produkt, worauf man in die Abstellkammer sieht. Falls kein solches Produkt vorhanden ist, kann man es problemlos wieder löschen und man ist sich sicher, dass keine Lebensmittel das Ablaufdatum überschreiten.
Solar:
In dem Abschnitt Solar werden die Solardaten von Balkonkraftwerken erfasst und dargestellt (im folgenden Video sind generierte Beispieldaten). Momentan ermöglicht es das Erfassen von zwei verschiedenen Kraftwerke. Die Details der Kraftwerke sind in einer Config hinterlegt. Das Auslesen der Daten erfolgt über mein Heimnetzwerk auf die passwortgeschützten Wechselrichter.
Beim Aufrufen der Oberfläche werden Live die Daten der Panele abgerufen und dargestellt. Hierbei handelt es sich um die aktuelle Leistung, Ertrag des Tages, Gesamtertrag und den Status der Panele (ob sie an oder aus sind). Auch läuft alle 15min ein Cron-Job, der die aktuellen Daten der Kraftwerke speichert. Falls die Kraftwerke offline sind, werden die zuletzt gespeicherten Daten geladen. Auch werden die Daten in einem Diagramm (von Anfang bis Ende des Tages) dargestellt, wodurch man die Leistung im Verlauf des Tages nachvollziehen kann. Weiter kann man sich auf einer weiteren Webpage die Leistung über den Tag für vergangene Tage anzeigen lassen oder die gesamte Tagesleistung über einen benutzerdefinierten Zeitraum anzeigen lassen.
Tanken:
Durch die Oberfläche Tanken lassen sich die aktuellen Tankpreise, der Tankstellen in meiner nähe abfragen. Somit kann man immer an der Tankstelle tanken, an der es am günstigsten ist.

Pool:
Zu dem Poolthermometer existiert bereits ein Beitrag, der vom Bau bis auf die Integration in MSH eingeht: Beitrag
Entwicklung
Ich habe über die Zeit versucht verschiedene Features zu integrieren. Oft war leider der Aufwand viel höher als die daraus resultierenden Erfolge. Somit habe ich mich entschieden MySmartHome in dieser Form "aufzugeben" und zu Home Assistant zu wechseln. Home Assistant ist eine open-source Hausautomation, für die sehr viele offiziele und Community Integrationen existieren. Auch kann man selber Integrationen schreiben, was ich für bspw. das Poolthermometer machen werde. Somit wechsle ich von einem von Scratch entwickelten System zu Home Assistant und MSH wird als Integrationen für Home Assistant weiter existieren.