Belegung
RaspberryPi | Transmitter | Receiver |
---|---|---|
Pin 2 / 4 (5V) | VCC | VCC |
Pin 6 / 9 (GND) | GND | GND |
Pin 11 (GPIO17) – RPi Nr.1 | ATAD | – |
Pin 13 (GPIO27) – RPi Nr.2 | – | DATA (to the left of GND) |
Software
Kommen wir nun zur Software. Hierzu müsst ihr erstmal euren Raspberry Pi starten, an dem alles wie oben beschrieben montiert wurde. Anschließen solltet ihr erst mal
sudo apt-get update
ausführen. Dadurch werden eure Paketquellen aktualisiert. Dann muss git-core installiert werden (falls nicht sowieso schon geschehen):
sudo apt-get install git-core
Um die Ansteuerung des Transmitters zu realisieren gibt es ein Projekt namensWiringPi. Dieses installiert ihr euch auf eurem Raspberry Pi wie folgt:
cd git clone git://git.drogon.net/wiringPi cd wiringPi ./build
Auch für unseren Zweck, die Steckdosen zu steuern gibt es bereits ein Projekt. Dieses stammt von xkonni und nennt sich Raspberry-Remote. Ihr installiert es euch so:
cd git clone git://github.com/xkonni/raspberry-remote.git cd raspberry-remote
Damit es läuft, müsst ihr euch noch die send.cpp kompilieren, also folgendes eintippen:
make send make demon
installieren eines sniffers
cd git clone https://github.com/ninjablocks/433Utils.git cd 433Utils/RPi_utils make all
Für die Pin Belegung
gpio readall
test des sniffers
./RFSniffer ./codesend 1234
Webinterface
Natürlich ist es etwas umständlich und unkomfortabel, das Ganze immer über das Terminal/eine SSH-Verbindung machen zu müssen. Aber kein Problem! Raspberry-Remote liefert auch gleich ein passendes Webinterface mit. Damit ihr das nutzen könnt, solltet ihr erst mal Apache und PHP installieren auf eurem Raspberry:
sudo apt-get install apache2 php5
Jetzt gehts zum Webinterface, was xkonni direkt mitliefert. Dazu habe ich im Ordner
mkdir /var/www/html/remote
einen Unterordner remote erstellt. Anschließend den Inhalt von ~/raspberry-remote/webinterface dorthin verschoben:
cp -Rf ~/raspberry-remote/webinterface/* /var/www/html/remote
Jetzt muss noch in der
vi /var/www/html/remote/config.php
Datei die IP Adresse des Raspberry Pis angepasst werden: dazu einfach nano verwenden.
Deamon
Nun fehlt noch der Daemon, auf den das PHP-Script des Webinterfaces zugreift. Dazu gehen wir in das Raspberry-Remote Verzeichnis zurück: cd ~/raspberry–remote und kompilieren den daemon: make daemon
Nun können wir diesen Starten:
sudo ./daemon &
Das & bewirkt, dass der Prozess im Hintergrund läuft.
Jetzt können wir unser Glück mit dem Webinterface probieren: Dazu rufen wir von einem anderen Rechner/Handy das Webinterface per http://192.168.11.44/remote/ (Eure IP einsetzen) auf. Wenn das geht und dort die verschiedenen Steckdosen sichtbar sind, dann muss man jetzt nur noch in der config.php die Steckdosen mit Namen versehen und evtl. die Codes, etc. anpassen. Die Konfiguration sollte selbsterklärend sein.
Falls ihr eine Fehlermeldung wie „Switch out of range: GET /:XY“ bekommt, keine Sorge! In der daemon.cpp sind standardmäßig nur die Hauscodes 00000 & 00001 & 00010 abgedeckt. Das lässt sich aber einfach ändern. Geht dazu wieder ins Verzeichnis von Raspberry Remote (bei mir /home/pi/raspberry-remote/, also via
cd /home/pi/raspberry-remote/
und öffnet die daemon.cpp mit nano. Darin befindet sich der Eintrag „nPlugs=10;“, welche ihr einfach durch „nPlugs= 1110;“. Anschließend übersudo make daemon neu kompilieren und über sudo ./daemon & wieder starten. Jetzt sollte auch bei euch das Webinterface funktionieren.
Quellen:
Let Raspberry Pi’s communicate with each other per 433MHz wireless signals
https://alexbloggt.com/funksteckdosen-raspberry-pi-teil1/
https://alexbloggt.com/funksteckdosen-raspberry-pi-teil2/
Des weiteren habe noch einige anderen tolle Projekte gefunden
OK Google, Schalte Liste an -> https://blog.medienman.de/blog/2017/08/20/google-home-steuert-433-mhz-funksteckdosen/