01. Mai 2019 · Kommentieren · Kategorien: Router

Hacken Sie Ihre Leistungssteuerung bequem von Ihrem Sofa aus.

Hinweis: Wenn Sie Linux verwenden, können Sie mit Cron planen, wann Ihre Schalter automatisch ein- und ausgeschaltet werden.

Es gibt viele Heimautomationskits von der Stange, aber für den individuellen Bedarf ist der Raspberry Pi der Herausforderung gewachsen. Tim Leland entwickelte seine eigenen mit Hilfe eines Satzes von Radiofrequenz-Chips (RF-Chips). Nach einigen Experimenten benutzte er die GPIO-Pins (General Purpose Input Output) als RF-Transceiver und steuerte zwei externe Sender- (Tx) und Empfängerplatinen (Rx).

1 EINRICHTEN DER HARDWARE

Fernsteuerung von Steckdosen mit Ihrem Raspberry Pi

Für dieses Projekt benötigen Sie einen Satz Etekcity-Fernschalter, einen Satz 433 MHz RF-Tx- und Rx-Chips (Leland verwendete SMAKN-Markenchips von Amazon), einen Raspberry Pi (jedes Modell mit GPIO-Pins sollte funktionieren) und ein Netzteil dafür. Für die Rx-Platine, mit den Pins zu Ihnen gerichtet, verkabeln Sie 5V mit dem linken Pin, Himbeer Pi GPIO 2 mit dem Pin rechts davon und Masse mit dem rechten Pin.

Befestigen Sie den Raspberry Pi GPIO 0 für den Tx, mit den Stiften zu Ihnen gerichtet, am linken Stift, 5V in der Mitte und Masse am rechten Stift. Masse und 5V sind vom Raspberry Pi, und die Pins können sich ändern, wenn Sie einen anderen Tx/Rx verwenden. Um die Reichweite der funksteckdose raspberry pi Ihres Tx zu erhöhen, können Sie einen Draht über Löten mit dem Antennen-Lötpunkt verlöten oder, wie bei Leland, einfach eine 30cm lange CAT 5 Leitung verdrehen.

2 EINRICHTEN DER SOFTWARE

Laden Sie Raspbian herunter und extrahieren Sie die .img-Datei. Sichern Sie eine SD-Karte mit diesem Betriebssystem und legen Sie diese in Ihren Pi ein. Melden Sie sich über Ethernet oder Wi-Fi (Pi 3) in Ihrem Netzwerk an und geben Sie „sudo apt-get install git-core“ ein. Installieren Sie WiringPi, indem Sie „git clone git://git.drogon.net/wiringPi“ eingeben. Installieren Sie den Apache, indem Sie „sudo apt-get install apache2 -y“ eingeben und dann PHP mit „sudo apt-get install php5 libapache2-mod-php5 -y“ installieren. Entfernen Sie die Datei „index.html“, indem Sie „sudo rm index.html“ eingeben, und erstellen Sie dann eine Datei namens „index.php“, indem Sie „sudo nano index.php“ eingeben. Geben Sie „git clone https://github.com/timeland/rfoutlet.git/var/www/rfoutlet“ ein.

3 EINRICHTEN DER CODES

Um herauszufinden, welche sechsstelligen Codes für jede Steckdose verwendet werden, gehen Sie in das Terminal und geben Sie „sudo /var/wwww/rfoutlet/RFSniffer“ ein. Erfassen Sie die Codes sowie den empfangenen Impulswert. Wenn der Wert von 189 abweicht, bearbeiten Sie den Impulswert codesend.cpp, indem Sie im Terminal „sudo nano /var/wwww/rfoutlet/RFSource/codesend.cpp“ eingeben. Ändern Sie die Zeile „mySwitch.setPulseLength(189)“, um den gerade erhaltenen Impulswert anzugeben. Stellen Sie sicher, dass Sie sich im Verzeichnis „/var/www/rfoutlet/RFSource/“ befinden, und speichern Sie die Datei, indem Sie „ctrl+x“, dann „Y“ und dann „Enter“ drücken.

Kompilieren Sie durch Eingabe des Befehls „sudo make codesend“, verschieben und überschreiben Sie dann die alte Codesend-Datei durch Eingabe von „mv f codesend /var/wwww/rfoutlet“. Aktualisieren Sie toggle.php, indem Sie „sudo nano /var/wwww/rfoutlet/toggle.php“ eingeben. Geben Sie abschließend „sudochown root.root /var/www/rfoutlet/codesend“ und dann „sudo chmod 4755 /var/www/rfoutlet/codesend“ ein.

4 ÜBERNEHMEN SIE DIE KONTROLLE ÜBER IHREN BROWSER

Navigieren Sie zur IP-Adresse des Raspberry Pi auf Ihrem Computer oder einem anderen Gerät (indem Sie entweder „ipconfig“ auf der Befehlszeile des Pi eingeben oder die angeschlossenen Geräte auf der Seite Ihres Routers anzeigen). Hier finden Sie eine Webseite mit numerischen Bezeichnungen und Wahlschaltern „on“ und „off“. Wenn es korrekt eingerichtet ist, können Sie jeden Ihrer angeschlossenen Ausgänge von dieser Webseite aus steuern. Dies kann von außerhalb Ihres Netzwerks erfolgen, indem Sie einen Port auf Ihrem Router öffnen oder über ein Virtual Private Network (VPN) für mehr Sicherheit.