diff --git a/.gitignore b/.gitignore index d2f1421..5935420 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,5 @@ .vscode/.browse.c_cpp.db* .vscode/c_cpp_properties.json -.vscode/launch.json \ No newline at end of file +.vscode/launch.json +.pioenvs +.piolibdeps diff --git a/.pioenvs/.sconsign.dblite b/.pioenvs/.sconsign.dblite index 1ff94bc..4bef42e 100644 Binary files a/.pioenvs/.sconsign.dblite and b/.pioenvs/.sconsign.dblite differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/Esp.cpp.o b/.pioenvs/nodemcu-32s/FrameworkArduino/Esp.cpp.o deleted file mode 100644 index 3f56ee6..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/Esp.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/HardwareSerial.cpp.o b/.pioenvs/nodemcu-32s/FrameworkArduino/HardwareSerial.cpp.o deleted file mode 100644 index 440d6a6..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/HardwareSerial.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/IPAddress.cpp.o b/.pioenvs/nodemcu-32s/FrameworkArduino/IPAddress.cpp.o deleted file mode 100644 index 11c65ad..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/IPAddress.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/IPv6Address.cpp.o b/.pioenvs/nodemcu-32s/FrameworkArduino/IPv6Address.cpp.o deleted file mode 100644 index 4251076..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/IPv6Address.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/MD5Builder.cpp.o b/.pioenvs/nodemcu-32s/FrameworkArduino/MD5Builder.cpp.o deleted file mode 100644 index 335440f..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/MD5Builder.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/Print.cpp.o b/.pioenvs/nodemcu-32s/FrameworkArduino/Print.cpp.o deleted file mode 100644 index 1ae4312..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/Print.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/Stream.cpp.o b/.pioenvs/nodemcu-32s/FrameworkArduino/Stream.cpp.o deleted file mode 100644 index 9dda85f..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/Stream.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/StreamString.cpp.o b/.pioenvs/nodemcu-32s/FrameworkArduino/StreamString.cpp.o deleted file mode 100644 index c9b75ea..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/StreamString.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/WMath.cpp.o b/.pioenvs/nodemcu-32s/FrameworkArduino/WMath.cpp.o deleted file mode 100644 index fd6a62c..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/WMath.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/WString.cpp.o b/.pioenvs/nodemcu-32s/FrameworkArduino/WString.cpp.o deleted file mode 100644 index a1dc387..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/WString.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/base64.cpp.o b/.pioenvs/nodemcu-32s/FrameworkArduino/base64.cpp.o deleted file mode 100644 index 577d8da..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/base64.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/cbuf.cpp.o b/.pioenvs/nodemcu-32s/FrameworkArduino/cbuf.cpp.o deleted file mode 100644 index 950a3b3..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/cbuf.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-adc.c.o b/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-adc.c.o deleted file mode 100644 index 500c31a..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-adc.c.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-bt.c.o b/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-bt.c.o deleted file mode 100644 index 6e772e9..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-bt.c.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-dac.c.o b/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-dac.c.o deleted file mode 100644 index 2615ade..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-dac.c.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-gpio.c.o b/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-gpio.c.o deleted file mode 100644 index deaed55..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-gpio.c.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-i2c.c.o b/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-i2c.c.o deleted file mode 100644 index c6af1f6..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-i2c.c.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-ledc.c.o b/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-ledc.c.o deleted file mode 100644 index 58fd71c..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-ledc.c.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-matrix.c.o b/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-matrix.c.o deleted file mode 100644 index 8970c51..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-matrix.c.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-misc.c.o b/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-misc.c.o deleted file mode 100644 index 8c75c83..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-misc.c.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-psram.c.o b/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-psram.c.o deleted file mode 100644 index aa56e68..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-psram.c.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-sigmadelta.c.o b/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-sigmadelta.c.o deleted file mode 100644 index 7863e64..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-sigmadelta.c.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-spi.c.o b/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-spi.c.o deleted file mode 100644 index 7072faa..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-spi.c.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-time.c.o b/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-time.c.o deleted file mode 100644 index 772c387..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-time.c.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-timer.c.o b/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-timer.c.o deleted file mode 100644 index aa93e9a..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-timer.c.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-touch.c.o b/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-touch.c.o deleted file mode 100644 index f2fc397..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-touch.c.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-uart.c.o b/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-uart.c.o deleted file mode 100644 index b88b2c9..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/esp32-hal-uart.c.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/libb64/cdecode.c.o b/.pioenvs/nodemcu-32s/FrameworkArduino/libb64/cdecode.c.o deleted file mode 100644 index d2d8fef..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/libb64/cdecode.c.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/libb64/cencode.c.o b/.pioenvs/nodemcu-32s/FrameworkArduino/libb64/cencode.c.o deleted file mode 100644 index fcbc6f6..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/libb64/cencode.c.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/main.cpp.o b/.pioenvs/nodemcu-32s/FrameworkArduino/main.cpp.o deleted file mode 100644 index a0aab88..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/main.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/stdlib_noniso.c.o b/.pioenvs/nodemcu-32s/FrameworkArduino/stdlib_noniso.c.o deleted file mode 100644 index 5c4665d..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/stdlib_noniso.c.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/wiring_pulse.c.o b/.pioenvs/nodemcu-32s/FrameworkArduino/wiring_pulse.c.o deleted file mode 100644 index 22516e3..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/wiring_pulse.c.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/FrameworkArduino/wiring_shift.c.o b/.pioenvs/nodemcu-32s/FrameworkArduino/wiring_shift.c.o deleted file mode 100644 index cb11455..0000000 Binary files a/.pioenvs/nodemcu-32s/FrameworkArduino/wiring_shift.c.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/firmware.bin b/.pioenvs/nodemcu-32s/firmware.bin deleted file mode 100644 index ae739a7..0000000 Binary files a/.pioenvs/nodemcu-32s/firmware.bin and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/firmware.elf b/.pioenvs/nodemcu-32s/firmware.elf deleted file mode 100644 index 126da44..0000000 Binary files a/.pioenvs/nodemcu-32s/firmware.elf and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib0a7/DNSServer/DNSServer.cpp.o b/.pioenvs/nodemcu-32s/lib0a7/DNSServer/DNSServer.cpp.o deleted file mode 100644 index f62d940..0000000 Binary files a/.pioenvs/nodemcu-32s/lib0a7/DNSServer/DNSServer.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib0a7/libDNSServer.a b/.pioenvs/nodemcu-32s/lib0a7/libDNSServer.a deleted file mode 100644 index b9add6c..0000000 Binary files a/.pioenvs/nodemcu-32s/lib0a7/libDNSServer.a and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib178/EEPROM/EEPROM.cpp.o b/.pioenvs/nodemcu-32s/lib178/EEPROM/EEPROM.cpp.o deleted file mode 100644 index 06c9168..0000000 Binary files a/.pioenvs/nodemcu-32s/lib178/EEPROM/EEPROM.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib178/libEEPROM.a b/.pioenvs/nodemcu-32s/lib178/libEEPROM.a deleted file mode 100644 index 9cdab66..0000000 Binary files a/.pioenvs/nodemcu-32s/lib178/libEEPROM.a and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib250/WiFi/ETH.cpp.o b/.pioenvs/nodemcu-32s/lib250/WiFi/ETH.cpp.o deleted file mode 100644 index 1f023c1..0000000 Binary files a/.pioenvs/nodemcu-32s/lib250/WiFi/ETH.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib250/WiFi/WiFi.cpp.o b/.pioenvs/nodemcu-32s/lib250/WiFi/WiFi.cpp.o deleted file mode 100644 index 20091df..0000000 Binary files a/.pioenvs/nodemcu-32s/lib250/WiFi/WiFi.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib250/WiFi/WiFiAP.cpp.o b/.pioenvs/nodemcu-32s/lib250/WiFi/WiFiAP.cpp.o deleted file mode 100644 index d7f2123..0000000 Binary files a/.pioenvs/nodemcu-32s/lib250/WiFi/WiFiAP.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib250/WiFi/WiFiClient.cpp.o b/.pioenvs/nodemcu-32s/lib250/WiFi/WiFiClient.cpp.o deleted file mode 100644 index 82a9d97..0000000 Binary files a/.pioenvs/nodemcu-32s/lib250/WiFi/WiFiClient.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib250/WiFi/WiFiGeneric.cpp.o b/.pioenvs/nodemcu-32s/lib250/WiFi/WiFiGeneric.cpp.o deleted file mode 100644 index 767995f..0000000 Binary files a/.pioenvs/nodemcu-32s/lib250/WiFi/WiFiGeneric.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib250/WiFi/WiFiMulti.cpp.o b/.pioenvs/nodemcu-32s/lib250/WiFi/WiFiMulti.cpp.o deleted file mode 100644 index 7c9d385..0000000 Binary files a/.pioenvs/nodemcu-32s/lib250/WiFi/WiFiMulti.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib250/WiFi/WiFiSTA.cpp.o b/.pioenvs/nodemcu-32s/lib250/WiFi/WiFiSTA.cpp.o deleted file mode 100644 index 3e43a9e..0000000 Binary files a/.pioenvs/nodemcu-32s/lib250/WiFi/WiFiSTA.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib250/WiFi/WiFiScan.cpp.o b/.pioenvs/nodemcu-32s/lib250/WiFi/WiFiScan.cpp.o deleted file mode 100644 index f93d6df..0000000 Binary files a/.pioenvs/nodemcu-32s/lib250/WiFi/WiFiScan.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib250/WiFi/WiFiServer.cpp.o b/.pioenvs/nodemcu-32s/lib250/WiFi/WiFiServer.cpp.o deleted file mode 100644 index 798d64d..0000000 Binary files a/.pioenvs/nodemcu-32s/lib250/WiFi/WiFiServer.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib250/WiFi/WiFiUdp.cpp.o b/.pioenvs/nodemcu-32s/lib250/WiFi/WiFiUdp.cpp.o deleted file mode 100644 index ce5dc0d..0000000 Binary files a/.pioenvs/nodemcu-32s/lib250/WiFi/WiFiUdp.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib250/libWiFi.a b/.pioenvs/nodemcu-32s/lib250/libWiFi.a deleted file mode 100644 index 1187bf5..0000000 Binary files a/.pioenvs/nodemcu-32s/lib250/libWiFi.a and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib3a9/ESP Async WebServer_ID306/AsyncEventSource.cpp.o b/.pioenvs/nodemcu-32s/lib3a9/ESP Async WebServer_ID306/AsyncEventSource.cpp.o deleted file mode 100644 index dc64aea..0000000 Binary files a/.pioenvs/nodemcu-32s/lib3a9/ESP Async WebServer_ID306/AsyncEventSource.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib3a9/ESP Async WebServer_ID306/AsyncWebSocket.cpp.o b/.pioenvs/nodemcu-32s/lib3a9/ESP Async WebServer_ID306/AsyncWebSocket.cpp.o deleted file mode 100644 index dbf8e82..0000000 Binary files a/.pioenvs/nodemcu-32s/lib3a9/ESP Async WebServer_ID306/AsyncWebSocket.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib3a9/ESP Async WebServer_ID306/SPIFFSEditor.cpp.o b/.pioenvs/nodemcu-32s/lib3a9/ESP Async WebServer_ID306/SPIFFSEditor.cpp.o deleted file mode 100644 index f6c3004..0000000 Binary files a/.pioenvs/nodemcu-32s/lib3a9/ESP Async WebServer_ID306/SPIFFSEditor.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib3a9/ESP Async WebServer_ID306/WebAuthentication.cpp.o b/.pioenvs/nodemcu-32s/lib3a9/ESP Async WebServer_ID306/WebAuthentication.cpp.o deleted file mode 100644 index 97f0422..0000000 Binary files a/.pioenvs/nodemcu-32s/lib3a9/ESP Async WebServer_ID306/WebAuthentication.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib3a9/ESP Async WebServer_ID306/WebHandlers.cpp.o b/.pioenvs/nodemcu-32s/lib3a9/ESP Async WebServer_ID306/WebHandlers.cpp.o deleted file mode 100644 index cdf785d..0000000 Binary files a/.pioenvs/nodemcu-32s/lib3a9/ESP Async WebServer_ID306/WebHandlers.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib3a9/ESP Async WebServer_ID306/WebRequest.cpp.o b/.pioenvs/nodemcu-32s/lib3a9/ESP Async WebServer_ID306/WebRequest.cpp.o deleted file mode 100644 index a2b641b..0000000 Binary files a/.pioenvs/nodemcu-32s/lib3a9/ESP Async WebServer_ID306/WebRequest.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib3a9/ESP Async WebServer_ID306/WebResponses.cpp.o b/.pioenvs/nodemcu-32s/lib3a9/ESP Async WebServer_ID306/WebResponses.cpp.o deleted file mode 100644 index 8be2643..0000000 Binary files a/.pioenvs/nodemcu-32s/lib3a9/ESP Async WebServer_ID306/WebResponses.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib3a9/ESP Async WebServer_ID306/WebServer.cpp.o b/.pioenvs/nodemcu-32s/lib3a9/ESP Async WebServer_ID306/WebServer.cpp.o deleted file mode 100644 index e7c64ee..0000000 Binary files a/.pioenvs/nodemcu-32s/lib3a9/ESP Async WebServer_ID306/WebServer.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib3a9/libESP Async WebServer_ID306.a b/.pioenvs/nodemcu-32s/lib3a9/libESP Async WebServer_ID306.a deleted file mode 100644 index 9b22cff..0000000 Binary files a/.pioenvs/nodemcu-32s/lib3a9/libESP Async WebServer_ID306.a and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib3e8/ESP8266FtpServer_ID992/ESP8266FtpServer.cpp.o b/.pioenvs/nodemcu-32s/lib3e8/ESP8266FtpServer_ID992/ESP8266FtpServer.cpp.o deleted file mode 100644 index 174f00b..0000000 Binary files a/.pioenvs/nodemcu-32s/lib3e8/ESP8266FtpServer_ID992/ESP8266FtpServer.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib3e8/libESP8266FtpServer_ID992.a b/.pioenvs/nodemcu-32s/lib3e8/libESP8266FtpServer_ID992.a deleted file mode 100644 index 1e470ad..0000000 Binary files a/.pioenvs/nodemcu-32s/lib3e8/libESP8266FtpServer_ID992.a and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib69d/SPIFFS/SPIFFS.cpp.o b/.pioenvs/nodemcu-32s/lib69d/SPIFFS/SPIFFS.cpp.o deleted file mode 100644 index 3374d05..0000000 Binary files a/.pioenvs/nodemcu-32s/lib69d/SPIFFS/SPIFFS.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib69d/libSPIFFS.a b/.pioenvs/nodemcu-32s/lib69d/libSPIFFS.a deleted file mode 100644 index 682a963..0000000 Binary files a/.pioenvs/nodemcu-32s/lib69d/libSPIFFS.a and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib886/Wire/Wire.cpp.o b/.pioenvs/nodemcu-32s/lib886/Wire/Wire.cpp.o deleted file mode 100644 index c22ab0b..0000000 Binary files a/.pioenvs/nodemcu-32s/lib886/Wire/Wire.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib886/libWire.a b/.pioenvs/nodemcu-32s/lib886/libWire.a deleted file mode 100644 index cb1bcfa..0000000 Binary files a/.pioenvs/nodemcu-32s/lib886/libWire.a and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib939/ArduinoINA219_ID411/INA219.cpp.o b/.pioenvs/nodemcu-32s/lib939/ArduinoINA219_ID411/INA219.cpp.o deleted file mode 100644 index 3e16f00..0000000 Binary files a/.pioenvs/nodemcu-32s/lib939/ArduinoINA219_ID411/INA219.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/lib939/libArduinoINA219_ID411.a b/.pioenvs/nodemcu-32s/lib939/libArduinoINA219_ID411.a deleted file mode 100644 index 5dc0bbb..0000000 Binary files a/.pioenvs/nodemcu-32s/lib939/libArduinoINA219_ID411.a and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/libFrameworkArduino.a b/.pioenvs/nodemcu-32s/libFrameworkArduino.a deleted file mode 100644 index f152db4..0000000 Binary files a/.pioenvs/nodemcu-32s/libFrameworkArduino.a and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/libFrameworkArduinoVariant.a b/.pioenvs/nodemcu-32s/libFrameworkArduinoVariant.a deleted file mode 100644 index 8b277f0..0000000 --- a/.pioenvs/nodemcu-32s/libFrameworkArduinoVariant.a +++ /dev/null @@ -1 +0,0 @@ -! diff --git a/.pioenvs/nodemcu-32s/libb23/LiquidCrystal_I2C_ID576/LiquidCrystal_I2C.cpp.o b/.pioenvs/nodemcu-32s/libb23/LiquidCrystal_I2C_ID576/LiquidCrystal_I2C.cpp.o deleted file mode 100644 index 8af00f8..0000000 Binary files a/.pioenvs/nodemcu-32s/libb23/LiquidCrystal_I2C_ID576/LiquidCrystal_I2C.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/libb23/libLiquidCrystal_I2C_ID576.a b/.pioenvs/nodemcu-32s/libb23/libLiquidCrystal_I2C_ID576.a deleted file mode 100644 index 70ec50e..0000000 Binary files a/.pioenvs/nodemcu-32s/libb23/libLiquidCrystal_I2C_ID576.a and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/libbe8/libTaskScheduler_ID721.a b/.pioenvs/nodemcu-32s/libbe8/libTaskScheduler_ID721.a deleted file mode 100644 index 8b277f0..0000000 --- a/.pioenvs/nodemcu-32s/libbe8/libTaskScheduler_ID721.a +++ /dev/null @@ -1 +0,0 @@ -! diff --git a/.pioenvs/nodemcu-32s/libc3f/FS/FS.cpp.o b/.pioenvs/nodemcu-32s/libc3f/FS/FS.cpp.o deleted file mode 100644 index 4131516..0000000 Binary files a/.pioenvs/nodemcu-32s/libc3f/FS/FS.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/libc3f/FS/vfs_api.cpp.o b/.pioenvs/nodemcu-32s/libc3f/FS/vfs_api.cpp.o deleted file mode 100644 index 58e3c5c..0000000 Binary files a/.pioenvs/nodemcu-32s/libc3f/FS/vfs_api.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/libc3f/libFS.a b/.pioenvs/nodemcu-32s/libc3f/libFS.a deleted file mode 100644 index 04b3d84..0000000 Binary files a/.pioenvs/nodemcu-32s/libc3f/libFS.a and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/libc9f/AsyncTCP_ID1826/AsyncTCP.cpp.o b/.pioenvs/nodemcu-32s/libc9f/AsyncTCP_ID1826/AsyncTCP.cpp.o deleted file mode 100644 index 116ba4d..0000000 Binary files a/.pioenvs/nodemcu-32s/libc9f/AsyncTCP_ID1826/AsyncTCP.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/libc9f/libAsyncTCP_ID1826.a b/.pioenvs/nodemcu-32s/libc9f/libAsyncTCP_ID1826.a deleted file mode 100644 index 5222651..0000000 Binary files a/.pioenvs/nodemcu-32s/libc9f/libAsyncTCP_ID1826.a and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/libdb7/ESPAsyncWifiManager_ID1438/ESPAsyncWiFiManager.cpp.o b/.pioenvs/nodemcu-32s/libdb7/ESPAsyncWifiManager_ID1438/ESPAsyncWiFiManager.cpp.o deleted file mode 100644 index 8e7aa75..0000000 Binary files a/.pioenvs/nodemcu-32s/libdb7/ESPAsyncWifiManager_ID1438/ESPAsyncWiFiManager.cpp.o and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/libdb7/libESPAsyncWifiManager_ID1438.a b/.pioenvs/nodemcu-32s/libdb7/libESPAsyncWifiManager_ID1438.a deleted file mode 100644 index c1bc262..0000000 Binary files a/.pioenvs/nodemcu-32s/libdb7/libESPAsyncWifiManager_ID1438.a and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/partitions.bin b/.pioenvs/nodemcu-32s/partitions.bin deleted file mode 100644 index 1d3d5b9..0000000 Binary files a/.pioenvs/nodemcu-32s/partitions.bin and /dev/null differ diff --git a/.pioenvs/nodemcu-32s/src/PowerAnalyzer.ino.cpp.o b/.pioenvs/nodemcu-32s/src/PowerAnalyzer.ino.cpp.o deleted file mode 100644 index 7925371..0000000 Binary files a/.pioenvs/nodemcu-32s/src/PowerAnalyzer.ino.cpp.o and /dev/null differ diff --git a/data/index.html b/data/index.html index a0191c9..c11b8ed 100644 --- a/data/index.html +++ b/data/index.html @@ -59,7 +59,7 @@ V - --- + / @@ -73,7 +73,7 @@ A - --- + / @@ -87,7 +87,7 @@ W - --- + / @@ -115,6 +115,7 @@ Wh + --- @@ -141,7 +142,7 @@ -
Build by Carsten Schmiemann (2018), Akku V, Status:
+
Build by Carsten Schmiemann (2018), Akku V, Status:
diff --git a/data/js/poll.js b/data/js/poll.js index 2379b49..0241038 100644 --- a/data/js/poll.js +++ b/data/js/poll.js @@ -11,7 +11,13 @@ document.getElementById("Ah").innerHTML = values.Ah; document.getElementById("Wh").innerHTML = values.Wh; document.getElementById("battery").innerHTML = values.battery; - document.getElementById("run").innerHTML = values.run; + document.getElementById("run").innerHTML = values.run; + document.getElementById("shuntvoltage_V_max").innerHTML = values.shuntvoltage_V_max; + document.getElementById("shuntvoltage_V_min").innerHTML = values.shuntvoltage_V_min; + document.getElementById("current_A_max").innerHTML = values.current_A_max; + document.getElementById("current_A_min").innerHTML = values.current_A_min; + document.getElementById("power_W_max").innerHTML = values.power_W_max; + document.getElementById("power_W_min").innerHTML = values.power_W_min; } }; xhttp.open("GET", "/meas/values", true); diff --git a/platformio.ini b/platformio.ini index 0f052d1..8385355 100644 --- a/platformio.ini +++ b/platformio.ini @@ -16,3 +16,5 @@ lib_deps = ArduinoINA219, Wire, EEPROM, TaskScheduler, LiquidCrystal_I2C, ESPAsy board_build.partitions = partitions.csv monitor_port = COM6 monitor_speed = 115200 +upload_port = 10.11.0.44 +upload_flags = "--port=1337 --auth=powerlyzer" \ No newline at end of file diff --git a/src/PowerAnalyzer.ino b/src/PowerAnalyzer.ino index 20cc28a..cfaade2 100644 --- a/src/PowerAnalyzer.ino +++ b/src/PowerAnalyzer.ino @@ -12,13 +12,15 @@ #include #include #include +#include //Library Config LiquidCrystal_I2C lcd(0x27,20,4); INA219 ina219; AsyncWebServer server(80); DNSServer dns; -FtpServer ftpSrv; +FtpServer ftpSrv; +Scheduler task; //Konstanten #define R_SHUNT 0.001 @@ -49,6 +51,14 @@ void web_measuring_reset(AsyncWebServerRequest *request); void web_get_values(AsyncWebServerRequest *request); void data_logging(); +//Task Scheduler +Task t1(500, TASK_FOREVER, &lcd_print); +Task t2(1750, TASK_FOREVER, &lcd_header); +Task t3(10000, TASK_FOREVER, &read_bat); +Task t4(300, TASK_FOREVER, &read_button); +Task t5(30000, TASK_FOREVER, &data_logging); +//Task t3(60000, TASK_FOREVER, &eeprom_save); + //Globale Variablen float shuntvoltage_V = 0, shuntvoltage_mV = 0, busvoltage_V = 0, busvoltage_mV = 0, current_A = 0, current_mA = 0, power_W = 0, power_mW = 0; float shuntvoltage_V_max = 0, current_A_max = 0, power_W_max = 0, shuntvoltage_V_min = 0, current_A_min = 0, power_W_min = 0; @@ -56,8 +66,8 @@ float Ah = 0, mAh = 0, Wh = 0, mWh = 0; float battery_voltage, battery_average; int i_header = 0; bool button1, button2, button3; -bool lcd_light = true, wifi_enabled = true; -bool measuring_run = false, reset_actual = false, reset_minmax =false, battery_low = false; +bool lcd_light = true, wifi_enabled = true, test_mode = false; +bool measuring_run = false, measuring_init = false, reset_actual = false, reset_minmax =false, battery_low = false; unsigned long lastread = 0; unsigned long tick; unsigned long previousMillisReadData = 0; @@ -99,16 +109,6 @@ byte batterie[8] = { 0b11111 }; -//Task Scheduler -Task t1(500, TASK_FOREVER, &lcd_print); -Task t2(1750, TASK_FOREVER, &lcd_header); -Task t3(10000, TASK_FOREVER, &read_bat); -Task t4(300, TASK_FOREVER, &read_button); -Task t5(30000, TASK_FOREVER, &data_logging); -//Task t3(60000, TASK_FOREVER, &eeprom_save); -Scheduler task; - - void setup() { //Setup GPIO pinMode(led_lowbat_pin, OUTPUT); @@ -122,6 +122,46 @@ void setup() { Serial.begin(115200); Serial.println("Power Analyzer by Carsten Schmiemann (C) 2018"); + //Setup Over The Air - Update + ArduinoOTA + .onStart([]() { + //Disable Tasks + t1.disable(); + t2.disable(); + t3.disable(); + t4.disable(); + t5.disable(); + SPIFFS.end(); + String type; + lcd.clear(); + lcd.setCursor(0,0); + lcd.print("OTA Firmware Update"); + lcd.setCursor(7,1); + lcd.print("Init"); + }) + .onEnd([]() { + lcd.setCursor(7,2); + lcd.print("Done."); + delay(5000); + ESP.restart(); + }) + .onProgress([](unsigned int progress, unsigned int total) { + lcd.setCursor(3,1); + lcd.print(progress / (total / 100)); lcd.print("% Complete"); + }) + .onError([](ota_error_t error) { + lcd.setCursor(3,3); + lcd.print("Done."); + if (error == OTA_AUTH_ERROR) lcd.print("Auth Failed"); + else if (error == OTA_BEGIN_ERROR) lcd.print("Begin Failed"); + else if (error == OTA_CONNECT_ERROR) lcd.print("Connect Failed"); + else if (error == OTA_RECEIVE_ERROR) lcd.print("Receive Failed"); + else if (error == OTA_END_ERROR) lcd.print("End Failed"); + }); + ArduinoOTA.setPort(1337); + ArduinoOTA.setPassword("powerlyzer"); + ArduinoOTA.begin(); + //Init LCD and Custom Chars lcd.init(); lcd.backlight(); @@ -138,7 +178,7 @@ void setup() { lcd.print("Power Analyzer"); lcd.setCursor(7,1); //lcd.print("Tracker"); - lcd.setCursor(5,2); + lcd.setCursor(6,2); lcd.print("V0.29 Beta"); lcd.setCursor(7,3); lcd.print("CS,2018"); @@ -178,17 +218,66 @@ void setup() { wifi_enabled = false; } + //Setup Over The Air - Update + ArduinoOTA + .onStart([]() { + //Disable Tasks + t1.disable(); + t2.disable(); + t3.disable(); + t4.disable(); + t5.disable(); + SPIFFS.end(); + String type; + lcd.clear(); + lcd.setCursor(0,0); + lcd.print("OTA Firmware Update"); + lcd.setCursor(7,1); + lcd.print("Init"); + }) + .onEnd([]() { + lcd.setCursor(7,2); + lcd.print("Done."); + delay(5000); + ESP.restart(); + }) + .onProgress([](unsigned int progress, unsigned int total) { + lcd.setCursor(3,1); + lcd.print(progress / (total / 100)); lcd.print("% Complete"); + }) + .onError([](ota_error_t error) { + lcd.setCursor(3,3); + lcd.print("Done."); + if (error == OTA_AUTH_ERROR) lcd.print("Auth Failed"); + else if (error == OTA_BEGIN_ERROR) lcd.print("Begin Failed"); + else if (error == OTA_CONNECT_ERROR) lcd.print("Connect Failed"); + else if (error == OTA_RECEIVE_ERROR) lcd.print("Receive Failed"); + else if (error == OTA_END_ERROR) lcd.print("End Failed"); + }); + if (wifi_enabled) { + ArduinoOTA.setPort(1337); + ArduinoOTA.setPassword("powerlyzer"); + ArduinoOTA.begin(); + } + //Init ina219s - lcd.setCursor(0,1); - lcd.print("Init Sensors..."); - ina219.begin(); - ina219.configure(INA219::RANGE_16V, INA219::GAIN_2_80MV, INA219::ADC_16SAMP, INA219::ADC_16SAMP, INA219::CONT_SH_BUS); - lastread = millis(); - ina219.calibrate(R_SHUNT, V_SHUNT_MAX, V_BUS_MAX, I_MAX_EXPECTED); - delay(300); - lcd.setCursor(16,1); - lcd.print("Done"); - delay(200); + lcd.setCursor(0,1); + lcd.print("Init Sensors..."); + if (digitalRead(button1_pin)) { + ina219.begin(); + ina219.configure(INA219::RANGE_16V, INA219::GAIN_2_80MV, INA219::ADC_16SAMP, INA219::ADC_16SAMP, INA219::CONT_SH_BUS); + lastread = millis(); + ina219.calibrate(R_SHUNT, V_SHUNT_MAX, V_BUS_MAX, I_MAX_EXPECTED); + delay(300); + lcd.setCursor(16,1); + lcd.print("Done"); + delay(200); + } else { + lcd.setCursor(16,1); + lcd.print("Test"); + test_mode = true; + delay(500); + } //Init Task Scheduler lcd.setCursor(0,2); @@ -199,10 +288,6 @@ void setup() { task.addTask(t3); task.addTask(t4); task.addTask(t5); - t2.enable(); - t3.enable(); - t4.enable(); - t5.enable(); //Init Filesystem and Webserver SPIFFS.begin(); server.on("/meas/run", HTTP_GET, web_measuring_run); @@ -229,39 +314,75 @@ void setup() { lcd.clear(); lcd.setCursor(6,1); lcd.print("IP address"); - lcd.setCursor(5,2); + lcd.setCursor(6,2); lcd.print(WiFi.localIP()); delay(1500); } //Load Default Screen lcd_init(); + + //Enable Tasks + t1.enable(); + t2.enable(); + t3.enable(); + t4.enable(); + t5.enable(); } void loop() { //Exec TaskScheduler task.execute(); ftpSrv.handleFTP(); + ArduinoOTA.handle(); + unsigned long currentMillis = millis(); if ((unsigned long)(currentMillis - previousMillisReadData) >= 250) { previousMillisReadData = millis(); + if (test_mode) { + if (digitalRead(button1_pin)) { + shuntvoltage_V += 1; + power_W += 1; + current_A += 1; + Ah += 1; + Wh += 1; + } + if (digitalRead(button2_pin)) { + shuntvoltage_V -= 1; + power_W -= 1; + current_A -= 1; + Ah -= 1; + Wh -= 1; + } + } else { readCurrent(); + } } } void lcd_print() { - if (busvoltage_V > 10) {lcd.setCursor(1,3);} else if (busvoltage_V < 0) {lcd.setCursor(1,3);} else {lcd.setCursor(1,3); lcd.print(" ");} - lcd.print(busvoltage_V); - if (current_A > 10) {lcd.setCursor(1,1);} else if (current_A < 0) {lcd.setCursor(1,1);} else {lcd.setCursor(1,1); lcd.print(" ");} + lcd.setCursor(0,1); + if (current_A < 100 && current_A >= 10) {lcd.print(" ");} else if (current_A < 10 && current_A >= 0) {lcd.print(" ");}; + if (current_A > -100 && current_A <= -10) {lcd.print(" ");} else if (current_A > -10 && current_A < 0) {lcd.print(" ");}; lcd.print(current_A); + lcd.setCursor(0,2); - if (power_W < 100 && power_W > 10) {lcd.print(" ")}; else if (power_W < 10) {lcd.print(" ")}; + if (power_W < 1000 && power_W > 100) {lcd.print(" ");} else if (power_W < 100 && power_W >= 10) {lcd.print(" ");} else if (power_W < 10) {lcd.print(" ");}; lcd.print(power_W); - if (Ah > 10) {lcd.setCursor(13,1);} else if (Ah < 0){lcd.setCursor(11,1);} else {lcd.setCursor(11,1); lcd.print(" ");} + + lcd.setCursor(0,3); + if (busvoltage_V < 100 && busvoltage_V >= 10) {lcd.print(" ");} else if (busvoltage_V < 10) {lcd.print(" ");}; + lcd.print(busvoltage_V); + + lcd.setCursor(11,1); + if (Ah < 1000 && Ah > 100) {lcd.print(" ");} else if (Ah < 100 && Ah >= 10) {lcd.print(" ");} else if (Ah < 10) {lcd.print(" ");}; lcd.print(Ah); - if (Wh > 10) {lcd.setCursor(13,2);} else if (Wh < 0){lcd.setCursor(11,2);} else {lcd.setCursor(11,2); lcd.print(" ");} + + lcd.setCursor(11,2); + if (Wh < 1000 && Wh > 100) {lcd.print(" ");} else if (Wh < 100 && Wh >= 10) {lcd.print(" ");} else if (Wh < 10) {lcd.print(" ");}; lcd.print(Wh); - lcd.setCursor(15,3); + + lcd.setCursor(14,3); if (battery_voltage > 3.4) {lcd.print(battery_voltage);} else {lcd.print("LOW ");} } @@ -275,13 +396,13 @@ void lcd_init() { lcd.print("W"); lcd.setCursor(7,3); lcd.print("V"); - lcd.setCursor(17,1); + lcd.setCursor(18,1); lcd.print("Ah"); - lcd.setCursor(17,2); + lcd.setCursor(18,2); lcd.print("Wh"); - lcd.setCursor(14,3); + lcd.setCursor(13,3); lcd.write((uint8_t)2); - lcd.setCursor(19,3); + lcd.setCursor(18,3); lcd.print("V"); delay(300); } @@ -420,13 +541,22 @@ void readCurrent() { current_A_min = 0; power_W_min = 0; } + if (measuring_run && measuring_init == false) { + shuntvoltage_V_max = 0; + current_A_max = 0; + power_W_max = 0; + shuntvoltage_V_min = shuntvoltage_V; + current_A_min = current_A; + power_W_min = power_W; + measuring_init = true; + } lastread = newtime; ina219.recalibrate(); ina219.reconfig(); } void read_bat() { - battery_average += (analogRead(adc_battery_pin) - battery_average) * 0.1; + battery_average += (analogRead(adc_battery_pin) - battery_average) * 0.3; battery_voltage = map(battery_average,0,4096,0,450)/100.0; if (battery_voltage < 3.3 && battery_low == false) { battery_low = true; @@ -458,10 +588,10 @@ void read_button() { else { button3 = true; } - if (button1) { + if (button1 && test_mode == false) { reset_actual = true; } - if (button2 && measuring_run) { + if (button2 && measuring_run && test_mode == false) { measuring_run = false; } else if (button2 && measuring_run == false) { measuring_run = true; @@ -496,17 +626,24 @@ void web_measuring_reset(AsyncWebServerRequest *request) { } void web_get_values(AsyncWebServerRequest *request) { - request->send( 200, "application/json", "{\"voltage\":" + String(busvoltage_V) + ", \"current\":" + String(current_A) + ", \"power\":" + String(power_W) + ", \"Ah\":" + String(Ah) + ", \"Wh\":" + String(Wh) + ", \"battery\":" + String(battery_voltage) + ", \"run\":" + String(measuring_run) + ", \"run\":" + String(shuntvoltage_V_max) + ", \"run\":" + String(shuntvoltage_V_min) + ", \"run\":" + String(current_A_max) + ", \"run\":" + String(current_A_min) + ", \"run\":" + String(power_W_max) + ", \"run\":" + String(power_W_min) + "}"); + String web_status; + if (measuring_run) { + web_status = "Running"; + } + else { + web_status = "Stopped"; + } + request->send( 200, "application/json", "{\"voltage\":" + String(busvoltage_V) + ", \"current\":" + String(current_A) + ", \"power\":" + String(power_W) + ", \"Ah\":" + String(Ah) + ", \"Wh\":" + String(Wh) + ", \"battery\": " + String(battery_voltage) + ", \"run\":\"" + String(web_status) + "\", \"shuntvoltage_V_max\":" + String(shuntvoltage_V_max) + ", \"shuntvoltage_V_min\":" + String(shuntvoltage_V_min) + ", \"current_A_max\":" + String(current_A_max) + ", \"current_A_min\":" + String(current_A_min) + ", \"power_W_max\":" + String(power_W_max) + ", \"power_W_min\":" + String(power_W_min) + "}"); } void data_logging() { - if (measuring_run) { + if (measuring_run && test_mode == false) { File datalog = SPIFFS.open("/datalog.csv", "a"); datalog.print(data_timestamp); datalog.print(','); datalog.print(busvoltage_V); datalog.print(','); datalog.print(current_A); datalog.print(','); - datalog.println(power_W); datalog.print(','); - datalog.println(Ah); datalog.print(','); + datalog.print(power_W); datalog.print(','); + datalog.print(Ah); datalog.print(','); datalog.println(Wh); datalog.close(); data_timestamp++;