Apps für Android programmieren leicht gemacht!

Funksteckdosen per App steuern

Heute wollen wir uns damit beschäftigen, mittels einem Raspberry Pi und 433Mhz Sender- und EmpfängermodulFunksteckdosen per Android App steuern zu können.

Wir werden versuchen per Android App, W-Lan und SSH auf dem Raspberry Pi einen Befehl auszuführen, welcher für uns die Steuerung der Funksteckdosen übernimmt, da ein normales Smartphone nicht dazu in der Lage ist über die 433Mhz Frequenz mit einer handelsüblichen Funksteckdose kommunizieren zu können.

Wie bereits bei unserem vorigen Projekt, mit dem Bewegungsmelder per Raspberry Pi, wird dieser Artikel zusammen mit der Webseite Tutorials-RaspberryPi.de entstehen. Auf Droid-Lernen findet ihr wieder einmal den Code, um eine Android App zur Steuerung des Raspberry Pi zu schreiben, während Tutorials-RaspberryPi.de den Part der Programmierung des Raspberry Pi übernimmt.

Ich möchte euch darauf hinweisen, dass wir mittels SSH Schnittstelle Befehle an unseren Raspberry Pi senden. Dies bedeutet, dass wir ohne besondere Konfiguration des Routers und Raspberry Pi nicht außerhalb des W-Lan Netzwerkes eine Steckdosensteuerung vornehmen können. Wenn ihr auch von Unterwegs Steckdosen steuern möchtet, dann solltet ihr versuchen an euren Raspberry Pi eine statische lokale IP-Adresse zu vergeben, im Router eine Port-Weiterleitung einrichten und einen Dienst, wie DynDNS, in eurem Router aktivieren.

 

Programmierung des Raspberry Pi’s:

Wie bereits angesprochen werdet ihr hier nur den Part zur Programmierung der Android App finden.
Für eine Interaktion mit der Funksteckdose ist allerdings eine Programmierung des Raspberry Pi nötig.

Wie ihr diesen programmieren könnt, findet ihr in diesem Artikel: Raspberry Pi + Android: Funksteckdosen per App schalten

 

Programmierung der Android App:

Ablauf:

Vorweg würde ich gerne erläutern, wie der Programmablauf aussieht.
Wir programmieren eine Android App, die per SSH auf unseren Raspberry Pi zugreift. Über einen an den Pi gesendeten Befehl erhalten wir von diesem eine Liste an steuerbaren Steckdosen und deren Status zugesandt.

Die steuerbaren Steckdosen werden innerhalb des Raspberry Pi definiert.

Für jede steuerbare Steckdose werden wir innerhalb der App einen Button erstellen und einen momentanen Status definieren.

Klicken wir auf einen der Button innerhalb der App wird ein entsprechender Befehl an den Raspberry Pi gesendet. Dieser speichert intern den Status der Steckdose und schaltet die Steckdose demnach ein oder eben aus.

Marvin

Ich bin 23 Jahre jung und studiere zurzeit Wirtschaftsinformatik an der Georg-August-Universität in Göttingen. Ich bin ein Mensch, der sich neben der Programmierung noch für tausend andere Dinge interessiert, die mal mehr und mal weniger verrückt sind. Vor allem aber bin ich Feuer und Flamme mit der Programmierung von eigenen kleinen Apps und Programmen, die mein Leben bereichern.

4 Kommentare

*Pflichtfeld

  • Hallo,

    Ich habe vorhin genau zu diesem Thema eine Mail geschrieben. Passt ja genau.

    Eine frage hätte ich allerdings. Wäre es möglich eine Art Zeitschaltuhr damit zu programmieren. Damit ich eine start-und stop Zeit einstellen kann.

    Lg

    • Hallo Michael,

      Das ist gewiss möglich.
      Hier hat man nun 2 verschiedene Möglichkeiten.

      1. Weg:
      Man schaut sich an welche Steckdose welche ID hat und trägt mittels des Befehls „sudo crontab -e“ den Befehl
      „[Zeiten] sudo [Pfad zum Skript]funk [ID der Steckdose] 0“ zum ausschalten und
      „[Zeiten] sudo [Pfad zum Skript]funk [ID der Steckdose] 1“ zum einschalten manuell in die Datei ein.
      Die genaue Notation der Zeitangaben findest du in der Datei, die mit dem „sudo crontab -e“-Befehl angezeigt wird.

      2. Weg:
      Aufgrund deiner Mail habe ich mir überlegt diese Zeitschaltfunktion in die App einzubauen, die ich bald zu diesem und dem Bewegungsmelder-Projekt in den Google PlayStore stellen werden. Dann würde die App die Konfiguration übernehmen.
      Da mir momentan die Zeit fehlt für meine Klausuren zu lernen und gleichzeitig die App zu schreiben und einen Artikel dazu zu veröffentlichen muss ich dich jedoch auf ca. Mitte Oktober vertrösten. Ich hoffe du verstehst, dass die Uni Vorrang hat, auch wenn mir die Programmierung der App mehr Spaß bereiten würde.

      Gruß,
      Marvin