Hallo,
hab mal eine frage ich hab 2 esp8266 im Einsatz 1. als Sever an dem der BME280 haengt und seine daten an den 2. Client sendet und dort auf ein 20x4 LCD Display ausgibt funktioniert auch soweit alles nur das problem ist das der 1. ESP im Garten haengt und mit einer solar Powerbank mit Strom versorgt wird die aber wirderrum zu schnell leer ist. (Batterienb auch getestet) hab Deep.Sleep versucht nur da taucht das Problem auf das der 1. ESP Server schlafen geht bevor etwas gesendet wurde Somit kommt beim 2. ESP mit display nix mehr an und das Display bleibt blau
Gruss und danke im vorraus Hitman43
// Import required libraries
#include <ESP8266WiFi.h>
#include "ESPAsyncWebServer.h"
#include <Wire.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_BME280.h>
// Set your access point network credentials
const char* ssid = "ESP8266-Access-Point";
const char* password = "123456789";
/*#include <SPI.h>
#define BME_SCK 18
#define BME_MISO 19
#define BME_MOSI 23
#define BME_CS 5*/
Adafruit_BME280 bme; // I2C
//Adafruit_BME280 bme(BME_CS); // hardware SPI
//Adafruit_BME280 bme(BME_CS, BME_MOSI, BME_MISO, BME_SCK); // software SPI
// Create AsyncWebServer object on port 80
AsyncWebServer server(80);
String readTemp() {
return String(bme.readTemperature());
//return String(1.8 * bme.readTemperature() + 32);
}
String readHumi() {
return String(bme.readHumidity());
}
String readPres() {
return String(bme.readPressure() / 100.0F);
}
void setup() {
// Serial port for debugging purposes
Serial.begin(115200);
Serial.println();
// Setting the ESP as an access point
Serial.print("Setting AP (Access Point)…");
// Remove the password parameter, if you want the AP (Access Point) to be open
WiFi.softAP(ssid, password);
IPAddress IP = WiFi.softAPIP();
Serial.print("AP IP address: ");
Serial.println(IP);
server.on("/temperature", HTTP_GET, [](AsyncWebServerRequest * request) {
request->send_P(200, "text/plain", readTemp().c_str());
});
server.on("/humidity", HTTP_GET, [](AsyncWebServerRequest * request) {
request->send_P(200, "text/plain", readHumi().c_str());
});
server.on("/pressure", HTTP_GET, [](AsyncWebServerRequest * request) {
request->send_P(200, "text/plain", readPres().c_str());
});
bool status;
// default settings
// (you can also pass in a Wire library object like &Wire2)
status = bme.begin(0x76);
if (!status) {
Serial.println("Could not find a valid BME280 sensor, check wiring!");
while (1);
}
// Start server
server.begin();
//ESP_Server geht Schlafen
//Serial.println("Uaaah. Ich gehe nu ins Bett für 15 minuten");
//ESP.deepSleep(60 * 1000000);
//Information
Serial.println(" ");
Serial.println("##########################################################");
Serial.println("# #");
Serial.println("# (C)2020 by Thorsten Alex #");
Serial.println("# Mail: #");
Serial.println("# #");
Serial.println("##########################################################");
}
void loop() {
}