Wenn man nach Tutorials für den BananaPI oder auch den Raspberry sucht, stolpert man zwangsläufig über diese 433Mhz Empfänger und Sender für kleines Geld. Was also liegt näher, als das mal auf einem BananaPi nachzubauen? Gesagt, getan und nach einiger Zeit hatten die Chinesen geliefert.

BPI_433Mhz

Links der BananaPI, an dem mittels dreier Leitungen der 433Mhz-Empfänger angeschlossen ist. Daneben ein 433Mhz-Sender. Dieser Empfänger wird im Set mit einem Sender geliefert, welcher hier nicht auf dem Bild ist. Der Anschluß gestaltet sich einfach, die Anschlüsse sind auf der Unterseite der Platine beschriftet. VCC - GND - DATA

Wenn es ans Anschließen solcher Komponenten geht, ist ein Bild sehr wichtig. Die PIN-Belegung des BananaPIs.

(c) bananapi.com

(c) bananapi.com

  • VCC - GPIO CON3 P02 (5V)
  • GND - GPIO CON3  P06 (GND)
  • DATA - GPIO CON3 P13 (IO-2)

Damit hätten wir den Hardwareteil erledigt. Nun geht es an die Software. Ich setze hier als Betriebssystem ein Bananian ein. Als nächstes brauchen wir wieder eine Entwicklungsumgebung auf dem BananaPI. Dazu folgende Programme installieren.

apt-get install git make gcc libc6-dev g++

Auf dem Raspberry gibt es eine Library zum Schalten und Lesen der GPIOs namens WiringPi. Diese gibt es von lemaker.org auch in einer Version für den BananaPI. Diese laden wir uns jetzt auf den BPI.

git clone https://github.com/LeMaker/WiringBP -b bananapi

Dann in das entsprechende Verzeichnis springen und die Datei build ausführbar machen.

chmod +x ./build

Wenn man diese Datei nun mittels ./build aufruft, bekommt man Fehler in Verbindung mit "sudo". Da wir auf dem Bananian kein "sudo" voranstellen müssen, gibt es sofort eine Fehlermeldung. Da ich das mittlerweile kenne, weiß ich mir auch zu helfen. Die Datei aufrufen:

nano build

Alle "sudo" entfernen, Datei speichern und erneut aufrufen. Nun sollte alles passen. Mit folgendem Befehl kann man sich einen Überblick über die GPIOs verschaffen.

Dann einfach die Datei build aufrufen.

./build

Danach

gpio readall

gpio_readall

Nun können wir die GPIOs ansprechen. Wir möchten aber den Sender und Emfänger benutzen, dazu fehlt uns aber noch was. Nennt sich 433Utils. Folgende Befehle in der Konsole eingeben.

git clone https://github.com/ninjablocks/433Utils.git
cd 433Utils/RPi_utils
make all

Nun haben wir in dem entsprechenden Ordner drei ausführbare Dateien. Das wären

  • send
  • codesend
  • RFSniffer

Als erstes starten wir mal den Sniffer.

./RFSniffer

 Folgende Ausgabe erhält man, wenn man nun den Sender betätigt.

 

RFSniffer

Bei euch sollte jetzt ein "Received 12345678" erscheinen. Stört Euch nicht an dem Rest, ich habe schon angefangen mir das Script ein wenig umzubauen. Viel Spaß beim Ausprobieren und wie immer, wer Tipps hat oder etwas besser weiß, haut es in die Kommentare rein ;)

Quellen: