diff --git a/BlynkRoutines.h b/BlynkRoutines.h index 7d13c17..daf87ec 100644 --- a/BlynkRoutines.h +++ b/BlynkRoutines.h @@ -132,7 +132,7 @@ void myBTimerEvent() char floatString[15]; float FTemp; - FTemp = dewpoint * 1.8 + 32.0; + FTemp = AM2315_Dewpoint * 1.8 + 32.0; buffer[0] = '\0'; dtostrf(FTemp, 5, 1, floatString); @@ -148,7 +148,7 @@ void myBTimerEvent() char floatString[15]; float FTemp; - FTemp = dewpoint; + FTemp = AM2315_Dewpoint; buffer[0] = '\0'; dtostrf(FTemp, 5, 1, floatString); diff --git a/Essentials/ESPWebServer.zip b/Essentials/ESPWebServer.zip new file mode 100644 index 0000000..4358d6b Binary files /dev/null and b/Essentials/ESPWebServer.zip differ diff --git a/SDL_ESP8266_WeatherPlus.ino b/SDL_ESP8266_WeatherPlus.ino index 2e9b74b..d87d516 100644 --- a/SDL_ESP8266_WeatherPlus.ino +++ b/SDL_ESP8266_WeatherPlus.ino @@ -4,10 +4,10 @@ // // -// +// Updated AM2315 variable name from dewpoint to AM2315_Dewpoint -#define WEATHERPLUSESP8266VERSION "036" +#define WEATHERPLUSESP8266VERSION "036a" #define WEATHERPLUSPUBNUBPROTOCOL "OURWEATHER036" @@ -53,8 +53,8 @@ bool WiFiPresent = false; //needed for library #include -#include - +// #include // This library is superceded by ESPWebServer.h +#include #include "WiFiManager.h" //https://github.com/tzapu/WiFiManager @@ -269,24 +269,24 @@ int WeatherDisplayMode; RtcDS3231 Rtc; - -// AM2315 +// --------------------------------------------------------------- +// AM2315 Temp / Humidity float AM2315_Temperature; float AM2315_Humidity; -float dewpoint; +float AM2315_Dewpoint; bool AM2315_Present = false; #include "SDL_ESP8266_HR_AM2315.h" - SDL_ESP8266_HR_AM2315 am2315; float dataAM2315[2]; //Array to hold data returned by sensor. [0,1] => [Humidity, Temperature] boolean AOK; // 1=successful read -// SHT30 +// --------------------------------------------------------------- +// SHT30 Temp #include "WEMOS_SHT3X.h" SHT3X sht30(0x44); @@ -1275,7 +1275,7 @@ void setup() { AM2315_Temperature = dataAM2315[1]; AM2315_Humidity = dataAM2315[0]; - dewpoint = AM2315_Temperature - ((100.0 - AM2315_Humidity) / 5.0); + AM2315_Dewpoint = AM2315_Temperature - ((100.0 - AM2315_Humidity) / 5.0); AM2315_Present = true; } @@ -1290,7 +1290,7 @@ void setup() { AM2315_Temperature = 0.0; AM2315_Humidity = 0.0; - dewpoint = 0.0; + AM2315_Dewpoint = 0.0; // Check for SHT30 int sht30_success; @@ -1566,11 +1566,11 @@ void loop() { #endif AM2315_Temperature = dataAM2315[1]; AM2315_Humidity = dataAM2315[0]; - dewpoint = AM2315_Temperature - ((100.0 - AM2315_Humidity) / 5.0); + AM2315_Dewpoint = AM2315_Temperature - ((100.0 - AM2315_Humidity) / 5.0); Serial.print("Temp: "); Serial.println(AM2315_Temperature); Serial.print("Hum: "); Serial.println(AM2315_Humidity); - Serial.print("DwPt: "); Serial.println(dewpoint); + Serial.print("DwPt: "); Serial.println(AM2315_Dewpoint); #ifdef DEBUGPRINT am2315.printStatistics(); #endif @@ -1597,7 +1597,7 @@ void loop() { AM2315_Temperature = sht30.cTemp; AM2315_Humidity = sht30.humidity; - dewpoint = AM2315_Temperature - ((100.0 - AM2315_Humidity) / 5.0); + AM2315_Dewpoint = AM2315_Temperature - ((100.0 - AM2315_Humidity) / 5.0); } } @@ -1948,8 +1948,8 @@ void loop() { AM2315_Temperature = validateTemperature(convert4BytesToFloat(buffer, 25)); AM2315_Humidity = convert4BytesToFloat(buffer, 29); - // calculate dewpoint - dewpoint = AM2315_Temperature - ((100.0 - AM2315_Humidity) / 5.0); + // calculate AM2315_Dewpoint + AM2315_Dewpoint = AM2315_Temperature - ((100.0 - AM2315_Humidity) / 5.0); // set up solar status and message ID for screen diff --git a/Utils.h b/Utils.h index c349a39..60c5f8a 100644 --- a/Utils.h +++ b/Utils.h @@ -485,7 +485,7 @@ void updateAllWeatherVariables() AM2315_Temperature = sht30.cTemp; AM2315_Humidity = sht30.humidity; - dewpoint = AM2315_Temperature - ((100.0 - AM2315_Humidity) / 5.0); + AM2315_Dewpoint = AM2315_Temperature - ((100.0 - AM2315_Humidity) / 5.0); } } diff --git a/WeatherUnderground.h b/WeatherUnderground.h index c2e2fec..21c514f 100644 --- a/WeatherUnderground.h +++ b/WeatherUnderground.h @@ -39,11 +39,12 @@ int sendWeatherUndergroundData() myURL += "&humidity=" + String(AM2315_Humidity); myURL += "&tempf=" + String((AM2315_Temperature * 9.0 / 5.0) + 32.0); - myURL += "&dewptf=" + String((dewpoint * 9.0 / 5.0) + 32.0); + myURL += "&dewptf=" + String((AM2315_Dewpoint * 9.0 / 5.0) + 32.0); + + myURL += "&dewptf=" + String((AM2315_Dewpoint * 9.0 / 5.0) + 32.0); myURL += "&rainin=" + String((rain60Minutes) / 25.4); myURL += "&dailyrainin=" + String(( rainCalendarDay) / 25.4); - myURL += "&baromin=" + String((BMP180_Pressure / 1000.0) * 0.2953, 4); @@ -52,10 +53,6 @@ int sendWeatherUndergroundData() myURL += "&software=OurWeather"; - - - - Serial.print("Requesting URL: "); Serial.println(myURL); @@ -93,4 +90,3 @@ String WUResult; } - diff --git a/WiFiManager.cpp b/WiFiManager.cpp index 9a58d48..053d3b3 100644 --- a/WiFiManager.cpp +++ b/WiFiManager.cpp @@ -80,6 +80,41 @@ void WiFiManager::blinkLED(int timesToBlink, int delayBetweenBlinks) WiFiManager::WiFiManager() { } +String WiFiManager::statusStr(int wStatus) { + // output WiFi.status() as one of the known status values in a readable text format + String connResTxt = ""; + switch (wStatus) { + case 255: + connResTxt = "[255] WL_NO_SHIELD"; + break; + case 0: + connResTxt = "[0] WL_IDLE_STATUS"; + break; + case 1: + connResTxt = "[1] WL_NO_SSID_AVAIL"; + break; + case 2: + connResTxt = "[2] WL_SCAN_COMPLETED"; + break; + case 3: + connResTxt = "[3] WL_CONNECTED"; + break; + case 4: + connResTxt = "[4] WL_CONNECT_FAILED"; + break; + case 5: + connResTxt = "[5] WL_CONNECTION_LOST"; + break; + case 6: + connResTxt = "[6] WL_DISCONNECTED"; + break; + default: + connResTxt = wStatus; + break; + } + return connResTxt; +} + void WiFiManager::addParameter(WiFiManagerParameter *p) { _params[_paramsCount] = p; _paramsCount++; @@ -89,7 +124,7 @@ void WiFiManager::addParameter(WiFiManagerParameter *p) { void WiFiManager::setupConfigPortal() { dnsServer.reset(new DNSServer()); - server.reset(new ESP8266WebServer(80)); + server.reset(new ESPWebServer(80)); DEBUG_WM(F("")); _configPortalStart = millis(); @@ -334,7 +369,9 @@ int WiFiManager::connectWifi(String ssid, String pass) { int connRes = waitForConnectResult(); DEBUG_WM ("Connection result: "); - DEBUG_WM ( connRes ); + // AHD 4/30/2020 - Updated to display code and description title for WiFi.status() with new WiFi.statusStr(status) + DEBUG_WM (statusStr(connRes)); + // DEBUG_WM ( connRes ); #ifdef NO_EXTRA_4K_HEAP //not connected, WPS enabled, no pass - first attempt if (_tryWPS && connRes != WL_CONNECTED && pass == "") { @@ -359,6 +396,7 @@ uint8_t WiFiManager::waitForConnectResult() { if (millis() > start + _connectTimeout) { keepConnecting = false; DEBUG_WM (F("Connection timed out")); + DEBUG_WM ("WiFi.status = " + statusStr(WiFi.status())); } if (status == WL_CONNECTED || status == WL_CONNECT_FAILED) { keepConnecting = false; @@ -448,12 +486,12 @@ void WiFiManager::handleRoot() { return; } - String page = FPSTR(HTTP_HEAD); + String page = FPSTR(HTTP_HEADER_START); page.replace("{v}", "Options"); page += FPSTR(HTTP_SCRIPT); page += FPSTR(HTTP_STYLE); page += _customHeadElement; - page += FPSTR(HTTP_HEAD_END); + page += FPSTR(HTTP_HEADER_END); page += "

"; page += _apName; page += "

"; @@ -468,12 +506,12 @@ void WiFiManager::handleRoot() { /** Wifi config page handler */ void WiFiManager::handleWifi(boolean scan) { - String page = FPSTR(HTTP_HEAD); + String page = FPSTR(HTTP_HEADER_START); page.replace("{v}", "Config OurWeather"); page += FPSTR(HTTP_SCRIPT); page += FPSTR(HTTP_STYLE); page += _customHeadElement; - page += FPSTR(HTTP_HEAD_END); + page += FPSTR(HTTP_HEADER_END); if (scan) { int n = WiFi.scanNetworks(); @@ -690,12 +728,12 @@ void WiFiManager::handleWifiSave() { } else DEBUG_WM("Not updating DateTime in RTC"); - String page = FPSTR(HTTP_HEAD); + String page = FPSTR(HTTP_HEADER_START); page.replace("{v}", "Credentials Saved"); page += FPSTR(HTTP_SCRIPT); page += FPSTR(HTTP_STYLE); page += _customHeadElement; - page += FPSTR(HTTP_HEAD_END); + page += FPSTR(HTTP_HEADER_END); page += FPSTR(HTTP_SAVED); page += FPSTR(HTTP_END); @@ -710,12 +748,12 @@ void WiFiManager::handleWifiSave() { void WiFiManager::handleInfo() { DEBUG_WM(F("Info")); - String page = FPSTR(HTTP_HEAD); + String page = FPSTR(HTTP_HEADER_START); page.replace("{v}", "Info"); page += FPSTR(HTTP_SCRIPT); page += FPSTR(HTTP_STYLE); page += _customHeadElement; - page += FPSTR(HTTP_HEAD_END); + page += FPSTR(HTTP_HEADER_END); page += F("
"); page += F("
Chip ID
"); page += ESP.getChipId(); @@ -750,12 +788,12 @@ void WiFiManager::handleInfo() { void WiFiManager::handleReset() { DEBUG_WM(F("Reset")); - String page = FPSTR(HTTP_HEAD); + String page = FPSTR(HTTP_HEADER_START); page.replace("{v}", "Info"); page += FPSTR(HTTP_SCRIPT); page += FPSTR(HTTP_STYLE); page += _customHeadElement; - page += FPSTR(HTTP_HEAD_END); + page += FPSTR(HTTP_HEADER_END); page += F("Module will reset in a few seconds."); page += FPSTR(HTTP_END); server->send(200, "text/html", page); diff --git a/WiFiManager.h b/WiFiManager.h index 5ea2c26..a21d490 100644 --- a/WiFiManager.h +++ b/WiFiManager.h @@ -14,7 +14,7 @@ #define WiFiManager_h #include -#include +#include #include #include #undef min @@ -42,7 +42,7 @@ void writeEEPROMState(); void updateDisplay(int displayType); /* const char HTTP_200[] PROGMEM = "HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n\r\n"; -const char HTTP_HEAD[] PROGMEM = "{v}"; +const char HTTP_HEADER_START[] PROGMEM = "{v}"; const char HTTP_STYLE[] PROGMEM = ""; const char HTTP_SCRIPT[] PROGMEM = ""; const char HTTP_HEAD_END[] PROGMEM = "
"; @@ -57,10 +57,10 @@ const char HTTP_END[] PROGMEM = "
"; const char HTTP_200[] PROGMEM = "HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n\r\n"; -const char HTTP_HEAD[] PROGMEM = "{v}"; +const char HTTP_HEADER_START[] PROGMEM = "{v}"; const char HTTP_STYLE[] PROGMEM = ""; const char HTTP_SCRIPT[] PROGMEM = ""; -const char HTTP_HEAD_END[] PROGMEM = "
"; +const char HTTP_HEADER_END[] PROGMEM = "
"; //const char HTTP_PORTAL_OPTIONS[] PROGMEM = "SwitchDoc Labs OurWeather

"; const char HTTP_PORTAL_OPTIONS[] PROGMEM = "SwitchDoc Labs OurWeather
"; //const char HTTP_PORTAL_OPTIONS[] PROGMEM = "



"; @@ -158,12 +158,12 @@ class WiFiManager private: std::unique_ptr dnsServer; - std::unique_ptr server; + std::unique_ptr server; //const int WM_DONE = 0; //const int WM_WAIT = 10; - //const String HTTP_HEAD = "{v}"; + //const String HTTP_HEADER_START = "{v}"; void setupConfigPortal(); #ifdef NO_EXTRA_4K_HEAP @@ -203,6 +203,7 @@ class WiFiManager //void setEEPROMString(int start, int len, String string); int status = WL_IDLE_STATUS; + String statusStr(int status); int connectWifi(String ssid, String pass); uint8_t waitForConnectResult();