diff --git a/README.md b/README.md index 57d73e0b..bfb2c53e 100644 --- a/README.md +++ b/README.md @@ -19,9 +19,7 @@ A 3d-printable housing can be found here: https://www.thingiverse.com/thing:4571 ### Known Issues -* Parts of the web page only works correctly in **Firefox** and Chrome! - With **Edge** not all parts (especially the configuration) are **not full functional**. -* spontaneous reboot, especially in case of intensive web server access (improved since v2.0.0) +* spontaneous reboot, especially in case of intensive web server access (improved since v2.1.0) ------ @@ -29,30 +27,42 @@ A 3d-printable housing can be found here: https://www.thingiverse.com/thing:4571 -##### Rolling - (2020-09-20) +##### Rolling - (2020-09-28) -* Update HTML-Backround (thanks to michaeljoos72) +* based on v2.2.1 (2020-09-28) -2020-09-16 - -* Impovements in hostname - -2020-09-14 - -* Implementation of hostname in wlan.ini (`hostname = "HOSTNAME")` - Parameter is optional - -* Bug correction DecimalShift - -2020-09-13 - -* Bug fixing DecimalShift (digits after comma) - -* Implementation of decimal shift (New Parameter "DecimalShift = 1" in [PostProcessing]) -DecimalShift = 2 --> Result: 123.456 --> 12345.6 - DecimalShift = -1 --> Result: 123.456 --> 12.3456 - The shift is done at the very first step of merging digital and analog, so all following number already will work on the shifted number. -* based on v2.0.0 (2020-09-12) + +##### 2.2.1 Version Control (2020-09-27) + +* Bug-Fixing (hostname in wlan.ini and error handling inside flow) + + + + +##### 2.2.0 Version Control (2020-09-27) + +* Integrated automated versioning system (menu: SYSTEM --> INFO) +* Update Build-System to PlatformIO - Espressif 32 v2.0.0 (ESP-IDF 4.1) + + + + +##### 2.1.0 Decimal Shift, Chrome & Edge (2020-09-25) + +* Implementation of Decimal Shift + +* Update default CNN for digits to v6.4.0 + +* Improvement HTML + +* Support for Chrome and Edge + +* Reduce logging to minimum - extended logging on demand + +* Implementation of hostname in wlan.ini (`hostname = "HOSTNAME")` + +* Bug fixing, code corrections diff --git a/code/CMakeLists.txt b/code/CMakeLists.txt index e104ca46..0c2fcbe1 100644 --- a/code/CMakeLists.txt +++ b/code/CMakeLists.txt @@ -4,5 +4,12 @@ list(APPEND EXTRA_COMPONENT_DIRS $ENV{IDF_PATH}/examples/common_components/proto set(PROJECT_VER "0.0.9.3") +ADD_CUSTOM_COMMAND( + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/version.cpp + ${CMAKE_CURRENT_BINARY_DIR}/_version.cpp + COMMAND ${CMAKE_COMMAND} -P + ${CMAKE_CURRENT_SOURCE_DIR}/version.cmake) + + include($ENV{IDF_PATH}/tools/cmake/project.cmake) project(esp32cam-server-only) diff --git a/code/lib/connect_wlan/connect_wlan.cpp b/code/lib/connect_wlan/connect_wlan.cpp index e42bf64c..8f1186ac 100644 --- a/code/lib/connect_wlan/connect_wlan.cpp +++ b/code/lib/connect_wlan/connect_wlan.cpp @@ -143,7 +143,6 @@ void LoadWlanFromFile(std::string fn, std::string &_ssid, std::string &_passphra char zw[1024]; fgets(zw, 1024, pFile); -// printf("%s", zw); line = std::string(zw); while ((line.size() > 0) || !(feof(pFile))) @@ -151,21 +150,16 @@ void LoadWlanFromFile(std::string fn, std::string &_ssid, std::string &_passphra // printf("%s", line.c_str()); zerlegt = ZerlegeZeile(line, "="); zerlegt[0] = trim(zerlegt[0], " "); - zerlegt[1] = trim(zerlegt[1], " "); if ((zerlegt.size() > 1) && (toUpper(zerlegt[0]) == "HOSTNAME")){ - _hostname = zerlegt[1]; + _hostname = trim(zerlegt[1]); if ((_hostname[0] == '"') && (_hostname[_hostname.length()-1] == '"')){ _hostname = _hostname.substr(1, _hostname.length()-2); } - // Check if Hostname was empty in .ini if yes set to std_hostname - if(_hostname.length() <= 0){ - _hostname = std_hostname; - } } if ((zerlegt.size() > 1) && (toUpper(zerlegt[0]) == "SSID")){ - _ssid = zerlegt[1]; + _ssid = trim(zerlegt[1]); if ((_ssid[0] == '"') && (_ssid[_ssid.length()-1] == '"')){ _ssid = _ssid.substr(1, _ssid.length()-2); } @@ -189,6 +183,11 @@ void LoadWlanFromFile(std::string fn, std::string &_ssid, std::string &_passphra } fclose(pFile); + + // Check if Hostname was empty in .ini if yes set to std_hostname + if(_hostname.length() <= 0){ + _hostname = std_hostname; + } } diff --git a/code/lib/jomjol_fileserver_ota/server_file.cpp b/code/lib/jomjol_fileserver_ota/server_file.cpp index e00f6b84..633542bc 100644 --- a/code/lib/jomjol_fileserver_ota/server_file.cpp +++ b/code/lib/jomjol_fileserver_ota/server_file.cpp @@ -258,7 +258,7 @@ static esp_err_t download_get_handler(httpd_req_t *req) return ESP_FAIL; } - esp_err_t res = httpd_resp_set_hdr(req, "Access-Control-Allow-Origin", "*"); + httpd_resp_set_hdr(req, "Access-Control-Allow-Origin", "*"); ESP_LOGI(TAG, "Sending file : %s (%ld bytes)...", filename, file_stat.st_size); set_content_type_from_file(req, filename); @@ -437,7 +437,6 @@ static esp_err_t delete_post_handler(httpd_req_t *req) ////////////////////////////////////////////////////////////// char _query[200]; - char _filename[30]; char _valuechar[30]; std::string fn = "/sdcard/firmware/"; std::string _task; @@ -576,8 +575,6 @@ void unzip(std::string _in_zip_file, std::string _target_directory){ size_t uncomp_size; mz_zip_archive zip_archive; void* p; - const int N = 50; - char data[2048]; char archive_filename[64]; std::string zw; // static const char* s_Test_archive_filename = "testhtml.zip"; diff --git a/code/lib/jomjol_flowcontroll/ClassFlowAnalog.cpp b/code/lib/jomjol_flowcontroll/ClassFlowAnalog.cpp index 910e4a5c..c1656f5e 100644 --- a/code/lib/jomjol_flowcontroll/ClassFlowAnalog.cpp +++ b/code/lib/jomjol_flowcontroll/ClassFlowAnalog.cpp @@ -10,6 +10,8 @@ #include "CTfLiteClass.h" #endif +#include "ClassLogFile.h" + ClassFlowAnalog::ClassFlowAnalog() { isLogImage = false; @@ -106,6 +108,7 @@ bool ClassFlowAnalog::ReadParameter(FILE* pfile, string& aktparamgraph) neuroi->posy = std::stoi(zerlegt[2]); neuroi->deltax = std::stoi(zerlegt[3]); neuroi->deltay = std::stoi(zerlegt[4]); + neuroi->result = -1; ROI.push_back(neuroi); } } @@ -140,7 +143,10 @@ string ClassFlowAnalog::getHTMLSingleStep(string host) bool ClassFlowAnalog::doFlow(string time) { - doAlignAndCut(time); + if (!doAlignAndCut(time)){ + return false; + }; + doNeuralNetwork(time); return true; @@ -160,8 +166,21 @@ bool ClassFlowAnalog::doAlignAndCut(string time) CImageBasis *img_roi = NULL; CAlignAndCutImage *caic = new CAlignAndCutImage(input); - if (input_roi.length() > 0) - img_roi = new CImageBasis(input_roi); + if (!caic->ImageOkay()){ + LogFile.WriteToFile("ClassFlowAnalog::doAlignAndCut not okay!"); + delete caic; + return false; + } + + if (input_roi.length() > 0){ + img_roi = new CImageBasis(input_roi); + if (!img_roi->ImageOkay()){ + LogFile.WriteToFile("ClassFlowAnalog::doAlignAndCut ImageRoi not okay!"); + delete caic; + delete img_roi; + return false; + } + } for (int i = 0; i < ROI.size(); ++i) { diff --git a/code/lib/jomjol_flowcontroll/ClassFlowControll.cpp b/code/lib/jomjol_flowcontroll/ClassFlowControll.cpp index cc1a92a4..cda40f2c 100644 --- a/code/lib/jomjol_flowcontroll/ClassFlowControll.cpp +++ b/code/lib/jomjol_flowcontroll/ClassFlowControll.cpp @@ -6,7 +6,6 @@ #include "server_ota.h" std::string ClassFlowControll::doSingleStep(std::string _stepname, std::string _host){ - bool found = false; std::string _classname = ""; std::string result = ""; if (_stepname.compare("[MakeImage]") == 0){ @@ -29,7 +28,6 @@ std::string ClassFlowControll::doSingleStep(std::string _stepname, std::string _ // printf(FlowControll[i]->name().c_str()); printf("\n"); FlowControll[i]->doFlow(""); result = FlowControll[i]->getHTMLSingleStep(_host); - found = true; } return result; @@ -74,15 +72,15 @@ ClassFlow* ClassFlowControll::CreateClassFlow(std::string _type) _type = trim(_type); - if (_type.compare("[MakeImage]") == 0) + if (toUpper(_type).compare("[MAKEIMAGE]") == 0) cfc = new ClassFlowMakeImage(&FlowControll); - if (_type.compare("[Alignment]") == 0) + if (toUpper(_type).compare("[ALIGNMENT]") == 0) cfc = new ClassFlowAlignment(&FlowControll); - if (_type.compare("[Analog]") == 0) + if (toUpper(_type).compare("[ANALOG]") == 0) cfc = new ClassFlowAnalog(&FlowControll); - if (_type.compare("[Digits]") == 0) + if (toUpper(_type).compare("[DIGITS]") == 0) cfc = new ClassFlowDigit(&FlowControll); - if (_type.compare("[PostProcessing]") == 0) + if (toUpper(_type).compare("[POSTPROCESSING]") == 0) { cfc = new ClassFlowPostProcessing(&FlowControll); flowpostprocessing = (ClassFlowPostProcessing*) cfc; @@ -91,9 +89,12 @@ ClassFlow* ClassFlowControll::CreateClassFlow(std::string _type) if (cfc) // Wird nur angehangen, falls es nicht [AutoTimer] ist, denn dieses ist für FlowControll FlowControll.push_back(cfc); - if (_type.compare("[AutoTimer]") == 0) + if (toUpper(_type).compare("[AUTOTIMER]") == 0) cfc = this; + if (toUpper(_type).compare("[DEBUG]") == 0) + cfc = this; + return cfc; } @@ -156,7 +157,7 @@ bool ClassFlowControll::doFlow(string time) if (!FlowControll[i]->doFlow(time)){ repeat++; LogFile.WriteToFile("Fehler im vorheriger Schritt - wird zum " + to_string(repeat) + ". Mal wiederholt"); - i = i-2; // vorheriger Schritt muss wiederholt werden (vermutlich Bilder aufnehmen) + i = -1; // vorheriger Schritt muss wiederholt werden (vermutlich Bilder aufnehmen) result = false; if (repeat > 5) { LogFile.WriteToFile("Wiederholung 5x nicht erfolgreich --> reboot"); @@ -230,7 +231,7 @@ std::string ClassFlowControll::UpdatePrevalue(std::string _newvalue) if (flowpostprocessing) { flowpostprocessing->SavePreValue(zw); - return to_string(zw); + return _newvalue; } return std::string(); @@ -247,23 +248,34 @@ bool ClassFlowControll::ReadParameter(FILE* pfile, string& aktparamgraph) return false; - if (aktparamgraph.compare("[AutoTimer]") != 0) // Paragraph passt nich zu MakeImage + if ((toUpper(aktparamgraph).compare("[AUTOTIMER]") != 0) && (toUpper(aktparamgraph).compare("[DEBUG]") != 0)) // Paragraph passt nicht zu MakeImage return false; while (this->getNextLine(pfile, &aktparamgraph) && !this->isNewParagraph(aktparamgraph)) { zerlegt = this->ZerlegeZeile(aktparamgraph); - if ((zerlegt[0] == "AutoStart") && (zerlegt.size() > 1)) + if ((toUpper(zerlegt[0]) == "AUTOSTART") && (zerlegt.size() > 1)) { if (toUpper(zerlegt[1]) == "TRUE") { AutoStart = true; } } - if ((zerlegt[0] == "Intervall") && (zerlegt.size() > 1)) + if ((toUpper(zerlegt[0]) == "INTERVALL") && (zerlegt.size() > 1)) { AutoIntervall = std::stof(zerlegt[1]); } + if ((toUpper(zerlegt[0]) == "LOGFILE") && (zerlegt.size() > 1)) + { + if (toUpper(zerlegt[1]) == "TRUE") + { + LogFile.SwitchOnOff(true); + } + if (toUpper(zerlegt[1]) == "FALSE") + { + LogFile.SwitchOnOff(false); + } + } } return true; } diff --git a/code/lib/jomjol_flowcontroll/ClassFlowDigit.cpp b/code/lib/jomjol_flowcontroll/ClassFlowDigit.cpp index bb41c640..70f1132b 100644 --- a/code/lib/jomjol_flowcontroll/ClassFlowDigit.cpp +++ b/code/lib/jomjol_flowcontroll/ClassFlowDigit.cpp @@ -11,6 +11,8 @@ // #include "bitmap_image.hpp" +#include "ClassLogFile.h" + ClassFlowDigit::ClassFlowDigit() { isLogImage = false; @@ -84,6 +86,7 @@ bool ClassFlowDigit::ReadParameter(FILE* pfile, string& aktparamgraph) neuroi->posy = std::stoi(zerlegt[2]); neuroi->deltax = std::stoi(zerlegt[3]); neuroi->deltay = std::stoi(zerlegt[4]); + neuroi->resultklasse = -1; ROI.push_back(neuroi); } } @@ -119,7 +122,10 @@ string ClassFlowDigit::getHTMLSingleStep(string host) bool ClassFlowDigit::doFlow(string time) { - doAlignAndCut(time); + if (!doAlignAndCut(time)){ + return false; + }; + doNeuralNetwork(time); return true; @@ -138,9 +144,22 @@ bool ClassFlowDigit::doAlignAndCut(string time) CResizeImage *rs; CImageBasis *img_roi = NULL; CAlignAndCutImage *caic = new CAlignAndCutImage(input); + if (!caic->ImageOkay()){ + LogFile.WriteToFile("ClassFlowDigit::doAlignAndCut not okay!"); + delete caic; + return false; + } - if (input_roi.length() > 0) + if (input_roi.length() > 0){ img_roi = new CImageBasis(input_roi); + if (!img_roi->ImageOkay()){ + LogFile.WriteToFile("ClassFlowDigit::doAlignAndCut ImageRoi not okay!"); + delete caic; + delete img_roi; + return false; + } + } + for (int i = 0; i < ROI.size(); ++i) diff --git a/code/lib/jomjol_flowcontroll/ClassFlowPostProcessing.cpp b/code/lib/jomjol_flowcontroll/ClassFlowPostProcessing.cpp index 178b28b7..95e1df74 100644 --- a/code/lib/jomjol_flowcontroll/ClassFlowPostProcessing.cpp +++ b/code/lib/jomjol_flowcontroll/ClassFlowPostProcessing.cpp @@ -171,9 +171,6 @@ bool ClassFlowPostProcessing::ReadParameter(FILE* pfile, string& aktparamgraph) if ((toUpper(zerlegt[0]) == "DECIMALSHIFT") && (zerlegt.size() > 1)) { DecimalShift = stoi(zerlegt[1]); - if (PreValueUse){ - PreValueOkay = LoadPreValue(); - } } if ((toUpper(zerlegt[0]) == "PREVALUEUSE") && (zerlegt.size() > 1)) @@ -181,7 +178,6 @@ bool ClassFlowPostProcessing::ReadParameter(FILE* pfile, string& aktparamgraph) if (toUpper(zerlegt[1]) == "TRUE") { PreValueUse = true; - PreValueOkay = LoadPreValue(); } } if ((toUpper(zerlegt[0]) == "CHECKDIGITINCREASECONSISTENCY") && (zerlegt.size() > 1)) @@ -209,6 +205,10 @@ bool ClassFlowPostProcessing::ReadParameter(FILE* pfile, string& aktparamgraph) MaxRateValue = std::stof(zerlegt[1]); } } + + if (PreValueUse) { + PreValueOkay = LoadPreValue(); + } return true; } @@ -329,26 +329,15 @@ bool ClassFlowPostProcessing::doFlow(string zwtime) return true; } -/* - if (isdigit) - { - int lastanalog = -1; - if (isanalog) - lastanalog = analog[0] - 48; - digit = ErsetzteN(digit, lastanalog); - zw = digit; - } + zw = ErsetzteN(ReturnRawValue); - if (isdigit && isanalog) - zw = zw + "."; - if (isanalog) - zw = zw + analog; - zw = ShiftDecimal(zw, DecimalShift); -*/ - - zw = ErsetzteN(ReturnRawValue); Value = std::stof(zw); + if (checkDigitIncreaseConsistency) + { +// Value = checkDigitConsistency(Value, DecimalShift, isanalog); + } + zwvalue = RundeOutput(Value, AnzahlAnalog - DecimalShift); if ((!AllowNegativeRates) && (Value < PreValue)) @@ -430,39 +419,40 @@ string ClassFlowPostProcessing::ErsetzteN(string input) return input; } -string ClassFlowPostProcessing::checkDigitConsistency(string input, int _decilamshift, int lastvalueanalog){ -/* - if (checkDigitIncreaseConsistency && lastvalueanalog > -1) - { - int zifferIST; -// int substrakt = 0; - bool lastcorrected = false; - for (int i = input.length() - 1; i >= 0; --i) - { - zifferIST = input[i] - 48; //std::stoi(std::string(input[i])); - if (lastcorrected) - { - zifferIST--; - input[i] = zifferIST + 48; - lastcorrected = false; - } +float ClassFlowPostProcessing::checkDigitConsistency(float input, int _decilamshift, bool _isanalog){ + int aktdigit, olddigit; + int aktdigit_before, olddigit_before; + int pot, pot_max; + float zw; - pot = posPunkt - i - 1; - zw = PreValue / pow(10, pot); - ziffer = ((int) zw) % 10; - if (zifferIST < ziffer) - { - if (lastvalueanalog >= 7) - { - input[i] = ziffer + 48; - lastvalueanalog = ziffer; - lastcorrected = true; - } - } - - - } + pot = _decilamshift; + if (!_isanalog) // falls es keine analogwerte gibt, kann die letzte nicht bewerte werden + { + pot++; } -*/ + pot_max = ((int) log10(input)) + 1; + + while (pot <= pot_max) + { + zw = input / pow(10, pot-1); + aktdigit_before = ((int) zw) % 10; + zw = PreValue / pow(10, pot-1); + olddigit_before = ((int) zw) % 10; + + zw = input / pow(10, pot); + aktdigit = ((int) zw) % 10; + zw = PreValue / pow(10, pot); + olddigit = ((int) zw) % 10; + + if (aktdigit != olddigit) { + if (olddigit_before <= aktdigit_before) // stelle vorher hat noch keinen Nulldurchgang --> nachfolgestelle sollte sich nicht verändern + { + input = input + ((float) (olddigit - aktdigit)) * pow(10, pot); // Neue Digit wird durch alte Digit ersetzt; + } + } + + pot++; + } + return input; } diff --git a/code/lib/jomjol_flowcontroll/ClassFlowPostProcessing.h b/code/lib/jomjol_flowcontroll/ClassFlowPostProcessing.h index e27dae32..b9e74b9e 100644 --- a/code/lib/jomjol_flowcontroll/ClassFlowPostProcessing.h +++ b/code/lib/jomjol_flowcontroll/ClassFlowPostProcessing.h @@ -9,7 +9,7 @@ class ClassFlowPostProcessing : { protected: bool PreValueUse; - int PreValueAgeStartup; + int PreValueAgeStartup; bool AllowNegativeRates; float MaxRateValue; bool useMaxRateValue; @@ -29,7 +29,7 @@ protected: string ShiftDecimal(string in, int _decShift); string ErsetzteN(string); - string checkDigitConsistency(string, int _decilamshift, int lastvalueanalog = -1); + float checkDigitConsistency(float input, int _decilamshift, bool _isanalog); string RundeOutput(float _in, int _anzNachkomma); public: diff --git a/code/lib/jomjol_image_proc/CFindTemplate.cpp b/code/lib/jomjol_image_proc/CFindTemplate.cpp index ca93e8fc..cb3dd4ee 100644 --- a/code/lib/jomjol_image_proc/CFindTemplate.cpp +++ b/code/lib/jomjol_image_proc/CFindTemplate.cpp @@ -528,8 +528,6 @@ void CAlignAndCutImage::CutAndSave(std::string _template1, int x1, int y1, int d int memsize = dx * dy * this->channels; uint8_t* odata = (unsigned char*)GET_MEMORY(memsize); - - int x_source, y_source; stbi_uc* p_target; stbi_uc* p_source; diff --git a/code/lib/jomjol_logfile/ClassLogFile.cpp b/code/lib/jomjol_logfile/ClassLogFile.cpp index d0e5942a..11a168a6 100644 --- a/code/lib/jomjol_logfile/ClassLogFile.cpp +++ b/code/lib/jomjol_logfile/ClassLogFile.cpp @@ -8,6 +8,10 @@ void ClassLogFile::WriteToDedicatedFile(std::string _fn, std::string info, bool FILE* pFile; std::string zwtime; + if (!doLogFile){ + return; + } + pFile = fopen(_fn.c_str(), "a+"); if (_time) @@ -30,6 +34,11 @@ void ClassLogFile::WriteToDedicatedFile(std::string _fn, std::string info, bool fclose(pFile); } +void ClassLogFile::SwitchOnOff(bool _doLogFile){ + doLogFile = _doLogFile; +}; + + void ClassLogFile::WriteToFile(std::string info, bool _time) { WriteToDedicatedFile(logfile, info, _time); @@ -37,5 +46,6 @@ void ClassLogFile::WriteToFile(std::string info, bool _time) ClassLogFile::ClassLogFile(std::string _logfile) { - logfile = _logfile; + logfile = _logfile; + doLogFile = true; } \ No newline at end of file diff --git a/code/lib/jomjol_logfile/ClassLogFile.h b/code/lib/jomjol_logfile/ClassLogFile.h index 7b6e769e..fcb37ea1 100644 --- a/code/lib/jomjol_logfile/ClassLogFile.h +++ b/code/lib/jomjol_logfile/ClassLogFile.h @@ -6,9 +6,12 @@ class ClassLogFile { private: std::string logfile; + bool doLogFile; public: ClassLogFile(std::string _logfile); + void SwitchOnOff(bool _doLogFile); + void WriteToFile(std::string info, bool _time = true); void WriteToDedicatedFile(std::string _fn, std::string info, bool _time = true); }; diff --git a/code/sdkconfig b/code/sdkconfig index e8875e29..d8dbf13c 100644 --- a/code/sdkconfig +++ b/code/sdkconfig @@ -123,8 +123,8 @@ CONFIG_PARTITION_TABLE_MD5=y # CONFIG_EXAMPLE_CONNECT_WIFI=y # CONFIG_EXAMPLE_CONNECT_ETHERNET is not set -CONFIG_EXAMPLE_WIFI_SSID="SSID" -CONFIG_EXAMPLE_WIFI_PASSWORD="passwd" +CONFIG_EXAMPLE_WIFI_SSID="myssid" +CONFIG_EXAMPLE_WIFI_PASSWORD="mypassword" CONFIG_EXAMPLE_CONNECT_IPV6=y # end of Example Connection Configuration @@ -435,8 +435,8 @@ CONFIG_ESP_HTTP_CLIENT_ENABLE_HTTPS=y # # HTTP Server # -CONFIG_HTTPD_MAX_REQ_HDR_LEN=512 -CONFIG_HTTPD_MAX_URI_LEN=512 +CONFIG_HTTPD_MAX_REQ_HDR_LEN=1024 +CONFIG_HTTPD_MAX_URI_LEN=1024 CONFIG_HTTPD_ERR_RESP_NO_DELAY=y CONFIG_HTTPD_PURGE_BUF_LEN=32 # CONFIG_HTTPD_LOG_PURGE_DATA is not set diff --git a/code/sdkconfig.old b/code/sdkconfig.old index 4ffff07a..af01833b 100644 --- a/code/sdkconfig.old +++ b/code/sdkconfig.old @@ -1,152 +1,123 @@ # -# Automatically generated file. DO NOT EDIT. -# Espressif IoT Development Framework (ESP-IDF) Project Configuration +# Automatically generated file; DO NOT EDIT. +# Espressif IoT Development Framework Configuration # -CONFIG_IDF_CMAKE=y -CONFIG_IDF_TARGET="esp32" CONFIG_IDF_TARGET_ESP32=y +CONFIG_IDF_TARGET="esp32" CONFIG_IDF_FIRMWARE_CHIP_ID=0x0000 # # SDK tool configuration # CONFIG_SDK_TOOLPREFIX="xtensa-esp32-elf-" -# CONFIG_SDK_TOOLCHAIN_SUPPORTS_TIME_WIDE_64_BITS is not set -# end of SDK tool configuration - -# -# Build type -# -CONFIG_APP_BUILD_TYPE_APP_2NDBOOT=y -# CONFIG_APP_BUILD_TYPE_ELF_RAM is not set -CONFIG_APP_BUILD_GENERATE_BINARIES=y -CONFIG_APP_BUILD_BOOTLOADER=y -CONFIG_APP_BUILD_USE_FLASH_SECTIONS=y -# end of Build type # # Application manager # CONFIG_APP_COMPILE_TIME_DATE=y -# CONFIG_APP_EXCLUDE_PROJECT_VER_VAR is not set -# CONFIG_APP_EXCLUDE_PROJECT_NAME_VAR is not set +CONFIG_APP_EXCLUDE_PROJECT_VER_VAR= +CONFIG_APP_EXCLUDE_PROJECT_NAME_VAR= CONFIG_APP_RETRIEVE_LEN_ELF_SHA=16 -# end of Application manager # # Bootloader config # -CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_SIZE=y -# CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_DEBUG is not set -# CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_PERF is not set -# CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_NONE is not set -# CONFIG_BOOTLOADER_LOG_LEVEL_NONE is not set -# CONFIG_BOOTLOADER_LOG_LEVEL_ERROR is not set -# CONFIG_BOOTLOADER_LOG_LEVEL_WARN is not set +CONFIG_BOOTLOADER_LOG_LEVEL_NONE= +CONFIG_BOOTLOADER_LOG_LEVEL_ERROR= +CONFIG_BOOTLOADER_LOG_LEVEL_WARN= CONFIG_BOOTLOADER_LOG_LEVEL_INFO=y -# CONFIG_BOOTLOADER_LOG_LEVEL_DEBUG is not set -# CONFIG_BOOTLOADER_LOG_LEVEL_VERBOSE is not set +CONFIG_BOOTLOADER_LOG_LEVEL_DEBUG= +CONFIG_BOOTLOADER_LOG_LEVEL_VERBOSE= CONFIG_BOOTLOADER_LOG_LEVEL=3 -# CONFIG_BOOTLOADER_VDDSDIO_BOOST_1_8V is not set +CONFIG_BOOTLOADER_VDDSDIO_BOOST_1_8V= CONFIG_BOOTLOADER_VDDSDIO_BOOST_1_9V=y -# CONFIG_BOOTLOADER_FACTORY_RESET is not set -# CONFIG_BOOTLOADER_APP_TEST is not set +CONFIG_BOOTLOADER_FACTORY_RESET= +CONFIG_BOOTLOADER_APP_TEST= CONFIG_BOOTLOADER_WDT_ENABLE=y -# CONFIG_BOOTLOADER_WDT_DISABLE_IN_USER_CODE is not set +CONFIG_BOOTLOADER_WDT_DISABLE_IN_USER_CODE= CONFIG_BOOTLOADER_WDT_TIME_MS=9000 -# CONFIG_BOOTLOADER_APP_ROLLBACK_ENABLE is not set -# CONFIG_BOOTLOADER_SKIP_VALIDATE_IN_DEEP_SLEEP is not set -CONFIG_BOOTLOADER_RESERVE_RTC_SIZE=0 -# CONFIG_BOOTLOADER_CUSTOM_RESERVE_RTC is not set -# end of Bootloader config +CONFIG_BOOTLOADER_APP_ROLLBACK_ENABLE= # # Security features # -# CONFIG_SECURE_SIGNED_APPS_NO_SECURE_BOOT is not set -# CONFIG_SECURE_BOOT is not set -# CONFIG_SECURE_FLASH_ENC_ENABLED is not set -# end of Security features +CONFIG_SECURE_SIGNED_APPS_NO_SECURE_BOOT= +CONFIG_SECURE_BOOT_ENABLED= +CONFIG_SECURE_FLASH_ENC_ENABLED= # # Serial flasher config # CONFIG_ESPTOOLPY_BAUD_OTHER_VAL=115200 -# CONFIG_ESPTOOLPY_FLASHMODE_QIO is not set -# CONFIG_ESPTOOLPY_FLASHMODE_QOUT is not set +CONFIG_ESPTOOLPY_FLASHMODE_QIO= +CONFIG_ESPTOOLPY_FLASHMODE_QOUT= CONFIG_ESPTOOLPY_FLASHMODE_DIO=y -# CONFIG_ESPTOOLPY_FLASHMODE_DOUT is not set +CONFIG_ESPTOOLPY_FLASHMODE_DOUT= CONFIG_ESPTOOLPY_FLASHMODE="dio" -# CONFIG_ESPTOOLPY_FLASHFREQ_80M is not set +CONFIG_ESPTOOLPY_FLASHFREQ_80M= CONFIG_ESPTOOLPY_FLASHFREQ_40M=y -# CONFIG_ESPTOOLPY_FLASHFREQ_26M is not set -# CONFIG_ESPTOOLPY_FLASHFREQ_20M is not set +CONFIG_ESPTOOLPY_FLASHFREQ_26M= +CONFIG_ESPTOOLPY_FLASHFREQ_20M= CONFIG_ESPTOOLPY_FLASHFREQ="40m" -# CONFIG_ESPTOOLPY_FLASHSIZE_1MB is not set +CONFIG_ESPTOOLPY_FLASHSIZE_1MB= CONFIG_ESPTOOLPY_FLASHSIZE_2MB=y -# CONFIG_ESPTOOLPY_FLASHSIZE_4MB is not set -# CONFIG_ESPTOOLPY_FLASHSIZE_8MB is not set -# CONFIG_ESPTOOLPY_FLASHSIZE_16MB is not set +CONFIG_ESPTOOLPY_FLASHSIZE_4MB= +CONFIG_ESPTOOLPY_FLASHSIZE_8MB= +CONFIG_ESPTOOLPY_FLASHSIZE_16MB= CONFIG_ESPTOOLPY_FLASHSIZE="2MB" CONFIG_ESPTOOLPY_FLASHSIZE_DETECT=y CONFIG_ESPTOOLPY_BEFORE_RESET=y -# CONFIG_ESPTOOLPY_BEFORE_NORESET is not set +CONFIG_ESPTOOLPY_BEFORE_NORESET= CONFIG_ESPTOOLPY_BEFORE="default_reset" CONFIG_ESPTOOLPY_AFTER_RESET=y -# CONFIG_ESPTOOLPY_AFTER_NORESET is not set +CONFIG_ESPTOOLPY_AFTER_NORESET= CONFIG_ESPTOOLPY_AFTER="hard_reset" -# CONFIG_ESPTOOLPY_MONITOR_BAUD_9600B is not set -# CONFIG_ESPTOOLPY_MONITOR_BAUD_57600B is not set +CONFIG_ESPTOOLPY_MONITOR_BAUD_9600B= +CONFIG_ESPTOOLPY_MONITOR_BAUD_57600B= CONFIG_ESPTOOLPY_MONITOR_BAUD_115200B=y -# CONFIG_ESPTOOLPY_MONITOR_BAUD_230400B is not set -# CONFIG_ESPTOOLPY_MONITOR_BAUD_921600B is not set -# CONFIG_ESPTOOLPY_MONITOR_BAUD_2MB is not set -# CONFIG_ESPTOOLPY_MONITOR_BAUD_OTHER is not set +CONFIG_ESPTOOLPY_MONITOR_BAUD_230400B= +CONFIG_ESPTOOLPY_MONITOR_BAUD_921600B= +CONFIG_ESPTOOLPY_MONITOR_BAUD_2MB= +CONFIG_ESPTOOLPY_MONITOR_BAUD_OTHER= CONFIG_ESPTOOLPY_MONITOR_BAUD_OTHER_VAL=115200 CONFIG_ESPTOOLPY_MONITOR_BAUD=115200 -# end of Serial flasher config # # Partition Table # CONFIG_PARTITION_TABLE_SINGLE_APP=y -# CONFIG_PARTITION_TABLE_TWO_OTA is not set -# CONFIG_PARTITION_TABLE_CUSTOM is not set +CONFIG_PARTITION_TABLE_TWO_OTA= +CONFIG_PARTITION_TABLE_CUSTOM= CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions.csv" CONFIG_PARTITION_TABLE_FILENAME="partitions_singleapp.csv" CONFIG_PARTITION_TABLE_OFFSET=0x8000 CONFIG_PARTITION_TABLE_MD5=y -# end of Partition Table # # Example Connection Configuration # CONFIG_EXAMPLE_CONNECT_WIFI=y -# CONFIG_EXAMPLE_CONNECT_ETHERNET is not set -CONFIG_EXAMPLE_WIFI_SSID="SSID" -CONFIG_EXAMPLE_WIFI_PASSWORD="passwd" +CONFIG_EXAMPLE_CONNECT_ETHERNET= +CONFIG_EXAMPLE_WIFI_SSID="myssid" +CONFIG_EXAMPLE_WIFI_PASSWORD="mypassword" CONFIG_EXAMPLE_CONNECT_IPV6=y -# end of Example Connection Configuration # # Compiler options # -CONFIG_COMPILER_OPTIMIZATION_DEFAULT=y -# CONFIG_COMPILER_OPTIMIZATION_SIZE is not set -# CONFIG_COMPILER_OPTIMIZATION_PERF is not set -# CONFIG_COMPILER_OPTIMIZATION_NONE is not set +CONFIG_COMPILER_OPTIMIZATION_LEVEL_DEBUG=y +CONFIG_COMPILER_OPTIMIZATION_LEVEL_RELEASE= CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_ENABLE=y -# CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_SILENT is not set -# CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_DISABLE is not set -# CONFIG_COMPILER_CXX_EXCEPTIONS is not set -# CONFIG_COMPILER_CXX_RTTI is not set +CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_SILENT= +CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_DISABLE= +CONFIG_COMPILER_CXX_EXCEPTIONS= CONFIG_COMPILER_STACK_CHECK_MODE_NONE=y -# CONFIG_COMPILER_STACK_CHECK_MODE_NORM is not set -# CONFIG_COMPILER_STACK_CHECK_MODE_STRONG is not set -# CONFIG_COMPILER_STACK_CHECK_MODE_ALL is not set -# CONFIG_COMPILER_WARN_WRITE_STRINGS is not set -# CONFIG_COMPILER_DISABLE_GCC8_WARNINGS is not set -# end of Compiler options +CONFIG_COMPILER_STACK_CHECK_MODE_NORM= +CONFIG_COMPILER_STACK_CHECK_MODE_STRONG= +CONFIG_COMPILER_STACK_CHECK_MODE_ALL= +CONFIG_COMPILER_STACK_CHECK= +CONFIG_COMPILER_WARN_WRITE_STRINGS= +CONFIG_COMPILER_DISABLE_GCC8_WARNINGS= # # Component config @@ -155,34 +126,24 @@ CONFIG_COMPILER_STACK_CHECK_MODE_NONE=y # # Application Level Tracing # -# CONFIG_APPTRACE_DEST_TRAX is not set -CONFIG_APPTRACE_DEST_NONE=y -CONFIG_APPTRACE_LOCK_ENABLE=y -# end of Application Level Tracing +CONFIG_ESP32_APPTRACE_DEST_TRAX= +CONFIG_ESP32_APPTRACE_DEST_NONE=y +CONFIG_ESP32_APPTRACE_ENABLE= +CONFIG_ESP32_APPTRACE_LOCK_ENABLE=y # # Bluetooth # -# CONFIG_BT_ENABLED is not set +CONFIG_BT_ENABLED= CONFIG_BTDM_CTRL_BR_EDR_SCO_DATA_PATH_EFF=0 +CONFIG_BTDM_CTRL_AUTO_LATENCY_EFF= CONFIG_BTDM_CTRL_BLE_MAX_CONN_EFF=0 CONFIG_BTDM_CTRL_BR_EDR_MAX_ACL_CONN_EFF=0 CONFIG_BTDM_CTRL_BR_EDR_MAX_SYNC_CONN_EFF=0 CONFIG_BTDM_CTRL_PINNED_TO_CORE=0 CONFIG_BTDM_BLE_SLEEP_CLOCK_ACCURACY_INDEX_EFF=1 CONFIG_BT_RESERVE_DRAM=0 -# end of Bluetooth - -# CONFIG_BLE_MESH is not set - -# -# CoAP Configuration -# -CONFIG_COAP_MBEDTLS_PSK=y -# CONFIG_COAP_MBEDTLS_PKI is not set -# CONFIG_COAP_MBEDTLS_DEBUG is not set -CONFIG_COAP_LOG_DEFAULT_LEVEL=0 -# end of CoAP Configuration +CONFIG_BLE_MESH= # # Driver configurations @@ -191,172 +152,139 @@ CONFIG_COAP_LOG_DEFAULT_LEVEL=0 # # ADC configuration # -# CONFIG_ADC_FORCE_XPD_FSM is not set +CONFIG_ADC_FORCE_XPD_FSM= CONFIG_ADC_DISABLE_DAC=y -# end of ADC configuration # # SPI configuration # -# CONFIG_SPI_MASTER_IN_IRAM is not set +CONFIG_SPI_MASTER_IN_IRAM= CONFIG_SPI_MASTER_ISR_IN_IRAM=y -# CONFIG_SPI_SLAVE_IN_IRAM is not set +CONFIG_SPI_SLAVE_IN_IRAM= CONFIG_SPI_SLAVE_ISR_IN_IRAM=y -# end of SPI configuration - -# -# UART configuration -# -# CONFIG_UART_ISR_IN_IRAM is not set -# end of UART configuration - -# -# RTCIO configuration -# -# CONFIG_RTCIO_SUPPORT_RTC_GPIO_DESC is not set -# end of RTCIO configuration -# end of Driver configurations # # eFuse Bit Manager # -# CONFIG_EFUSE_CUSTOM_TABLE is not set -# CONFIG_EFUSE_VIRTUAL is not set -# CONFIG_EFUSE_CODE_SCHEME_COMPAT_NONE is not set +CONFIG_EFUSE_CUSTOM_TABLE= +CONFIG_EFUSE_VIRTUAL= +CONFIG_EFUSE_CODE_SCHEME_COMPAT_NONE= CONFIG_EFUSE_CODE_SCHEME_COMPAT_3_4=y -# CONFIG_EFUSE_CODE_SCHEME_COMPAT_REPEAT is not set +CONFIG_EFUSE_CODE_SCHEME_COMPAT_REPEAT= CONFIG_EFUSE_MAX_BLK_LEN=192 -# end of eFuse Bit Manager # # ESP-TLS # -CONFIG_ESP_TLS_USING_MBEDTLS=y -# CONFIG_ESP_TLS_SERVER is not set -# CONFIG_ESP_TLS_PSK_VERIFICATION is not set -# end of ESP-TLS +CONFIG_ESP_TLS_SERVER= # # ESP32-specific # CONFIG_ESP32_REV_MIN_0=y -# CONFIG_ESP32_REV_MIN_1 is not set -# CONFIG_ESP32_REV_MIN_2 is not set -# CONFIG_ESP32_REV_MIN_3 is not set +CONFIG_ESP32_REV_MIN_1= +CONFIG_ESP32_REV_MIN_2= +CONFIG_ESP32_REV_MIN_3= CONFIG_ESP32_REV_MIN=0 CONFIG_ESP32_DPORT_WORKAROUND=y -# CONFIG_ESP32_DEFAULT_CPU_FREQ_80 is not set +CONFIG_ESP32_DEFAULT_CPU_FREQ_80= CONFIG_ESP32_DEFAULT_CPU_FREQ_160=y -# CONFIG_ESP32_DEFAULT_CPU_FREQ_240 is not set +CONFIG_ESP32_DEFAULT_CPU_FREQ_240= CONFIG_ESP32_DEFAULT_CPU_FREQ_MHZ=160 CONFIG_ESP32_SPIRAM_SUPPORT=y # # SPI RAM config # +CONFIG_SPIRAM_BOOT_INIT=y +CONFIG_SPIRAM_IGNORE_NOTFOUND= +CONFIG_SPIRAM_USE_MEMMAP= +CONFIG_SPIRAM_USE_CAPS_ALLOC= +CONFIG_SPIRAM_USE_MALLOC=y CONFIG_SPIRAM_TYPE_AUTO=y -# CONFIG_SPIRAM_TYPE_ESPPSRAM32 is not set -# CONFIG_SPIRAM_TYPE_ESPPSRAM64 is not set +CONFIG_SPIRAM_TYPE_ESPPSRAM32= +CONFIG_SPIRAM_TYPE_ESPPSRAM64= CONFIG_SPIRAM_SIZE=-1 CONFIG_SPIRAM_SPEED_40M=y -CONFIG_SPIRAM=y -CONFIG_SPIRAM_BOOT_INIT=y -# CONFIG_SPIRAM_IGNORE_NOTFOUND is not set -# CONFIG_SPIRAM_USE_MEMMAP is not set -# CONFIG_SPIRAM_USE_CAPS_ALLOC is not set -CONFIG_SPIRAM_USE_MALLOC=y CONFIG_SPIRAM_MEMTEST=y -CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL=16384 -# CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP is not set -CONFIG_SPIRAM_MALLOC_RESERVE_INTERNAL=32768 -# CONFIG_SPIRAM_ALLOW_BSS_SEG_EXTERNAL_MEMORY is not set CONFIG_SPIRAM_CACHE_WORKAROUND=y - -# -# SPIRAM cache workaround debugging -# -CONFIG_SPIRAM_CACHE_WORKAROUND_STRATEGY_MEMW=y -# CONFIG_SPIRAM_CACHE_WORKAROUND_STRATEGY_DUPLDST is not set -# CONFIG_SPIRAM_CACHE_WORKAROUND_STRATEGY_NOPS is not set -# end of SPIRAM cache workaround debugging - CONFIG_SPIRAM_BANKSWITCH_ENABLE=y CONFIG_SPIRAM_BANKSWITCH_RESERVE=8 -# CONFIG_SPIRAM_ALLOW_STACK_EXTERNAL_MEMORY is not set +CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL=16384 +CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP= +CONFIG_SPIRAM_MALLOC_RESERVE_INTERNAL=32768 +CONFIG_SPIRAM_ALLOW_STACK_EXTERNAL_MEMORY= +CONFIG_SPIRAM_ALLOW_BSS_SEG_EXTERNAL_MEMORY= # # PSRAM clock and cs IO for ESP32-DOWD # CONFIG_D0WD_PSRAM_CLK_IO=17 CONFIG_D0WD_PSRAM_CS_IO=16 -# end of PSRAM clock and cs IO for ESP32-DOWD # # PSRAM clock and cs IO for ESP32-D2WD # CONFIG_D2WD_PSRAM_CLK_IO=9 CONFIG_D2WD_PSRAM_CS_IO=10 -# end of PSRAM clock and cs IO for ESP32-D2WD # # PSRAM clock and cs IO for ESP32-PICO # CONFIG_PICO_PSRAM_CS_IO=10 -# end of PSRAM clock and cs IO for ESP32-PICO - CONFIG_SPIRAM_SPIWP_SD3_PIN=7 -# CONFIG_SPIRAM_2T_MODE is not set -# end of SPI RAM config - -# CONFIG_ESP32_TRAX is not set +CONFIG_SPIRAM_2T_MODE= +CONFIG_ESP32_MEMMAP_TRACEMEM= +CONFIG_ESP32_MEMMAP_TRACEMEM_TWOBANKS= +CONFIG_ESP32_TRAX= CONFIG_ESP32_TRACEMEM_RESERVE_DRAM=0x0 -# CONFIG_ESP32_UNIVERSAL_MAC_ADDRESSES_TWO is not set +CONFIG_ESP32_UNIVERSAL_MAC_ADDRESSES_TWO= CONFIG_ESP32_UNIVERSAL_MAC_ADDRESSES_FOUR=y CONFIG_ESP32_UNIVERSAL_MAC_ADDRESSES=4 -# CONFIG_ESP32_ULP_COPROC_ENABLED is not set +CONFIG_ESP32_ULP_COPROC_ENABLED= CONFIG_ESP32_ULP_COPROC_RESERVE_MEM=0 -# CONFIG_ESP32_PANIC_PRINT_HALT is not set +CONFIG_ESP32_PANIC_PRINT_HALT= CONFIG_ESP32_PANIC_PRINT_REBOOT=y -# CONFIG_ESP32_PANIC_SILENT_REBOOT is not set -# CONFIG_ESP32_PANIC_GDBSTUB is not set +CONFIG_ESP32_PANIC_SILENT_REBOOT= +CONFIG_ESP32_PANIC_GDBSTUB= CONFIG_ESP32_DEBUG_OCDAWARE=y +CONFIG_ESP32_DEBUG_STUBS_ENABLE=y CONFIG_ESP32_BROWNOUT_DET=y CONFIG_ESP32_BROWNOUT_DET_LVL_SEL_0=y -# CONFIG_ESP32_BROWNOUT_DET_LVL_SEL_1 is not set -# CONFIG_ESP32_BROWNOUT_DET_LVL_SEL_2 is not set -# CONFIG_ESP32_BROWNOUT_DET_LVL_SEL_3 is not set -# CONFIG_ESP32_BROWNOUT_DET_LVL_SEL_4 is not set -# CONFIG_ESP32_BROWNOUT_DET_LVL_SEL_5 is not set -# CONFIG_ESP32_BROWNOUT_DET_LVL_SEL_6 is not set -# CONFIG_ESP32_BROWNOUT_DET_LVL_SEL_7 is not set +CONFIG_ESP32_BROWNOUT_DET_LVL_SEL_1= +CONFIG_ESP32_BROWNOUT_DET_LVL_SEL_2= +CONFIG_ESP32_BROWNOUT_DET_LVL_SEL_3= +CONFIG_ESP32_BROWNOUT_DET_LVL_SEL_4= +CONFIG_ESP32_BROWNOUT_DET_LVL_SEL_5= +CONFIG_ESP32_BROWNOUT_DET_LVL_SEL_6= +CONFIG_ESP32_BROWNOUT_DET_LVL_SEL_7= CONFIG_ESP32_BROWNOUT_DET_LVL=0 CONFIG_ESP32_REDUCE_PHY_TX_POWER=y CONFIG_ESP32_TIME_SYSCALL_USE_RTC_FRC1=y -# CONFIG_ESP32_TIME_SYSCALL_USE_RTC is not set -# CONFIG_ESP32_TIME_SYSCALL_USE_FRC1 is not set -# CONFIG_ESP32_TIME_SYSCALL_USE_NONE is not set +CONFIG_ESP32_TIME_SYSCALL_USE_RTC= +CONFIG_ESP32_TIME_SYSCALL_USE_FRC1= +CONFIG_ESP32_TIME_SYSCALL_USE_NONE= CONFIG_ESP32_RTC_CLK_SRC_INT_RC=y -# CONFIG_ESP32_RTC_CLK_SRC_EXT_CRYS is not set -# CONFIG_ESP32_RTC_CLK_SRC_EXT_OSC is not set -# CONFIG_ESP32_RTC_CLK_SRC_INT_8MD256 is not set +CONFIG_ESP32_RTC_CLK_SRC_EXT_CRYS= +CONFIG_ESP32_RTC_CLK_SRC_EXT_OSC= +CONFIG_ESP32_RTC_CLK_SRC_INT_8MD256= CONFIG_ESP32_RTC_CLK_CAL_CYCLES=1024 +CONFIG_ESP32_RTC_XTAL_CAL_RETRY=1 CONFIG_ESP32_DEEP_SLEEP_WAKEUP_DELAY=2000 CONFIG_ESP32_XTAL_FREQ_40=y -# CONFIG_ESP32_XTAL_FREQ_26 is not set -# CONFIG_ESP32_XTAL_FREQ_AUTO is not set +CONFIG_ESP32_XTAL_FREQ_26= +CONFIG_ESP32_XTAL_FREQ_AUTO= CONFIG_ESP32_XTAL_FREQ=40 -# CONFIG_ESP32_DISABLE_BASIC_ROM_CONSOLE is not set -# CONFIG_ESP32_NO_BLOBS is not set -# CONFIG_ESP32_COMPATIBLE_PRE_V2_1_BOOTLOADERS is not set -# CONFIG_ESP32_USE_FIXED_STATIC_RAM_SIZE is not set +CONFIG_ESP32_DISABLE_BASIC_ROM_CONSOLE= +CONFIG_ESP32_NO_BLOBS= +CONFIG_ESP32_COMPATIBLE_PRE_V2_1_BOOTLOADERS= +CONFIG_ESP32_USE_FIXED_STATIC_RAM_SIZE= CONFIG_ESP32_DPORT_DIS_INTERRUPT_LVL=5 -# end of ESP32-specific # # Power Management # -# CONFIG_PM_ENABLE is not set -# end of Power Management +CONFIG_PM_ENABLE= # # ADC-Calibration @@ -364,104 +292,81 @@ CONFIG_ESP32_DPORT_DIS_INTERRUPT_LVL=5 CONFIG_ADC_CAL_EFUSE_TP_ENABLE=y CONFIG_ADC_CAL_EFUSE_VREF_ENABLE=y CONFIG_ADC_CAL_LUT_ENABLE=y -# end of ADC-Calibration # # Common ESP-related # -# CONFIG_ESP_TIMER_PROFILING is not set +CONFIG_ESP_TIMER_PROFILING= CONFIG_ESP_ERR_TO_NAME_LOOKUP=y CONFIG_ESP_SYSTEM_EVENT_QUEUE_SIZE=32 CONFIG_ESP_SYSTEM_EVENT_TASK_STACK_SIZE=2304 CONFIG_ESP_MAIN_TASK_STACK_SIZE=3584 CONFIG_ESP_IPC_TASK_STACK_SIZE=1024 -CONFIG_ESP_IPC_USES_CALLERS_PRIORITY=y CONFIG_ESP_TIMER_TASK_STACK_SIZE=3584 -CONFIG_ESP_MINIMAL_SHARED_STACK_SIZE=2048 CONFIG_ESP_CONSOLE_UART_DEFAULT=y -# CONFIG_ESP_CONSOLE_UART_CUSTOM is not set -# CONFIG_ESP_CONSOLE_UART_NONE is not set +CONFIG_ESP_CONSOLE_UART_CUSTOM= +CONFIG_ESP_CONSOLE_UART_NONE= CONFIG_ESP_CONSOLE_UART_NUM=0 CONFIG_ESP_CONSOLE_UART_BAUDRATE=115200 CONFIG_ESP_INT_WDT=y CONFIG_ESP_INT_WDT_TIMEOUT_MS=300 CONFIG_ESP_INT_WDT_CHECK_CPU1=y CONFIG_ESP_TASK_WDT=y -# CONFIG_ESP_TASK_WDT_PANIC is not set +CONFIG_ESP_TASK_WDT_PANIC= CONFIG_ESP_TASK_WDT_TIMEOUT_S=3 CONFIG_ESP_TASK_WDT_CHECK_IDLE_TASK_CPU0=y CONFIG_ESP_TASK_WDT_CHECK_IDLE_TASK_CPU1=y -# CONFIG_ESP_PANIC_HANDLER_IRAM is not set -# end of Common ESP-related # # Ethernet # -CONFIG_ETH_ENABLED=y CONFIG_ETH_USE_ESP32_EMAC=y CONFIG_ETH_PHY_INTERFACE_RMII=y -# CONFIG_ETH_PHY_INTERFACE_MII is not set +CONFIG_ETH_PHY_INTERFACE_MII= CONFIG_ETH_RMII_CLK_INPUT=y -# CONFIG_ETH_RMII_CLK_OUTPUT is not set +CONFIG_ETH_RMII_CLK_OUTPUT= CONFIG_ETH_RMII_CLK_IN_GPIO=0 CONFIG_ETH_DMA_BUFFER_SIZE=512 CONFIG_ETH_DMA_RX_BUFFER_NUM=10 CONFIG_ETH_DMA_TX_BUFFER_NUM=10 CONFIG_ETH_USE_SPI_ETHERNET=y CONFIG_ETH_SPI_ETHERNET_DM9051=y -# CONFIG_ETH_USE_OPENETH is not set -# end of Ethernet # # Event Loop Library # -# CONFIG_ESP_EVENT_LOOP_PROFILING is not set +CONFIG_ESP_EVENT_LOOP_PROFILING= CONFIG_ESP_EVENT_POST_FROM_ISR=y CONFIG_ESP_EVENT_POST_FROM_IRAM_ISR=y -# end of Event Loop Library # # GDB Stub # -# end of GDB Stub # # ESP HTTP client # CONFIG_ESP_HTTP_CLIENT_ENABLE_HTTPS=y -# CONFIG_ESP_HTTP_CLIENT_ENABLE_BASIC_AUTH is not set -# end of ESP HTTP client +CONFIG_ESP_HTTP_CLIENT_ENABLE_BASIC_AUTH= # # HTTP Server # -CONFIG_HTTPD_MAX_REQ_HDR_LEN=512 -CONFIG_HTTPD_MAX_URI_LEN=512 +CONFIG_HTTPD_MAX_REQ_HDR_LEN=1024 +CONFIG_HTTPD_MAX_URI_LEN=1024 CONFIG_HTTPD_ERR_RESP_NO_DELAY=y CONFIG_HTTPD_PURGE_BUF_LEN=32 -# CONFIG_HTTPD_LOG_PURGE_DATA is not set -# end of HTTP Server +CONFIG_HTTPD_LOG_PURGE_DATA= # # ESP HTTPS OTA # -# CONFIG_OTA_ALLOW_HTTP is not set -# end of ESP HTTPS OTA +CONFIG_OTA_ALLOW_HTTP= # # ESP HTTPS server # -# CONFIG_ESP_HTTPS_SERVER_ENABLE is not set -# end of ESP HTTPS server - -# -# ESP NETIF Adapter -# -CONFIG_ESP_NETIF_IP_LOST_TIMER_INTERVAL=120 -CONFIG_ESP_NETIF_TCPIP_LWIP=y -# CONFIG_ESP_NETIF_LOOPBACK is not set -CONFIG_ESP_NETIF_TCPIP_ADAPTER_COMPATIBLE_LAYER=y -# end of ESP NETIF Adapter +CONFIG_ESP_HTTPS_SERVER_ENABLE= # # Wi-Fi @@ -471,92 +376,85 @@ CONFIG_ESP32_WIFI_DYNAMIC_RX_BUFFER_NUM=32 CONFIG_ESP32_WIFI_STATIC_TX_BUFFER=y CONFIG_ESP32_WIFI_TX_BUFFER_TYPE=0 CONFIG_ESP32_WIFI_STATIC_TX_BUFFER_NUM=16 -# CONFIG_ESP32_WIFI_CSI_ENABLED is not set +CONFIG_ESP32_WIFI_CSI_ENABLED= CONFIG_ESP32_WIFI_AMPDU_TX_ENABLED=y CONFIG_ESP32_WIFI_TX_BA_WIN=6 CONFIG_ESP32_WIFI_AMPDU_RX_ENABLED=y CONFIG_ESP32_WIFI_RX_BA_WIN=6 CONFIG_ESP32_WIFI_NVS_ENABLED=y CONFIG_ESP32_WIFI_TASK_PINNED_TO_CORE_0=y -# CONFIG_ESP32_WIFI_TASK_PINNED_TO_CORE_1 is not set +CONFIG_ESP32_WIFI_TASK_PINNED_TO_CORE_1= CONFIG_ESP32_WIFI_SOFTAP_BEACON_MAX_LEN=752 CONFIG_ESP32_WIFI_MGMT_SBUF_NUM=32 -# CONFIG_ESP32_WIFI_DEBUG_LOG_ENABLE is not set +CONFIG_ESP32_WIFI_DEBUG_LOG_ENABLE= CONFIG_ESP32_WIFI_IRAM_OPT=y CONFIG_ESP32_WIFI_RX_IRAM_OPT=y CONFIG_ESP32_WIFI_ENABLE_WPA3_SAE=y -# end of Wi-Fi # # PHY # CONFIG_ESP32_PHY_CALIBRATION_AND_DATA_STORAGE=y -# CONFIG_ESP32_PHY_INIT_DATA_IN_PARTITION is not set +CONFIG_ESP32_PHY_INIT_DATA_IN_PARTITION= CONFIG_ESP32_PHY_MAX_WIFI_TX_POWER=20 CONFIG_ESP32_PHY_MAX_TX_POWER=20 -# end of PHY # # Core dump # -# CONFIG_ESP32_ENABLE_COREDUMP_TO_FLASH is not set -# CONFIG_ESP32_ENABLE_COREDUMP_TO_UART is not set +CONFIG_ESP32_ENABLE_COREDUMP_TO_FLASH= +CONFIG_ESP32_ENABLE_COREDUMP_TO_UART= CONFIG_ESP32_ENABLE_COREDUMP_TO_NONE=y -# end of Core dump +CONFIG_ESP32_ENABLE_COREDUMP= # # FAT Filesystem support # -# CONFIG_FATFS_CODEPAGE_DYNAMIC is not set +CONFIG_FATFS_CODEPAGE_DYNAMIC= CONFIG_FATFS_CODEPAGE_437=y -# CONFIG_FATFS_CODEPAGE_720 is not set -# CONFIG_FATFS_CODEPAGE_737 is not set -# CONFIG_FATFS_CODEPAGE_771 is not set -# CONFIG_FATFS_CODEPAGE_775 is not set -# CONFIG_FATFS_CODEPAGE_850 is not set -# CONFIG_FATFS_CODEPAGE_852 is not set -# CONFIG_FATFS_CODEPAGE_855 is not set -# CONFIG_FATFS_CODEPAGE_857 is not set -# CONFIG_FATFS_CODEPAGE_860 is not set -# CONFIG_FATFS_CODEPAGE_861 is not set -# CONFIG_FATFS_CODEPAGE_862 is not set -# CONFIG_FATFS_CODEPAGE_863 is not set -# CONFIG_FATFS_CODEPAGE_864 is not set -# CONFIG_FATFS_CODEPAGE_865 is not set -# CONFIG_FATFS_CODEPAGE_866 is not set -# CONFIG_FATFS_CODEPAGE_869 is not set -# CONFIG_FATFS_CODEPAGE_932 is not set -# CONFIG_FATFS_CODEPAGE_936 is not set -# CONFIG_FATFS_CODEPAGE_949 is not set -# CONFIG_FATFS_CODEPAGE_950 is not set +CONFIG_FATFS_CODEPAGE_720= +CONFIG_FATFS_CODEPAGE_737= +CONFIG_FATFS_CODEPAGE_771= +CONFIG_FATFS_CODEPAGE_775= +CONFIG_FATFS_CODEPAGE_850= +CONFIG_FATFS_CODEPAGE_852= +CONFIG_FATFS_CODEPAGE_855= +CONFIG_FATFS_CODEPAGE_857= +CONFIG_FATFS_CODEPAGE_860= +CONFIG_FATFS_CODEPAGE_861= +CONFIG_FATFS_CODEPAGE_862= +CONFIG_FATFS_CODEPAGE_863= +CONFIG_FATFS_CODEPAGE_864= +CONFIG_FATFS_CODEPAGE_865= +CONFIG_FATFS_CODEPAGE_866= +CONFIG_FATFS_CODEPAGE_869= +CONFIG_FATFS_CODEPAGE_932= +CONFIG_FATFS_CODEPAGE_936= +CONFIG_FATFS_CODEPAGE_949= +CONFIG_FATFS_CODEPAGE_950= CONFIG_FATFS_CODEPAGE=437 -# CONFIG_FATFS_LFN_NONE is not set +CONFIG_FATFS_LFN_NONE= CONFIG_FATFS_LFN_HEAP=y -# CONFIG_FATFS_LFN_STACK is not set +CONFIG_FATFS_LFN_STACK= CONFIG_FATFS_MAX_LFN=255 CONFIG_FATFS_API_ENCODING_ANSI_OEM=y -# CONFIG_FATFS_API_ENCODING_UTF_16 is not set -# CONFIG_FATFS_API_ENCODING_UTF_8 is not set +CONFIG_FATFS_API_ENCODING_UTF_16= +CONFIG_FATFS_API_ENCODING_UTF_8= CONFIG_FATFS_FS_LOCK=0 CONFIG_FATFS_TIMEOUT_MS=10000 CONFIG_FATFS_PER_FILE_CACHE=y CONFIG_FATFS_ALLOC_PREFER_EXTRAM=y -# end of FAT Filesystem support # # Modbus configuration # -CONFIG_FMB_COMM_MODE_RTU_EN=y -CONFIG_FMB_COMM_MODE_ASCII_EN=y CONFIG_FMB_MASTER_TIMEOUT_MS_RESPOND=150 CONFIG_FMB_MASTER_DELAY_MS_CONVERT=200 CONFIG_FMB_QUEUE_LENGTH=20 CONFIG_FMB_SERIAL_TASK_STACK_SIZE=2048 CONFIG_FMB_SERIAL_BUF_SIZE=256 -CONFIG_FMB_SERIAL_ASCII_BITS_PER_SYMB=8 -CONFIG_FMB_SERIAL_ASCII_TIMEOUT_RESPOND_MS=1000 CONFIG_FMB_SERIAL_TASK_PRIO=10 -# CONFIG_FMB_CONTROLLER_SLAVE_ID_SUPPORT is not set +CONFIG_FMB_CONTROLLER_SLAVE_ID_SUPPORT= CONFIG_FMB_CONTROLLER_NOTIFY_TIMEOUT=20 CONFIG_FMB_CONTROLLER_NOTIFY_QUEUE_SIZE=20 CONFIG_FMB_CONTROLLER_STACK_SIZE=4096 @@ -564,118 +462,98 @@ CONFIG_FMB_EVENT_QUEUE_TIMEOUT=20 CONFIG_FMB_TIMER_PORT_ENABLED=y CONFIG_FMB_TIMER_GROUP=0 CONFIG_FMB_TIMER_INDEX=0 -# CONFIG_FMB_TIMER_ISR_IN_IRAM is not set -# end of Modbus configuration # # FreeRTOS # -# CONFIG_FREERTOS_UNICORE is not set +CONFIG_FREERTOS_UNICORE= CONFIG_FREERTOS_NO_AFFINITY=0x7FFFFFFF CONFIG_FREERTOS_CORETIMER_0=y -# CONFIG_FREERTOS_CORETIMER_1 is not set +CONFIG_FREERTOS_CORETIMER_1= CONFIG_FREERTOS_HZ=100 CONFIG_FREERTOS_ASSERT_ON_UNTESTED_FUNCTION=y -# CONFIG_FREERTOS_CHECK_STACKOVERFLOW_NONE is not set -# CONFIG_FREERTOS_CHECK_STACKOVERFLOW_PTRVAL is not set +CONFIG_FREERTOS_CHECK_STACKOVERFLOW_NONE= +CONFIG_FREERTOS_CHECK_STACKOVERFLOW_PTRVAL= CONFIG_FREERTOS_CHECK_STACKOVERFLOW_CANARY=y -# CONFIG_FREERTOS_WATCHPOINT_END_OF_STACK is not set +CONFIG_FREERTOS_WATCHPOINT_END_OF_STACK= CONFIG_FREERTOS_INTERRUPT_BACKTRACE=y CONFIG_FREERTOS_THREAD_LOCAL_STORAGE_POINTERS=1 CONFIG_FREERTOS_ASSERT_FAIL_ABORT=y -# CONFIG_FREERTOS_ASSERT_FAIL_PRINT_CONTINUE is not set -# CONFIG_FREERTOS_ASSERT_DISABLE is not set +CONFIG_FREERTOS_ASSERT_FAIL_PRINT_CONTINUE= +CONFIG_FREERTOS_ASSERT_DISABLE= CONFIG_FREERTOS_IDLE_TASK_STACKSIZE=1536 CONFIG_FREERTOS_ISR_STACKSIZE=1536 -# CONFIG_FREERTOS_LEGACY_HOOKS is not set +CONFIG_FREERTOS_LEGACY_HOOKS= CONFIG_FREERTOS_MAX_TASK_NAME_LEN=16 CONFIG_FREERTOS_SUPPORT_STATIC_ALLOCATION=y -# CONFIG_FREERTOS_ENABLE_STATIC_TASK_CLEAN_UP is not set +CONFIG_FREERTOS_ENABLE_STATIC_TASK_CLEAN_UP= CONFIG_FREERTOS_TIMER_TASK_PRIORITY=1 CONFIG_FREERTOS_TIMER_TASK_STACK_DEPTH=2048 CONFIG_FREERTOS_TIMER_QUEUE_LENGTH=10 CONFIG_FREERTOS_QUEUE_REGISTRY_SIZE=0 -# CONFIG_FREERTOS_USE_TRACE_FACILITY is not set -# CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS is not set -# CONFIG_FREERTOS_DEBUG_INTERNALS is not set +CONFIG_FREERTOS_USE_TRACE_FACILITY= +CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS= +CONFIG_FREERTOS_DEBUG_INTERNALS= CONFIG_FREERTOS_TASK_FUNCTION_WRAPPER=y CONFIG_FREERTOS_CHECK_MUTEX_GIVEN_BY_OWNER=y -# CONFIG_FREERTOS_CHECK_PORT_CRITICAL_COMPLIANCE is not set -CONFIG_FREERTOS_DEBUG_OCDAWARE=y -# end of FreeRTOS +CONFIG_FREERTOS_CHECK_PORT_CRITICAL_COMPLIANCE= # # Heap memory debugging # CONFIG_HEAP_POISONING_DISABLED=y -# CONFIG_HEAP_POISONING_LIGHT is not set -# CONFIG_HEAP_POISONING_COMPREHENSIVE is not set +CONFIG_HEAP_POISONING_LIGHT= +CONFIG_HEAP_POISONING_COMPREHENSIVE= CONFIG_HEAP_TRACING_OFF=y -# CONFIG_HEAP_TRACING_STANDALONE is not set -# CONFIG_HEAP_TRACING_TOHOST is not set -# end of Heap memory debugging - -# -# jsmn -# -# CONFIG_JSMN_PARENT_LINKS is not set -# CONFIG_JSMN_STRICT is not set -# end of jsmn +CONFIG_HEAP_TRACING_STANDALONE= +CONFIG_HEAP_TRACING_TOHOST= +CONFIG_HEAP_TRACING= # # libsodium # -# end of libsodium # # Log output # -# CONFIG_LOG_DEFAULT_LEVEL_NONE is not set -# CONFIG_LOG_DEFAULT_LEVEL_ERROR is not set -# CONFIG_LOG_DEFAULT_LEVEL_WARN is not set +CONFIG_LOG_DEFAULT_LEVEL_NONE= +CONFIG_LOG_DEFAULT_LEVEL_ERROR= +CONFIG_LOG_DEFAULT_LEVEL_WARN= CONFIG_LOG_DEFAULT_LEVEL_INFO=y -# CONFIG_LOG_DEFAULT_LEVEL_DEBUG is not set -# CONFIG_LOG_DEFAULT_LEVEL_VERBOSE is not set +CONFIG_LOG_DEFAULT_LEVEL_DEBUG= +CONFIG_LOG_DEFAULT_LEVEL_VERBOSE= CONFIG_LOG_DEFAULT_LEVEL=3 CONFIG_LOG_COLORS=y -CONFIG_LOG_TIMESTAMP_SOURCE_RTOS=y -# CONFIG_LOG_TIMESTAMP_SOURCE_SYSTEM is not set -# end of Log output # # LWIP # CONFIG_LWIP_LOCAL_HOSTNAME="espressif" -CONFIG_LWIP_DNS_SUPPORT_MDNS_QUERIES=y -# CONFIG_LWIP_L2_TO_L3_COPY is not set -# CONFIG_LWIP_IRAM_OPTIMIZATION is not set +CONFIG_LWIP_L2_TO_L3_COPY= +CONFIG_LWIP_IRAM_OPTIMIZATION= CONFIG_LWIP_TIMERS_ONDEMAND=y CONFIG_LWIP_MAX_SOCKETS=10 -# CONFIG_LWIP_USE_ONLY_LWIP_SELECT is not set -# CONFIG_LWIP_SO_LINGER is not set +CONFIG_LWIP_USE_ONLY_LWIP_SELECT= CONFIG_LWIP_SO_REUSE=y CONFIG_LWIP_SO_REUSE_RXTOALL=y -# CONFIG_LWIP_SO_RCVBUF is not set -# CONFIG_LWIP_NETBUF_RECVINFO is not set +CONFIG_LWIP_SO_RCVBUF= CONFIG_LWIP_IP_FRAG=y -# CONFIG_LWIP_IP_REASSEMBLY is not set -# CONFIG_LWIP_STATS is not set -# CONFIG_LWIP_ETHARP_TRUST_IP_MAC is not set +CONFIG_LWIP_IP_REASSEMBLY= +CONFIG_LWIP_STATS= +CONFIG_LWIP_ETHARP_TRUST_IP_MAC= CONFIG_LWIP_ESP_GRATUITOUS_ARP=y CONFIG_LWIP_GARP_TMR_INTERVAL=60 CONFIG_LWIP_TCPIP_RECVMBOX_SIZE=32 CONFIG_LWIP_DHCP_DOES_ARP_CHECK=y -# CONFIG_LWIP_DHCP_RESTORE_LAST_IP is not set +CONFIG_LWIP_DHCP_RESTORE_LAST_IP= # # DHCP server # CONFIG_LWIP_DHCPS_LEASE_UNIT=60 CONFIG_LWIP_DHCPS_MAX_STATION_NUM=8 -# end of DHCP server - -# CONFIG_LWIP_AUTOIP is not set -# CONFIG_LWIP_IPV6_AUTOCONFIG is not set +CONFIG_LWIP_AUTOIP= +CONFIG_LWIP_IPV6_AUTOCONFIG= CONFIG_LWIP_NETIF_LOOPBACK=y CONFIG_LWIP_LOOPBACK_MAX_PBUFS=8 @@ -687,76 +565,67 @@ CONFIG_LWIP_MAX_LISTENING_TCP=16 CONFIG_LWIP_TCP_MAXRTX=12 CONFIG_LWIP_TCP_SYNMAXRTX=6 CONFIG_LWIP_TCP_MSS=1440 -CONFIG_LWIP_TCP_TMR_INTERVAL=250 CONFIG_LWIP_TCP_MSL=60000 CONFIG_LWIP_TCP_SND_BUF_DEFAULT=5744 CONFIG_LWIP_TCP_WND_DEFAULT=5744 CONFIG_LWIP_TCP_RECVMBOX_SIZE=6 CONFIG_LWIP_TCP_QUEUE_OOSEQ=y -# CONFIG_LWIP_TCP_SACK_OUT is not set -# CONFIG_LWIP_TCP_KEEP_CONNECTION_WHEN_IP_CHANGES is not set +CONFIG_LWIP_TCP_KEEP_CONNECTION_WHEN_IP_CHANGES= CONFIG_LWIP_TCP_OVERSIZE_MSS=y -# CONFIG_LWIP_TCP_OVERSIZE_QUARTER_MSS is not set -# CONFIG_LWIP_TCP_OVERSIZE_DISABLE is not set -# end of TCP +CONFIG_LWIP_TCP_OVERSIZE_QUARTER_MSS= +CONFIG_LWIP_TCP_OVERSIZE_DISABLE= # # UDP # CONFIG_LWIP_MAX_UDP_PCBS=16 CONFIG_LWIP_UDP_RECVMBOX_SIZE=6 -# end of UDP - CONFIG_LWIP_TCPIP_TASK_STACK_SIZE=3072 CONFIG_LWIP_TCPIP_TASK_AFFINITY_NO_AFFINITY=y -# CONFIG_LWIP_TCPIP_TASK_AFFINITY_CPU0 is not set -# CONFIG_LWIP_TCPIP_TASK_AFFINITY_CPU1 is not set +CONFIG_LWIP_TCPIP_TASK_AFFINITY_CPU0= +CONFIG_LWIP_TCPIP_TASK_AFFINITY_CPU1= CONFIG_LWIP_TCPIP_TASK_AFFINITY=0x7FFFFFFF -# CONFIG_LWIP_PPP_SUPPORT is not set +CONFIG_LWIP_PPP_SUPPORT= # # ICMP # -# CONFIG_LWIP_MULTICAST_PING is not set -# CONFIG_LWIP_BROADCAST_PING is not set -# end of ICMP +CONFIG_LWIP_MULTICAST_PING= +CONFIG_LWIP_BROADCAST_PING= # # LWIP RAW API # CONFIG_LWIP_MAX_RAW_PCBS=16 -# end of LWIP RAW API # # SNTP # CONFIG_LWIP_DHCP_MAX_NTP_SERVERS=1 CONFIG_LWIP_SNTP_UPDATE_DELAY=3600000 -# end of SNTP -# end of LWIP # # mbedTLS # CONFIG_MBEDTLS_INTERNAL_MEM_ALLOC=y -# CONFIG_MBEDTLS_EXTERNAL_MEM_ALLOC is not set -# CONFIG_MBEDTLS_DEFAULT_MEM_ALLOC is not set -# CONFIG_MBEDTLS_CUSTOM_MEM_ALLOC is not set +CONFIG_MBEDTLS_EXTERNAL_MEM_ALLOC= +CONFIG_MBEDTLS_DEFAULT_MEM_ALLOC= +CONFIG_MBEDTLS_CUSTOM_MEM_ALLOC= CONFIG_MBEDTLS_ASYMMETRIC_CONTENT_LEN=y CONFIG_MBEDTLS_SSL_IN_CONTENT_LEN=16384 CONFIG_MBEDTLS_SSL_OUT_CONTENT_LEN=4096 -# CONFIG_MBEDTLS_DEBUG is not set -# CONFIG_MBEDTLS_ECP_RESTARTABLE is not set -# CONFIG_MBEDTLS_CMAC_C is not set +CONFIG_MBEDTLS_DEBUG= +CONFIG_MBEDTLS_ECP_RESTARTABLE= +CONFIG_MBEDTLS_CMAC_C= CONFIG_MBEDTLS_HARDWARE_AES=y -# CONFIG_MBEDTLS_HARDWARE_MPI is not set +CONFIG_MBEDTLS_HARDWARE_MPI= CONFIG_MBEDTLS_HARDWARE_SHA=y CONFIG_MBEDTLS_HAVE_TIME=y -# CONFIG_MBEDTLS_HAVE_TIME_DATE is not set +CONFIG_MBEDTLS_HAVE_TIME_DATE= CONFIG_MBEDTLS_TLS_SERVER_AND_CLIENT=y -# CONFIG_MBEDTLS_TLS_SERVER_ONLY is not set -# CONFIG_MBEDTLS_TLS_CLIENT_ONLY is not set -# CONFIG_MBEDTLS_TLS_DISABLED is not set +CONFIG_MBEDTLS_TLS_SERVER_ONLY= +CONFIG_MBEDTLS_TLS_CLIENT_ONLY= +CONFIG_MBEDTLS_TLS_DISABLED= CONFIG_MBEDTLS_TLS_SERVER=y CONFIG_MBEDTLS_TLS_CLIENT=y CONFIG_MBEDTLS_TLS_ENABLED=y @@ -764,7 +633,7 @@ CONFIG_MBEDTLS_TLS_ENABLED=y # # TLS Key Exchange Methods # -# CONFIG_MBEDTLS_PSK_MODES is not set +CONFIG_MBEDTLS_PSK_MODES= CONFIG_MBEDTLS_KEY_EXCHANGE_RSA=y CONFIG_MBEDTLS_KEY_EXCHANGE_DHE_RSA=y CONFIG_MBEDTLS_KEY_EXCHANGE_ELLIPTIC_CURVE=y @@ -772,14 +641,12 @@ CONFIG_MBEDTLS_KEY_EXCHANGE_ECDHE_RSA=y CONFIG_MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA=y CONFIG_MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA=y CONFIG_MBEDTLS_KEY_EXCHANGE_ECDH_RSA=y -# end of TLS Key Exchange Methods - CONFIG_MBEDTLS_SSL_RENEGOTIATION=y -# CONFIG_MBEDTLS_SSL_PROTO_SSL3 is not set +CONFIG_MBEDTLS_SSL_PROTO_SSL3= CONFIG_MBEDTLS_SSL_PROTO_TLS1=y CONFIG_MBEDTLS_SSL_PROTO_TLS1_1=y CONFIG_MBEDTLS_SSL_PROTO_TLS1_2=y -# CONFIG_MBEDTLS_SSL_PROTO_DTLS is not set +CONFIG_MBEDTLS_SSL_PROTO_DTLS= CONFIG_MBEDTLS_SSL_ALPN=y CONFIG_MBEDTLS_CLIENT_SSL_SESSION_TICKETS=y CONFIG_MBEDTLS_SERVER_SSL_SESSION_TICKETS=y @@ -788,18 +655,16 @@ CONFIG_MBEDTLS_SERVER_SSL_SESSION_TICKETS=y # Symmetric Ciphers # CONFIG_MBEDTLS_AES_C=y -# CONFIG_MBEDTLS_CAMELLIA_C is not set -# CONFIG_MBEDTLS_DES_C is not set +CONFIG_MBEDTLS_CAMELLIA_C= +CONFIG_MBEDTLS_DES_C= CONFIG_MBEDTLS_RC4_DISABLED=y -# CONFIG_MBEDTLS_RC4_ENABLED_NO_DEFAULT is not set -# CONFIG_MBEDTLS_RC4_ENABLED is not set -# CONFIG_MBEDTLS_BLOWFISH_C is not set -# CONFIG_MBEDTLS_XTEA_C is not set +CONFIG_MBEDTLS_RC4_ENABLED_NO_DEFAULT= +CONFIG_MBEDTLS_RC4_ENABLED= +CONFIG_MBEDTLS_BLOWFISH_C= +CONFIG_MBEDTLS_XTEA_C= CONFIG_MBEDTLS_CCM_C=y CONFIG_MBEDTLS_GCM_C=y -# end of Symmetric Ciphers - -# CONFIG_MBEDTLS_RIPEMD160_C is not set +CONFIG_MBEDTLS_RIPEMD160_C= # # Certificates @@ -808,8 +673,6 @@ CONFIG_MBEDTLS_PEM_PARSE_C=y CONFIG_MBEDTLS_PEM_WRITE_C=y CONFIG_MBEDTLS_X509_CRL_PARSE_C=y CONFIG_MBEDTLS_X509_CSR_PARSE_C=y -# end of Certificates - CONFIG_MBEDTLS_ECP_C=y CONFIG_MBEDTLS_ECDH_C=y CONFIG_MBEDTLS_ECDSA_C=y @@ -826,21 +689,11 @@ CONFIG_MBEDTLS_ECP_DP_BP384R1_ENABLED=y CONFIG_MBEDTLS_ECP_DP_BP512R1_ENABLED=y CONFIG_MBEDTLS_ECP_DP_CURVE25519_ENABLED=y CONFIG_MBEDTLS_ECP_NIST_OPTIM=y -# CONFIG_MBEDTLS_SECURITY_RISKS is not set -# end of mbedTLS # # mDNS # CONFIG_MDNS_MAX_SERVICES=10 -CONFIG_MDNS_TASK_PRIORITY=1 -# CONFIG_MDNS_TASK_AFFINITY_NO_AFFINITY is not set -CONFIG_MDNS_TASK_AFFINITY_CPU0=y -# CONFIG_MDNS_TASK_AFFINITY_CPU1 is not set -CONFIG_MDNS_TASK_AFFINITY=0x0 -CONFIG_MDNS_SERVICE_ADD_TIMEOUT_MS=2000 -CONFIG_MDNS_TIMER_PERIOD_MS=100 -# end of mDNS # # ESP-MQTT Configurations @@ -849,35 +702,31 @@ CONFIG_MQTT_PROTOCOL_311=y CONFIG_MQTT_TRANSPORT_SSL=y CONFIG_MQTT_TRANSPORT_WEBSOCKET=y CONFIG_MQTT_TRANSPORT_WEBSOCKET_SECURE=y -# CONFIG_MQTT_USE_CUSTOM_CONFIG is not set -# CONFIG_MQTT_TASK_CORE_SELECTION_ENABLED is not set -# CONFIG_MQTT_CUSTOM_OUTBOX is not set -# end of ESP-MQTT Configurations +CONFIG_MQTT_USE_CUSTOM_CONFIG= +CONFIG_MQTT_TASK_CORE_SELECTION_ENABLED= +CONFIG_MQTT_CUSTOM_OUTBOX= # # Newlib # CONFIG_NEWLIB_STDOUT_LINE_ENDING_CRLF=y -# CONFIG_NEWLIB_STDOUT_LINE_ENDING_LF is not set -# CONFIG_NEWLIB_STDOUT_LINE_ENDING_CR is not set -# CONFIG_NEWLIB_STDIN_LINE_ENDING_CRLF is not set -# CONFIG_NEWLIB_STDIN_LINE_ENDING_LF is not set +CONFIG_NEWLIB_STDOUT_LINE_ENDING_LF= +CONFIG_NEWLIB_STDOUT_LINE_ENDING_CR= +CONFIG_NEWLIB_STDIN_LINE_ENDING_CRLF= +CONFIG_NEWLIB_STDIN_LINE_ENDING_LF= CONFIG_NEWLIB_STDIN_LINE_ENDING_CR=y -# CONFIG_NEWLIB_NANO_FORMAT is not set -# end of Newlib +CONFIG_NEWLIB_NANO_FORMAT= # # NVS # -# end of NVS # # OpenSSL # -# CONFIG_OPENSSL_DEBUG is not set -# CONFIG_OPENSSL_ASSERT_DO_NOTHING is not set +CONFIG_OPENSSL_DEBUG= +CONFIG_OPENSSL_ASSERT_DO_NOTHING= CONFIG_OPENSSL_ASSERT_EXIT=y -# end of OpenSSL # # PThreads @@ -886,34 +735,27 @@ CONFIG_PTHREAD_TASK_PRIO_DEFAULT=5 CONFIG_PTHREAD_TASK_STACK_SIZE_DEFAULT=3072 CONFIG_PTHREAD_STACK_MIN=768 CONFIG_PTHREAD_DEFAULT_CORE_NO_AFFINITY=y -# CONFIG_PTHREAD_DEFAULT_CORE_0 is not set -# CONFIG_PTHREAD_DEFAULT_CORE_1 is not set +CONFIG_PTHREAD_DEFAULT_CORE_0= +CONFIG_PTHREAD_DEFAULT_CORE_1= CONFIG_PTHREAD_TASK_CORE_DEFAULT=-1 CONFIG_PTHREAD_TASK_NAME_DEFAULT="pthread" -# end of PThreads # # SPI Flash driver # -# CONFIG_SPI_FLASH_VERIFY_WRITE is not set -# CONFIG_SPI_FLASH_ENABLE_COUNTERS is not set +CONFIG_SPI_FLASH_VERIFY_WRITE= +CONFIG_SPI_FLASH_ENABLE_COUNTERS= CONFIG_SPI_FLASH_ROM_DRIVER_PATCH=y CONFIG_SPI_FLASH_DANGEROUS_WRITE_ABORTS=y -# CONFIG_SPI_FLASH_DANGEROUS_WRITE_FAILS is not set -# CONFIG_SPI_FLASH_DANGEROUS_WRITE_ALLOWED is not set -# CONFIG_SPI_FLASH_USE_LEGACY_IMPL is not set -# CONFIG_SPI_FLASH_BYPASS_BLOCK_ERASE is not set -CONFIG_SPI_FLASH_YIELD_DURING_ERASE=y -CONFIG_SPI_FLASH_ERASE_YIELD_DURATION_MS=20 -CONFIG_SPI_FLASH_ERASE_YIELD_TICKS=1 +CONFIG_SPI_FLASH_DANGEROUS_WRITE_FAILS= +CONFIG_SPI_FLASH_DANGEROUS_WRITE_ALLOWED= +CONFIG_SPI_FLASH_USE_LEGACY_IMPL= # # Auto-detect flash chips # CONFIG_SPI_FLASH_SUPPORT_ISSI_CHIP=y CONFIG_SPI_FLASH_SUPPORT_GD_CHIP=y -# end of Auto-detect flash chips -# end of SPI Flash driver # # SPIFFS Configuration @@ -925,15 +767,12 @@ CONFIG_SPIFFS_MAX_PARTITIONS=3 # CONFIG_SPIFFS_CACHE=y CONFIG_SPIFFS_CACHE_WR=y -# CONFIG_SPIFFS_CACHE_STATS is not set -# end of SPIFFS Cache Configuration - +CONFIG_SPIFFS_CACHE_STATS= CONFIG_SPIFFS_PAGE_CHECK=y CONFIG_SPIFFS_GC_MAX_RUNS=10 -# CONFIG_SPIFFS_GC_STATS is not set +CONFIG_SPIFFS_GC_STATS= CONFIG_SPIFFS_PAGE_SIZE=256 CONFIG_SPIFFS_OBJ_NAME_LEN=32 -# CONFIG_SPIFFS_FOLLOW_SYMLINKS is not set CONFIG_SPIFFS_USE_MAGIC=y CONFIG_SPIFFS_USE_MAGIC_LENGTH=y CONFIG_SPIFFS_META_LENGTH=4 @@ -942,25 +781,28 @@ CONFIG_SPIFFS_USE_MTIME=y # # Debug Configuration # -# CONFIG_SPIFFS_DBG is not set -# CONFIG_SPIFFS_API_DBG is not set -# CONFIG_SPIFFS_GC_DBG is not set -# CONFIG_SPIFFS_CACHE_DBG is not set -# CONFIG_SPIFFS_CHECK_DBG is not set -# CONFIG_SPIFFS_TEST_VISUALISATION is not set -# end of Debug Configuration -# end of SPIFFS Configuration +CONFIG_SPIFFS_DBG= +CONFIG_SPIFFS_API_DBG= +CONFIG_SPIFFS_GC_DBG= +CONFIG_SPIFFS_CACHE_DBG= +CONFIG_SPIFFS_CHECK_DBG= +CONFIG_SPIFFS_TEST_VISUALISATION= + +# +# TCP/IP Adapter +# +CONFIG_NETIF_IP_LOST_TIMER_INTERVAL=120 +CONFIG_TCPIP_LWIP=y # # Unity unit testing library # CONFIG_UNITY_ENABLE_FLOAT=y CONFIG_UNITY_ENABLE_DOUBLE=y -# CONFIG_UNITY_ENABLE_COLOR is not set +CONFIG_UNITY_ENABLE_COLOR= CONFIG_UNITY_ENABLE_IDF_TEST_RUNNER=y -# CONFIG_UNITY_ENABLE_FIXTURE is not set -# CONFIG_UNITY_ENABLE_BACKTRACE_ON_FAIL is not set -# end of Unity unit testing library +CONFIG_UNITY_ENABLE_FIXTURE= +CONFIG_UNITY_ENABLE_BACKTRACE_ON_FAIL= # # Virtual file system @@ -973,34 +815,27 @@ CONFIG_VFS_SUPPORT_TERMIOS=y # CONFIG_SEMIHOSTFS_MAX_MOUNT_POINTS=1 CONFIG_SEMIHOSTFS_HOST_PATH_MAX_LEN=128 -# end of Host File System I/O (Semihosting) -# end of Virtual file system # # Wear Levelling # -# CONFIG_WL_SECTOR_SIZE_512 is not set +CONFIG_WL_SECTOR_SIZE_512= CONFIG_WL_SECTOR_SIZE_4096=y CONFIG_WL_SECTOR_SIZE=4096 -# end of Wear Levelling # # Wi-Fi Provisioning Manager # CONFIG_WIFI_PROV_SCAN_MAX_ENTRIES=16 CONFIG_WIFI_PROV_AUTOSTOP_TIMEOUT=30 -# end of Wi-Fi Provisioning Manager # # Supplicant # CONFIG_WPA_MBEDTLS_CRYPTO=y -# CONFIG_WPA_TLS_V12 is not set -# end of Supplicant -# end of Component config +CONFIG_WPA_TLS_V12= # # Compatibility options # -# CONFIG_LEGACY_INCLUDE_COMMON_HEADERS is not set -# end of Compatibility options +CONFIG_LEGACY_INCLUDE_COMMON_HEADERS= diff --git a/code/src/CMakeLists.txt b/code/src/CMakeLists.txt index 0a49785b..9c82918e 100644 --- a/code/src/CMakeLists.txt +++ b/code/src/CMakeLists.txt @@ -1,14 +1,58 @@ # This file was automatically generated for projects # without default 'CMakeLists.txt' file. -if(NOT CMAKE_BUILD_EARLY_EXPANSION) -ADD_CUSTOM_COMMAND( - OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/version.cpp - ${CMAKE_CURRENT_BINARY_DIR}/_version.cpp - COMMAND ${CMAKE_COMMAND} -P - ${CMAKE_CURRENT_SOURCE_DIR}/version.cmake) +################################################################## +################################################################## +execute_process(COMMAND git log --pretty=format:'%h' -n 1 + OUTPUT_VARIABLE GIT_REV + ERROR_QUIET) + +string(TIMESTAMP BUILD_TIME "%Y-%m-%d %H:%M") + +# Check whether we got any revision (which isn't +# always the case, e.g. when someone downloaded a zip +# file from Github instead of a checkout) +if ("${GIT_REV}" STREQUAL "") + set(GIT_REV "N/A") + set(GIT_DIFF "") + set(GIT_TAG "N/A") + set(GIT_BRANCH "N/A") +else() + execute_process( + COMMAND bash -c "git diff --quiet --exit-code || echo +" + OUTPUT_VARIABLE GIT_DIFF) + execute_process( + COMMAND git describe --exact-match --tags + OUTPUT_VARIABLE GIT_TAG ERROR_QUIET) + execute_process( + COMMAND git rev-parse --abbrev-ref HEAD + OUTPUT_VARIABLE GIT_BRANCH) + + string(STRIP "${GIT_REV}" GIT_REV) + string(SUBSTRING "${GIT_REV}" 1 7 GIT_REV) + string(STRIP "${GIT_DIFF}" GIT_DIFF) + string(STRIP "${GIT_TAG}" GIT_TAG) + string(STRIP "${GIT_BRANCH}" GIT_BRANCH) endif() +set(VERSION "const char* GIT_REV=\"${GIT_REV}${GIT_DIFF}\"; +const char* GIT_TAG=\"${GIT_TAG}\"; +const char* GIT_BRANCH=\"${GIT_BRANCH}\"; +const char* BUILD_TIME=\"${BUILD_TIME}\";") + +if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/version.cpp) + file(READ ${CMAKE_CURRENT_SOURCE_DIR}/version.cpp VERSION_) +else() + set(VERSION_ "") +endif() + +if (NOT "${VERSION}" STREQUAL "${VERSION_}") + file(WRITE ${CMAKE_CURRENT_SOURCE_DIR}/version.cpp "${VERSION}") +endif() +####################################################################### +####################################################################### + + FILE(GLOB_RECURSE app_sources ${CMAKE_SOURCE_DIR}/src/*.*) # idf_component_register(SRCS ${app_sources}) diff --git a/code/src/gitversion.cmake b/code/src/gitversion.cmake new file mode 100644 index 00000000..d859645c --- /dev/null +++ b/code/src/gitversion.cmake @@ -0,0 +1,24 @@ +# cmake/gitversion.cmake +cmake_minimum_required(VERSION 3.0.0) + +message(STATUS "Resolving GIT Version") + +set(_build_version "unknown") + +find_package(Git) +if(GIT_FOUND) + execute_process( + COMMAND ${GIT_EXECUTABLE} rev-parse --short HEAD + WORKING_DIRECTORY "${local_dir}" + OUTPUT_VARIABLE _build_version + ERROR_QUIET + OUTPUT_STRIP_TRAILING_WHITESPACE + ) + message( STATUS "GIT hash: ${_build_version}") +else() + message(STATUS "GIT not found") +endif() + +string(TIMESTAMP _time_stamp) + +configure_file(${local_dir}/cmake/gitversion.h.in ${output_dir}/gitversion.h @ONLY) \ No newline at end of file diff --git a/code/src/main.cpp b/code/src/main.cpp index 67cbf1cd..f57cbb7f 100644 --- a/code/src/main.cpp +++ b/code/src/main.cpp @@ -107,31 +107,31 @@ extern "C" void app_main() { printf("Do Reset Camera\n"); PowerResetCamera(); -// LogFile.WriteToFile("Startsequence 01"); Init_NVS_SDCard(); - LogFile.WriteToFile("Startsequence 02"); +// LogFile.WriteToFile("Startsequence 02"); CheckOTAUpdate(); - LogFile.WriteToFile("Startsequence 03"); +// LogFile.WriteToFile("Startsequence 03"); std::string ssid = ""; std::string password = ""; std::string hostname = ""; LoadWlanFromFile("/sdcard/wlan.ini", ssid, password, hostname); - LogFile.WriteToFile("Startsequence 04"); +// LogFile.WriteToFile("Startsequence 04"); printf("To use WLan: %s, %s\n", ssid.c_str(), password.c_str()); printf("To set Hostename: %s\n", hostname.c_str()); initialise_wifi(ssid, password, hostname); - LogFile.WriteToFile("Startsequence 05"); +// LogFile.WriteToFile("Startsequence 05"); TickType_t xDelay; xDelay = 2000 / portTICK_PERIOD_MS; printf("Autoflow: sleep for : %ldms\n", (long) xDelay); - LogFile.WriteToFile("Startsequence 06"); +// LogFile.WriteToFile("Startsequence 06"); vTaskDelay( xDelay ); - LogFile.WriteToFile("Startsequence 07"); +// LogFile.WriteToFile("Startsequence 07"); setup_time(); LogFile.WriteToFile("======================== Main Started ================================"); + LogFile.SwitchOnOff(false); std::string zw = gettimestring("%Y%m%d-%H%M%S"); printf("time %s\n", zw.c_str()); diff --git a/code/src/server_main.cpp b/code/src/server_main.cpp index f7cfe548..81eadf39 100644 --- a/code/src/server_main.cpp +++ b/code/src/server_main.cpp @@ -3,9 +3,12 @@ #include #include "server_help.h" +#include "ClassLogFile.h" #include "time_sntp.h" +#include "version.h" + httpd_handle_t server = NULL; @@ -14,80 +17,73 @@ std::string starttime = ""; /* An HTTP GET handler */ -esp_err_t hello_get_handler(httpd_req_t *req) +esp_err_t info_get_handler(httpd_req_t *req) { - char* buf; - size_t buf_len; - printf("req uri:\n"); - printf(req->uri); - printf("\n"); + LogFile.WriteToFile("info_get_handler"); + char _query[200]; + char _valuechar[30]; + std::string _task; - /* Get header value string length and allocate memory for length + 1, - * extra byte for null termination */ - buf_len = httpd_req_get_hdr_value_len(req, "Host") + 1; - if (buf_len > 1) { - buf = (char*) malloc(buf_len); - /* Copy null terminated value string into buffer */ - if (httpd_req_get_hdr_value_str(req, "Host", buf, buf_len) == ESP_OK) { - ESP_LOGI(TAG, "Found header => Host: %s", buf); + if (httpd_req_get_url_query_str(req, _query, 200) == ESP_OK) + { + printf("Query: "); printf(_query); printf("\n"); + + if (httpd_query_key_value(_query, "type", _valuechar, 30) == ESP_OK) + { + printf("type is found"); printf(_valuechar); printf("\n"); + _task = std::string(_valuechar); } - free(buf); + }; + + if (_task.compare("GitBranch") == 0) + { + std::string zw; + zw = std::string(libfive_git_branch()); + httpd_resp_sendstr_chunk(req, zw.c_str()); + httpd_resp_sendstr_chunk(req, NULL); + return ESP_OK; } - buf_len = httpd_req_get_hdr_value_len(req, "Test-Header-2") + 1; - if (buf_len > 1) { - buf = (char*) malloc(buf_len); - if (httpd_req_get_hdr_value_str(req, "Test-Header-2", buf, buf_len) == ESP_OK) { - ESP_LOGI(TAG, "Found header => Test-Header-2: %s", buf); - } - free(buf); + + if (_task.compare("GitTag") == 0) + { + std::string zw; + zw = std::string(libfive_git_version()); + httpd_resp_sendstr_chunk(req, zw.c_str()); + httpd_resp_sendstr_chunk(req, NULL); + return ESP_OK; } - buf_len = httpd_req_get_hdr_value_len(req, "Test-Header-1") + 1; - if (buf_len > 1) { - buf = (char*) malloc(buf_len); - if (httpd_req_get_hdr_value_str(req, "Test-Header-1", buf, buf_len) == ESP_OK) { - ESP_LOGI(TAG, "Found header => Test-Header-1: %s", buf); - } - free(buf); + + + if (_task.compare("GitRevision") == 0) + { + std::string zw; + zw = std::string(libfive_git_revision()); + httpd_resp_sendstr_chunk(req, zw.c_str()); + httpd_resp_sendstr_chunk(req, NULL); + return ESP_OK; } - /* Read URL query string length and allocate memory for length + 1, - * extra byte for null termination */ - buf_len = httpd_req_get_url_query_len(req) + 1; - if (buf_len > 1) { - buf = (char*) malloc(buf_len); - if (httpd_req_get_url_query_str(req, buf, buf_len) == ESP_OK) { - ESP_LOGI(TAG, "Found URL query => %s", buf); - char param[32]; - /* Get value of expected key from query string */ - if (httpd_query_key_value(buf, "query1", param, sizeof(param)) == ESP_OK) { - ESP_LOGI(TAG, "Found URL query parameter => query1=%s", param); - } - if (httpd_query_key_value(buf, "query3", param, sizeof(param)) == ESP_OK) { - ESP_LOGI(TAG, "Found URL query parameter => query3=%s", param); - } - if (httpd_query_key_value(buf, "query2", param, sizeof(param)) == ESP_OK) { - ESP_LOGI(TAG, "Found URL query parameter => query2=%s", param); - } - } - free(buf); + if (_task.compare("BuildTime") == 0) + { + std::string zw; + zw = std::string(build_time()); + httpd_resp_sendstr_chunk(req, zw.c_str()); + httpd_resp_sendstr_chunk(req, NULL); + return ESP_OK; } - /* Set some custom headers */ - httpd_resp_set_hdr(req, "Custom-Header-1", "Custom-Value-1"); - httpd_resp_set_hdr(req, "Custom-Header-2", "Custom-Value-2"); - - /* Send response with custom headers and body set as the - * string passed in user context*/ - const char* resp_str = (const char*) req->user_ctx; - httpd_resp_send(req, resp_str, strlen(resp_str)); - - /* After sending the HTTP response the old HTTP request - * headers are lost. Check if HTTP request headers can be read now. */ - if (httpd_req_get_hdr_value_len(req, "Host") == 0) { - ESP_LOGI(TAG, "Request headers lost"); + if (_task.compare("GitBaseBranch") == 0) + { + std::string zw; + zw = std::string(git_base_branch()); + httpd_resp_sendstr_chunk(req, zw.c_str()); + httpd_resp_sendstr_chunk(req, NULL); + return ESP_OK; } + + return ESP_OK; } @@ -205,6 +201,15 @@ esp_err_t img_tmp_handler(httpd_req_t *req) void register_server_main_uri(httpd_handle_t server, const char *base_path) { + httpd_uri_t info_get_handle = { + .uri = "/version", // Match all URIs of type /path/to/file + .method = HTTP_GET, + .handler = info_get_handler, + .user_ctx = (void*) base_path // Pass server data as context + }; + httpd_register_uri_handler(server, &info_get_handle); + + httpd_uri_t starttime_tmp_handle = { .uri = "/starttime", // Match all URIs of type /path/to/file .method = HTTP_GET, @@ -260,14 +265,6 @@ httpd_handle_t start_webserver(void) // config.uri_match_fn = NULL; config.uri_match_fn = httpd_uri_match_wildcard; - - httpd_uri_t hll = {}; - hll.uri = "/hello"; - hll.method = HTTP_GET; - hll.handler = hello_get_handler; - hll.user_ctx = (void*) "Hello World!"; - - starttime = gettimestring("%Y%m%d-%H%M%S"); // Start the httpd server @@ -275,7 +272,6 @@ httpd_handle_t start_webserver(void) if (httpd_start(&server, &config) == ESP_OK) { // Set URI handlers ESP_LOGI(TAG, "Registering URI handlers"); - httpd_register_uri_handler(server, &hll); return server; } diff --git a/code/src/server_tflite.cpp b/code/src/server_tflite.cpp index 5e498d96..e2f0985e 100644 --- a/code/src/server_tflite.cpp +++ b/code/src/server_tflite.cpp @@ -468,7 +468,7 @@ void task_autodoFlow(void *pvParameter) LogFile.WriteToFile("task_autodoFlow - round done"); //CPU Temp float cputmp = temperatureRead(); - LogFile.WriteToFile("CPU Temperature: %.2f", cputmp); +// LogFile.WriteToFile("CPU Temperature: %.2f", cputmp); printf("CPU Temperature: %.2f\n", cputmp); fr_delta_ms = (esp_timer_get_time() - fr_start) / 1000; const TickType_t xDelay = (auto_intervall - fr_delta_ms) / portTICK_PERIOD_MS; diff --git a/code/src/version.cmake b/code/src/version.cmake deleted file mode 100644 index 20c189b0..00000000 --- a/code/src/version.cmake +++ /dev/null @@ -1,43 +0,0 @@ -execute_process(COMMAND git log --pretty=format:'%h' -n 1 - OUTPUT_VARIABLE GIT_REV - ERROR_QUIET) - -# Check whether we got any revision (which isn't -# always the case, e.g. when someone downloaded a zip -# file from Github instead of a checkout) -if ("${GIT_REV}" STREQUAL "") - set(GIT_REV "N/A") - set(GIT_DIFF "") - set(GIT_TAG "N/A") - set(GIT_BRANCH "N/A") -else() - execute_process( - COMMAND bash -c "git diff --quiet --exit-code || echo +" - OUTPUT_VARIABLE GIT_DIFF) - execute_process( - COMMAND git describe --exact-match --tags - OUTPUT_VARIABLE GIT_TAG ERROR_QUIET) - execute_process( - COMMAND git rev-parse --abbrev-ref HEAD - OUTPUT_VARIABLE GIT_BRANCH) - - string(STRIP "${GIT_REV}" GIT_REV) - string(SUBSTRING "${GIT_REV}" 1 7 GIT_REV) - string(STRIP "${GIT_DIFF}" GIT_DIFF) - string(STRIP "${GIT_TAG}" GIT_TAG) - string(STRIP "${GIT_BRANCH}" GIT_BRANCH) -endif() - -set(VERSION "const char* GIT_REV=\"${GIT_REV}${GIT_DIFF}\"; -const char* GIT_TAG=\"${GIT_TAG}\"; -const char* GIT_BRANCH=\"${GIT_BRANCH}\";") - -if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/version.cpp) - file(READ ${CMAKE_CURRENT_SOURCE_DIR}/version.cpp VERSION_) -else() - set(VERSION_ "") -endif() - -if (NOT "${VERSION}" STREQUAL "${VERSION_}") - file(WRITE ${CMAKE_CURRENT_SOURCE_DIR}/version.cpp "${VERSION}") -endif() \ No newline at end of file diff --git a/code/src/version.cpp b/code/src/version.cpp new file mode 100644 index 00000000..7b7c01e5 --- /dev/null +++ b/code/src/version.cpp @@ -0,0 +1,4 @@ +const char* GIT_REV="bafd67b"; +const char* GIT_TAG=""; +const char* GIT_BRANCH="master"; +const char* BUILD_TIME="2020-09-28 19:57"; \ No newline at end of file diff --git a/code/src/version.h b/code/src/version.h new file mode 100644 index 00000000..2f571e91 --- /dev/null +++ b/code/src/version.h @@ -0,0 +1,38 @@ +// These variables are autogenerated and compiled +// into the library by the version.cmake script +extern "C" +{ + extern const char* GIT_TAG; + extern const char* GIT_REV; + extern const char* GIT_BRANCH; + extern const char* BUILD_TIME; +} + +const char* GIT_BASE_BRANCH = "master - v2.1.1 - 2020-09-28"; + + +const char* git_base_branch(void) +{ + return GIT_BASE_BRANCH; +} + + +const char* build_time(void) +{ + return BUILD_TIME; +} + +const char* libfive_git_version(void) +{ + return GIT_TAG; +} + +const char* libfive_git_revision(void) +{ + return GIT_REV; +} + +const char* libfive_git_branch(void) +{ + return GIT_BRANCH; +} \ No newline at end of file diff --git a/code/version.cpp b/code/version.cpp new file mode 100644 index 00000000..7b7c01e5 --- /dev/null +++ b/code/version.cpp @@ -0,0 +1,4 @@ +const char* GIT_REV="bafd67b"; +const char* GIT_TAG=""; +const char* GIT_BRANCH="master"; +const char* BUILD_TIME="2020-09-28 19:57"; \ No newline at end of file diff --git a/firmware/bootloader.bin b/firmware/bootloader.bin index cd992d7d..c8d06c6c 100644 Binary files a/firmware/bootloader.bin and b/firmware/bootloader.bin differ diff --git a/firmware/firmware.bin b/firmware/firmware.bin index 0d0e3cce..01729233 100644 Binary files a/firmware/firmware.bin and b/firmware/firmware.bin differ diff --git a/firmware/html.zip b/firmware/html.zip index 776a0f20..a65b4900 100644 Binary files a/firmware/html.zip and b/firmware/html.zip differ diff --git a/sd-card/config/ana0622.tfl b/sd-card/config/ana0622.tfl deleted file mode 100644 index 668a0c03..00000000 Binary files a/sd-card/config/ana0622.tfl and /dev/null differ diff --git a/sd-card/config/config.ini b/sd-card/config/config.ini index e2b94ca0..ccd1cdb5 100644 --- a/sd-card/config/config.ini +++ b/sd-card/config/config.ini @@ -11,9 +11,9 @@ InitalRotate=180 SearchFieldX = 20 SearchFieldY = 20 + [Digits] -;Model=/config/dig0622.tfl -Model=/config/dig0630s3.tflite +Model=/config/dig0640s3.tflite LogImageLocation = /log/digit ModelInputSize 20, 32 digit1, 306, 120, 37, 67 @@ -21,7 +21,6 @@ digit2, 355, 120, 37, 67 digit3, 404, 120, 37, 67 [Analog] -;Model=/config/ana0622.tfl Model=/config/ana0630s2.tflite LogImageLocation = /log/analog ModelInputSize 32, 32 @@ -37,11 +36,14 @@ PreValueAgeStartup = 30 AllowNegativeRates = False MaxRateValue = 0.1 ErrorMessage = True -CheckDigitIncreaseConsistency = True +CheckDigitIncreaseConsistency = False [AutoTimer] AutoStart= True Intervall = 4.85 +[Debug] +Logfile = False + [Ende] \ No newline at end of file diff --git a/sd-card/config/dig0622.tfl b/sd-card/config/dig0622.tfl deleted file mode 100644 index 14fba377..00000000 Binary files a/sd-card/config/dig0622.tfl and /dev/null differ diff --git a/sd-card/config/dig0630s3.tflite b/sd-card/config/dig0630s3.tflite deleted file mode 100644 index 77035781..00000000 Binary files a/sd-card/config/dig0630s3.tflite and /dev/null differ diff --git a/sd-card/config/dig0640s3.tflite b/sd-card/config/dig0640s3.tflite new file mode 100644 index 00000000..3bc9e686 Binary files /dev/null and b/sd-card/config/dig0640s3.tflite differ diff --git a/sd-card/html/edit_config.html b/sd-card/html/edit_config.html index 85da8756..370e2ae5 100644 --- a/sd-card/html/edit_config.html +++ b/sd-card/html/edit_config.html @@ -29,12 +29,15 @@ textarea {

Config.ini:

- + - - + + + + + @@ -59,6 +62,17 @@ function saveTextAsFile() FileSendContent(textToSave, "/config/config.ini", basepath); } } + +function doReboot() { + if (confirm("Are you sure you want to reboot the ESP32?")) { + var stringota = "/reboot"; + window.location = stringota; + window.location.href = stringota; + window.location.assign(stringota); + window.location.replace(stringota); + } +} + LoadConfigNeu(); diff --git a/sd-card/html/edit_digits.html b/sd-card/html/edit_digits.html index df356de2..cdd3e2b6 100644 --- a/sd-card/html/edit_digits.html +++ b/sd-card/html/edit_digits.html @@ -85,7 +85,7 @@ th, td { x: dx: - + y: diff --git a/sd-card/html/index.html b/sd-card/html/index.html index e0ba9674..3989cd60 100644 --- a/sd-card/html/index.html +++ b/sd-card/html/index.html @@ -1,5 +1,5 @@ - + jomjol - AI on the edge @@ -85,13 +85,15 @@ li.dropdown { Edit Configuration -
  • Watermeter
  • +
  • Recognition
  • File Server