Hallo zusammen,
ich betreibe einen D1 mit DHT22 Sensor. Dieser sendet per http-Request nach dem Deepsleep von 1 Minute die vom DHT gemessene Temperatur.
Zum Ablauf: Der D1 befindet sich im DeepSleep, wird vom Interrupt geweckt. Nach dem Setup baut er der WiFi-Verbindung auf, wartet 10 Sekunden, liest dann vom DHT22 die Temperatur aus und schickt diese an NodeRed, wo ich sie auf einen SQL-Server weg schreibe.
Es entstehen solche Ausreißer wie im Anhang. Hat jemand Erfahrungswerte, woran es liegen kann? Symptombekämpfung schaffe ich auch würde gern die Krankheit herausfinden und bekämpfen.
Vielen Dank im Voraus!
Hier noch der Code vom D1 schonmal
C
#include <ESP8266WiFi.h>
#include <ESP8266WebServer.h>
#include <ESP8266HTTPClient.h>
#include <DHT.h>
//Außentemperaturfühler
#define DHTTYPE DHT22
int tasterstatus=0;
ESP8266WebServer server(80);
const char* ssid = "WLAN";
const char* password = "HierKönnteIhreRPIForumWerbungStehen";
HTTPClient sender;
WiFiClient wifiClient;
uint8_t DHTPin = D4;
DHT dht(DHTPin, DHTTYPE);
float Temperature;
float Humidity;
void setup()
{
//pinMode(D4, INPUT_PULLUP);
pinMode(DHTPin, INPUT);
dht.begin();
Serial.begin(115200);
Serial.println("Systemstart");
delay(2000);
Temperature = dht.readTemperature();
WiFi.begin(ssid, password);
WiFi.hostname("Aussentemperatur");
Serial.print("Verbindung wird hergestellt ...");
while (WiFi.status() != WL_CONNECTED)
{
delay(500);
Serial.print(".");
}
Serial.println();
Serial.print("Verbunden! IP-Adresse: ");
Serial.println(WiFi.localIP());
Serial.println("Webserver gestartet.");
sender.begin(wifiClient, "http://homeserver:1880/temperatur?Aussentemperatur="+String(Temperature-3));
{
// HTTP-Code der Response speichern
int httpCode = sender.GET();
sender.end();
}
Serial.println("deepsleep");
//Deepsleep
ESP.deepSleep(30e6);
}
void loop()
{
}
Display More