Untitled
unknown
plain_text
a year ago
1.8 kB
6
Indexable
#include <WiFi.h>
#include <WebServer.h>
#include <Adafruit_Sensor.h>
#include <DHT.h>
#include <DHT_U.h>
#define DHTPIN 2
#define DHTTYPE DHT11
const char* ap_ssid = "pico";
const char* ap_password = "12345678";
WebServer server(80);
DHT_Unified dht(DHTPIN, DHTTYPE);
uint32_t delayMS;
long long t0;
int temp;
int hum;
void setup() {
Serial.begin(115200);
delay(2000);
dht.begin();
sensor_t sensor;
dht.temperature().getSensor(&sensor);
delayMS = sensor.min_delay / 1000;
t0 = 0;
temp = 0;
hum = 0;
// Create Access Point
WiFi.softAP(ap_ssid, ap_password);
IPAddress IP = WiFi.softAPIP();
Serial.print("AP IP address: ");
Serial.println(IP);
// Simplified route - just returns plain text
server.on("/", HTTP_GET, []() {
server.send(200, "text/plain", "Hello from PICO");
});
server.on("/temp", HTTP_GET, []() {
server.send(200, "text/plain", "Current temp: " + String(temp) + " deg C");
});
server.on("/hum", HTTP_GET, []() {
server.send(200, "text/plain", "Current hum: " + String(hum) + " %");
});
server.begin();
Serial.println("HTTP server started");
}
void loop() {
if ((millis() - t0) >= delayMS) {
sensors_event_t event;
dht.temperature().getEvent(&event);
if (isnan(event.temperature)) {
Serial.println(F("Error reading temperature!"));
} else {
temp = event.temperature;
Serial.printf("temp: %d ", temp);
}
dht.humidity().getEvent(&event);
if (isnan(event.relative_humidity)) {
Serial.println(F("Error reading temperature!"));
} else {
hum = event.relative_humidity;
Serial.printf("hum: %d\n", hum);
}
t0 = millis();
}
server.handleClient();
}Editor is loading...
Leave a Comment