Smiley face
Wetterstation WS2000  OpenMQTT Gateway

17.06.2024 18:16:52 Uhr
 17.5& °C   7.5 mm
 998 hPa    8740 Lux
 11.1 km/h  255° +/-45 °

Smiley face
ELV Wetterstation 

17.Juni 18:15 Uhr
 17,8 °C& °C   11,2  mm
 11,6 km/h km/h W ±45° 

Smiley face
DIY Wetterstation!

  June 17 2024 18:11:04 Uhr
125 °C
100 %
0 lux

Smiley face
3D Drucker

Wenn du nicht mehr weißt was du machen sollst fange damit an....

Smiley face
Smart Home

Das ist ein Bild meiner Zentrale, dies ist seit 2020 mit einem Raspberry am Start. 

Smiley face
Node RED

Damit erstelle ich meine Visualisierung meines SmartHomes ein Spielzeug für alle Schiebekinder.

Smarter Briefkasten

Ein wenig googelt und dann selbst gemacht.
Wie bekommt man einen Briefkasten Smart?
Ich habe mir so gedacht es könnte nett sein mitzubekommen ob der Briefträger etwas in die Kiste geworfen hat nur zur Information.
Daraufhin habe ich viele Version im Netz gefunden, die fand ich aber noch nicht so recht passend für mich. Somit ist dann meine Lösung entstanden. Das erste Problem bei so einer Überwachung ist das Stromproblem, der ESP benötigt für das WLan relativ viel Energie also nichts für den Dauerbetrieb über einen Batterie. 
Die Lösung ist also Controller in Deep Sleep setzen und durch den Taster, beim betätigen der Klappe, den Reset ausführen.
Dadurch startet der Controller wieder neu sendet per MQTT in mein System "True" ( Post da ). Dann fährt er wieder in den Deep Sleep und es kann von vorne los gehen. Das ganze dann in ein selbst konstruiertes 3D gedrucktes Gehäuse ... fertig.

/*
 Briefkastenmelder
 Stefan Zilt 26.06.2023
*/
#include <ESP8266WiFi.h>
#include <PubSubClient.h>
#include <WiFiUdp.h>
#include<Wire.h>
WiFiClient wifiClient;

int send = 0;

// WLAN Netzwerkverbindung
const char* wifi_ssid = "MyLan";
const char* wifi_password = "MyPW";

// MQTT Server Verbindung
const char* mqtt_server = "192.xxx.xxx.xxx";
const int mqtt_port = 1883;
const char* mqtt_user = "";
const char* mqtt_password = "";


String Zeit;
const long utcOffsetInSeconds = 3600;
// WIFI setzen
WiFiClient espClient;
PubSubClient client(espClient);

// WLAN Verbindung aufbauen
void setup_wifi() {
    WiFi.begin(wifi_ssid, wifi_password);
    while (WiFi.status() != WL_CONNECTED) { 
      Serial.println(" WIFI_connect");
       delay(1000);
      }
       Serial.print("WIFI ");
     Serial.println("IP address: ");
  Serial.println(WiFi.localIP());    
}

void setup() {
  //Initialize serial and wait for port to open:
  Serial.begin(9600);
  while (!Serial) {
   // Warten serrielle Verbindung 
   }
  // Wlan verbinden
  // WIFI Starten 
   	IPAddress ip(192, xxx, xxx, xxx);
	  IPAddress dns(192, xxx, xxx, xxx);
	  IPAddress gateway(192, xxx, xxx, xxx);
	  IPAddress subnet(255, 255, 255, 0);
	  WiFi.config(ip, dns, gateway, subnet);
    setup_wifi();

     while (WiFi.status() != WL_CONNECTED) {
    delay(800);
     Serial.println("verbinden  ");
    }
    
}

void loop() {
 while (WiFi.status() != WL_CONNECTED) {
    delay(800);
     Serial.println("WLAN verbinden");
    }
 Serial.println(WiFi.localIP());
 delay(100);
    if (WiFi.status() == WL_CONNECTED) {
    // MQTT senden
    client.setServer(mqtt_server, mqtt_port);
        if (client.connect("Briefkasten", mqtt_user, mqtt_password)) {
            // client.subscribe("your_topic_of_interest");
            Serial.println(" MQTT connect");
            client.publish("Briefkasten/Post","true");
            Serial.println(" MQTT senden");
            delay(800);
            send=1;
        } 
    }
     
     if(send==1) {ESP.deepSleep(0);} 

}
Schaltplan Briefkasten