RPi SmartHome Control 2.2

  • Ich möchte euch hier mal mein neustes Projekt vorstellen.


    Das RPi SmartHome Control (kurz SHC) ist eine Software zur Heimautomatisierung mit 433MHz Funksteckdosen. Jetzt mag sich die Frage aufdrängen warum noch eine weitere Software zur Heimautomatisierung? Das ist recht einfach zu beantworten, auf der suche nach einer passenden schon fertigen Software habe ich keine vollständige Anleitung gefunden so ein System auf zu bauen und auch keine die eine Zeitsteuerung hat wie ich sie mir vorgestellt habe.


    Ziel des Projektes ist es vor allem eine Komfortable Lösung zum nachbauen zu schaffen und eben eine umfangreiche Zeitsteuerung zu intrigieren.


    Was kann das SHC?


    • schalten von Funksteckdosen von fast allen Herstellern
    • schalten von GPIOs des Raspberry Pi
    • starten von WakeOnLan fähigen Geräten
    • Aktivitäten (Gruppierung der schaltbaren Elemente)
    • Countdowns (Gruppierung der schaltbaren Elemente die nach einer vorgegebenen Zeit automatisch zurück geschaltet werden)
    • Umfangreiche Zeitsteuerung
    • Ereignissteuerung
    • Sensoren
    • Benutzer zu Hause Funktion (stellt über Smartphones mit WLan fest ob jemand zu Hause ist)
    • Web und Smartphone Oberflächen die sehr individuell Einstellbar sind
    • verschiedene Styles
    • verteilte Installation Möglich


    Was wird mindestens zum Betrieb benötigt?

    • 1x Raspberry Pi
    • 1x 433MHz Sender


    Die Installation wird jetzt nicht mehr in einer PDF Datei beschrieben sondern im Wiki auf GitHub.


    Wie geht es weiter?


    Nachdem ich jetzt einige Monate mit Hochdruck an der Version 2 gearbeitet habe werde ich mich erst einmal wieder um andere Projekte kümmern. Die Entwicklung wird aber auf jeden Fall weiter gehen, es gibt auch schon einige Ideen für neue Funktionen die in kommenden Versionen eingebunden werden. In den nächsten Wochen werde ich noch das Wiki auf GitHub mit weiteren Informationen füllen.


    Zukünftig wird es auch eher kleinere neue Versionen geben mit nur ein oder zwei neuen Features dafür sind diese aber schneller für alle verfügbar und müssen nicht ein halbes Jahr oder länger bis zum nächsten großen Release warten. Die kleinen Versionssprünge werden sich auch Updaten lassen, aber nur wenn von einer auf die nächste Version gegangen wird, Sprünge über 2 oder mehr Versionen werden nicht möglich sein.


    Wie sind Ideen und Anregungen für neue Features oder Verbesserungen bestehender Features willkommen.


    Eckdaten zum Projekt:


    Start der Entwicklung: 23.10.2013
    aktuelle Version: 2.0.0
    Entwicklerversion: 2.1.0
    Installationen: ca. 1500
    Projektumfang:

    • 66600 Zeilen Programmcode (davon 21430 (32.46%) Kommentare und 44580 (67.54%) Programmcode)
    • 58 Namensräume
    • 331 Klassen
    • 20 Interfaces
    • 1834 Klassenmethoden
    • 133 Konstanten


    verwendetet Programmiersprachen:

    • PHP
    • xHTML
    • JavaScript
    • CSS
    • Python


    verwendete Libarys:

    • wiringPi (muss separat installiert werden) (C)
    • rcswitch-pi (muss separat installiert werden) (C)
    • pilight (muss separat installiert werden) (C)
    • jQuery (JavaScript)
    • jQuery Ui (JavaScript)
    • jQuery mobile (JavaScript)
    • phpSerial (PHP)
    • Mobile Detect (PHP)


    Projektstatus:


    Version 1.0.0 am 15.02.2014
    Version 1.0.1 am 22.03.2014
    Version 1.0.2 am 26.03.2014
    Version 1.2.0 am 26.04.2014
    Version 2.0.0 am 30.11.2014
    Version 2.2.0 am 25.05.2015



    Projektseite: http://agent4788.github.io/SHC_Framework/

  • Cool!


    Sieht schon recht toll aus. Ich vermute Du hast fuer die Oberflache auch jquery mobile genutzt, oder?


    Ich verfolge das mal weiter....

  • aktueller Stand:


    erledigte Punkte:


    • Schalten von Funksteckdosen per Hand
    • Verwaltung von Funksteckdosen (entragen, ändern, löschen)
    • Aktivitäten (Gruppieren von Funksteckdosen)
    • Aktivitäten von Hand schalten
    • Aktivitäten verwalten (erstellen, ändern, löschen) [hinzufügen, löschen von Funksteckdosen]
    • Zeitsteuerung von Funkteckdosen und Aktivitäten durch Schaltpunkte
    • Schaltbereiche (eingrenzen der Schaltpunkte in Zeiträum)
    • Schaltbereiche verwalten (erstellen, ändern löschen)
    • Funksteckdosen in Räumen organisieren
    • Räume verwalten (eintragen, ändern, löschen)
    • DS18B20 Sonsoren auslesen und Räumen zuordnen
    • DS18B20 Sensoren automatisch einlesen


    offene Punkte:


    • DHT 11/22 Sensoren auslesen und Räumen zuordnen
    • DHT 11/22 Sensoren verwalten (eintragen, ändern löschen)
    • BCMP085 Sensoren auslesen und Räumen zuordnen
    • BCMP085 Sensoren verwalten (eintragen, ändern löschen)
    • Schaltpunkte verwaltung (erstellen, ändern löschen)


  • Nun steht die Demoversion unter http://demo.smarthome.rpi-controlcenter.de/ zur Verfügung.


    Die Demo Version wird immer zur vollen Stunde automatisch zurück gesetzt und vom Hauptbenutzer können Name und Passwort nicht geändert werden. Des weiteren werden die Schaltbefehle nur simuliert, es geht also nicht wirklich iwo das Licht an oder aus.


    Benutzername: admin
    Passwort: admin

  • Morgen wird die Software inklusive Hardware in den Produktivbetrieb übergehen (Weihnachtsbeleuchtung steuern). Es sind zwar noch nicht alle Funktionen zu 100% fertiggestellt, aber das wichtigste ist Lauffähig. Am 4. oder 5.12. müsste ich dann auch dazu kommen die Software endgültig fertig zu stellen, dann wird es auch alles zum Download geben und entsprechende Installationsanleitungen.

  • SO, nachdem weiterhin sporadisch einzelne Steckdosen nicht geschaltet haben, habe ich erst versucht den Sender mit 9v statt 5v zu betreiben was nur wenig Verbesserung gebracht hat. Auch eine bessere Antenne hat nicht den gewünschten Effekt gebracht. Erst nachdem ich den Sender jetzt mit den maximal möglichen 12V betreibe schalten alle Steckdosen zuverlässig an und aus. Dafür habe ich einen Batterieblock mit 8 AA Batterien genommen (8x 1,5v in Reiche = 12V) mit dem Digitalmultimeter habe ich knapp 13v. Eine genaue Beschreibung wie man das ganze nachbauen kann wird es mit dem Release des Projektes geben. Falls Interesse besteht könnte ich auch anbieten die Plainen zu fertigen und als Baugruppe zu verkaufen, dazu müssten aber mindestens 5 - 10 Mann zusammenkommen.

  • Aufgrund einer kleinen Planänderung wird das Projekt sich noch etwas verzögen. Da ich mit der Abdeckung noch nicht zufrieden bin werde ich jetzt 2 RPi zum senden nehmen, dazu sind einige änderungen nötig. Dafür werde ich einen Netzwerksever Programmieren welcher die Sendebefehle annimmt und mit 433MHz sendet. Das SHC meldet sich als Client bei allen Servern an und sendet selbst keine Befehle mehr aus. Dadurch können beliebig viele RPi im Haus/Wohnung verteilt werden um optimale Abdeckung zu erreichen.