Delete MultiFiFi, Midroom2 AM2302

This commit is contained in:
2023-08-14 15:06:16 +03:00
parent 8f8954f700
commit 54db88148c
3 changed files with 68 additions and 16 deletions

View File

@@ -59,8 +59,8 @@ void setup() {
WiFi.mode(WIFI_STA);
WiFi.persistent(false);
WiFi.hostname(HOSTNAME);
wifiMulti.addAP(WIFI_SSID, WIFI_PASSWORD);
wifiMulti.addAP(WIFI_SSID2, WIFI_PASSWORD2);
//wifiMulti.addAP(WIFI_SSID, WIFI_PASSWORD);
//wifiMulti.addAP(WIFI_SSID2, WIFI_PASSWORD2);
client.setServer(MQTT_SERV, 1883);
client.setCallback(callback);
@@ -100,6 +100,11 @@ void setup() {
pinMode(LAMP_OUT, OUTPUT);
dht.setup(D1, DHTesp::DHT22);
delay(dht.getMinimumSamplingPeriod());
sTaH = dht.getTempAndHumidity();
if(dht.getStatus() == dht.ERROR_NONE){
temp_out = sTaH.temperature;
hum_out = sTaH.humidity;
}
// if (! aht.begin()) {
// Serial.println("Could not find AHT? Check wiring");
// aht_pesent = false;
@@ -148,8 +153,8 @@ void loop() {
Serial.println(bSecs);
sTaH = dht.getTempAndHumidity();
if(dht.getStatus() == dht.ERROR_NONE){
temp_out += (sTaH.temperature - temp_out) / 300;
hum_out += (sTaH.humidity - hum_out) / 300;
temp_out += (sTaH.temperature - temp_out) / 150.0;
hum_out += (sTaH.humidity - hum_out) / 150.0;
WebSerial.print("Temp: ");
WebSerial.print(sTaH.temperature);
WebSerial.print(", Hum: ");
@@ -161,6 +166,49 @@ void loop() {
client.publish(TOPIC"tempout", v);
sprintf(v, "%.1f", hum_out);
client.publish(TOPIC"humout", v);
sprintf(v, "%.1f", dht.computeHeatIndex(temp_out, hum_out));
client.publish(TOPIC"heatindex", v);
sprintf(v, "%.1f", dht.computeDewPoint(temp_out, hum_out));
client.publish(TOPIC"dewpoint", v);
ComfortState cs;
dht.getComfortRatio(cs, temp_out, hum_out);
String comfortStatus;
switch(cs) {
case Comfort_OK:
comfortStatus = "Нормально";
break;
case Comfort_TooHot:
comfortStatus = "Очень жарко";
break;
case Comfort_TooCold:
comfortStatus = "Очень холодно";
break;
case Comfort_TooDry:
comfortStatus = "Очень сухо";
break;
case Comfort_TooHumid:
comfortStatus = "Очень влажно";
break;
case Comfort_HotAndHumid:
comfortStatus = "Жарко и влажно";
break;
case Comfort_HotAndDry:
comfortStatus = "Жарко и сухо";
break;
case Comfort_ColdAndHumid:
comfortStatus = "Холодно и влажно}";
break;
case Comfort_ColdAndDry:
comfortStatus = "Холодно и сухо";
break;
default:
comfortStatus = "Неизвестно";
break;
};
client.publish(TOPIC"comfortstatus", comfortStatus.c_str());
byte hp = dht.computePerception(temp_out, hum_out);
itoa(hp, v, 10);
client.publish(TOPIC"perception", v);
}
}
if((bSecs % 15) == 0){
@@ -176,8 +224,8 @@ void loop() {
void connectToWifi() {
Serial.println("Connecting to Wi-Fi...");
wifiMulti.run();
//WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
//wifiMulti.run();
WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
}
void onWifiConnect(const WiFiEventStationModeGotIP& event) {
@@ -238,6 +286,11 @@ void reconnect() {
client.publish(TOPIC"online", "1");
client.subscribe(TOPIC"light");
client.subscribe(TOPIC"ledint");
char vout[7];
sprintf(vout, "%.1f", temp_out);
client.publish(TOPIC"tempout", vout);
sprintf(vout, "%.1f", hum_out);
client.publish(TOPIC"humout", vout);
} else {
Serial.print("failed, rc=");
Serial.print(client.state());