Hallo zusammen,
auch ich habe wochenlang nach einem geeigneten Projekt für meinen Pi gesucht und schließlich folgende Idee realisiert & nun schon 2 Monate lang erfolgreich getestet:
Wenn ich nach Hause komme, schalte ich für gewöhnlich meine Stereoanlage ein, wähle einen Internet-Chillout-Radiosender und schalte die gemütliche Beleuchtung in meinem Wohnzimmer ein (2 Stehlampen + LED-Beleuchtung am Weinregal). Was für ein Aufwand dachte ich mir. Das wollte ich nicht mehr manuell machen UND dafür auch keine Buttons auf einer Website, App o.ä. klicken, es sollte alles automatisch funktionieren. Das habe ich nun wie folgt realisiert:
- Automatische Erkennung, wenn ich zu Hause bin: dafür wollte ich mein iPhone nutzen. Erster Versuch war zu erkennen, ob mein iPhone sich im WLAN befindet. Das ging schief, da dass iPhone sich erst ins WLAN einlogged, wenn es aus dem Stand-by-Modus aufgeweckt wird. Dafür müsste ich jedes mal, wenn ich nach Hause komme, das iPhone einmal antippen - geht natürlich gar nicht. Zweiter und erfolgreicher Ansatz: Bluetooth. Hab mir diesen Dongel hier gekauft (https://www.modmypi.com/blog/installin…luetooth-dongle). Damit pinge ich die MAC-Adresse meines iPhones (z.B. alle 5 Sekunden). Der Dongle hat eine Reichweite von ca. 20 Metern und bemerkt mich, sobald ich die Wohnung betrete. Beim iPhone muss natürlich Bluetooth aktiviert sein, habe übrigens kaum Veränderungen in der Akku-Laufzeit bemerkt.
- Einschalten des AV-Receivers: mein Pi ist über HDMI mit meinem AV-Receiver verbunden. Ich nutze die Libcec-Bibliothek von Pulse-Eight (http://libcec.pulse-eight.com). War zwar etwas nervenaufreibend die Library für den Pi zu kompilieren, aber irgendwann ging's. Bei Interesse kann ich hier ins Detail gehen. Für Internet-Radio-Streamen nutze ich die Anwendung "MPC" mit einer Playlist meiner Lieblings-Radiosender.
- Einschalten der Beleuchtung: dafür habe ich bei Amazon zunächst Funksteckdosen von Itertechno bestellt (http://www.amazon.de/Intertechno-Funksteckdosen-fach-Set-IT-1500/dp/B0054IPASK/ref=sr_1_4?ie=UTF8&qid=1378907159&sr=8-4&keywords=funksteckdose&tag=psblog-21 [Anzeige]). Als Funksender habe ich mir bei Ebay einen USB-Sender von Telldust gekauft (http://www.ebay.com/itm/TellStick-…r-/281099221064). Und weil ich noch Zeit hatte, schalte ich die Beleuchtung abhängig von der Uhrzeit des Sonnenuntergangs ein. Den dazu passenden Webservice gibt es hier: http://www.earthtools.org/webservices.htm#sun
Ablauf: ich komme nach Hause, der Bluetooth-Dongle erkennt das, der Pi schaltet über HDMI die Musik + TV ein, wenn die Sonne untergeht schaltet er auch noch das Licht ein. Alles super, wie gewünscht. Funktioniert jedoch nur ein mal und danach musste ich alles händisch resetten. Geht natürlich auch nicht.
Damit das System vollständig autonom agiert, starte ich (nach dem das System alles eingeschaltet hat) einen Timer, der die Musik automatisch nach ca. 1 Stunde wieder abschaltet, sonst läuft sie dauernd weiter. Nach dem der Abschalt-Timer zugeschlagen hat, wird das System resettet. Da es jedoch sofort wieder anfangen würde die Musik etc. einzuschalten, habe ich eingebaut, dass die Verbindung zum iPhone vorher verloren gegangen sein muss, d.h. dass ich die Wohnung verlassen haben muss. Das erkenn ich, in dem der Ping über Bluetooth "Null" o.ä. zurückliefert. Da ich Java-Entwickler bin, läuft das alles mit Java + OSGi (letzteres nur zum Spaß). Wenn gewünscht, kann ich gerne den Quellcode hier posten.
So kann ich jeden Tag nach Hause kommen, die Musik + Licht geht an und ich muss nix machen. Sobald ich die Wohnung verlasse wird das ganze System re-initialisiert und wenn ich wieder da bin, geht das Spiel von vorn los.
So, viel Text für dieses kleine Ergebnis, war aber ne Arbeit von netto ca. einer Woche.