• Erste Schritte
  • Hardware & GPIO
  • Projekte
  • Software
    • Webserver
  • Arduino & ESP8266
  • Hausautomatisierung
  • Sonstiges
    • News
Facebook Twitter YouTube
Tutorials for Raspberry Pi Tutorials for Raspberry Pi
  • Einstieg
    • Erste Schritte
      • Raspberry Pi 3 Einstieg - Starter KitWas brauche und wie starte ich? – Raspberry Pi Einstieg
    • Einrichtung
      • microsd_karte_menuRaspbian Betriebssystem auf eine SD Karte flashen – Einfach & Schnell
      • wlanbluetooth_menuWLAN und Bluetooth einrichten – Raspberry Pi 4
      • wifi_menuWLAN Stick installieren und einrichten – Alternative
      • bash_menuSSH Zugriff einrichten via Putty – Kommandozeilen Zugriff
      • rdp_menuRemotedesktop Verbindung aufbauen – Fernsteuerung
    • Einsteiger Projekte
      • Sinnvolles Raspberry Pi Zubehör
      • 15 Raspberry Pi Projekte für Anfänger
      • Ampelschaltung mit GPIOs
      • GPIOs mit Port Expander erweitern
      • Elektronischer Würfel
      • 13 tolle Projekte für Kinder und Jugendliche
      • Roboter selber bauen
      • In Visual Studio Code mit C++ programmieren
      • Wünsch dir ein Tutorial
    • Programmieren lernen
      • Teil 1: Einführung
      • Teil 2: GPIOs steuern
      • Teil 3: GUI erstellen
      • Teil 4: PWM
      • C# GUI Apps entwickeln
  • Hardware & GPIO
    • 50 der wichtigsten Raspberry Pi Sensoren und Module – Aufgelistet mit Links zu den TutorialsRaspberry Pi Sensoren
    • Beliebte Tutorials
      • Raspberry Pi Luftfeuchtigkeit/Temperatur SensorLuftfeuchtigkeit und Temperatur messen
      • Raspberry Pi WS2801B RGB LED Streifen anschließen und steuernWS2801 RGB LED Streifen anschließen und steuern
      • Raspberry Pi Funksteckdosen (433Mhz)Raspberry Pi Funksteckdosen (433Mhz)Funksteckdosen (433MHz) steuern
      • Raspberry Pi Relais ModulRaspberry Pi: Relais-Schalter per GPIO steuern
      • Raspberry Pi Servo MotorRaspberry Pi Servo Motor Steuerung
      • Amazon-Alexa-deutsch-auf-dem-Raspberry-Pi-installierenAmazon Alexa (Deutsch) auf dem installieren
      • Entfernung messen mit Ultraschallsensor HC-SR04 – Raspberry PiEntfernung messen mit Ultraschallsensor HC-SR04
      • 71-M-PU7vML.-S3L1500-Raspberry Pi’s über 433 MHz Funk kommunizieren
      • Raspberry Pi PIR Motion SensorBewegungsmelder PIR anschließen und steuern
      • Raspberry Pi USB Boot per Stick oder SSD Festplatte einrichtenUSB Boot per Stick oder SSD Festplatte
      • Analog
        • Raspberry Pi MCP3008 ADCMCP3008: Am Raspberry Pi analoge Signale auslesen
        • Raspberry Pi Gas Sensor MQ-2Raspberry Pi Gas Sensor (MQ-X) konfigurieren und auslesen
        • Raspberry Pi PulsmesserRaspberry Pi Pulsmesser: Herzfrequenz messen
        • Joystick am Raspberry Pi benutzen (mit MCP3008)Joystick am Raspberry Pi benutzen (mit MCP3008)
        • infrarot sharp distance senserInfrarot Abstandsmessung mit dem Raspberry Pi
        • Raspberry Pi Drehregler - Rotary EncoderKY040 Drehregler als Lautstärkeregler für den Raspberry Pi
        • Easpberry Pi Soil SensorBodenfeuchtigkeit mit dem Raspberry Pi messen
        • Raspberry Pi KeypadRaspberry Pi Keypad anschließen – Codeschloss
        • Raspberry Pi door sensorÜberwachung von Fenstern und Türen mit dem Raspberry Pi und Reed-Relais
        • Raspberry Pi Fotowiderstand HelligkeitssensorFotowiderstand (Helligkeitssensor) am Raspberry Pi
        • Raspberry Pi Waage selber bauen (mit Gewichtssensor HX711)Raspberry Pi Waage selber bauen (mit Gewichtssensor HX711)
      • Funk
        • 71-M-PU7vML.-S3L1500-Raspberry Pi’s über 433 MHz Funk kommunizieren lassen
        • Remote Control Raspberry Pi 433Mhz Radio TransmitterRaspberry Pi mit 433Mhz Funksender fernsteuern
        • Raspberry Pi Funksteckdosen (433Mhz)Raspberry Pi Funksteckdosen (433Mhz)Raspberry Pi Funksteckdosen (433MHz) steuern
        • Raspberry Pi MiFlora - Xiaomi Pflanzensensor in OpenHAB einbindenMiFlora – Xiaomi Pflanzensensor ins Smart Home einbinden
        • Raspberry Pi RFID RC522 TüröffnerRaspberry Pi RFID RC522 Tags auslesen (NFC)
        • Funkkommunikation zwischen Raspberry Pi's und Arduinos (2.4 GHz)Funkkommunikation (2.4 GHz): Arduino & Raspberry Pi
        • Raspberry Pi Radio ReceiverRaspberry Pi als Radioempfänger benutzen
        • Raspberry Pi Xbox 360 Wireless ControllerRaspberry Pi mittels Xbox 360 Controller steuern
        • Raspberry Pi GSM Modul - Huawei Internet SticksRaspberry Pi GSM Modul – Mobiles Internet
        • Raspberry Pi Bluetooth DatentransferRaspberry Pi Bluetooth Datentransfer zum Smartphone
      • Infrarot & Laser
        • Raspberry Pi Infrarot FernbedienungRaspberry Pi: Per IR Remote Befehle ausführen
        • infrarot sharp distance senserInfrarot Abstandsmessung mit dem Raspberry Pi
        • Raspberry Pi Laser Lichtschranke für weite DistanzenRaspberry Pi Laser Lichtschranke für weite Distanzen
        • Infrarot Raspberry Pi FernbedienungInfrarot Steuerung einrichten
        • Raspberry Pi Infrarot Lichtschranke bauen und Geschwindigkeit messenRaspberry Pi Infrarot Lichtschranke bauen
        • Raspberry Pi Fotowiderstand HelligkeitssensorFotowiderstand (Helligkeitssensor) am Raspberry Pi
      • Temperatur & Navigation
        • Raspberry Pi Luftfeuchtigkeit/Temperatur SensorRaspberry Pi: Luftfeuchtigkeit und Temperatur messen
        • Measuring Temperature with a Raspberry Pi Temperature Sensor (1-Wire)Raspberry Pi Temperatursensor (1-Wire): Temperatur messen
        • Raspberry Pi BMP180 SensorRaspberry Pi und I2C Luftdrucksensor BMP180
        • Raspberry Pi RTC Real Time ClockReal Time Clock Modul steuern
        • Rotation und Beschleunigung mit dem Raspberry Pi messenRotation und Beschleunigung mit dem Raspberry Pi messen
        • Raspberry Pi GPS ModulRaspberry Pi GPS Ortungs- / Navigationsgerät bauen
        • Raspberry Pi Kompass selber bauenRaspberry Pi Kompass selber bauen (HMC5883L)
        • Kontaktlosen Infrarot-Temperatursensor MLX90614 am Raspberry Pi auslesenMLX90614 – Kontaktlos Temperaturen messen
      • Displays
        • Raspberrry Pi HD44780 I2CHD44780 LCD Display per I2C ansteuern
        • Raspbery Pi LCD DisplayRaspberry Pi LCD Display: 16×2 Zeichen anzeigen
        • DisplayTipps & Tricks zum offiziellen 7″ Raspberry Pi Touchscreen
        • Raspberry Pi TouchscreenTestbericht zum 7″ Raspberry Pi Touchscreen Display
        • LCD Touch Display (3.2″) am Raspberry PiLCD Touch Display (3.2″) am Raspberry Pi
        • tft lcd touch displayRaspberry Pi LCD Touch Display Teil 2 – Anpassungen
        • Raspberry Pi LED MAX7219 Dot Matrix – ProjektübersichtRaspberry Pi LED Matrix – Projektübersicht
        • Raspberry Pi 7 Segment Anzeige Kathode mit MAX7219Raspberry Pi: 7 Segment Anzeigen mit MAX7219 steuern (Kathode)
        • 7 Segment Anzeige (Anode) mit MAX7219 MAX7221 und Raspberry Pi7 Segment Anzeige mit MAX7219 am Raspberry Pi (Anode)
        • Raspberry Pi Tablet Raspad TestberichtRaspberry Pi Tablet „Sunfounder RasPad“ Testbericht
      • Motoren & Sonstige
        • Raspberry Pi Stepper Motor Control with L293D / ULN2003ARaspberry Pi Schrittmotor ansteuern
        • Raspberry Pi Servo MotorRaspberry Pi Servo Motor Steuerung
        • Raspberry Pi PCA9685 mehrere Servos gleichzeitig steuernMehrere Servo Motoren per Raspberry Pi steuern
        • Raspberry Pi PIR Motion SensorBewegungsmelder PIR anschließen und steuern
        • How to use a Raspberry Pi Fingerprint Sensor for AuthenticationRaspberry Pi Fingerprint Sensor zur Authentifizierung nutzen
        • Raspberry Pi Akku AdapterRaspberry Pi mit Akkus/Batterien betreiben
        • Entfernung messen mit Ultraschallsensor HC-SR04 – Raspberry PiEntfernung messen mit Ultraschallsensor HC-SR04
        • Raspberry Pi WS2801B RGB LED Streifen anschließen und steuernWS2801 RGB LED Streifen anschließen und steuern
        • Raspberry Pi WS2812 RGB LED StripWS2812 RGB LED Streifen per Raspberry Pi steuern
        • Raspberry Pi Überwachungskamera LivestreamÜberwachungskamera Livestream einrichten
        • NoIRAufnahmen mit dem offiziellen Kamera Modul
        • Raspberry Pi Zero - establishing an Ethernet connection (ENC28J60)Raspberry Pi Zero – Ethernet Verbindung
  • Software
    • Webserver Installation
      • apache2_menu25Teil 1 – Apache2
      • php_menu25Teil 2 – PHP 5
      • mysql_menu25Teil 3 – MySQL
      • phpmyadmin_menu25Teil 4 – phpMyAdmin
      • ftp_menu25Teil 5 – FTP Server
      • dns_menu25Teil 6 – DNS Server via No-IP
      • home_menu25Homeverzeichnis ändern
      • share_25Samba Server: Dateien im Netzwerk teilen
      • nodejs_menu25Node.js Webserver installieren und GPIOs schalten
      • ssl_menu25SSL Zertifikat kostenlos mit Let’s Encrypt
      • wordpress_25Eigenen WordPress-Server einrichten
      • cloud-25Nextcloud auf dem Raspberry Pi installieren
    • Entertainment
      • led_menu25Raspberry Pi Ambilight für alle Geräte mit OSMC selber bauen
      • amazon_menu25Amazon Alexa (Deutsch) auf dem Raspberry Pi installieren
      • controller_25Raspberry Pi RetroPie – Spielekonsole selber bauen
      • kodi_menu25Mediencenter Raspbmc als SmartTV mit dem Raspberry Pi
      • android_25Android TV Box zum selber bauen
      • apple-2316234_640Raspberry Pi als AirPlay-Empfänger
      • jukebox_menu25Raspberry Pi als Jukebox (Spotify, Soundcloud, TuneIn, uvm.)
      • steam_25Steam Spiele streamen
      • minecraft_menu25Raspberry Pi Minecraft Server
      • youtube_25YouTube Live Streaming einrichten
      • qr-code-tutorials-raspberrypi.de_25Raspberry Pi QR / Barcode Scanner
    • Fernsteuerung
      • rdp_menuRaspberry Pi Remotedesktop Verbindung
      • ssh_menu25SSH Zugriff einrichten via Putty (Windows)
      • vnc_menu25Raspberry Pi mittels VNC fernsteuern
      • welcome_menu25SSH Terminal Begrüßung ändern
      • telegram1_menu25Telegram Messenger auf dem RaspberryPi
      • telegram2_menu25Mit Telegram Messenger Raspberry Pi steuern
      • bluet_menu25Raspberry Pi Bluetooth Datentransfer zum Smartphone
      • alexa_voice_25Eigenen Raspberry Pi Alexa Skill bauen
      • microphone_25Sprachsteuerung selber bauen
      • mqtt_25MQTT Broker/Client Funkkommunikation
      • mail_25Vom Raspberry Pi Emails senden
      • twitter_25Per Twitter Bot Nachrichten posten
    • Weitere
      • loggen_menu25Sensordaten mit ThingSpeak loggen und auswerten
      • mysql_datalogger25Per lokaler MySQL Datenbank zum Raspberry Pi Datenlogger
      • opencv_menu25OpenCV auf dem Raspberry Pi installieren
      • arduino_menu30tWiringPi installieren & Pinbelegung (Raspberry Pi)
      • radio_menu25Raspberry Pi als Radio Sendestation
      • win10_menu25Windows 10 IoT auf dem Raspberry Pi installieren
      • printer_25Drucker einrichten und per Knopfdruck Bilder drucken
      • gsm_menu25Raspberry Pi GSM Modul – Mobiles Internet (LTE, 3G, UMTS)
      • autostart_menu25Autostart: Programm automatisch starten lassen
      • machine-learning-25Raspberry Pi Machine Learning erlernen
  • Projekte
      • roboter_menu30tRoboter
        • Raspberry Pi Roboter ProjektRaspberry Pi Roboter Projektübersicht
        • Raspberry Pi Roboter Bausatz fertigTeil 1: Zusammenbau
        • Raspberry Pi Roboter - Linien folgenTeil 2: Linien folgen lassen
        • Raspberry Pi Roboter per Infrarot Fernbedienung steuernTeil 3: Per Infrarot Fernbedienung steuern
        • Raspberry Pi Roboter: Ultraschall AutopilotTeil 4: Automatisch Hindernissen ausweichen
        • Raspberry Pi Roboter der eigenen Stimme folgen lassenTeil 5: Der eigenen Stimme folgen lassen
        • Raspberry Pi Roboter mit Xbox 360 Controller fernsteuernTeil 6: Mit Xbox 360 Controller Roboter fernsteuern
        • Raspberry Pi Robot Arm 6DOF6-Gelenkigen Roboter Arm am Raspberry Pi betreiben (6 DOF)
      • led_menu30LED Matrix
        • Raspberry Pi LED MAX7219 Dot Matrix – ProjektübersichtMAX7219 LED Matrix – Projektübersicht
        • 8×8 LED Dot Matrix Parts8×8 LED Matrix – Zusammenbau und Installation
        • Raspberry Pi Bibliothek für mehrzeilige m x n MAX7219 LED MatrizenBibliothek für mehrzeilige m x n MAX7219 LED Matrizen
        • Graphiken auf mehrzeiligen Raspberry Pi LED Matrizen zeichnenGraphiken auf mehrzeiligen Raspberry Pi LED Matrizen zeichnen
        • Pong auf MAX7219 Matrizen spielen (mit Joystick) – Raspberry PiPong auf MAX7219 Matrizen spielen (mit Joystick)
        • Snake auf Raspberry Pi MAX7219 Matrizen spielenSnake auf Raspberry Pi MAX7219 Matrizen spielen
        • 7 Segment Anzeige (Anode) mit MAX7219 MAX7221 und Raspberry Pi7 Segment Anzeige (Anode) mit MAX7219/MAX7221
        • Raspberry Pi 7 Segment Anzeige Kathode mit MAX7219Raspberry Pi: 7 Segment Anzeigen mit MAX7219 steuern (Kathode)
      • wetterstation_menu30Wetterstation
        • Raspberry Pi Wetterstation mit OpenHAB 2 bauenEigene Raspberry Pi Wetterstation mit OpenHAB 2 bauen
        • Raspberry Pi Luftfeuchtigkeit/Temperatur SensorLuftfeuchtigkeit und Temperatur messen
        • raspberry_pi_thingspeak_daten_loggenSensordaten mit ThingSpeak loggen und auswerten
        • Raspberry Pi BMP180 SensorRaspberry Pi und I2C Luftdrucksensor BMP180
        • Measuring Temperature with a Raspberry Pi Temperature Sensor (1-Wire)Raspberry Pi Temperatursensor (1-Wire): Temperatur messen
        • ESP8266 NodeMCU Außenposten-Wetterstation für den Raspberry PiESP8266 Wetterstation Außenposten für den Raspberry Pi
        • Raspberry Pi Gas Sensor MQ-2Raspberry Pi Gas Sensor (MQ-X) konfigurieren und auslesen
      • arduino_menu30tArduino & ESP8266
        • ESP8266 Microcontroller BoardEinführung & Programmierung des ESP8266 NodeMCU Boards
        • Raspberry Pi + ESP8266 NodeMCU: Per WLAN Daten sendenRaspberry Pi + ESP8266 NodeMCU: Per WLAN Daten senden
        • ESP8266 NodeMCU Außenposten-Wetterstation für den Raspberry PiESP8266 Wetterstation Außenposten für den Raspberry Pi
        • Mit dem NodeMCU ESP8266 433MHz Funksteckdosen steuernMit dem NodeMCU ESP8266 433MHz Funksteckdosen steuern
        • ESP8266 NodeMCU HD44780 LCD Display per I2C steuernNodeMCU ESP8266: HD44780 LCD Display per I2C steuern
        • ESP8266 Grafikdisplay: Am SSD1306 OLED per I2C Bilder & Text anzeigen
        • ESP8266 Google Maps API RoutenplanerESP8266 Google Maps API Routenplaner auf LCD anzeigen
        • 2000px-Arduino_Logo.svgRaspberry Pi und Arduino – Einführung
        • arduino unoArduino und Raspberry Pi miteinander kommunizieren lassen
        • Funkkommunikation zwischen Raspberry Pi's und Arduinos (2.4 GHz)Funkkommunikation zwischen Raspberry Pi’s und Arduinos (2.4 GHz)
        • NodeMCU: ESP8266 mit Solarpanel und Akku mit Strom versorgenNodeMCU: ESP8266 mit Solarzelle und Akku mit Strom versorgen
        • ESP8266 Access Point: Günstigen Wlan Repeater selber bauenESP8266 Access Point: Günstigen Wlan Repeater selber bauen
      • Mini Projekte
        • Raspberry Pi Gewächshaus automatisch selber bauenAutomatisches Raspberry Pi Gewächshaus selber bauen
        • Eigene Raspberry Pi Gartenbewässerung mit Webseite bauenEigene Gartenbewässerung mit Webseite bauen
        • Raspberry Pi Radio StationRaspberry Pi als Radio Sendestation verwenden
        • Raspberry Pi Radio ReceiverRaspberry Pi als Radioempfänger benutzen (Autoradio, Car PC)
        • spotify-logo-primary-horizontal-dark-background-rgbRaspberry Pi als Jukebox (Spotify, Soundcloud, TuneIn, uvm.) – Online Radio
        • Raspberry Pi RetroPie Guide - SNES Classic Spielekonsole selber bauenRaspberry Pi RetroPie Guide – SNES Spielekonsole bauen
        • Android + Raspberry Pi: Funksteckdosen App BedienungRaspberry Pi + Android/iOS: Funksteckdosen per App schalten
        • Indirekte Deckenbeleuchtung selber bauen mit farbigem LED LichtIndirekte Deckenbeleuchtung selber bauen mit farbigem LED Licht
  • Sonstiges
    • Wünsch dir ein Tutorial
    • News
    • Reviews
      • Pi Cap – Kapazitives Raspberry Pi Erweiterungsboard
      • Raspberry Pi Tablet „Sunfounder RasPad“ – Testbericht & Einrichtung
      • Testbericht zum 7″ Raspberry Pi Touchscreen Display
      • CrowPi 2 Testbericht: Laptop & Lern-Kit für Kinder
      • Daten auf dem Wio Terminal LCD Screen anzeigen
    • Raspberry Pi Zero
      • Offizielles 5$ Raspberry Pi Zero Modul vorgestellt
      • Raspberry Pi Zero – Ethernet Verbindung herstellen (ENC28J60)
      • Raspberry Pi: WS2801 RGB LED Streifen anschließen und steuern
  • Hausautomation
    • OpenHAB
      • steckdose_25Sonoff S20 Wifi Steckdose steuern
      • wireless_25Funksteckdosen (433 MHz) schalten
      • schalter_25Relais steuern (Rollladen, Lichter, etc.)
      • wetterstation_menu30Wetterstation mit OpenHAB 2 bauen
      • ws28_25WS28xx RGB LED Streifen steuern
      • touchscreen_25Touchscreen Panel bei Näherung aktivieren
      • mqtt_25MQTT Datenabfrage: Raspberry Pi an ESP8266
      • spotify_25Remote Spotify Player im Smart Home
      • heizung_25eQ-3 Thermostat im Smart Home
    • Einführung
      • Raspberry Pi Smart Home OpenHAB installierenOpenHAB installieren & konfigurieren
      • Home Assistant auf dem Raspberry Pi – Erste Schritte
    • ESP8266 NodeMCU
      • esp8266_25Einführung & Programmierung
      • arduino_25ESP8266: Arduino IDE installieren
      • lcd_25NodeMCU HD44780 LCD
      • battery_25Batteriebetrieb via Deep-Sleep
      • wifi_menuPer WLAN Daten senden
      • wetterstation_menu30Wetterstation Außenposten
      • maps_25Google Maps Routenplaner
      • wireless_25NodeMCU Funksteckdosen steuern
      • mail_25Vom NodeMCU Emails versenden
      • rgb_25WS2812B LEDs am Smartphone steuern
      • solar_25ESP8266 Stromversorgung mit Solarzelle
    • Überwachung
      • Aufnahmen mit dem offiziellen Kamera Modul des Raspberry Pi
      • Raspberry Pi: Überwachungskamera Livestream einrichten
      • mailbox_25Briefkasten Sensor – Email Benachrichtigung bei neuer Post
      • Raspberry Pi Überwachungskamera mit Webcam betreiben
      • Überwachung von Fenstern und Türen mit dem Raspberry Pi und Reed-Relais
      • ESP32 Cam Livestream Tutorial für Kamera Modul
    • Raspberry Pi + Android: Benachrichtigungen von Bewegungsmelder
    • Raspberry Pi + Android/iOS: Funksteckdosen per App schalten
    • Raspberry Pi + Android: Schwenkbarer Kamera-Livestream
      • Smart Home
        • Amazon Alexa (Deutsch) auf dem Raspberry Pi installieren
        • Raspberry Pi Funksteckdosen (433MHz) steuern – Tutorial
        • Raspberry Pi Sprachsteuerung selber bauen (Hausautomatisierung)
Tutorials for Raspberry Pi Tutorials for Raspberry Pi
Home»Projekte»Raspberry Pi + Android: Benachrichtigungen von Bewegungsmelder

Raspberry Pi + Android: Benachrichtigungen von Bewegungsmelder

Facebook Twitter LinkedIn Tumblr Email Reddit
Teilen
Facebook Twitter LinkedIn Email Tumblr Reddit Telegram WhatsApp

In diesem Tutorial geht es um das Zusammenspiel von dem Raspberry und Android Geräten. Im speziellen nutzen wir die Push Benachrichtigungen vom Android System, welche wir bei bestimmten Aktionen auslösen: Dazu soll z.B. bei der Aktivierung eines Bewegungsmelder oder dem Öffnen von Fenstern eine Nachricht an verbundene Android Devices gesendet werden. Anwendung finden kann dies in einer Raspberry Pi Alarmanlage.

Dies ist der erste von mehreren Teilen, in denen wir die Zusammenarbeit mit Android Smartphones und Tablets nutzen.

Alle Android-relevanten Tutorials findest du dazu auf staticfloat.de.

 

Zubehör

Neben einem Android Device (Smartphone/Tablet/Phablet), welches mit dem Internet verbunden ist, brauchst du noch folgendes, um den Aufbau dieses Tutorials nachzubauen:

  • PIR Bewegungssensor(en)
  • Magnet Fensterkontakt(e)
  • 10kΩ Widerstand pro Magnetkontakt
  • Jumper Kabel
  • ggf. (Mini) Breadboard

 

Dabei spielt die Anzahl der Bewegungssensoren keine Rolle, da das Skript sehr einfach anpassbar ist. Du kannst sogar mehrere Raspberry Pi’s z.B. in verschiedenen Zimmern aufstellen und das unten verfügbare Skript mit kleinen Änderungen auf allen laufen lassen.

Falls sich jemand fragt, warum das Tutorial nur für Android OS erscheint und nicht für iOS oder Windows Mobile: Nicht nur aufgrund des enorm größeren Marktanteil, sondern auch aufgrund des einfacheren Zugriffs und Erstellung eigener Apps, bietet sich Android mehr als andere mobile Betriebssysteme an. Außerdem sind gute Android-Mittelklasse Smartphone bereits ab 100€ verfügbar, wohingegen selbst veraltete iPhones noch ein vielfaches kosten.

Im Folgenden kannst du dir bereits einmal ein solches Setup ansehen:

 

 

Vorbereitung und Aufbau

Bevor wir auf dem Raspberry Pi loslegen, sollten wir die App zum Empfangen der Daten erstellen. Wie das genau funktioniert und was zu beachten ist, ist hier auf staticfloat.de ausführlich erklärt. Die App muss auf dem Smartphone installiert sein und einmalig gestartet sein, da sie als Empfänger der Daten, die wir anschließend senden, dient.
Geplant ist von unserer Seite bald auch eine App im PlayStore zu veröffentlichen, sobald wir mehrere Projekte erstellt haben.

 

Anschließend kümmern wir uns um den Aufbau. Es müssen nicht sowohl PIR Bewegungsmelder als auch die Fenster Magnetkontakte verwendet werden, aber es können auch mehrere Module von beiden genutzt werden. Der Aufbau dazu ist immer der gleiche, wobei jeweils an freier GPIO verwendet werden muss und das Skript anschließend angepasst wird.

Die generelle Benutzung von PIR Bewegungsmelder und Fenster Reed-Relais wurde ja bereits in vorherigen Tutorials gezeigt. Der Aufbau unterscheidet sich nicht sonderlich davon und sieht schematisch folgendermaßen aus:

Raspberry Pi Android Bewegungsmelder Alarmanlage Steckplatine
PIR Bewegungsmelder und Fenster Magnetkontakt richtig anschließen.

Wie du siehst habe ich GPIO23 als Datenpin des PIR Sensors benutzt und für das Magnetrelais GPIO24. Falls der Magnetkontakt „geschlossen“ ist (d.h. Magnete nah beieinander), bekommt der GPIO eine Spannung von 3.3V. Andernfalls besteht eine Verbindung zu GND über einen 10kΩ Widerstand, damit der GPIO einen eindeutigen Zustand (LOW) bekommt. Für uns ist in beiden Fällen nur die Flanke von HIGH zu LOW interessant, da diese aussagt, dass eine Bewegung stattfand (Bewegungsmelder aktiviert oder Fenster geöffnet).

 

 

Code um Push Benachrichtigungen zu senden

Falls du die App erstellt und kompiliert hast, wirst du den Google Cloud API Key bereits haben (falls nicht, steht hier wie man ihn bekommt). Diesen werden wir gleich im Skript eintragen müssen.

Zuerst erstellen wir ein Skript

sudo nano android-bewegung.py

mit folgendem Inhalt:

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
import RPi.GPIO as GPIO
import time, os, json
 
# Configuration
AUTH_KEY        = "xxxxxxxxxxxxxxxxxxxxxx-xxxxxxxxxxxxxxxx";
SEND_URL        = "https://gcm-http.googleapis.com/gcm/send";
SENDER_CHANNEL  = "/topics/bewegung";
COOLDOWN        = 10; # Seconds that should be waited between messages
NUM_MODULES     = 2; # amount of used modules (motion detector, magnetic switch, etc.)
 
MODULES = range(NUM_MODULES);
MODULES[0] = { "name": "Wohnzimmer Bewegungsmelder", "gpio": 23};
MODULES[1] = { "name": "Flur Fenster-Magnetkontakt", "gpio": 24};
 
 
 
# Function
def sentMessage(channel):
    for m in MODULES:
        if channel == m["gpio"]:
            if not ("lastMessageSent" in m) or ("lastMessageSent" in m and m["lastMessageSent"]+COOLDOWN <= time.time()):
                m["lastMessageSent"] = int(time.time());
                obj = { "O": m["name"],
                        "T": m["lastMessageSent"]};
                message = json.JSONEncoder().encode(obj).replace('"', '\\"');
                os.system('curl --header "Authorization: key="'+AUTH_KEY+' --header Content-Type:"application/json" '+SEND_URL+' -d \'{"to":"'+SENDER_CHANNEL+'", "data": {"message": "'+message+'" }}\'');
                return;
 
# Setup
GPIO.setmode(GPIO.BCM);
GPIO.setwarnings(False);
 
for m in MODULES:
    GPIO.setup(m["gpio"], GPIO.IN);
    GPIO.add_event_detect(m["gpio"], GPIO.RISING, callback=sentMessage);
 
# Infinite Loop
while True:
    pass

 

In Zeile 5 gilt es deinen API Schlüssel einzutragen. Nach dem Speichern und Beenden (STRG+O, STRG+X) kann das Skript bereits ausgeführt werden (sudo python android-bewegung.py). Die Benachrichtigungen sollten nun auf dem Smartphone eintreffen. Damit direkte Bewegungen hintereinander mehrfach erkannt werden, gibt es eine sog. „Cooldown“ Zeit, die nach der letzten Aktivierung dieses Moduls gewartet wird, bis die nächste Nachricht gesendet wird. Dies, sowie alle anderen Parameter kannst du natürlich individuell deinen Ansprüchen anpassen.

Wichtig: Falls du mehrere gleiche Module benutzt (z.B. für mehrere Fenster), sollte jeder vergebene Name eindeutig sein, um die Push Nachrichten auf dem Android Gerät auch eindeutig identifizieren zu können. Auch falls du einen zweiten Pi mit diesem Skript (und selben API Key) nutzt, müssen sich die Modulnamen von jenen unterscheiden.

 

Autostart

Damit das Skript nun auch immer startet, sobald der Pi bootet, tragen wir es noch in den Autostart ein. Dies können wir mittels rc.local machen oder eben Crontab.

In diesem Tutorial nutze ich crontab. Wir öffnen den Konsoleneditor

crontab -e

und fügen folgende Zeile ans Ende (Pfad ggf. anpassen):

@reboot sudo python ~/android-bewegung.py

Nach einem Neustart (sudo reboot) wird das Skript nun automatisch gestartet und läuft im Hintergrund weiter. Um es rauszunehmen, brauchst du einfach nur diese Zeile zu löschen und nach einem Neustart wird es nicht mehr automatisch geöffnet.

 

Alarmanlage android Fenster Magnetkontakt PIR Reed Switch Reed-Relais Smartphone Switch
Teilen Facebook Twitter Pinterest LinkedIn Tumblr Email
Vorheriger BeitragRaspberry Pi: Per IR Remote Befehle ausführen
Nächster Beitrag Raspberry Pi + Android/iOS: Funksteckdosen per App schalten

Ähnliche Beiträge

Smart Home: Zigbee Geräte in Home Assistant per Raspberry Pi einbinden

PiCar-X: Smartes selbstfahrendes Roboter Auto mit dem Raspberry Pi bauen

Headless Setup des Google AIY Voice Kit am Raspberry Pi

Anleitung: Raspberry Pi Android TV Box zum selber bauen

47 Kommentare

  1. iO am 29. August 2016 13:36

    gibt es so was auch für iOS?

    Antworten
    • Felix am 29. August 2016 13:56

      Nein, jedenfalls ist es bisher nicht geplant (aus den im Artikel erwähnten Gründen).

      Antworten
      • Schelken am 27. September 2021 9:50

        Gibt es eine neue App oder eine App Alternative, weil dir Webseite nicht mehr vorhanden ist?

  2. Michael am 30. August 2016 19:44

    Hallo,

    Erstmal danke für dieses grandiose Projekt.

    Ich würde gerne aus einer normalen If-Anweisung herraus zb „Hallo Welt“ schicken.

    Leider beiße ich mir an der Zeile die Zähne aus.

    os.system('curl --header "Authorization: key="'+AUTH_KEY+' --header Content-Type:"application/json" '+SEND_URL+' -d '{"to":"'+SENDER_CHANNEL+'", "data": {"message": "'+message+'" }}'');

    ist das mit großem Aufwand verbunden?

    lg

    Antworten
    • Felix am 30. August 2016 19:51

      Hallo Michael,
      ich verstehe nicht ganz, was du vor hast?

      Antworten
    • Michael am 30. August 2016 19:54

      Ich nutze ein Programm welches mir Backups erstellt.
      Nach fertigstellung hätte ich gerne eine Benachrichtigung auf mein Smartphone.

      Ich müsste also nicht auf gpio’s reagieren.

      Sondern einfach am ende des Programms die Meldung schicken.

      lg

      Antworten
      • Felix am 30. August 2016 19:58

        Dann kannst du den Befehl so verwenden und musst nur die Variablen ersetzen. Sprich den API_Key, ein Topic und eine Nachricht (wir geben hier ein JSON Objekt als String an) angeben.

    • Michael am 30. August 2016 20:01

      Aber wie müsste ich den Befehl dann bearbeiten damit er mir zb einfach „Hallo Welt“ schickt?

      Es scheitert am syntax

      lg

      Antworten
      • Felix am 30. August 2016 20:04

        Zeile 25: message = "Hallo Welt"

    • Michael am 30. August 2016 20:11

      Ich danke dir.

      Jetzt stürzt mir die APP ab.

      Muss ich mal drüben nachfragen 😉

      Danke Danke

      Antworten
  3. Ich am 14. September 2016 18:40

    Cool… Ist eine App inzwischen im PlayStore?

    Antworten
    • Felix am 14. September 2016 18:48

      Nein, noch nicht. Vermutlich Anfang Oktober.

      Antworten
  4. Ich am 15. September 2016 21:05

    ok das ist cool. Ich lese in manchen Quellen davon, dass Google Cloud Messaging Dienst (GCM) kostenpflichtig ist. Ist das korekt?

    Antworten
    • Felix am 15. September 2016 22:13

      Erst ab einer gewissen Anzahl, die du als alleinger Nutzer nicht erreichst.

      Antworten
  5. Ich am 16. September 2016 8:42

    Achso das ist ja super. Wo finde ich denn Daten wie lange das nichts kostet. Und ich bin irgendwie zu blöd, weil ich finde die App nicht. Kann mir da jemand helfen?

    Antworten
    • Felix am 16. September 2016 13:31

      Die App gibt es auch noch nicht im PlayStore (dauert noch etwas). Vorerst müsstest du sie selbst erstellen (wie steht auch droid-lernen). Hier steht wie du den Cloud API Key bekommst.

      Antworten
    • Ich am 16. September 2016 15:06

      Ich mein wie ich die App GCM finde. Ich hab keine Ahnung wo das ist?

      Antworten
      • Felix am 16. September 2016 15:19

        Der Google Cloud Messaging Dienst ist keine App. Unter dem Link steht doch alles weitere dazu?

  6. Ich am 18. September 2016 22:54

    Ich werde allerdings immer wieder darauf aufmerksam gemacht, dass Google Cloud kostenpflichtig ist. Wie umgehe ich das?

    Antworten
    • Marvin am 18. September 2016 23:02

      Hallo,

      Wo wirst du denn darauf aufmerksam gemacht?

      Wenn ich in die Cloud Konsole schaue, dann finde ich dort kein Kontingent.
      Bei allen Dingen, die kostenpflichtig sind oder auch nur ein Kontingent haben bekomme ich dieses angezeigt. Wie zum Beispiel bei der Google Speech API.

      Antworten
  7. Ich am 19. September 2016 0:26

    Dort steht immer was von 30Tage kostenlos testen und was von 15gb Kontingent.
    brauche ich das speech api?

    Antworten
  8. Marvin am 19. September 2016 8:48

    Hallo,

    wie bereits angesprochen.
    Die Google Cloud Platform vereint hunderte von Schnittstellen und Business-Services in einer Oberfläche.
    Die Nutzung der Cloud Platform Oberfläche an sich und vieler Schnittstellen (z.B. GCM) ist kostenlos.

    Wer mehr brauch, der muss auch zahlen.
    Deine angesprochenen 30 Tage Testversion für die Google Cloud Platform, sind in Wirklichkeit 60 Tage zum Ausprobieren der Business-Services.
    Darunter zählen zum Beispiel Datenbanken, Cloud Computing, Big-Data Analysen, Online Speicher und natürlich sind dort auch alle Schnittstellen integriert, die wir auch kostenlos nutzen können.

    Hier findest du mehr Infos zu den 60 Tagen Testversion: https://cloud.google.com/free-trial/?hl=de

    Wenn du wissen möchtest, wie was berechnet wird, dann siehe hier: https://cloud.google.com/products/calculator/?hl=de

    Ich kann natürlich nicht dafür garantieren, dass die Services nicht mal kostenpflichtig waren oder in Zukunft wieder kostenpflichtig werden, aber momentan musst du nichts bezahlen, wenn du dich an unsere Anleitung hältst.

    Antworten
  9. Ich am 19. September 2016 23:58

    Und was ist das? Mein Entwickleraccount ist aber kostenpflichtig?
    medienpapst.com/android-entwickler-account-erstellen/

    Antworten
    • Felix am 20. September 2016 0:39

      Willst du deine persönliche App etwa in den PlayStore hochladen? Das macht keinen Sinn. Du kannst die App selbst kompilieren und ohne Store auf dein Android Smartphone übertragen.

      Antworten
  10. Ich am 21. September 2016 19:55

    Wofür benötige ich nun den API KEY?

    Antworten
    • Felix am 21. September 2016 20:48

      Steht doch mehrfach dabei: Um dir Push Nachrichten senden zu können…

      Antworten
    • Ich am 21. September 2016 21:03

      Das ist doch klar… aber wo muss der verwendet oder eingetragen werden. Das finde ich nicht

      Antworten
      • Felix am 21. September 2016 21:04

        Das steht auf droid-lernen.de, bevor du die App kompilierst fügst du den API Key ein (steht alles im zugehörigen Tutorial).

  11. Bernd am 9. Oktober 2016 21:35

    Super Tutorial funktioniert auch alles super!!
    Wie müsste ich den Quelltext anpassen um einfach einen vordefinierten Text ans Handy zu schicken? Was müsste ich also am Ende eines Programms ergänzen? Als Beispiel wenn ich meinem Handy etwas über Telegramm schicke:
    Im /home/pi/tg/test.lua Verzeichnis

    elseif (string.lower(msg.text) == 'pc an') then
      local handle = io.popen("/home/pi/pc1")
      local res = handle:read("*a")
      os.execute("/home/pi/tg/send_script "..msg.from.print_name.." 'Computer wurde eingeschaltet' ")
      handle:close()
      return

    Was müsste ergänzt werden damit ich auf mein Handy die Push-Nachricht „Computer wurde eingeschaltet“ bekomme anstelle der Antwort per Telegram.
    Hoffe es war eine verständliche Frage

    Antworten
    • Felix am 9. Oktober 2016 22:17

      Du könntest ein (Python) Skript schreiben, welches eben jene Push-Nachricht versendet (siehe Beispiel hier) und dieses statt dem send_script aufrufen.

      Antworten
  12. Tim am 24. Dezember 2016 2:49

    Hey Felix,
    Leider geht der link droid-lernen.de nicht mehr. Dort Seite sind wartungsarbeiten. Aber eigendlich habe ich eine ganz andere frage. An sich das programm ist nicht schlecht nur das ich kein android habe sondern ios. Kann man das ganze nicht mit dem push narichten dienst Prowl verbinden??

    Antworten
    • Felix am 24. Dezember 2016 13:24

      Hallo Tim,
      wann Droid-Lernen wieder verfügbar ist, kann ich leider nicht sagen. Im Zweifelsfall kannst du archive.to (WaybackMachine) bzw. den Google Cache verwenden.
      Für IOS hatten wir es nicht vor zu portieren. Auch wenn ich früher mal ein paar kleine Apps für IOS geschrieben habe, müsste ich mein Wissen dazu sehr auffrischen. Falls du aber selbst Apps erstellen kannst, sollte die Portierung nicht all zu schwer sein, nehme ich an.
      LG, Felix

      Antworten
    • Marvin am 3. Januar 2017 19:52

      Hallo Tim,
      Droid-Lernen.de ist wieder online.
      Ich entschuldige mich für die längere DownTime.

      Gruß,
      Marvin von Droid-Lernen

      Antworten
  13. Julian am 14. Januar 2017 22:57

    Hallo Felix,
    erstmal vielen Dank für das Tutorial.
    Ich hab jetzt schon viel herum probiert mit deinem Code, aber sobald ich ihn erweitere funktioniert er nicht mehr.
    Ich will nämlich einen RFID-Reader in dem Code auslesen und überprüfen und wenn die Karte mit der richtigen UID vorgehalten wird möchte ich das die abfrage der Sensoren aufhört, aber irgendwie funktioniert das noch nicht.
    Hier der Code: http://pastebin.com/H3AALkEt

    Und das ist die Fehlermeldung:

    "Traceback (most recent call last):
    File "alarmscript.py", line 108, in
    GPIO.add_event_detect(m[„gpio“], GPIO.RISING, callback=sentMessage);
    RuntimeError: Conflicting edge detection already enabled for this GPIO channel“

    Siehst du den Fehler?
    Vielen Dank im vorraus

    Antworten
  14. Julian am 14. Januar 2017 22:58

    Ups könntest du die Zeile mit den AUTH-KEY löschen.
    Nur zur Sicherheit.

    Antworten
  15. TIMO am 27. Februar 2017 17:53

    Erstmal super Projekt!
    Bei mir funktioniert alles. Aber eine Frage hätte ich noch: Wie kann man die Push-Benachrichigungen deaktivieren? Gibt´s da irgendwie eine Möglichkeit in der App?
    Ich will nämlich keine Benachrichtigungen erhalten, wenn ich durch die Wohnung laufe 😉
    Danke!

    Antworten
    • Felix am 27. Februar 2017 18:23

      Wie du sie manuell aktivierst, fragst du am besten bei Marvin unter droid-lernen.de nach 🙂
      Per Raspberry Pi kannst du einfach keine Nachrichten senden lassen, wenn Bedingung X erfüllt ist.

      Antworten
  16. Christoph am 4. März 2017 17:05

    Hallo hallo,
    die Zeile 26 ist doch für´s Senden verantwortlich, oder? Daher hab ich mir mal ein kleines Skript geschrieben, welches nur aus den Zeilen 5-7 (Key), 25, 26 besteht.
    In die Zeile message (Z. 25) hab ich einen Text geschrieben, der gesendet werden soll…

    Das Skript geht, aber auf meinem Handy kommt nicht´s an 🙁
    Mein Ansatz ist richtig, oder?

    Danke und schönen Sonntag 😉

    Antworten
  17. David am 7. Juni 2017 20:29

    Hallo zusammen,
    Ich habe ein Problem mit dem Script.
    Wenn ich es starten will steht da:

      File "android-bewegung.py", line 6
        AUTH_KEY        = "Mein_APIKEY";
                       ^
    SyntaxError: invalid syntax

    Was könnte das sein?

    Antworten
  18. Jörg am 7. November 2017 11:42

    Hallo Felix,

    ich wollte dein Tutorial gerade mal durchspielen aber musste feststelle, dass es die Seite “ droid-lernen.de“ im Moment nicht mehr gibt bzw. dass sie gewartet wird.
    Wo kann ich nun eine Erklärung für die entsprechende Android-App finden?

    Schon mal Danke im Vorraus.

    Antworten
    • Felix am 7. November 2017 20:58

      Du kannst versuchen die Seite über https://archive.org/ aufzurufen.

      Antworten
  19. Henning am 5. März 2018 19:18

    Hallo,
    Ich kann die Seite staticfloat.de, die oben verlinkt, nicht öffnen. Ebenso wie droid-lernen.de. Auch über https://archive.org/. Wie kann ich dieses Problem lösen. Ist die App denn schon im Play Store, weil dann wären die Probleme gelöst. Wenn es die App schon gibt, wie heißt die denn?

    Antworten
    • David am 15. März 2018 19:32

      Ich glaube hier passiert nicht mehr viel… Vom neuem Pi hat hier auch keiner was mitbekommen.

      Antworten
      • Felix am 16. März 2018 15:54

        Ist das so (das hier ist hauptsächlich eine Tutorial Seite, kein Nachrichtenportal)? Leider habe ich auf eine externe Seite wie staticfloat keinen Einfluss.
        Als Tipp: staticfloat hieß früher „droid-lernen.de“, vielleicht ist darüber mehr im Cache zu finden.

  20. Marco Utzinger am 30. März 2019 14:50

    Guten Tag,
    Ich bin auf der Suche nach einer Bewegungsfunkmelder (Rezeptionseingang Hotel), der in der Lage ist ein Signal/Benachrichtigung an eine Smartwatch/Armand zu schicken, die dann vibriert, wenn ein Gast den Eingang betritt. Ich stelle mir, vor dass Sender und Empfänger über Wlan oder Funk miteinander kommunizieren. Ist dieses Projekt mit ihrem Tutorial hier umsetzbar? Das wäre wirklich sehr gut, da ich dann nicht mehr von einem nervigen Signalton abhängig wäre. Für Hilfe bin ich wirklich sehr sehr dankbar!
    Vielen Dank und einen schönen Tag noch.

    Antworten
  21. Patrick am 7. August 2019 7:42

    Unter „Vorbereitung und Aufbau“ funktioniert der erste Hyperlink nicht, in dem gezeigt wird, wie man die App zum Empfangen der Daten erstellt
    Und unter „Code um Push Benachrichtigungen zu senden“ funktioniert der Link ebenfalls nicht (wo beschrieben wird, wie man den Google Cloud API Key bekommt)

    Antworten
  22. leiser18 am 12. Mai 2024 4:35

    Also das dieses Tutorial nicht aktualisiert wird ich beiß mir auch die zähne aus 1 welche App??? nen Name wäre schon hilfreich 2. wenn diese nicht im store sein sollte bitte Aternative anbieten ! 3 läuft das Skript so nicht auf dem pi3b+ da es noch ein älterer Python code ist. bitte aktualisieren da ich es gern umsetzen würde !

    Antworten

Hinterlasse einen Kommentar Antwort abbrechen

Raspberry Pi: Relais-Schalter per GPIO steuern

Lüftersteuerung zur besseren Übertaktung des Raspberry Pi

Raspberry Pi: USB Boot per Stick oder SSD Festplatte einrichten

Liste aller Raspberry Pi Standard-Logins und Passwörter

Tipps & Tricks (FAQ) zum offiziellen 7″ Raspberry Pi Touchscreen

Raspberry Pi SSL Zertifikat kostenlos mit Let’s Encrypt erstellen

Blog abonnieren

Abboniere Raspberry Pi Tutorials, um kein Tutorial mehr zu verpassen!

Tutorials for Raspberry Pi
Facebook Twitter YouTube
  • Kontakt & Impressum
  • Unterstützen
  • Datenschutz

Tippe den Suchbegriff oben ein und drücke Enter, um danach zu suchen. Drücke Esc, um abzubrechen.