Posti-Bot Smarter Briefkasten mit Espressif ESP32

Trari trara, die Post ist da! Leider weiß man nicht, wann sie im Briefkasten gelandet ist. Das ist ärgerlich, wenn man auf einen wichtigen Brief wartet und deshalb ständig zum Briefkasten laufen muss. Zum Glück kann Posti-Bot helfen. Die Elektronik auf Basis eines Espressif ESP32-Microcontroller-Boards macht jeden Briefkasten smart und benachrichtigt per E-Mail bei eingehender Post.

Funktionen von Posti-Bot

Posti-Bot ist in jedem handelsüblichen Postkasten einsetzbar. Dabei spielt es keine Rolle, ob der Briefkasten einen Deckel oder einen Schlitz für den Posteinwurf besitzt. Einfach Posti-Bot mit doppelseitigen Klebeband im Briefkasten fixieren und fertig. Sobald der Briefzusteller eine Sendung einwirft, versendet der Bot eine Benachrichtigungs-E-Mail. Wird der Briefkasten geleert, geht ebenfalls eine E-Mail-Benachrichtigung an alle Benutzer des Briefkastens raus. Dann braucht niemand mehr den Briefkasten zu öffnen, um nach der Post zu sehen. Geht der Akku zur Neige, versendet Posti-Bot eine E-Mail über den niedrigen Akkustand. So kann der Akku rechtzeitig aufgeladen werden, bevor der smarte Briefkasten wieder dumm wird.

Bauteile und Kosten

Rund zwei Stunden sollte man einplanen, um Posti-Bot zusammenzubasteln. Neben einem Espressif ESP32-Microcontroller-Board benötigt man einen Ultraschallsensor, einen Festspannungsregler, zwei Kondensatoren, ein paar Widerstände und eine Niedervolt-Einbaubuchse. Die Spannungsversorgung erfolgt über eine 5-Volt-Powerbank oder eine beliebige Stromquelle, die mehr als 6 Volt Gleichspannung liefert.

  • 1 x Espressif ESP32 Developer Board
  • 1 x HC-SR04 Ultraschallsensor
  • 1 x L78S05 Festspannungsregler 5 Volt
  • 1 x Tantal-Kondensator 0,33 µF
  • 1 x Tantal-Kondensator 0,1 µF
  • 1 x Widerstand 10 kΩ
  • 1 x Widerstand 20 kΩ
  • 1 x Niedervolt-Buchse 2,1 mm
  • Steckerleisten, Kabel, Schrumpfschlauch, Heißkleber
  • Filament oder fertiges Gehäuse (ca. 50 x 120 x 25 mm)
  • 4 x Schneidschrauben M3, 10 mm
  • 1 x Powerbank 5 Volt oder externe Stromversorgung mit mehr als 6 Volt

Das Espressif ESP32-Board eignet sich für das Projekt besonders gut. Es ist kompakt, arbeitet stromsparend und besitzt ein leistungsfähiges WLAN-Modul. Die WLAN-Reichweite ist dann wichtig, wenn eine größere Distanz zwischen Router und ESP32 im Briefkasten überbrückt werden soll. Das grundsätzlich ebenfalls geeignete, etwas preiswerte ESP8266 NodeMCU schaffte es beispielsweise nicht, eine stabile WLAN-Verbindung über eine Entfernung von etwa 20 Metern und über vier Etagen aufzubauen. Ich habe mich deshalb für das ESP32 Developer Board entschieden.

Posti-Bot Smarter Briefkasten mit Espressif ESP32 ESP32

Prinzipiell kommen auch ein Arduino Uno oder Mega in Frage. Beide Microcontroller-Boards benötigen aber deutlich mehr Strom als das ESP32 und müssen erst mit einem separaten WLAN-Modul fit fürs Internet gemacht werden. Das treibt die Kosten und den Aufwand beim Bau von Posti-Bot in die Höhe. Das ESP32-Board ist dagegen mit etwa 5 Euro Anschaffungskosten im einschlägigen China-Handel recht preiswert zu haben. Für die restlichen Bauteile und ein Gehäuse aus dem 3D-Drucker muss man etwa 5 Euro veranschlagen. Dazu kommt noch die Anschaffung einer Powerbank als Stromquelle. Die kann man sich sparen, sofern der Briefkasten eine Namensbeleuchtung besitzt und man die Versorgungsspannung dort abgreifen kann. Dann kostet Posti-Bot rund 10 Euro, mit passender Powerbank nicht viel mehr als 20 Euro.

Posti-Bot Smarter Briefkasten mit Espressif ESP32 Schaltplan

Posteinwurferkennung per Ultraschallsensor

Den Posteinwurf registriert Posti-Bot über einen Ultraschallsensor. Ich habe mich für diese Lösung entschieden, weil sie gegenüber Lichtschranke oder Druckkraftsensor komplett in einem kleinen Kasten untergebracht werden kann und somit aufwendige Verkabelungen im Briefkasten entfallen. Außerdem ist diese Lösung sehr preiswert und funktioniert in jedem Postkasten, unabhängig davon, ob er einen Einwurfschlitz, einen Deckel oben oder sogar an der Vorderseite besitzt, wie es beispielsweise bei US-amerikanischen Postboxen der Fall ist.

Zum Einsatz kommt ein HC-SR04 Ultraschallsensor, der zum Betrieb eine Spannung von 5 Volt benötigt. Der HC-SR04 besteht aus einem Sender (Trigger) und einem Empfänger (Echo). Der Port für den Trigger ist als Ausgang an Pin 27 und für den Echo als Eingang an Pin 35 geschaltet. Wer andere Anschlüsse wählen möchte, muss darauf achten, dass er für den Trigger keinen Port erwischt, der nur als Eingang funktioniert. Das sind beim ESP32 die Ports 34 bis 39. Da das ESP32 mit 3,3 Volt Signalspannung arbeitet, der Ultraschallsensor jedoch ein Echo-Ausgangssignal von 5 Volt liefert, ist ein Spannungsteiler aus 10 kΩ und 20 kΩ Widerständen zwischengeschaltet. Der Spannungsteiler senkt das Echo-Signal auf das gewünschte Spannungs-Niveau. Verzichtet man darauf, können keine Werte gelesen werden, möglicherweise nimmt der Port sogar Schaden. Das Trigger-Signal muss dagegen nicht aufbereitet werden. Hier reichen 3,3 Volt aus, damit der Sensor korrekt arbeitet.

Posti-Bot Smarter Briefkasten mit Espressif ESP32 HC-SR04

Die Funktionsweise des Ultraschallsensors ist recht einfach: Der Trigger sendet ein Ultraschallsignal, das von einem gegenüberliegenden Objekt reflektiert und vom Echo-Empfänger aufgenommen wird. Aus der Signallaufzeit errechnet sich die Entfernung zum Objekt. Die Bibliothek New Ping stellt dazu die passenden Befehle in C++ zur Verfügung, sodass man die Signalausgabe, den Empfang und die Auswertung nicht selbst programmieren muss. Es reicht aus, einen Sensor mit seinen Ein- und Ausgangs-Pins sowie maximaler Reichweite zu definieren. Über einen einzelnen Befehl im Programmcode erhält man die Entfernung zum reflektierenden Objekt in Zentimeter.

Posti-Bot Smarter Briefkasten mit Espressif ESP32 im Briefkasten

In einem Standardbriefkasten mit einem Einwurfschlitz oder eine Einwurfklappe auf der Oberseite befestigt man den Ultraschallsensor auf dem Boden. Bei US-Postboxen mit einer Klappe auf der Vorderseite an der Rückwand. Das Ultraschallsignal wird dann an der Oberseite oder der Einwurfklappe reflektiert und der Abstand im leeren Zustand des Briefkastens festgestellt. Durch den Einwurf oder das Einlegen eines Briefes ändert sich dieser Abstand und Posti-Bot erkennt, dass Post angekommen ist.

Sie haben Post: Benachrichtigung per E-Mail

Um eine Benachrichtigung per E-Mail zu versenden, muss das ESP32-Board per WLAN mit dem heimischen Router verbunden sein. Ist der Briefkasten zu weit entfernt, kann es zu Verbindungsproblemen kommen. In solchen Fällen hilft ein Repeater auf halber Funkstrecke oder ein Powerline-WLAN-Adapter im Erdgeschoss oder Keller. Bei meinen Tests funktionierte die Funkverbindung in einem Mehrfamilienhaus noch über vier Etagen an einer AVM FritzBox 7490 zuverlässig.

Bei meiner Pflanzenüberwachung Strauchi-Bot habe ich sehr gute Erfahrungen mit dem SMTP-Dienst SMTP2GO zum Versenden von E-Mails gemacht, denn es werden keine großen Hardware-Ressourcen benötigt und die Programmierung ist simpel. Das ESP32-Board übermittelt lediglich die Mail-Inhalte verschlüsselt an den Dienst. Der eigentliche Versand der E-Mail erfolgt über SMTP2GO. Der Dienst bietet den Versand von bis zu 1000 E-Mails pro Monat kostenfrei an, pro Stunde können maximal 25 Mails versendet werden. Das ist mehr als genug, denn Posti-Bot versendet kaum mehr als 40 bis 80 Benachrichtigungen pro Monat.

Posti-Bot Smarter Briefkasten mit Espressif ESP32 E-Mail

Benutzen mehrere Mitbewohner den Briefkasten, dann sollten alle in den Mail-Verteiler aufgenommen werden. Beim Entleeren des Briefkastens erhalten sie ebenfalls eine E-Mail-Benachrichtigung und wissen, dass die Post bereits entnommen wurde und der Postkasten nicht mehr geleert werden muss. SMTP2GO funktioniert mittlerweile nicht mehr, sodass man auf eine Alternative ausweichen muss.

Akkuspannung auslesen und Hinweis versenden

Falls der Postkasten eine Namensbeleuchtung besitzt, muss man sich keine Gedanken um den Strombedarf machen. Dann greift man die Spannung für Posti-Bot an der Beleuchtung ab. Ein L78S05 Festspannungsregler bringt die eingehende Gleichspannung von mindestens 6 Volt auf die notwendigen 5 Volt Versorgungsspannung. Zwei Siebkondensatoren von 0,33 und 0,1 µF sorgen für eine Glättung der Spannung.

Posti-Bot Smarter Briefkasten mit Espressif ESP32 Festspannungsregler

In den meisten Briefkästen ist allerdings keine Spannungsversorgung vorhanden, sodass man Posti-Bot mit einem Akku betreiben muss. Damit man rechtzeitig per E-Mail gewarnt wird, wenn der Akku zur Neige geht, überwacht man die Eingangsspannung. Das ist zwar keine besonders genaue Methode, reicht aber als grober Anhalt aus. Die Eingangsspannung an einem analogen Port zu messen, ist nicht ganz trivial und würde zusätzliche Bauteile benötigen. Die kann man sich aber sparen, wenn man die interne Spannung des ESP32 misst. Sinkt sie unter 110 mV, dann ist die Eingangsspannung zu niedrig und Posti-Bot versendet einen Hinweis zum Aufladen des Akkus. Das funktioniert nicht ganz zuverlässig, sodass man diese Funktion eher als experimentell ansehen muss.

Wer Posti-Bot mit einem Akku betreibt, kommt nicht drumherum, Stromsparfunktionen zu programmieren. Ich habe mich in der ersten Ausbaustufe darauf beschränkt, das Abfrage-Intervall auf fünf Minuten zu setzen. Möchte man minuten- oder sekundengenau über einen Posteinwurf informiert werden, dann verkürzt man das Intervall entsprechend. Eine weitere Möglichkeit besteht darin, Posti-Bot außerhalb der Postlieferzeiten in einen Ruhemodus zu versetzen, um Strom zu sparen. Dazu experimentiere ich noch mit der Real Time Clock (RTC) des ESP32 und den Ruhemodi. Bisher habe ich allerdings keine zufriedenstellend arbeitende Lösung gefunden.

Posti-Bot Smarter Briefkasten mit Espressif ESP32 Niederspannungsbuchse

Gehäuse aus dem 3D-Drucker

Bei meinen bisherigen Projekten habe ich mich immer wieder darüber geärgert, Standard-Gehäuse aus dem einschlägigen Elektronik-Handel verwenden zu müssen. Die sind entweder zu groß oder zu klein, zu hoch oder zu flach, innen passt nichts richtig und schön sehen sie auch nicht aus. Da bietet sich ein Gehäuse aus dem 3D-Drucker an.

Posti-Bot Smarter Briefkasten mit Espressif ESP32 Gehäuse

Das Gehäuse für Posti-Bot habe ich mit dem 3D-CAD/CAM-Tool Autodesk Fusion 360 erstellt. Der Download und die Nutzung der Software ist für Privatanwender kostenfrei. Der Gehäusedeckel besitzt Aussparungen für den Ultraschallsensor, die Micro-USB-Buchse des ESP32 und die Niedervolt-Buchse für den Anschluss externer Stromquellen. Der Boden des Gehäuses ist mit Halterungen versehen, auf die man die Standardbauteile einfach aufsteckt und mit ein paar Tropfen Heißkleber sichert.

Posti-Bot Smarter Briefkasten mit Espressif ESP32 Posti-Bot im Gehäuse

Die beiden Gehäuseteile verschraubt man mit vier M3 Schneidschrauben mit einer Länge von 10 mm. Der Akku wird außerhalb des Gehäuses untergebracht, um flexibel bei der Auswahl des Stromspenders zu bleiben. Die STL-Datei zum Ausdruck des Posti-Bot-Gehäuses gibt es zum Herunterladen bei Thingiverse.

Programmierung mit Arduino IDE

Den Sketch für das ESP32 programmiert man in C++ mit der kostenfreien Arduino IDE. Sie unterstützt das ESP32-Developer-Board allerdings nicht nativ, sodass die notwendigen Board-Definitionen und Bibliotheken unter macOS oder Windows manuell eingebunden werden müssen. Espressif bietet auf GitHub eine anschauliche Anleitung mit Link zum Download der notwendigen Dateien an.

Da es sich beim Espressif ESP32 um ein Developer-Board handelt, das einen Micro-USB-Anschluss besitzt, braucht man es nur an den Rechner anzustöpseln und kann nach der Auswahl des Boards und des Ports sofort mit der Programmierung beginnen.

Vor dem Compilieren müssen im folgenden Sketch noch die SSID, das WLAN-Passwort, die IP-Adresse von Posti-Bot und des Routers sowie die Base64-verschlüsselte Zugangskennung von SMTP2GO und die Absender- und Empfänger-Mail-Adressen eingefügt werden.

#include "WiFi.h"
#include "NewPing.h"
#include "driver/adc.h"
#include "esp_adc_cal.h"

#define TRIGGER_PIN 27
#define ECHO_PIN    35
#define MAX_DISTANCE 50
#define V_REF 1100

WiFiServer server(80);
WiFiClient client;
NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE); 

const char* ssid = "xxxxxxxx"; // SSID des WLANs
const char* password = "xxxxxxxx"; // Passphrase des WLANs

IPAddress ip( xxx, xxx, xxx, xxx ); // IP von Posti-Bot
IPAddress gateway( xxx, xxx, xxx, xxx ); // IP des Routers
IPAddress subnet( 255, 255, 255, 0 );

byte mac[] = { 0xXX, 0xXX, 0xXX, 0xXX ,0xXX, 0xXX }; //MAC-Adresse von Posti-Bot
byte meldung = 0;
char smtpcorp[] = "smtp2go.com";
boolean postkasten_leer = true; 
boolean akku_leer = false;
int port = 2525;
int i = 0;
int standardabstand = 28;
int abstand = 0;
int abfrageintervall = 5000;

void setup()
{
  adc1_config_width(ADC_WIDTH_12Bit);
  adc1_config_channel_atten(ADC1_CHANNEL_6, ADC_ATTEN_11db);
  Serial.begin(115200); 
  delay(5000);
  for(i=0; i < 29; i++) 
    {
      delay(100);
      standardabstand = standardabstand + sonar.ping_cm(); 
    } 
    standardabstand = standardabstand / 30;
  Serial.println(standardabstand);
    WiFi.begin(ssid, password);
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println("");
  Serial.println("WiFi-Verbindung hergestellt."); 
  Serial.println("IP-Addresse: ");
  Serial.println(WiFi.localIP());
}

byte sendEmail()
{ 
  byte thisByte = 0;
  byte respCode;
  if(client.connect(smtpcorp, port) == 1) {
    Serial.println(F("Mit SMTP2GO verbunden."));
  } else {
    Serial.println(F("Verbindung mit SMTP2GO konnte nicht hergestellt werden."));
    return 0;
  }
  if(!eRcv()) {Serial.println("Vor EHLO");return 0 ;}
  Serial.println(F("EHLO senden."));
  client.println("EHLO XXX.XXX.XXX.XXX"); // IP von Posti-Bot
  if(!eRcv()) {Serial.println("EHLO");return 0 ;}
  Serial.println(F("AUTH Login senden."));
  client.println("AUTH Login");
  if(!eRcv()) {Serial.println("AUTH");return 0 ;}
  Serial.println("Benutzer senden.");
  client.println("xxxxxxxxxxxxxxxxxxxxxxx"); // Benutzername bei SMTP2GO verschlüsselt
  if(!eRcv()) {Serial.println("Benutzer");return 0 ;}
  Serial.println(F("Passwort senden."));
  client.println("xxxxxxxxxxxxxxxxxxx"); // Passwort bei SMTP2GO verschlüsselt
  if(!eRcv()) {Serial.println("ehlo");return 0;}
  Serial.println(F("Gesendet von"));
  client.println("MAIL From: "); // E-Mail-Adresse von Posti-Bot
  if(!eRcv()) {Serial.println("E-Mail");return 0 ;}
  Serial.println(F("Senden an"));
  client.println("RCPT To: "); // E-Mail-Adresse des Empfängers
  if(!eRcv()) {Serial.println("email");return 0 ;}
  Serial.println(F("Daten senden."));
  client.println("DATA");
  if(!eRcv()) {Serial.println("E-Mail");return 0 ;}
  Serial.println(F("E-Mail senden."));
  client.println("To: Empfänger "); // E-Mail-Adresse des Empfängers 
  client.println("From: Posti-Bot "); // E-Mail-Adresse von Posti-Bot
  switch(meldung) 
    {
      case 0: client.println("Subject: Sie haben Post\r\n"); client.println("Es ist Post angekommen!"); break;
      case 1: client.println("Subject: Postkasten geleert\r\n"); client.println("Der Postkasten wurde geleert!"); break;
      case 2: client.println("Subject: Akkustand niedrig\r\n"); client.println("Akkustand niedrig. Bitte Akku von Posti-Bot aufladen!"); break;
    }
  client.println(".");
  if(!eRcv()) {Serial.println("Nach dem Senden.");return 0 ;}
  Serial.println(F("Senden beenden."));
  client.println("QUIT");
  if(!eRcv()) {Serial.println("Nach dem Beenden.");return 0 ;}
  client.stop();
  Serial.println(F("Ausgeloggt."));
  return 1;
}

byte eRcv()
{
  byte respCode;
  byte thisByte;
  int loopCount = 0;

  while(!client.available()) {
    delay(1);
    loopCount++;
    if(loopCount > 10000) {
      client.stop();
      Serial.println(F("10 Sekunden \r\nTimeout"));
      return 0;
    }
  }
  respCode = client.peek();
  while(client.available())
  {  
    thisByte = client.read();   
    Serial.write(thisByte);
  }
  if(respCode >= '4')
  {
    efail();
    return 0; 
  }
  return 1;
}

void efail()
{
  byte thisByte = 0;
  int loopCount = 0;

  client.println(F("QUIT"));
  while(!client.available()) {
    delay(1);
    loopCount++;
    if(loopCount > 10000) {
      client.stop();
      Serial.println(F("efail \r\nTimeout"));
      return;
    }
  }
  while(client.available())
  {  
    thisByte = client.read();   
    Serial.write(thisByte);
  }
  client.stop();
  Serial.println(F("Verbindung beendet."));
}

void sende_Nachricht()
{
  server.begin();
  delay(10000);
  if(sendEmail()) Serial.println(F("E-Mail versendet."));
      else Serial.println(F("E-Mail konnte nicht versendet werden."));
}

boolean Akkustand_niedrig()
{
   esp_adc_cal_characteristics_t characteristics;
   esp_adc_cal_get_characteristics(V_REF, ADC_ATTEN_11db, ADC_WIDTH_12Bit, &characteristics);
   uint32_t spannung = adc1_to_voltage(ADC1_CHANNEL_6, &characteristics);
   Serial.printf("%d mV\n", spannung);
   if (spannung <= 110)
    { 
      return(true); 
    }
   else
    {  
      return(false);
    }
}

void loop()
{
  delay(abfrageintervall);
  abstand = sonar.ping_cm(); 
  Serial.println(abstand);  
  if (abstand < standardabstand) 
    {
      if (postkasten_leer)
        {
            postkasten_leer = false;
            meldung = 0;
            Serial.println("Sie haben Post!");
            sende_Nachricht();
        }
    }
  else 
    {
      if (!postkasten_leer)
        {
            postkasten_leer = true;
            meldung = 1;
            Serial.println("Postkasten entleert!");
            sende_Nachricht();
        }
    }
  if (Akkustand_niedrig())
    {
      if (!akku_leer)
        {
          akku_leer = true;
          meldung = 2; 
          Serial.println("Akkustand niedrig!");
          sende_Nachricht();
        }
    }  
}

Fazit

Der smarte Briefkasten ist bei mir seit mehreren Wochen im Dauereinsatz und meldet zuverlässig per E-Mail, sobald Post im Briefkasten landet und er geleert wird. Der verwendete Akku hält Posti-Bot etwa zwei Wochen am Leben. Da sollte eigentlich noch mehr drin sein. Falls jemand konkrete Ideen zum Stromsparen hat, dann bitte gerne in den Kommentaren posten.

56 Kommentare

  1. Wenn ich keine zwei linken Hände hätte, würde ich mir das sofort bauen. Super Ding!

  2. Du kannst den ESP32 in den Phasen der Nichtnutzung in den Deepsleep fahren und dann vor den Aktionen wieder „aufwecken“. Zumindest die Theorie. Habe ich neulich in einem Forum über den ESP32 gelesen. Vielleicht hilft dir das ja, die Akkulaufzeit zu steigern 🙂

    1. Author

      Hallo Marco,

      danke dir! Die Deepsleep-Funktion hatte ich mir schon angesehen. Nach dem Aufwecken erfolgt allerdings eine Art Reboot. Das bedeutet, der bisherige Status von Posti-Bot ist dann futsch. Man muss den Status also irgendwo vorher speichern, sonst kommt Posti-Bot durcheinander und weiß nicht mehr, ob bereits Post im Briefkasten liegt oder nicht.

      Viele Grüße
      Oliver

      1. Unter Espruino gibt es sowas wie save(), womit du den Stand persistent speichern kannst und das nach einem Reboot auch alles wieder normal ausgeführt wird. Ich bin mir sicher, dass es das auch für die normale Firmware gibt.

          1. Der Reboot erfolgt, weil du wahrscheinlich die Revision 0 des Chips hast. Dieser hat ungefähr 10 Bugs. Einer davon ist, dass er nach dem DeepSleep einfach abstürzt und neu startet. Dieser Bug ist in Revision 1 des Chips behoben.
            Die Akkulaufzeit mit zwei Wochen ist leider deshalb mau, weil der ESP32 nicht schlafen gelegt werden kann.
            Kauf dir am besten einen Lolin32 von WEMOS (nicht die Lite Version). Das ist ein ESP32 der in Rev. 1 ausgeliefert wird. Hab meinen bei ebay für 5€ gekauft. Als Stromversorgung nimmst du einen LiFePo4 Akku von Soshine. Die kannst du out of the box ohne Spannungsregler an den 3,3V Pin betreiben. Der LifePo4 Akku benötigt ein spezielles Ladegerät. Wenn du das alles befolgst, läuft dein ESP32 ca. 5-6 Monate. Einmal Abfragen zu einer bestimmten Uhrzeit reicht ja….

    2. Eine andere Möglichkeit der Steigerung der Akkulaufzeit wäre es, die Briefkastenklappe mit einem Reedkontakt auszustatten. Dann wird nicht in bestimmten Intervallen gemessen sondern nur, wenn die Klappe vorher betätigt wurde. Die Messung verifiziert dann, dass tatsächlich Post drin liegt und nicht etwa nur ein Witzbold oder der Wind mit der Klappe geklappert hat.

  3. Super Artikel und Idee – vielen Dank dafür mit der detaillierten Beschreibung! Eine Frage – stimmt die „Elektrische Zeichnung“ mit dem Quelltext und dem Artikel über ein, was „Trigger“ und „Echo“ in Bezug zu PIN27 sowie PIN35 betrifft? Vielen Dank schon einmal!

    1. Author

      Hallo Philip,

      danke für den Hinweis! Im Schaltplan war ein Fehler. Der Text hat es richtig beschrieben. Der Schaltplan ist jetzt korrigiert.

      Viele Grüße
      Oliver

    1. Hallo Dirk,
      kannst du mal erläutern, wie du das gemacht hast, am besten mit Code Beispielen.
      Gruß
      Hans

  4. Ganz dumme Frage, die nichts mit dem Projet zu tun hat:
    Was sollen die Siebkondesatoren am L78s05?
    Die Powerbank fifert doch eine ziemlich glatte Spannung?

    1. Author

      Hallo Thomas,

      wie im Text steht, kann auch eine externe Spannungsquelle angeschlossen werden. Dafür ist die runde Buchse da. Die externe Spannung aus der Briefkastenbeleuchtung beispielsweise ist nicht immer besonders gut geglättet.

      Viele Grüße
      Oliver

      1. Die externe Spannung aus der Briefkastenbeleuchtung ist in der Regel sogar nur eine Wechselspannung, die muss dann vorher noch gleichgerichtet werden!

  5. Hi,

    ich bin Anfänger. Vielen Dank für den super Artikel!

    M.E. sollte man viel mehr Strom sparen können, wenn man statt dem Ultraschallsensor einen Reet-Kontakt nimmt.
    Dieser weckt den ESP dann auf…

    1. Author

      Hallo Eckhard,

      es sprechen mehrere Gründe gegen die Verwendung eines Reed-Kontaktes:

      1. Die Lösung würde nur bei Briefkästen mit einem Deckel oder einer Klappe funktionieren, nicht bei Briefkästen, die nur einen Schlitz haben.
      2. Es lässt sich nicht feststellen, ob tatsächlich etwas in einen Briefkasten eingeworfen oder nur der Deckel oder die Klappe bewegt wurde.
      3. Es lässt sich nicht feststellen, ob die Post entnommen wurde.
      4. Die Verkabelung ist aufwendig. Kabel im Briefkasten können abreißen, wenn Post eingeworfen wird.

      Viele Grüße
      Oliver

  6. Hallo,
    eine nette Idee, die mich gleich zum Bauen animiert hat. Mit ein paar Modifikationen (IR-Modul statt Ultraschallsensor, DeepSleep mit Zwischenspeichrung, lange Laufzeit mit nur einem LiPo-Akku …) hatte ich auch bald einen gut funktionierenden Prototypen.
    Die Ernüchterung kam allerdings, als ich das alles im Briefkasten untergebracht hatte – von dort kam kein Signal mehr an, was vorher gut funktionierte auf dem Basteltisch. Bald kam ich auch drauf, dass es kaum möglich ist, in einem Metallkasten WLAN-Signal zu erwarten.
    Also wer dies nach baut und nicht gerade einen Holzbriefkasten hat, sollte das vorher bedenken.
    Seit dem ruht das Projekt nun leider. Ich rätsel noch, was da sinnvoll ist … extra Antenne, Modul außen und nur Sensor innen oder was auch immer.
    Viele Grüße Uwe

    1. Hey Uwe,
      ich stehe vor dem gleichen Problem: Metall-Briefkasten.
      Ich teste eine Wemos D1 mini pro mit externer Antenne (ca. 7,50 EUR bei Banggood). WIFI mit MQTT und DeepSleep reicht mir. Da mein Briefkasten frei steht, kann ich die Antenne sicherlich hinten verstecken.
      Welches IR-Modul hast du verwendet?
      Viele Grüße
      Stefan

      1. Hi Stefan, also der Epfang im Metallkasten ist schon möglich, wenn die Entfernung zum Router/Accesspoint relativ gering ist, ansonsten hilft die Antenne auf jeden Fall (einfach erst mal eine Testschaltung ohne Antenne probieren). Habe auch einen Wemos D1 mini genommen, verbraucht weniger Strom, hat aber dafür auch einen etwas schlechteren WLAN-Empfang als NODEMCU. Für das IR-Modul hatte ich mich anfangs entschieden, weil es auch mit 3,3V arbeitet und somit ein 3,7V-Li-Akku reicht, wo hingegen der HC-SR04 Ultraschallsensor 5V braucht. Inzwischen habe ich aber auch einen HC-SR04P gefunden, der mit 3-5V arbeitet, z.B. hier: https://de.aliexpress.com/item/HC-SR04P-Ultrasonic-Ranging-Module-Ranging-Sensor-Module-3-5-5V-Wide-Voltage-Performance-Is-Stronger/32711959780.html?spm=a2g0x.search0104.3.1.4a4513dbIpy9c5&ws_ab_test=searchweb0_0,searchweb201602_2_10320_10065_10068_10547_319_317_10548_10696_453_10084_454_10083_10618_10304_10307_10820_10821_538_537_10302_536_10843_10059_10884_10887_100031_10319_321_322_10103,searchweb201603_52,ppcSwitch_0&algo_expid=2f888843-0ec8-4782-ba05-2d3a2cf00526-0&algo_pvid=2f888843-0ec8-4782-ba05-2d3a2cf00526. IR-Modul geht dieses: https://de.aliexpress.com/item/Infrared-barrie-module-obstacle-avoidance-obstacle-avoidance-car-sensors-black-and-white-line-identification-distance-adjustable/32655879900.html?spm=a2g0x.search0104.3.8.b4853cebOhzOva&ws_ab_test=searchweb0_0%2Csearchweb201602_2_10320_10065_10068_10547_319_317_10548_10696_453_10084_454_10083_10618_10304_10307_10820_10821_538_537_10302_536_10843_10059_10884_10887_100031_10319_321_322_10103%2Csearchweb201603_52%2CppcSwitch_0&algo_pvid=431ab347-9a87-433b-834b-88b8c7b6c126&algo_expid=431ab347-9a87-433b-834b-88b8c7b6c126-1

    2. Hallo Uwe,
      ich habe auch einen Metallbriefkasten und habe daher das ESP32 DevKit modifiziert. Das kann man z.B. machen, indem man die Antennenleitung zur PCB-Antenne durchtrennt und ein Kabel an die kleine blanke Fläche der Leiterbahn anlötet, die vorher zur Antenne ging (das ist die linke blanke Fläche der Antennenleitung, wenn das Board so vor dir liegt, dass die Micro-USB Buchse zu dir hin zeigt; die rechte Fläche ist der Masse-Anschluss für die Abschirmung des Kabels, man kann sie aber auch an die Metallabschirmung des ESP32-WROOM.32 Moduls löten). An das Kabel kommt dann die Antenne.
      Ich habe es aber anders gemacht: Da ich noch ein defektes ESP32 DevKit rumliegen hatte, habe ich das ESP32-WROOM-32 Modul darauf mit Heißluft runter gelötet und ein ESP32-WROOM-32U drauf gesetzt, du kannst aber auch ein ESP32-WROOM-32S nehmen. Unterschied: das U-Modul hat eine uFL Buchse zum Anschluss einer Antenne, das S-Modul hat eine uFL-Buchse *und* eine PCB-Antenne (umschalten durch Setzen einer Lötbrücke). Die Antenne sitzt nun (mit Magnetfuß) außen am Briefkasten und alles ist gut.
      Gruß
      Hans

      1. Hallo Hans, und wie lange hält Deine Batterie beim ESP32? Meine Konfiguration mit ESP12-F (etwas verbesserte Antenne, reicht jetzt auch gerade so) und 3V-Ultraschallsensor hält mit einem LiPo-Akku nun schon einen Monat (bei Nutzung des Deep-Sleep, Messung aller 15 Minuten).
        Grüße Uwe
        PS: Statt Mailserver kann man auch sehr gut Telegram-Bot als Melder benutzen.

        1. Hallo Uwe,

          leider kann ich dazu momentan keine Aussage machen, weil ich mein Monatskontingent bei SMTP2GO in einer einzigen Nacht rausgehauen hatte. Ich hatte einen Fehler im mechanischen Versuchsaufbau der dazu führte, dass andauernd Mails verschickt wurden. Sie kamen noch den ganzen nächsten Tag im Zweiminutentakt an 🙁 Jetzt muss ich wieder warten, bis der nächste Zählmonat angefangen hat.

          Wenn der Empfang gerade so funktioniert, solltest du in den loop eine Abfrage einbauen, ob die WLAN Verbindung noch existiert und wenn nicht, diese neu herstellen lassen. Bei dem o. stehenden Code funktioniert das nämlich nicht mehr, wenn die Verbindung einmal getrennt wurde (auch, wenn z. B. der Router über Nacht das WLAN abschaltet). Das kann dann so aussehen:

          if (WiFi.status() != WL_CONNECTED) // Wenn Verbindung zum WLAN abgebrochen
          {
          WiFi.begin(ssid, password); // Verbindung erneut herstellen
          while (WiFi.status() != WL_CONNECTED)
          {
          delay(500);
          #ifdef DEBUG
          Serial.print(„.“);
          #endif
          }
          #ifdef DEBUG
          Serial.println(„“);
          Serial.println(„WiFi-Verbindung hergestellt.“);
          Serial.print(„IP-Addresse: „);
          Serial.println(WiFi.localIP());
          #endif
          }

          Den Schalter DEBUG habe ich zu Beginn des Programms gesetzt. Damit kann ich ein- und ausschalten, ob Meldungen über die serielle Konsole gesendet werden. Es macht nämlich keinen Sinn, diese zu schicken, wenn das ESP32-Board nicht mit dem PC verbunden ist.

          Und noch eine Anmerkung von mir: Meines Erachtens kann die Überwachung der Eingangsspannung bei Versorgung über eine Powerbank nicht funktionieren. Powerbanks sind ja so gebaut, dass die Ausgangsspannung möglichst lange bei 5V bleibt und zum Schluss abrupt einbricht. Selbst wenn der Posti-Bot das detektieren sollte, ist er unmöglich in der Lage, noch eine Mail zu versenden. Das konnte ich auch durch eigene Langzeitmessungen im 10-Sekundentakt verifizieren. Bei der Versorgung mit einer einzelnen LiPo Zelle sieht das anders aus. Die interne Spannung ist bei mir ziemlich konstant 142mV, auf 110mV sinkt sie nie.

          Gruß
          Hans

          PS: Wäre schön, wenn jemand anders auch mal Beispielcode reinstellen würde, z.B. zur Programmierung des Deep-Sleep Modus oder Telegram-Bot oder Push-Notifier oder Abfrage zu bestimmten Zeiten oder…
          Muss ja nicht jeder wieder das Rad neu erfinden.

        2. Ich wäre dankbar für ein Programmlisting, das den Telegram Bot anspricht.
          Kannst du mir bitte weiterhelfen?

  7. Hallo Oliver,
    schön wäre es noch, wenn du etwas genauer ausführen würdest, wie man den Account bei SMTP2GO einrichtet und konfiguriert. Am besten wäre ein Schritt-für-Schritt-HowTo dazu. Ich habe mir das mal angesehen bei SMTP2GO, habe aber nicht sehr viel verstanden.
    Gruß
    Hans

      1. Hallo Oliver,

        ganz so einfach scheint es aber doch nicht zu sein! Was muss als „domain“ eingetragen werden? Ich habe als Benutzernamen meine Email-Adresse eingegeben, damit kann ich mich auch über den Browser einloggen. Wenn ich diese (und das zugehörige Passwort) aber verschlüsselt in deinen Sketch eintrage, schlägt die Authentifikation fehl, im log steht unter Benutzername und Passwort etwas ganz anderes als das, was ich eingetragen habe, auch die lokale IP Adresse im log ist anders als die des Boards:

        0
        110 mV
        Akkustand niedrig!
        Mit SMTP2GO verbunden.
        220 mail.smtp2go.com ESMTP Exim 4.91 Tue, 05 Feb 2019 12:35:08 +0000
        EHLO senden.
        250-mail.smtp2go.com Hello 192.168.178.74 [91.180.167.37]
        250-SIZE 52428800
        250-8BITMIME
        250-DSN
        250-PIPELINING
        250-AUTH CRAM-MD5 PLAIN LOGIN
        250-CHUNKING
        250-STARTTLS
        250-PRDR
        250 HELP
        AUTH Login senden.
        334 VXNlcm5hbWU6
        Benutzer senden.
        334 UGFzc3dvcmQ6
        Passwort senden.
        535 Incorrect authentication data
        221 mail.smtp2go.com closing connection
        Verbindung beendet.
        ehlo
        E-Mail konnte nicht versendet werden.

        1. Ergänzung:
          Jetzt habe ich einen neuen Benutzer bei SMTP2GO angelegt und dessen Login eingetragen. Damit gelingt es Posti-Bot jetzt, eine Verbindung mit dem Dienst herzustellen allerdings wird immer noch keine Email verschickt:

          235 Authentication succeeded
          Gesendet von
          250 OK
          Senden an
          550 that smtp username’s account is not allowed to send
          221 mail.smtp2go.com closing connection
          Verbindung beendet.
          email
          E-Mail konnte nicht versendet werden.

          1. Author

            Hallo Hans,

            mit den Standard-Einstellungen unter SMTP2GO sollte es eigentlich klappen. Unter „Sending Options“ muss „Restricted Senders“ auf „Off“ stehen. Mit einer Gmail-Adresse sollte es problemlos funktionieren.

            Viele Grüße
            Oliver

        2. Geht aber leider nicht. Ganz gleich, welchen User ich nehme bzw. von welcher Emailadresse:

          235 Authentication succeeded
          Gesendet von
          250 OK
          Senden an
          550 that smtp username’s account is not allowed to send
          221 mail.smtp2go.com closing connection
          Verbindung beendet.
          email
          E-Mail konnte nicht versendet werden.

          1. Das ist es ja, was ich schrieb: Ganz so einfach ist es nicht!
            Dort steht, dass man eine Domain angeben muss und dort einen SPF record anlegen oder um einen Eintrag ergänzen muss, damit es funktioniert. Es muss also eine Domain sein, über die man selbst verfügt und dort auch etwas ändern kann. Ich habe es mit „domain.com“ versucht, wie in deinem Sketch steht (postibot.domain.com) und diese Domain ist auch veryfied, aber es funktioniert nicht. Wenn ich eine andere Domain angebe, muss ich dort den SPF record ändern, aber wie?

          2. Author

            Richte eine GMail-E-Mail-Adresse ein und benutze sie bei SMTP2GO, so wie ich bereits geschrieben hatte. Dann funktioniert es. Da muss dann auch nichts geändert werden. Im Sketch musst du die E-Mail-Adressen wie angegeben durch deine eigenen ersetzen (Absender und Empfänger). Du willst doch beispielsweise die Benachrichtigungs-Mail nicht an empfaenger@domain.com senden, sondern an deine Mail-Adresse. Die Mail-Adressen im Sketch sind selbstverständlich nicht die, die ich verwende, sondern nur Beispiele. Deshalb dahinter auch die Kommentare, durch was sie ersetzt werden müssen. Bitte geh den Sketch durch und versuche ihn zu verstehen, ansonsten ist es nur ein reines Rumprobieren.

          3. Danke, dass du dir so viel Zeit für das Problem nimmst. Aber wie ich schon schrieb…
            Selbstverständlich habe ich die Email Adressen ausgetauscht durch eigene, auch eine Gmail Adresse habe ich eingegeben. Dennoch hat das alles nicht funktioniert!
            Mir ist schon klar, dass das mit den Voreinstellungen nicht funktionieren kann aber auch mit anderen Einstellungen geht es leider nicht. Deshalb war ich bei der Domain gelandet, die man scheinbar zwingend eingeben muss. Auch die Fehlermeldung bzw. der Link zu Fehler 550, den du geschickt hast, weist darauf hin:

            550 You are not allowed to send from that email address> #SMTP#- Check the “Restricted Senders” list on your SMTP2GO dashboard to ensure that there are no restrictions on the email addresses that you are allowed to send from. If this looks ok, check the SPF record for the sending domain to make sure that include:spf.smtp2go.com is included in the record.

            Restricted Senders habe ich keine, aber eine sending domain habe ich nicht eingerichtet bzw. den SPF record nicht anpassen können.

          4. Update:
            Es ist tatsächlich über SMTP2GO nur möglich, Emails von eigenen Domains zu senden, auf die man schreibenden Zugriff hat. Ich habe mich mit dem Support in Verbindung gesetzt und die folgende Antwort erhalten:

            Before you are able to send through SMTP2GO you will need to verify your domain. To do this, add your domain to your Sender Domains page and follow the instructions to make the necessary changes to your DNS records.

            Once this is done your domain will be verified and you will be able to begin sending.

            Allerdings war der Mitarbeiter auch so freundlich, nach Schilderung meines Problems und des Vorhabens, eine entsprechende Anpassung in meinem Account vorzunehmen, so dass es jetzt geht.

            Gruß
            Hans

  8. Bei einem meiner Projekte benutze ich auch SMTP2GO mit einer Googlemailadresse. Eine Senderdomain brauchte ich nicht angeben. Ich tippe mal, dass die nur eingegeben werden muss, wenn eine Mailadresse einer Domain abgeschickt wird, die SMTP2GO unbekannt ist. Das braucht SMTP2GO wahrscheinlich, um das SPF einzurichten und die Mails im Namen der angegebenen Domain zu versenden.

    1. Das scheint *nicht* so zu sein. Bei mir hätte ich bei jeder eMail Adresse den DNS record anlegen oder ändern müssen. Vielleicht ging es ja bisher und es wurde bei SMTP2GO mittlerweile etwas geändert.
      Bei mir geht es seit der Anpassung durch den Support mittlerweile auch mit einer Fantasieadresse.

  9. 3 Fragen:
    1. wie genau registriert der ESP32, wenn etwas eingeworfen wird? Er kann ja nicht nicht gut alle 2 Sekunden den Sensor abfragen .. (?) Oder ist der ESP im Ruhemodus und wird geweckt, sobald der Ultraschallsensor auslöst?
    2. der Notify erfolgt dann nur einmalig („Mailbox ist gefüllt“) sobald etwas eingeworfen wird? Weil wenn die Box voll ist, kann ja der Sensor nichts mehr „sehen“.
    3. würde es auch Sinn machen anstatt bzw. zusätzlich einen Phototransistor dranzuhängen, der triggert sobald er Licht bekommen?
    Danke!

  10. Leider bekomme ich den ESP nicht geflasht

    „Fehler beim Kompilieren für das Board NodeMCU 1.0 (ESP-12E Module)“

    1. Welches Board hast du denn? Das scheint ein Problem deiner Arduino IDE zu sein. Die Fehlermeldung erscheint gerne, wenn du ein falsches Board ausgewählt hast.

      1. Hallo Hans, ich habe es schon mit einem WEMOS D1 Mini, einen NodeMCU von AZ-Delivery und einen LoLin NodeMCU versucht. Die IDE habe ich nicht installiert sondern nur entpackt. Ich glaube bei mir scheitert es an den zusätzlich benötigte Dateien… Downloaden und dann wohin damit das diese richtig erkannt werden?

        Letzte Meldung mit einem D1 Mini:

        In file included from C:\Users\hans-juergen.thom\Downloads\arduino-esp32-master\PostPoti\PostPoti.ino:3:0:

        sketch\driver/adc.h:25:25: fatal error: driver/gpio.h: No such file or directory

        #include „driver/gpio.h“

        ^

        compilation terminated.

        exit status 1
        Fehler beim Kompilieren für das Board LOLIN(WEMOS) D1 R2 & mini.

        Danke und Gruß
        Hansi

      2. Nach dem ich jetzt alles nochmal neu gemacht habe, also Installation der IDE usw. geht die Überprüfung durch. Der Upload scheitert mit folgender Meldung:

        Arduino: 1.8.12 (Windows 10), Board: „WEMOS D1 MINI ESP32, 80MHz, Default, 240MHz (WiFi/BT), 921600“

        WARNUNG: Bibliothek NewPing behauptet auf avr, arm Architektur(en) ausgeführt werden zu können und ist möglicherweise inkompatibel mit Ihrem derzeitigen Board, welches auf esp32 Architektur(en) ausgeführt wird.
        Der Sketch verwendet 693848 Bytes (52%) des Programmspeicherplatzes. Das Maximum sind 1310720 Bytes.
        Globale Variablen verwenden 38872 Bytes (11%) des dynamischen Speichers, 288808 Bytes für lokale Variablen verbleiben. Das Maximum sind 327680 Bytes.
        esptool.py v2.6
        Serial port COM5
        Connecting….

        A fatal error occurred: Timed out waiting for packet header
        A fatal error occurred: Timed out waiting for packet header

        Dieser Bericht wäre detaillierter, wenn die Option
        „Ausführliche Ausgabe während der Kompilierung“
        in Datei -> Voreinstellungen aktiviert wäre.

        1. Die Warnungen kannst du getrost ignorieren. Ändere mal die Uploadgeschwindigkeit auf 115200 Baud (wenn es nicht funktioniert, eventuell noch weiter reduzieren) und versuche es dann noch mal.

  11. Hallo,

    ein interessantes Projekt!

    Welche Absender-Mailadressen müssen denn eingetragen werden?
    Hat jemand dieses Projekt auch mit dem ESP NodeMCU 8266 realisiert? Müssen dann Änderungen im Skript vorgenommen werden?

    Gruß
    Peter

    1. Hallo Peter,
      als Absenderadresse kannst du eintragen, was du willst. Ich habe eine fiktive angegeben.
      Gruß
      Hans

  12. Hallo,

    mit der Konfiguration von smtp2go komme ich einfach nicht klar. Habe einen Api-Schlüssel generiert. Wo soll der nun im Sketch eingetragen werden ? Oder überhaupt oder nur den namen im Klartext….
    Ich drehe mich da im Kreis.
    Das Kompilieren ist Ok.
    Aber ich erhalte keine Mails VON smpt“GO:
    WER KANN MIR DA WEITERHELFEN??? So kurz vor dem Ziel!

    Gruß
    Peter

    1. Hallo Peter,

      die Kommentare diesbezüglich hast du aber schon gelesen? Da habe ich nämlich auch einen Tipp verewigt, mit dem es bei mir funktioniert hat.

      Gruß
      Hans

  13. Hallo Hans,

    ja Deine Kommentare habe ich aufmerksam gelesen! Danke.
    Dieses Projekt habe ich leider zunächst beiseite getan, weil ich weder Router noch Provider damit beschäftigen will. Außerdem fehlen mir einige Kenntnisse um auch alles zu verstehen, was ich da tue….

    Vielen Dank für Deine Unterstützung und das Feedback!!!!

    Viele Grüße
    Peter

  14. Hallo, habe ich im Altbau mit einer Fritz!Box 7580 und einem Alu-Briefkasten im Hausflur über 4 Treppen auch noch eine Chance oder war es bei 4 Treppen einer Fritz!Box 7590 und Holzbriefkasten schon sehr knirsch mit dem WLAN? Mit der App Wifi-Anylzer auf dem Handy ist bereits nach 1,5 Etagen der Empfang weg.

      1. Wenn du mit dem Handy kein WLAN mehr hast, geht es auch mit dem ESP32 nicht mehr. Den Alu-Briefkasten sehe ich allerdings nicht als großes Hindernis an. Ich habe den Bot in einen komplett geschlossenen Stahlbriefkasten an der Straße eingebaut etwa 12m von einem AP entfernt. Das hat aber nur funktioniert, weil ich das ESP32-Modul auf dem DEV-Board durch ein solches mit Antennenanschluss ersetzt habe (war wegen eines Kurzschlusses ohnehin hinüber) und eine WLAN-Antenne außen am Briefkasten montiert habe. Funktioniert super, auch wegen einiger Tuning-Maßnahmen z.B. zum Energiesparen. Läuft bei mir schon seit etwa 2 Jahren mit einer Powerbank, an die zum Aufladen ein Solarmodul angeschlossen ist. Nur im Winter muss ich die Powerbank ab und zu rein holen und separat aufladen.
        Anforderungen an die Powerbank: Modell das gleichzeitig geladen werden kann und Energie liefert und sich nicht abschaltet, wenn sich die angeschlossene Schaltung in den Tiefschlaf begibt.
        Die Batterieüberwachung funktioniert übrigens nicht, schon gar nicht bei einer Powerbank.

      2. Hallo Oliver, hallo Hans, ich habe den Briefkasten mir heute nocheinmal genauer angesehen. Er ist einer von 10 Briefkästen übrigends magnetisch, also aus Metall, in zwei Reihen, jweils 5-6 nebeneinader, meiner befindet sich in der oberen Briefkastenreihe. Er hat für den Namen an der Front in 1,5 cm Höhe einen Plastikrahmen für die Aufnahme eines Namenschildes. Der Plastikrahmen ist 3cm x 11 cm groß. Da könnte ich doch evtl. des Modul mit der eingebauten Antenne hinsetzen. Die Höhe des Albaus beträgt ca. 16,8m (Dachgeschosswohnung im Altbau). Vom Router dürften es auch in etwa 20 Meter sein. Desweiteren interessiert mich, funktioniert denn die Emailgeschichte noch,da Du in Deinem anderen Projekt „Pflanzenueberwachung“ da was negatives geschrieben hattest bzw. kann ich da einfach einen andere email z. Bsp. web.de zum versenden eintragen? Bei meinem Handy reißt der wlan Kontakt leider schon nach 1,5 Treppen ab, der ESP32 müsste also deulich empfindlicher sein? Ich freue mich auf jeden Fall für weitere Tipps von Euch.
        LG
        Charly

        1. Hallo Charly,
          das steht und fällt alles mit dem WLAN-Empfang an dieser Stelle. Wenn du mit dem Handy da noch dein WLAN empfängst, bedeutet das nicht, dass du an der Stelle auch noch Internetzugang hast. Dafür muss das WLAN deutlich besser sein. Es wird also eher nicht funktionieren. Eine externe Antenne könntest du etwas höher an die Wand kleben/schrauben aber ich bezweifle, dass das genug bringt.
          Das mit dem Versenden der EMails funktioniert zuverlässig, ist aber etwas frickelig einzurichten.

          1. Hallo Hans, Internet über SIM habe ich am Briefkasten, aber leider kein WLAN von meinem Router bzw. evtl. < -100dBM. Bei -100 dBm hört die Messung bei der App Wifi-Anylizer leider auf. Das Board soll ja angeblich bis -132dBm reichen, das kann ich bisher aber leider nicht messen. Ext. Antenne wäre nur im Briefkasten hinter dem Plastikschild (3cm x 11cm) machbar.
            Liebe Grüße aus Berlin
            Charly

    1. Sollte natürlich eine Antwort an Charly sein, sorry.

  15. Der Blog hat mich inspiriert das ganze für KNX umzusetzen. Danke danke danke

  16. Welchen email verteil service könnte man benutzen, und wie müsste man den code anpassen?

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert