Selbstlernende Funksteckdosen (ohne DIP-Schalter) mit dem Raspberry Pi steuern

Schon länger wollte ich einmal Funksteckdosen mit einem Raspberry Pi steuern.  Also ein & ausschalten!

Und da ich mich in letzter Zeit sehr Intensiv mit meinem neuem 3D Drucker dem Creality Ender 3 Pro (*Amazon Link) beschäftige, musste ich mir die Zeit einfach einmal nehmen 😉

Da ich den 3D Drucker über den Raspberry Pi steuern & überwachen, sowie den Drucker & dessen Beleuchtung ein / ausschalten wollte, habe ich auf dem Raspberry Pi „Octoprint“ installiert.
Was im Prinzip ja nicht anderes ist als Raspbian Linux, nur eben mit der Steuerungssoftware „Octoprint“ bereits vorinstalliert 😉 

Es gibt zwar eine Menge an Tutorials dafür, die meisten davon verwenden aber noch alle „alte“ Funksteckdosen mit DIP-Schaltern.

Da ich aber solche Funksteckdosen kaum mehr zu bekommen sind, brauchte ich eine Lösung die auch mit den „neueren“ sogenannten selbstlernenden Funksteckdosen funktioniert 😎 

Daher möchte ich hier eine kleine Anleitung schreiben, wie das funktioniert & welche Teile / Hardware ich hierfür verwendet habe 😉

 

Folgende Hardware habe ich für meinen Testaufbau verwendet bzw. wird benötigt:

Software:

  • Win32DiskImager (um das Image auf die SD Karte zu schreiben)
  • Putty oder anderer SSH Client

Optional noch:

 

Hat man alles nötige beisammen, kann es auch schon losgehen 😉

In dieser Anleitung gehe ich übrigens davon aus, dass Raspbian oder Octoprint oder ein anderes Linux schon auf der SD-Karte installiert ist, bzw. auf dem Raspberry Pi läuft!
Auch gehe ich davon aus, dass jeder weiß wie man sich auf dem Pi verbindet & anmeldet 😉
Außerdem setzte ich hier auch grundlegende Linux & Raspberry Pi Kenntnisse voraus
😆
Falls das noch nicht der Fall ist, gibt es im Netz ja genügend gute Anleitungen.

(Sollte aber dennoch jemand Hilfe etc. brauchen, so kann er sich aber gerne an mich wenden!)

 

Nun kann es los gehen 😉

  1. Zuerst verbindet man sich mit Putty oder einem anderen SSH Client auf den Raspberry Pi, und loggt sich dort ein.
  2. Als nächstes aktualisieren wir den Pi nochmals, bevor wir die benötigten Programme installieren mit:
    apt-get update
    apt-get upgrade
  3. Danach installieren wir „GIT“ und „WiringPi„:
    apt-get install git
    git clone git://git.drogon.net/wiringPigit
    cd wiringPi
    ./build
  4. Als nächstes müssen wir das Empfangsmodul & das Sendemodul am RPi bzw. dessen GPIO Pin’s anschließen:Für das Sendemodul verbinden wir nun folgende Pin’s mit dem Pi:

    Raspberry Pi GPIO 17 -> DATA 433Mhz Sendemodul
    Raspberry Pi GND -> GND 433Mhz Sendemodul
    Raspberry Pi 5V -> VCC 433Mhz Sendemodul

    Für das Empfangsmodul verbinden wir die folgenden Pin’s mit dem Pi:
    (hier sieht man übrigens auch gleich nochmal das vorhin angeschlossene Sendemodul 😉 )Raspberry Pi GPIO 27 -> DATA 433Mhz Sendemodul
    Raspberry Pi GND -> GND 433Mhz Sendemodul
    Raspberry Pi 5V -> VCC 433Mhz Sendemodul

    Und hier auch noch (falls es jemand braucht) die Belegung der GPIO Pin’s auf dem Raspberry Pi selbst:


    ➡  Falls auch noch jemand sehen möchte wie es bei mir im angeschlossenen Zustand ausgesehen hat….. 😎

  5. Um den 433 MHz Sender & den 433Mhz Empänger nun ansprechen zu können, benötigen wir noch die Bibliothek „433UtilsVorher müssen wir aber noch „Git-Core“ installieren mit:
    apt-get install git-core
    apt-get update
    apt-get upgrade

    Danach installieren wir die „433Utils“:
    git clone --recursive https://github.com/ninjablocks/433Utils.git
    cd 433Utils/RPi_utils
    make all
  6. Im nächsten Schritt lesen wir den Code für jede Taste der Fernbedienung aus.
    Sprich für die erste Steckdose Taste EIN & Taste AUS, gibt es jeweils einen eigenen Code!Hierfür welchen wir in nun in den Unterordner „. /RFSniffer„, und starten das gleichnamige Programm „RFSniffer
    cd RFSniffer
    ./RFSniffer
  7. Jetzt halten wir die Fernbedienung zum Empängermodul, und drücken dort z.B. für die erste Steckdose die Taste EIN.
    In Putty bekommen wir danach eine Meldung die uns den CODE der jeweiligen Taste mitteilt:
    ➡  Recieved XXXXXXX (wobei die X hier für die Zahlenkombination der jeweiligen Taste steht!)Das ganze wiederholt Ihr nun mit jeder Taste, und das jeweils für EIN & AUS!

    Notiert auch diese Codes, penibel!
    Also welcher Code für welche Taste ist, und auch ob dieser für EIN oder für AUS ist!
    😉
    💡  Achja, am besten steckt Ihr bevor Ihr das macht, die Funksteckdosen auch noch in eine richtige Steckdose, mit einem kleinem Verbraucher wie einer Lampe… 😉
  8. Hat man alle Codes ausgelesen & notiert, beenden wir das Programm „RFSNiffer“ , indem wir „STRG+Cdrücken.
  9. Jetzt kommen wir zu dem Teil des ganzen hier, der richtig Spaß macht!
    Wir steuern erstmals die Funksteckdosen über den Raspberry Pi bzw. eben über SSH….Dafür nutzen wir das Programm „codesend„, dass ebenfalls im Ordner „RPI_utils“ liegt 😉
    Steckdose 1 einschalten:
    codesend XXXXXXX (hier wieder die XXX durch die vorhin notierte Zahlenkombination von Steckdose 1 für EIN ersetzen!)

    Als reines Beispiel:
    codesend 1234567
    Natürlich muss dafür die Steckdose 1 auch in einer richtigen Steckdose stecken, und natürlich sollte auch ein Verbraucher wir z.B. eine Lampe angeschlossen sein, um zu sehen ob auch alles funktioniert hat 😉

    Steckdose 1 ausschalten:
    codesend XXXXXXX (hier wieder die XXX durch die vorhin notierte Zahlenkombination von Steckdose 1 für AUS ersetzen!)Als reines Beispiel:
    codesend 0234567

     

  10. Hat man alles richtig gemacht, haben wir gerade erfolgreich einen Verbraucher auf Funksteckdose 1 ein & wieder aus geschaltet 😉
    Das ganze lässt sich nun mit den vorhin notierten Codes, auch für die anderen Funksteckdosen wiederholen!
    Auch kann man diesen Befehl zum ein & ausschalten nun in seinen eigenen Skripts / Webseiten etc. einbinden.:arrow:  Ich z.B: habe bei mir in Octoprint 4x Buttons hinzugefügt, mit denen ich jeweils einmal den 3D Drucker und die Beleuchtung dafür  ein & ausschalten kann :mrgreen:

 

Ich hoffe ich konnte mit dieser kleinen überschaubaren Anleitung dem ein oder anderen ein bisschen weiterhelfen.
Natürlich gäbe es noch 10000 weitere Möglichkeiten, das ganze zu optimieren bzw. das ganze auf die „Spitze“ zu treiben…. 😆

Das würde hier aber den Rahmen sprengen 😆

 

Permanentlink zu diesem Beitrag: http://blog.adminweb.at/selbstlernende-funksteckdosen-ohne-dip-schalter-mit-dem-raspberry-pi-steuern/

Schreibe einen Kommentar

Your email address will not be published.