Raspberry Pi Briefkasten Sensor – Bei neuer Post per Email benachrichtigen

Gerade wenn man dringend Post erwartet, ist es üblich häufiger in den Briefkasten zu schauen. Im Urlaub hingegen kann es sinnvoll sein, Bescheid zu wissen, ob und wie viel Post ankam – um ggf. Freunde oder Nachbarn mit der Leerung zu beauftragen. Um diesen Vorgang zu digitalisieren, geht es in diesem Tutorial darum, wie man mit einen Raspberry Pi Briefkästen in Email-Versender verwandelt.

Beim einwerfen neuer Briefe wird automatisch eine Mail an eine definierte Adresse versendet, sodass sich der Gang zur Postbox (hoffentlich) lohnt.

Grundsätzlich werden beim Öffnen der Briefkastenklappe eine Nachricht über Funk an unseren Raspberry Pi senden, woraufhin dieser eine Mail versendet.

 

Zubehör & Hardware

Damit wir eine möglichst lange Laufzeit im Briefkasten ermöglichen, verwenden wir keinen Raspberry Pi, Arduino oder ESP8266 im Briefkasten, da diese zum einen mehr Platz benötigen und vor allem mehr Strom! Daher bauen wir aus vorhanden Lösungen (Funk Türklingel) stromsparende Teile aus und nutzen diese weiter.

Insgesamt wirst du folgendes brauchen:

Bei den Funkklingel Sendern hatte ich mehrere Modelle ausprobiert, wobei nicht alle ausgelesen werden konnten. Dies solltest du vor dem Kauf beachten. Ggf. musst du die Pulslänge anpassen und etwas probieren, sollte der fixe Funkcode nicht direkt ausgelesen werden können.

 

Aufbau: Raspberry Pi Briefkasten Sensor

Beginnen wir nun mit dem Aufbau des 433 MHz Empfängers. Oft kommen Sender und Empfänger im Set und können auch beide mit dem Raspberry Pi genutzt werden (z.B. falls du zusätzlich auch noch die Funkklingel per Pi zum ertönen bringen willst). De facto reicht der Empfänger (das breitere Modul, rechts im schematischen Aufbau) für unser Vorhaben aus.

Raspberry Pi Briefkasten Sensor 433 MHZ Funk Steckplatine

Raspberry Pi 433Mhz Sender (links) / Empfänger (rechts) Aufbau

Nachdem der Raspberry Pi präpariert ist, geht es weiter zum Vorbereiten des Briefkastens und anbringen des Sensors in diesem.

Raspberry Pi Briefkasten Sensor Schnappschalter

Ein Schnappschalter hat drei Kontakte.

Nun gibt es zwei verschiedene Arten von Briefkästen: Jene, deren Klappe sich nach innen öffnet und jene, deren Klappe sich nach außen hin öffnet. Der Schnappschalter (auch genannt: Sprungschalter) hat insgesamt drei Kontakte: Einen an der Seite, der mit einem der beiden unteren verbunden wird – jenachdem ob der Schalter gedrückt wurde oder nicht.

Falls sich die Klappe deines Briefkastens nach außen öffnet, so solltest du den Schnappschalter so anbringen, dass er dauerhaft gedrückt ist. Sobald die Klappe geöffnet wird, geht der Schalter in seinen normalen Zustand zurück und der andere Kanal wird verbunden.

Falls sich die Klappe deines Briefkastens nach innen öffnet, so bringst du den Schnappschalter ebenfalls innen an, jedoch wird er so platziert, dass beim Öffnen der Schalter erst gedrückt wird.

Der alleinstehende (seitliche) Kontakt wird, wie im Bild zu sehen ist, mit Draht an den Schalter verbunden und verlötet. Welchen der beiden anderen unteren Kontakte mit dem Funk-Türklingel-Sender verbunden werden muss, musst du ausprobieren. Im „Ruhezustand“ soll kein Signal gesendet werden.

Raspberry Pi Briefkasten Foto

Diese Briefkastenklappe öffnet sich nach außen.

 

 

Raspberry Pi Briefkasten – Vorbereitung & Software

Zwei Softwarekomponenten sind für dieses Tutorial sehr wichtig: Zum einen, dass wir einen Anbieter haben, von dem wir Mails versenden können. Des weiteren ist der Empfang der 433 MHz Signale entscheidend. Letzteres erreichen wir, indem wir wiringPi und die 433Utils von ninjablocks installieren. Wiring Pi ist auf allen neueren Raspbian Versionen (nicht Lite) bereits vorinstalliert. Wir widmen uns daher zunächst der Installation der 433 MHz Bibliothek.

Öffne dazu die Shell (z.B. über SSH) und gib folgendes ein:

mkdir postbox && cd postbox
git clone https://github.com/ninjablocks/433Utils.git --recursive

Da wir den Code, der von der Funk Türklingel gesendet wird, noch nicht kennen, lesen wir diesen zunächst aus. Dazu nutzen wir vorhandenen Beispiel Dateien in dem Verzeichnis. Diese werden wie folgt kompiliert (gcc sollte bereits installiert sein):

cd 433Utils/RPi_utils
make all

Jetzt starten wir ein Skript zum Auslesen des Codes:

./RFSniffer

Drücke den Sender ggf. mehrfach und schaue, welcher Code erscheint. Wir benötigen diesen im nächsten Schritt. Dies ist in meinem Fall folgender:

Received 5209360
Received 5209360
Received 5209360

 

Anschließend erstellen wir ein Skript, welches auf den Empfang unseres 433 MHz Codes wartet, um anschließend Mails zu versenden. Erstelle dazu eine neue Datei:

sudo nano post-box-email.cpp

Diese Datei bekommt folgenden Inhalt (passe dabei deinen Code entsprechend an):

In Zeile 39 machen wir einen System Aufruf, der eine Mail versendet. Diese Zeile kann natürlich angepasst werden, z.B. wenn du ein (PHP) Skript starten möchtest. In diesem Tutorial findest du eine Übersicht an Möglichkeiten, um Emails vom Raspberry Pi zu versenden.

Auch dieses Skript wird nun kompiliert:

g++ -DRPI   -c -o post-box-email.o post-box-email.cpp
g++ -DRPI  ../rc-switch/RCSwitch.o post-box-email.o -o post-box-email -lwiringPi -lwiringPiDev -lcrypt

Im letzten Schritt testen wir unser Skript, indem wir es ausführen und den Funkknopf drücken: Dabei sollte eine erste Mail gesendet werden.

Damit nicht zu viele Mails hintereinander gesendet werden, ist es möglich einen Cool-Down zu programmieren: Speichere dazu den Zeitstempel, wann die letzte Mail gesendet wurde und versende die nächste erst dann, wenn die Differenz einen Mindestwert übersteigt.

Sofern gewünscht kannst du das Skript auch dauerhaft beim Hochfahren starten lassen.

 

Fazit und Weiteres zum Raspberry Pi Briefkasten

In diesem Tutorial haben wir mittels eines Schnappschalters einen Email-sendenden Raspberry Pi Briefkasten gebaut, allerdings gibt es natürlich noch weitere Möglichkeiten dieses Projekt umzusetzen.

Manche Briefkästen sind nicht wie die hier gezeigten, sodass sich ein Schnappschalter nicht eignet. In diesem Fall ist das Tutorial dennoch ausführbar, jedoch mit einer kleinen Änderung: Statt einem Schnappschalter nutzen wir eine Infrarot Lichtschranke! Diese benötigen etwas mehr Strom, allerdings kann dadurch auch der Zustand erkannt werden, ob sich wirklich ein Brief im Kasten befindet. Im unserem Fall geht beim einfachen Öffnen der Klappe bereits eine Mail heraus.

Eine andere mögliche Erweiterung stellt OpenHAB dar. Hierbei können wir den Raspberry Pi Briefkasten in unser Smart Home integrieren. Dabei ist sowohl die letzte Öffnung als auch der aktuelle Status von Interesse. Denkbare Szenarien sind bspw. die Rücksetzung des Status jeden Tag um Mitternacht o.ä.

Welche weiteren Szenarien fallen euch ein, bei dem der „Briefkasten Sensor“ integriert werden könnte? Ich freue mich über Kommentare!

5 Kommentare

  1. Hallo Felix,
    Vielen dank für das Tutorial.
    Genau was ich brauche um endlich meine Klingeln in das Smarthome ein zu binden. Da sich meine zwei Klingeln weit außer Reichweite befinden und ich dazu noch 75cm (!) dicke Wände habe, war es mir bisher nicht möglich die Funkstrecke zu verlängern. Jetzt muss ich die Klingeln nur noch in MQTT einbinden. Eine alte Klingel (Gong kaputt) kann als Briefkastensensor dienen. Schön wieder was zu basteln zu haben.

    Grüsse aus RLP
    Sven

    Antworten
  2. Ich stell mir gerade vor das mit dem Telegramm Script zu verbinden…
    Oder einen Steckdosenschalter schalten so das in der Küche eine Lampe brennt…
    Oder beides 😉
    Grüße
    Andreas

    Antworten
  3. Nabend, besteht auch die möglichkeit eine Systemvariable zu schalten ? ich blick bis dato noch nicht so richtig durch …

    Antworten

Hinterlasse einen Kommentar

Deine Email Adresse wird nicht veröffentlicht.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.

Blog abonnieren

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