From abf6ffd292f9b6a57fb4cee2259bcf2af84fe92d Mon Sep 17 00:00:00 2001 From: Gijs Noorlander Date: Wed, 29 Apr 2020 21:39:48 +0200 Subject: [PATCH 01/24] [PVS-Studio] sizeof(Device) -> Device.size() The 'sizeof (Device)' expression returns the size of the container type, not the number of elements. Consider using the 'size()' function. --- src/src/Commands/Diagnostic.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/src/Commands/Diagnostic.cpp b/src/src/Commands/Diagnostic.cpp index 81454c9b03..1b5496af43 100644 --- a/src/src/Commands/Diagnostic.cpp +++ b/src/src/Commands/Diagnostic.cpp @@ -83,7 +83,7 @@ String Command_MemInfo(struct EventStruct *event, const char *Line) serialPrint(F("ExtraTaskSettingsStruct| ")); serialPrintln(String(sizeof(ExtraTaskSettings))); serialPrint(F("DeviceStruct | ")); - serialPrintln(String(sizeof(Device))); + serialPrintln(String(Device.size())); return return_see_serial(event); } From ff4c9a20e9f28d0e3f38c0e9622582d614bcdc53 Mon Sep 17 00:00:00 2001 From: Gijs Noorlander Date: Wed, 29 Apr 2020 21:41:07 +0200 Subject: [PATCH 02/24] [PVS-Studio] EventStruct has no operator= --- src/src/DataStructs/ESPEasy_EventStruct.cpp | 26 +++++++++++++++++++++ src/src/DataStructs/ESPEasy_EventStruct.h | 1 + 2 files changed, 27 insertions(+) diff --git a/src/src/DataStructs/ESPEasy_EventStruct.cpp b/src/src/DataStructs/ESPEasy_EventStruct.cpp index 886fc13133..58c3956263 100644 --- a/src/src/DataStructs/ESPEasy_EventStruct.cpp +++ b/src/src/DataStructs/ESPEasy_EventStruct.cpp @@ -22,3 +22,29 @@ EventStruct::EventStruct(const struct EventStruct& event) : , BaseVarIndex(event.BaseVarIndex), sensorType(event.sensorType) , OriginTaskIndex(event.OriginTaskIndex) {} + +EventStruct& EventStruct::operator=(const struct EventStruct& other) { + // check for self-assignment + if(&other == this) + return *this; + String1 = other.String1; + String2 = other.String2; + String3 = other.String3; + String4 = other.String4; + String5 = other.String5; + Data = other.Data; + idx = other.idx; + Par1 = other.Par1; + Par2 = other.Par2; + Par3 = other.Par3; + Par4 = other.Par4; + Par5 = other.Par5; + Source = other.Source; + TaskIndex = other.TaskIndex; + ControllerIndex = other.ControllerIndex; + NotificationIndex = other.NotificationIndex; + BaseVarIndex = other.BaseVarIndex; + sensorType = other.sensorType; + OriginTaskIndex = other.OriginTaskIndex; + return *this; +} \ No newline at end of file diff --git a/src/src/DataStructs/ESPEasy_EventStruct.h b/src/src/DataStructs/ESPEasy_EventStruct.h index 6bc3a88cf7..27d3bfef76 100644 --- a/src/src/DataStructs/ESPEasy_EventStruct.h +++ b/src/src/DataStructs/ESPEasy_EventStruct.h @@ -14,6 +14,7 @@ struct EventStruct { EventStruct(); EventStruct(const struct EventStruct& event); + EventStruct& operator=(const struct EventStruct& other); String String1; String String2; From 5ba0dc46089f3176061fbfec7ed7c29252a3b8ca Mon Sep 17 00:00:00 2001 From: Gijs Noorlander Date: Wed, 29 Apr 2020 21:41:55 +0200 Subject: [PATCH 03/24] [PVS-Studio] Not all members of a class are initialized --- src/src/DataStructs/RTCStruct.h | 4 +++- src/src/DataStructs/SecurityStruct.h | 6 +++--- src/src/Helpers/ESPEasy_time.cpp | 8 ++++++++ src/src/Helpers/ESPEasy_time.h | 1 + 4 files changed, 15 insertions(+), 4 deletions(-) diff --git a/src/src/DataStructs/RTCStruct.h b/src/src/DataStructs/RTCStruct.h index 3157ad1748..879513a3d2 100644 --- a/src/src/DataStructs/RTCStruct.h +++ b/src/src/DataStructs/RTCStruct.h @@ -20,7 +20,9 @@ struct RTCStruct RTCStruct() : ID1(0), ID2(0), lastWiFiChannel(0), factoryResetCounter(0), deepSleepState(0), bootFailedCount(0), flashDayCounter(0), lastWiFiSettingsIndex(0), - flashCounter(0), bootCounter(0), lastMixedSchedulerId(0), lastSysTime(0) {} + flashCounter(0), bootCounter(0), lastMixedSchedulerId(0), + unused1(0), unused2(0), + lastSysTime(0) {} byte ID1; byte ID2; byte lastWiFiChannel; diff --git a/src/src/DataStructs/SecurityStruct.h b/src/src/DataStructs/SecurityStruct.h index 752bd59404..27d33e891f 100644 --- a/src/src/DataStructs/SecurityStruct.h +++ b/src/src/DataStructs/SecurityStruct.h @@ -21,9 +21,9 @@ struct SecurityStruct char ControllerUser[CONTROLLER_MAX][26]; char ControllerPassword[CONTROLLER_MAX][64]; char Password[26]; - byte AllowedIPrangeLow[4]; // TD-er: Use these - byte AllowedIPrangeHigh[4]; - byte IPblockLevel; + byte AllowedIPrangeLow[4] = {0}; // TD-er: Use these + byte AllowedIPrangeHigh[4] = {0}; + byte IPblockLevel = 0; //its safe to extend this struct, up to 4096 bytes, default values in config are 0. Make sure crc is last uint8_t ProgmemMd5[16] = {0}; // crc of the binary that last saved the struct to file. diff --git a/src/src/Helpers/ESPEasy_time.cpp b/src/src/Helpers/ESPEasy_time.cpp index b39e7eb78d..c9c4bab431 100644 --- a/src/src/Helpers/ESPEasy_time.cpp +++ b/src/src/Helpers/ESPEasy_time.cpp @@ -13,6 +13,14 @@ #include +ESPEasy_time::ESPEasy_time() { + memset(&tm, 0, sizeof(tm)); + memset(&tsRise, 0, sizeof(tm)); + memset(&tsSet, 0, sizeof(tm)); + memset(&sunRise, 0, sizeof(tm)); + memset(&sunSet, 0, sizeof(tm)); +} + struct tm ESPEasy_time::addSeconds(const struct tm& ts, int seconds, bool toLocalTime) const { unsigned long time = makeTime(ts); diff --git a/src/src/Helpers/ESPEasy_time.h b/src/src/Helpers/ESPEasy_time.h index e94842de62..5a129ea9d8 100644 --- a/src/src/Helpers/ESPEasy_time.h +++ b/src/src/Helpers/ESPEasy_time.h @@ -9,6 +9,7 @@ class ESPEasy_time { public: +ESPEasy_time(); struct tm addSeconds(const struct tm& ts, int seconds, bool toLocalTime) const; static void breakTime(unsigned long timeInput, struct tm& tm); From 710eb7d3fcbc2d062c08e33cc12d92fa9f7ff5e0 Mon Sep 17 00:00:00 2001 From: Gijs Noorlander Date: Wed, 29 Apr 2020 21:42:48 +0200 Subject: [PATCH 04/24] [PVS-Studio] Missing break; in switch statement (C018 RN2483 TTN) --- src/_C018.ino | 1 + 1 file changed, 1 insertion(+) diff --git a/src/_C018.ino b/src/_C018.ino index 4070148807..9c7b2f5fa7 100644 --- a/src/_C018.ino +++ b/src/_C018.ino @@ -623,6 +623,7 @@ bool CPlugin_018(CPlugin::Function function, struct EventStruct *event, String& break; case ControllerSettingsStruct::CONTROLLER_PORT: string = F("Port"); + break; default: success = false; break; From ec136c7263f957c784e4fb7a524d32ccb3a094f5 Mon Sep 17 00:00:00 2001 From: Gijs Noorlander Date: Wed, 29 Apr 2020 21:44:01 +0200 Subject: [PATCH 05/24] [PVS-Studio] FrasmedOLED display pointer dereference before check !NULL --- src/_P036_FrameOLED.ino | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/_P036_FrameOLED.ino b/src/_P036_FrameOLED.ino index 217894b5a7..cfa33f4c81 100644 --- a/src/_P036_FrameOLED.ino +++ b/src/_P036_FrameOLED.ino @@ -559,7 +559,9 @@ boolean Plugin_036(uint8_t function, struct EventStruct *event, String& string) displayTimer--; if (displayTimer == 0) { - display->displayOff(); + if (display) { + display->displayOff(); + } UserVar[event->BaseVarIndex] = 0; // Save the fact that the display is now OFF } } From cc092cfad7877c2bb8aa0247485a8e55de5ae120 Mon Sep 17 00:00:00 2001 From: Gijs Noorlander Date: Wed, 29 Apr 2020 21:47:50 +0200 Subject: [PATCH 06/24] [PVS-Studio] Error log in rules not complete --- src/ESPEasyRules.ino | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ESPEasyRules.ino b/src/ESPEasyRules.ino index e47a15d202..47b532bcfb 100644 --- a/src/ESPEasyRules.ino +++ b/src/ESPEasyRules.ino @@ -708,7 +708,7 @@ void processMatchedRule(String& action, String& event, if (loglevelActiveFor(LOG_LEVEL_ERROR)) { log = F("Lev."); log += String(ifBlock); - log = F(": Error: IF Nesting level exceeded!"); + log += F(": Error: IF Nesting level exceeded!"); addLog(LOG_LEVEL_ERROR, log); } } From 99517ba012f2329e1a1ef50745407c04d0da8e6a Mon Sep 17 00:00:00 2001 From: Gijs Noorlander Date: Wed, 29 Apr 2020 21:48:44 +0200 Subject: [PATCH 07/24] [PVS-Studio] File info struct in webserver rules not all initialized --- src/WebServer_Rules.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/WebServer_Rules.h b/src/WebServer_Rules.h index 523d8c533d..35d63b4c3b 100644 --- a/src/WebServer_Rules.h +++ b/src/WebServer_Rules.h @@ -5,11 +5,11 @@ typedef struct s_fileinfo { String Name; - int Size; + int Size = 0; bool isDirectory = false; } fileInfo; typedef std::function HandlerFileInfo; -#endif // WEBSERVER_RULES_H \ No newline at end of file +#endif // WEBSERVER_RULES_H From 832e6e37ef92f0200a0f136639c32feb2b52c0fa Mon Sep 17 00:00:00 2001 From: Gijs Noorlander Date: Wed, 29 Apr 2020 21:53:52 +0200 Subject: [PATCH 08/24] [PVS-Studio] Redundant check in rules conditionMatchExtended [CWE-571](https://cwe.mitre.org/data/definitions/571.html?utm_source=platformio&utm_medium=piohome):A part of conditional expression is always true: (condOr < condAnd). --- src/ESPEasyRules.ino | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ESPEasyRules.ino b/src/ESPEasyRules.ino index 47b532bcfb..9f60893f12 100644 --- a/src/ESPEasyRules.ino +++ b/src/ESPEasyRules.ino @@ -889,7 +889,7 @@ bool conditionMatchExtended(String& check) { condOr = check.indexOf(F(" or ")); if ((condAnd > 0) || (condOr > 0)) { // we got AND/OR - if ((condAnd > 0) && (((condOr < 0) && (condOr < condAnd)) || + if ((condAnd > 0) && (((condOr < 0) /*&& (condOr < condAnd)*/) || ((condOr > 0) && (condOr > condAnd)))) { // AND is first check = check.substring(condAnd + 5); rightcond = conditionMatch(check); From fffb5facdeb27e4d50ebce046cb7e4edf4c0824e Mon Sep 17 00:00:00 2001 From: Gijs Noorlander Date: Wed, 29 Apr 2020 22:08:27 +0200 Subject: [PATCH 09/24] [PVS-Studio] CWE-1164:The 'note' variable was assigned the same value. --- src/Misc.ino | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/Misc.ino b/src/Misc.ino index 07d6ba38d0..02abb39dd8 100644 --- a/src/Misc.ino +++ b/src/Misc.ino @@ -2618,8 +2618,6 @@ void play_rtttl(uint8_t _pin, const char *p ) else duration = wholenote / default_dur; // we will need to check if we are a dotted note after // now get the note - note = 0; - switch(*p) { case 'c': From 703a344cc945ed56f0494b1d278c189afe6c7d73 Mon Sep 17 00:00:00 2001 From: Gijs Noorlander Date: Wed, 29 Apr 2020 22:13:24 +0200 Subject: [PATCH 10/24] [PVS-Studio] ESPEasy p2p incorrect check for binary data [CWE-571](https://cwe.mitre.org/data/definitions/571.html?utm_source=platformio&utm_medium=piohome):Expression 'packetBuffer[0] != 255' is always true. The value range of char type: [-128, 127]. --- src/Networking.ino | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Networking.ino b/src/Networking.ino index 8284f7a9f3..d17230299a 100644 --- a/src/Networking.ino +++ b/src/Networking.ino @@ -135,7 +135,7 @@ void checkUDP() int len = portUDP.read(&packetBuffer[0], packetSize); if (len >= 2) { - if (packetBuffer[0] != 255) + if (reinterpret_cast(packetBuffer[0]) != 255) { packetBuffer[len] = 0; addLog(LOG_LEVEL_DEBUG, &packetBuffer[0]); From 000399ba86d58f255237078443cc7a2182334ed8 Mon Sep 17 00:00:00 2001 From: Gijs Noorlander Date: Wed, 29 Apr 2020 22:53:02 +0200 Subject: [PATCH 11/24] [PVS-Studio] SSDP Specify printf format [CWE-134](https://cwe.mitre.org/data/definitions/134.html?utm_source=platformio&utm_medium=piohome):It's dangerous to call the 'printf' function in such a manner, as the line being passed could contain format specification. The example of the safe code: printf("%s", str); --- src/Networking.ino | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Networking.ino b/src/Networking.ino index d17230299a..47c29d577e 100644 --- a/src/Networking.ino +++ b/src/Networking.ino @@ -450,7 +450,7 @@ void SSDP_schema(WiFiClient& client) { "\r\n" "\r\n"); - client.printf(ssdp_schema.c_str()); + client.printf("%s", ssdp_schema.c_str()); } /********************************************************************************************\ From 8907d5544e1aa8485ba2e6e775a1af6f4ef9fc7c Mon Sep 17 00:00:00 2001 From: Gijs Noorlander Date: Wed, 29 Apr 2020 23:46:35 +0200 Subject: [PATCH 12/24] [PVS Studio] Framed OLED: Simplify check for turning on display An excessive check can be simplified. The '(A && !B) || (!A && B)' expression is equivalent to the 'bool(A) != bool(B)' expression. --- src/_P036_FrameOLED.ino | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/_P036_FrameOLED.ino b/src/_P036_FrameOLED.ino index cfa33f4c81..37c59c5a8d 100644 --- a/src/_P036_FrameOLED.ino +++ b/src/_P036_FrameOLED.ino @@ -82,12 +82,12 @@ static int8_t lastWiFiState = P36_WIFI_STATE_UNSET; static uint8_t OLEDIndex = 0; -static boolean bPin3Invers; -static boolean bScrollLines; -static boolean bNoDisplayOnReceivedText; -static boolean bAlternativHeader = false; +static bool bPin3Invers; +static bool bScrollLines; +static bool bNoDisplayOnReceivedText; +static bool bAlternativHeader = false; static uint16_t HeaderCount = 0; -static boolean bPageScrollDisabled = true; // first page after INIT without scrolling +static bool bPageScrollDisabled = true; // first page after INIT without scrolling static uint8_t TopLineOffset = 0; // Offset for top line, used for rotated image while using displays < P36_MaxDisplayHeight lines enum eHeaderContent { @@ -533,7 +533,7 @@ boolean Plugin_036(uint8_t function, struct EventStruct *event, String& string) if (CONFIG_PIN3 != -1) { bPin3Invers = bitRead(PCONFIG_LONG(0), 16); // Bit 16 - if ((!bPin3Invers && digitalRead(CONFIG_PIN3)) || (bPin3Invers && !digitalRead(CONFIG_PIN3))) + if (bPin3Invers != static_cast(digitalRead(CONFIG_PIN3))) { display->displayOn(); UserVar[event->BaseVarIndex] = 1; // Save the fact that the display is now ON From 62679022cbcb01751729223c3995a4a41f6e14a4 Mon Sep 17 00:00:00 2001 From: Gijs Noorlander Date: Thu, 30 Apr 2020 01:01:20 +0200 Subject: [PATCH 13/24] [PVS-Studio] Suppress char out of range warning in static data --- lib/ccronexpr/ccronexpr.h | 2 ++ lib/esp8266-oled-ssd1306/OLEDDisplayFonts.h | 2 ++ src/StringConverter.ino | 2 ++ src/_P081_Cron.ino | 1 + 4 files changed, 7 insertions(+) diff --git a/lib/ccronexpr/ccronexpr.h b/lib/ccronexpr/ccronexpr.h index 06395572bd..450decb5c7 100644 --- a/lib/ccronexpr/ccronexpr.h +++ b/lib/ccronexpr/ccronexpr.h @@ -24,6 +24,8 @@ #ifndef CCRONEXPR_H #define CCRONEXPR_H +//-V::795 + #if defined(__cplusplus) && !defined(CRON_COMPILE_AS_CXX) extern "C" { #endif diff --git a/lib/esp8266-oled-ssd1306/OLEDDisplayFonts.h b/lib/esp8266-oled-ssd1306/OLEDDisplayFonts.h index 6dd21ef60b..70f9532f66 100644 --- a/lib/esp8266-oled-ssd1306/OLEDDisplayFonts.h +++ b/lib/esp8266-oled-ssd1306/OLEDDisplayFonts.h @@ -1,6 +1,8 @@ #ifndef OLEDDISPLAYFONTS_h #define OLEDDISPLAYFONTS_h +//-V::569 + const char ArialMT_Plain_10[] PROGMEM = { 0x0A, // Width: 10 0x0D, // Height: 13 diff --git a/src/StringConverter.ino b/src/StringConverter.ino index 34ea53e0c0..7718b5b93f 100644 --- a/src/StringConverter.ino +++ b/src/StringConverter.ino @@ -8,6 +8,8 @@ #include "src/Helpers/StringConverter.h" #include "src/Helpers/SystemVariables.h" +//-V::569 + /********************************************************************************************\ Convert a char string to integer \*********************************************************************************************/ diff --git a/src/_P081_Cron.ino b/src/_P081_Cron.ino index 4bf52c8c27..d391b2a906 100644 --- a/src/_P081_Cron.ino +++ b/src/_P081_Cron.ino @@ -2,6 +2,7 @@ // #################################### Plugin 081: CRON tasks Scheduler ########################### // ####################################################################################################### +//-V::795 #ifdef USES_P081 From 0455d477445ef578080774f70dadc543bd59a66a Mon Sep 17 00:00:00 2001 From: Gijs Noorlander Date: Thu, 30 Apr 2020 01:02:08 +0200 Subject: [PATCH 14/24] [PVS-Studio] Fix 'dangerous' macro by using braces. --- lib/esp8266-oled-ssd1306/OLEDDisplay.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/esp8266-oled-ssd1306/OLEDDisplay.h b/lib/esp8266-oled-ssd1306/OLEDDisplay.h index acd18eab92..a872655b3d 100644 --- a/lib/esp8266-oled-ssd1306/OLEDDisplay.h +++ b/lib/esp8266-oled-ssd1306/OLEDDisplay.h @@ -50,7 +50,7 @@ #ifndef DISPLAY_HEIGHT #define DISPLAY_HEIGHT 64 #endif -#define DISPLAY_BUFFER_SIZE DISPLAY_WIDTH * DISPLAY_HEIGHT / 8 +#define DISPLAY_BUFFER_SIZE ((DISPLAY_WIDTH) * (DISPLAY_HEIGHT) / 8) // Header Values #define JUMPTABLE_BYTES 4 From 875459f26bfc577c2d1ec914e2d8a7102d9d8f29 Mon Sep 17 00:00:00 2001 From: Gijs Noorlander Date: Thu, 30 Apr 2020 01:03:16 +0200 Subject: [PATCH 15/24] [PVS-studio] Fix possible out of range array access --- src/src/PluginStructs/P087_data_struct.cpp | 2 +- src/src/PluginStructs/P094_data_struct.cpp | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/src/PluginStructs/P087_data_struct.cpp b/src/src/PluginStructs/P087_data_struct.cpp index c44f7ec5f9..60b345611a 100644 --- a/src/src/PluginStructs/P087_data_struct.cpp +++ b/src/src/PluginStructs/P087_data_struct.cpp @@ -208,7 +208,7 @@ String P087_data_struct::getFilter(uint8_t lineNr, uint8_t& capture, P087_Filter { uint8_t varNr = lineNr * 3 + P087_FIRST_FILTER_POS; - if (varNr >= P87_Nlines) { return ""; } + if ((varNr + 3) > P87_Nlines) { return ""; } capture = _lines[varNr++].toInt(); comparator = _lines[varNr++] == "1" ? P087_Filter_Comp::NotEqual : P087_Filter_Comp::Equal; diff --git a/src/src/PluginStructs/P094_data_struct.cpp b/src/src/PluginStructs/P094_data_struct.cpp index b6998adc49..a055635bec 100644 --- a/src/src/PluginStructs/P094_data_struct.cpp +++ b/src/src/PluginStructs/P094_data_struct.cpp @@ -190,7 +190,7 @@ String P094_data_struct::getFilter(uint8_t lineNr, P094_Filter_Value_Type& filte filterValueType = P094_Filter_Value_Type::P094_not_used; - if (varNr >= P94_Nlines) { return ""; } + if ((varNr + 3) >= P94_Nlines) { return ""; } optional = _lines[varNr + 1].toInt(); filterValueType = valueType_index[lineNr]; comparator = filter_comp[lineNr]; @@ -351,9 +351,12 @@ bool P094_data_struct::parsePacket(String& received) const { case P094_Filter_Comp::P094_Equal_MUST: if (!match) { return false; } + break; + case P094_Filter_Comp::P094_NotEqual_MUST: if (match) { return false; } + break; } } } From a0af39cf104abeb98dd8c73d80218bdd95923c80 Mon Sep 17 00:00:00 2001 From: Gijs Noorlander Date: Thu, 30 Apr 2020 01:04:02 +0200 Subject: [PATCH 16/24] [PVS-studio] Suppress char out of range warning in static data --- src/src/Static/WebStaticData.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/src/Static/WebStaticData.h b/src/src/Static/WebStaticData.h index 4117c97e50..b2a1c52fe5 100644 --- a/src/src/Static/WebStaticData.h +++ b/src/src/Static/WebStaticData.h @@ -5,6 +5,8 @@ #define PGMT( pgm_ptr ) ( reinterpret_cast< const __FlashStringHelper * >( pgm_ptr ) ) +//-V::569 + #ifdef WEBSERVER_FAVICON /*********************************************************************************************\ * ESP Easy logo Favicon.ico 16x16 8 bit From 2e1366bf937dc345e8417eb78bea4301a1bd846b Mon Sep 17 00:00:00 2001 From: Gijs Noorlander Date: Thu, 30 Apr 2020 01:05:25 +0200 Subject: [PATCH 17/24] [PVS-Studio] Merge duplicate case statements --- src/Scheduler.ino | 4 ++-- src/_P028_BME280.ino | 4 ++-- src/src/Helpers/SystemVariables.cpp | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/Scheduler.ino b/src/Scheduler.ino index 9ad5483966..34df9c05e5 100644 --- a/src/Scheduler.ino +++ b/src/Scheduler.ino @@ -196,9 +196,9 @@ void setIntervalTimer(unsigned long id, unsigned long lasttimer) { case TIMER_20MSEC: interval = 20; break; case TIMER_100MSEC: interval = 100; break; case TIMER_1SEC: interval = 1000; break; - case TIMER_30SEC: interval = 30000; break; - case TIMER_MQTT: interval = timermqtt_interval; break; + case TIMER_30SEC: case TIMER_STATISTICS: interval = 30000; break; + case TIMER_MQTT: interval = timermqtt_interval; break; case TIMER_GRATUITOUS_ARP: interval = timer_gratuitous_arp_interval; break; // Fall-through for all DelayQueue, which are just the fall-back timers. diff --git a/src/_P028_BME280.ino b/src/_P028_BME280.ino index 0c44a364f3..524d2252cb 100644 --- a/src/_P028_BME280.ino +++ b/src/_P028_BME280.ino @@ -128,7 +128,7 @@ struct P028_sensordata { switch (sensorID) { case BMP280_DEVICE_SAMPLE1: case BMP280_DEVICE_SAMPLE2: - case BMP280_DEVICE: return 0x28; // Tstandby 62.5ms, filter 4, 3-wire SPI Disable + case BMP280_DEVICE: case BME280_DEVICE: return 0x28; // Tstandby 62.5ms, filter 4, 3-wire SPI Disable default: return 0; } @@ -138,7 +138,7 @@ struct P028_sensordata { switch (sensorID) { case BMP280_DEVICE_SAMPLE1: case BMP280_DEVICE_SAMPLE2: - case BMP280_DEVICE: return 0x93; // Oversampling: 8x P, 8x T, normal mode + case BMP280_DEVICE: case BME280_DEVICE: return 0x93; // Oversampling: 8x P, 8x T, normal mode default: return 0; } diff --git a/src/src/Helpers/SystemVariables.cpp b/src/src/Helpers/SystemVariables.cpp index 2a8fa647c5..bea30d455b 100644 --- a/src/src/Helpers/SystemVariables.cpp +++ b/src/src/Helpers/SystemVariables.cpp @@ -123,14 +123,14 @@ void SystemVariables::parseSystemVariables(String& s, boolean useURLencode) case SYSSEC_D: value = String(((node_time.hour() * 60) + node_time.minute()) * 60 + node_time.second()); break; case SYSSTACK: value = getValue(LabelType::FREE_STACK); break; case SYSTIME: value = node_time.getTimeString(':'); break; - case SYSTIME_AM: value = node_time.getTimeString_ampm(':', false); break; + case SYSTIME_AM: value = node_time.getTimeString_ampm(':'); break; case SYSTM_HM: value = node_time.getTimeString(':', false); break; case SYSTM_HM_AM: value = node_time.getTimeString_ampm(':', false); break; case SYSWEEKDAY: value = String(node_time.weekday()); break; case SYSWEEKDAY_S: value = node_time.weekday_str(); break; + case SYSYEAR_0: case SYSYEAR: value = String(node_time.year()); break; case SYSYEARS: value = timeReplacement_leadZero(node_time.year() % 100); break; - case SYSYEAR_0: value = String(node_time.year()); break; case SYS_MONTH_0: value = timeReplacement_leadZero(node_time.month()); break; case S_CR: value = F("\\r"); break; case S_LF: value = F("\\n"); break; From d60e8dfcc1013f06c4dbb5554e2a43d0965005f7 Mon Sep 17 00:00:00 2001 From: Gijs Noorlander Date: Thu, 30 Apr 2020 01:06:46 +0200 Subject: [PATCH 18/24] [PVS-Studio] Use implicit cast to float in scheduler idle time stats --- src/src/Helpers/msecTimerHandlerStruct.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/src/Helpers/msecTimerHandlerStruct.cpp b/src/src/Helpers/msecTimerHandlerStruct.cpp index 8c9dd9207b..31a86a9c22 100644 --- a/src/src/Helpers/msecTimerHandlerStruct.cpp +++ b/src/src/Helpers/msecTimerHandlerStruct.cpp @@ -48,7 +48,7 @@ if (waitTime > MAX_SCHEDULER_WAIT_TIME) { waitTime = MAX_SCHEDULER_WAIT_TIME; - } else if (waitTime < 0) { + } else if (waitTime < 0) { //-V547 // Should not happen, but just to be sure we will not wait forever. waitTime = 0; } @@ -93,7 +93,7 @@ const long duration = timePassedSince(last_log_start_time); last_log_start_time = millis(); - idle_time_pct = total_idle_time_usec / duration / 10.0; + idle_time_pct = static_cast(total_idle_time_usec) / duration / 10.0; total_idle_time_usec = 0; } From 58c4a0c4032486eeb68fe631ab45aa4f01aec9c4 Mon Sep 17 00:00:00 2001 From: Gijs Noorlander Date: Thu, 30 Apr 2020 01:07:38 +0200 Subject: [PATCH 19/24] [PVS-Studio] Remove unused variable in SenseAir plugin --- src/_P052_SenseAir.ino | 1 - 1 file changed, 1 deletion(-) diff --git a/src/_P052_SenseAir.ino b/src/_P052_SenseAir.ino index 99669d13d4..92eaef36f2 100644 --- a/src/_P052_SenseAir.ino +++ b/src/_P052_SenseAir.ino @@ -118,7 +118,6 @@ struct P052_data_struct : public PluginTaskData_base { } ModbusRTU_struct modbus; - byte sensortype; }; unsigned int _plugin_052_last_measurement = 0; From 64f15fb0c79739a4fbe463e6d12ceb3619252f94 Mon Sep 17 00:00:00 2001 From: Gijs Noorlander Date: Thu, 30 Apr 2020 01:08:41 +0200 Subject: [PATCH 20/24] [PVS-Studio] Use correct array index in Plugin_Helper_serial.ino May have been out of bound error on ESP32. --- src/_Plugin_Helper_serial.ino | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/_Plugin_Helper_serial.ino b/src/_Plugin_Helper_serial.ino index 0ff8b4a4db..f7b6cd013c 100644 --- a/src/_Plugin_Helper_serial.ino +++ b/src/_Plugin_Helper_serial.ino @@ -160,7 +160,7 @@ void serialHelper_webformLoad(int rxPinDef, int txPinDef, bool allowSoftwareSeri case ESPeasySerialType::serialtype::software: { if (!allowSoftwareSerial) { - attr[i] = F("disabled"); + attr[index] = F("disabled"); } break; } From 2704214f5113da23cabecbe6cde31530696964a2 Mon Sep 17 00:00:00 2001 From: Gijs Noorlander Date: Sat, 2 May 2020 14:46:37 +0200 Subject: [PATCH 21/24] [ILI9341] Fix build error when building for 1M units --- src/_P095_ILI9341.ino | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/_P095_ILI9341.ino b/src/_P095_ILI9341.ino index 76a771e364..a7b49126e2 100644 --- a/src/_P095_ILI9341.ino +++ b/src/_P095_ILI9341.ino @@ -116,10 +116,10 @@ void Plugin_095_printText(const char *string, int X, int Y, unsigned int textSiz #define TS_CS 12 #else //for D1 Mini with shield connection - #define TFT_CS D0 - #define TFT_DC D8 + #define TFT_CS 16 // D0 + #define TFT_DC 15 // D8 #define TFT_RST -1 - #define TS_CS D3 + #define TS_CS 0 // D3 #endif //The setting structure From 4260efb3bd62342950980bc662287a6af73ef105 Mon Sep 17 00:00:00 2001 From: Gijs Noorlander Date: Sat, 2 May 2020 14:47:57 +0200 Subject: [PATCH 22/24] [Core 2.7.0] Switch to esp8266/Arduino 2.7.0 --- platformio_core_defs.ini | 40 ++++--------------------------------- platformio_esp82xx_base.ini | 16 +++++++-------- platformio_esp82xx_envs.ini | 38 +++++++++++++++++------------------ 3 files changed, 31 insertions(+), 63 deletions(-) diff --git a/platformio_core_defs.ini b/platformio_core_defs.ini index b941082336..8b8880b87e 100644 --- a/platformio_core_defs.ini +++ b/platformio_core_defs.ini @@ -98,52 +98,20 @@ lib_ignore = ${esp82xx_defaults.lib_ignore}, IRremoteESP8266, Hea ; See for SDK flags: https://github.com/esp8266/Arduino/blob/master/tools/platformio-build.py -;[core_2_6_0] -;platform = https://github.com/Jason2866/platform-espressif8266.git#core_2_6_0 -;build_flags = ${esp82xx_2_6_x.build_flags} - -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_190703 - -;[core_2_6_1] -;platform = https://github.com/Jason2866/platform-espressif8266.git#core_2_6_1 -;build_flags = ${esp82xx_2_6_x.build_flags} - -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_190703 - -;[core_2_6_1_sdk3] -;platform = https://github.com/Jason2866/platform-espressif8266.git#core_2_6_1 -;build_flags = ${esp82xx_2_6_x.build_flags} - -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK3 - -[core_2_6_2] -extends = esp82xx_2_6_x -platform = espressif8266@2.3.1 -platform_packages = - framework-arduinoespressif8266 @ https://github.com/esp8266/Arduino.git#2.6.2 -build_flags = ${esp82xx_2_6_x.build_flags} - -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_190703 - -[core_2_6_2_sdk3] -extends = esp82xx_2_6_x -platform = espressif8266@2.3.1 -platform_packages = - framework-arduinoespressif8266 @ https://github.com/esp8266/Arduino.git#2.6.2 -build_flags = ${esp82xx_2_6_x.build_flags} - -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK3 - - -[core_2_6_3] +[core_2_7_0] extends = esp82xx_2_6_x platform = espressif8266@2.4.0 platform_packages = - framework-arduinoespressif8266 @ https://github.com/esp8266/Arduino.git#2.6.3 + framework-arduinoespressif8266 @ https://github.com/esp8266/Arduino.git#2.7.0 build_flags = ${esp82xx_2_6_x.build_flags} -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_190703 -[core_2_6_3_sdk3] +[core_2_7_0_sdk3] extends = esp82xx_2_6_x platform = espressif8266@2.4.0 platform_packages = - framework-arduinoespressif8266 @ https://github.com/esp8266/Arduino.git#2.6.3 + framework-arduinoespressif8266 @ https://github.com/esp8266/Arduino.git#2.7.0 build_flags = ${esp82xx_2_6_x.build_flags} -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK3 diff --git a/platformio_esp82xx_base.ini b/platformio_esp82xx_base.ini index e716df0ab7..c0744ceee8 100644 --- a/platformio_esp82xx_base.ini +++ b/platformio_esp82xx_base.ini @@ -6,18 +6,18 @@ [regular_platform] build_unflags = -build_flags = ${core_2_6_3.build_flags} -platform = ${core_2_6_3.platform} -platform_packages = ${core_2_6_3.platform_packages} -lib_ignore = ${core_2_6_3.lib_ignore} +build_flags = ${core_2_7_0.build_flags} +platform = ${core_2_7_0.platform} +platform_packages = ${core_2_7_0.platform_packages} +lib_ignore = ${core_2_7_0.lib_ignore} [core262_sdk3_platform] build_unflags = -build_flags = ${core_2_6_3_sdk3.build_flags} -platform = ${core_2_6_3_sdk3.platform} -platform_packages = ${core_2_6_3_sdk3.platform_packages} -lib_ignore = ${core_2_6_3_sdk3.lib_ignore} +build_flags = ${core_2_7_0_sdk3.build_flags} +platform = ${core_2_7_0_sdk3.platform} +platform_packages = ${core_2_7_0_sdk3.platform_packages} +lib_ignore = ${core_2_7_0_sdk3.lib_ignore} [beta_platform] diff --git a/platformio_esp82xx_envs.ini b/platformio_esp82xx_envs.ini index 247971cc22..0b54f95883 100644 --- a/platformio_esp82xx_envs.ini +++ b/platformio_esp82xx_envs.ini @@ -26,12 +26,12 @@ extra_scripts = pre:pre_custom_esp82xx.py [env:custom_sdk3_ESP8266_4M1M] extends = esp8266_4M1M -platform = ${core_2_6_3_sdk3.platform} -platform_packages = ${core_2_6_3_sdk3.platform_packages} -build_flags = ${core_2_6_3_sdk3.build_flags} +platform = ${core_2_7_0_sdk3.platform} +platform_packages = ${core_2_7_0_sdk3.platform_packages} +build_flags = ${core_2_7_0_sdk3.build_flags} ${esp8266_4M1M.build_flags} -DPLUGIN_BUILD_CUSTOM -lib_ignore = ${core_2_6_3_sdk3.lib_ignore} +lib_ignore = ${core_2_7_0_sdk3.lib_ignore} extra_scripts = pre:pre_custom_esp82xx.py @@ -85,9 +85,9 @@ build_flags = ${regular_platform.build_flags} [env:normal_sdk3_ESP8266_1M] extends = esp8266_1M -platform = ${core_2_6_3_sdk3.platform} -platform_packages = ${core_2_6_3_sdk3.platform_packages} -build_flags = ${core_2_6_3_sdk3.build_flags} +platform = ${core_2_7_0_sdk3.platform} +platform_packages = ${core_2_7_0_sdk3.platform_packages} +build_flags = ${core_2_7_0_sdk3.build_flags} ${esp8266_1M.build_flags} @@ -186,17 +186,17 @@ build_flags = ${regular_platform.build_flags} [env:minimal_core_263_sdk3_ESP8266_1M_OTA_Domoticz] extends = esp8266_1M_OTA -platform = ${core_2_6_3_sdk3.platform} -platform_packages = ${core_2_6_3_sdk3.platform_packages} -build_flags = ${core_2_6_3_sdk3.build_flags} +platform = ${core_2_7_0_sdk3.platform} +platform_packages = ${core_2_7_0_sdk3.platform_packages} +build_flags = ${core_2_7_0_sdk3.build_flags} ${esp8266_1M_OTA.build_flags} ${minimal_OTA_domoticz.build_flags} [env:minimal_core_263_sdk3_ESP8285_1M_OTA_Domoticz] extends = esp8285_1M_OTA -platform = ${core_2_6_3_sdk3.platform} -platform_packages = ${core_2_6_3_sdk3.platform_packages} -build_flags = ${core_2_6_3_sdk3.build_flags} +platform = ${core_2_7_0_sdk3.platform} +platform_packages = ${core_2_7_0_sdk3.platform_packages} +build_flags = ${core_2_7_0_sdk3.build_flags} ${esp8285_1M_OTA.build_flags} ${minimal_OTA_domoticz.build_flags} @@ -219,17 +219,17 @@ build_flags = ${regular_platform.build_flags} [env:minimal_core_263_sdk3_ESP8266_1M_OTA_FHEM_HA] extends = esp8266_1M_OTA -platform = ${core_2_6_3_sdk3.platform} -platform_packages = ${core_2_6_3_sdk3.platform_packages} -build_flags = ${core_2_6_3_sdk3.build_flags} +platform = ${core_2_7_0_sdk3.platform} +platform_packages = ${core_2_7_0_sdk3.platform_packages} +build_flags = ${core_2_7_0_sdk3.build_flags} ${esp8266_1M_OTA.build_flags} ${minimal_OTA_FHEM_HA.build_flags} [env:minimal_core_263_sdk3_ESP8285_1M_OTA_FHEM_HA] extends = esp8285_1M_OTA -platform = ${core_2_6_3_sdk3.platform} -platform_packages = ${core_2_6_3_sdk3.platform_packages} -build_flags = ${core_2_6_3_sdk3.build_flags} +platform = ${core_2_7_0_sdk3.platform} +platform_packages = ${core_2_7_0_sdk3.platform_packages} +build_flags = ${core_2_7_0_sdk3.build_flags} ${esp8285_1M_OTA.build_flags} ${minimal_OTA_FHEM_HA.build_flags} From b42672adb19a0eea382d94093d1265a77afeb58e Mon Sep 17 00:00:00 2001 From: Gijs Noorlander Date: Sat, 2 May 2020 14:50:37 +0200 Subject: [PATCH 23/24] [Build] Add custom_beta_1M build Beta: - Core stage - `PIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_191105` Regular: - Released core - `PIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_190703` --- platformio_esp82xx_envs.ini | 11 +++++++++++ pre_custom_esp82xx.py | 8 ++++---- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/platformio_esp82xx_envs.ini b/platformio_esp82xx_envs.ini index 0b54f95883..6eff760065 100644 --- a/platformio_esp82xx_envs.ini +++ b/platformio_esp82xx_envs.ini @@ -68,6 +68,17 @@ build_flags = ${regular_platform.build_flags} lib_ignore = ${regular_platform.lib_ignore} extra_scripts = pre:pre_custom_esp82xx.py +[env:custom_beta_ESP8266_1M] +extends = esp8266_1M +platform = ${beta_platform.platform} +platform_packages = ${beta_platform.platform_packages} +build_flags = ${beta_platform.build_flags} + ${esp8266_1M.build_flags} + -DPLUGIN_BUILD_CUSTOM +lib_ignore = ${beta_platform.lib_ignore} +extra_scripts = pre:pre_custom_esp82xx.py + + ;;; NORMAL (STABLE) *************************************************** diff --git a/pre_custom_esp82xx.py b/pre_custom_esp82xx.py index d6d1f959fc..bebeda3822 100644 --- a/pre_custom_esp82xx.py +++ b/pre_custom_esp82xx.py @@ -34,10 +34,10 @@ "USES_P059", # Encoder "USES_P081", # Cron "USES_P082", # GPS - "USES_P085", # AcuDC24x - "USES_P087", # Serial Proxy - "USES_P094", # CUL Reader - "USES_P095", # TFT ILI9341 +# "USES_P085", # AcuDC24x +# "USES_P087", # Serial Proxy +# "USES_P094", # CUL Reader +# "USES_P095", # TFT ILI9341 "USES_C016", # Cache Controller "USES_C018", # TTN/RN2483 From 9016e37fbe143075f2b59055d971dfe709faabc0 Mon Sep 17 00:00:00 2001 From: Gijs Noorlander Date: Sat, 2 May 2020 15:28:37 +0200 Subject: [PATCH 24/24] [Build] Rename PIO environments referring core_263 to core_270 --- .travis.yml | 16 ++++++++-------- platformio_esp82xx_envs.ini | 16 ++++++++-------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/.travis.yml b/.travis.yml index 0b0926b69e..ff46fd52c9 100644 --- a/.travis.yml +++ b/.travis.yml @@ -49,14 +49,14 @@ script: - PLATFORMIO_BUILD_FLAGS="-D CONTINUOUS_INTEGRATION" platformio run -e minimal_IRext_ESP8266_4M2M - PLATFORMIO_BUILD_FLAGS="-D CONTINUOUS_INTEGRATION" platformio run -e minimal_core_242_ESP8266_1M_OTA - PLATFORMIO_BUILD_FLAGS="-D CONTINUOUS_INTEGRATION" platformio run -e minimal_core_242_ESP8285_1M_OTA - - PLATFORMIO_BUILD_FLAGS="-D CONTINUOUS_INTEGRATION" platformio run -e minimal_core_263_ESP8266_1M_OTA_Domoticz - - PLATFORMIO_BUILD_FLAGS="-D CONTINUOUS_INTEGRATION" platformio run -e minimal_core_263_ESP8266_1M_OTA_FHEM_HA - - PLATFORMIO_BUILD_FLAGS="-D CONTINUOUS_INTEGRATION" platformio run -e minimal_core_263_ESP8285_1M_OTA_Domoticz - - PLATFORMIO_BUILD_FLAGS="-D CONTINUOUS_INTEGRATION" platformio run -e minimal_core_263_ESP8285_1M_OTA_FHEM_HA - #- PLATFORMIO_BUILD_FLAGS="-D CONTINUOUS_INTEGRATION" platformio run -e minimal_core_263_sdk3_ESP8266_1M_OTA_Domoticz - #- PLATFORMIO_BUILD_FLAGS="-D CONTINUOUS_INTEGRATION" platformio run -e minimal_core_263_sdk3_ESP8266_1M_OTA_FHEM_HA - #- PLATFORMIO_BUILD_FLAGS="-D CONTINUOUS_INTEGRATION" platformio run -e minimal_core_263_sdk3_ESP8285_1M_OTA_Domoticz - #- PLATFORMIO_BUILD_FLAGS="-D CONTINUOUS_INTEGRATION" platformio run -e minimal_core_263_sdk3_ESP8285_1M_OTA_FHEM_HA + - PLATFORMIO_BUILD_FLAGS="-D CONTINUOUS_INTEGRATION" platformio run -e minimal_core_270_ESP8266_1M_OTA_Domoticz + - PLATFORMIO_BUILD_FLAGS="-D CONTINUOUS_INTEGRATION" platformio run -e minimal_core_270_ESP8266_1M_OTA_FHEM_HA + - PLATFORMIO_BUILD_FLAGS="-D CONTINUOUS_INTEGRATION" platformio run -e minimal_core_270_ESP8285_1M_OTA_Domoticz + - PLATFORMIO_BUILD_FLAGS="-D CONTINUOUS_INTEGRATION" platformio run -e minimal_core_270_ESP8285_1M_OTA_FHEM_HA + #- PLATFORMIO_BUILD_FLAGS="-D CONTINUOUS_INTEGRATION" platformio run -e minimal_core_270_sdk3_ESP8266_1M_OTA_Domoticz + #- PLATFORMIO_BUILD_FLAGS="-D CONTINUOUS_INTEGRATION" platformio run -e minimal_core_270_sdk3_ESP8266_1M_OTA_FHEM_HA + #- PLATFORMIO_BUILD_FLAGS="-D CONTINUOUS_INTEGRATION" platformio run -e minimal_core_270_sdk3_ESP8285_1M_OTA_Domoticz + #- PLATFORMIO_BUILD_FLAGS="-D CONTINUOUS_INTEGRATION" platformio run -e minimal_core_270_sdk3_ESP8285_1M_OTA_FHEM_HA #- PLATFORMIO_BUILD_FLAGS="-D CONTINUOUS_INTEGRATION" platformio run -e normal_ESP8266_16M - PLATFORMIO_BUILD_FLAGS="-D CONTINUOUS_INTEGRATION" platformio run -e normal_ESP8266_1M - PLATFORMIO_BUILD_FLAGS="-D CONTINUOUS_INTEGRATION" platformio run -e normal_ESP8266_1M_VCC diff --git a/platformio_esp82xx_envs.ini b/platformio_esp82xx_envs.ini index 6eff760065..36d52b6b0a 100644 --- a/platformio_esp82xx_envs.ini +++ b/platformio_esp82xx_envs.ini @@ -179,7 +179,7 @@ platform = ${core_2_4_2.platform} build_flags = ${core_2_4_2.build_flags} ${esp8285_1M_OTA.build_flags} -[env:minimal_core_263_ESP8266_1M_OTA_Domoticz] +[env:minimal_core_270_ESP8266_1M_OTA_Domoticz] extends = esp8266_1M_OTA platform = ${regular_platform.platform} platform_packages = ${regular_platform.platform_packages} @@ -187,7 +187,7 @@ build_flags = ${regular_platform.build_flags} ${esp8266_1M_OTA.build_flags} ${minimal_OTA_domoticz.build_flags} -[env:minimal_core_263_ESP8285_1M_OTA_Domoticz] +[env:minimal_core_270_ESP8285_1M_OTA_Domoticz] extends = esp8285_1M_OTA platform = ${regular_platform.platform} platform_packages = ${regular_platform.platform_packages} @@ -195,7 +195,7 @@ build_flags = ${regular_platform.build_flags} ${esp8285_1M_OTA.build_flags} ${minimal_OTA_domoticz.build_flags} -[env:minimal_core_263_sdk3_ESP8266_1M_OTA_Domoticz] +[env:minimal_core_270_sdk3_ESP8266_1M_OTA_Domoticz] extends = esp8266_1M_OTA platform = ${core_2_7_0_sdk3.platform} platform_packages = ${core_2_7_0_sdk3.platform_packages} @@ -203,7 +203,7 @@ build_flags = ${core_2_7_0_sdk3.build_flags} ${esp8266_1M_OTA.build_flags} ${minimal_OTA_domoticz.build_flags} -[env:minimal_core_263_sdk3_ESP8285_1M_OTA_Domoticz] +[env:minimal_core_270_sdk3_ESP8285_1M_OTA_Domoticz] extends = esp8285_1M_OTA platform = ${core_2_7_0_sdk3.platform} platform_packages = ${core_2_7_0_sdk3.platform_packages} @@ -212,7 +212,7 @@ build_flags = ${core_2_7_0_sdk3.build_flags} ${minimal_OTA_domoticz.build_flags} -[env:minimal_core_263_ESP8266_1M_OTA_FHEM_HA] +[env:minimal_core_270_ESP8266_1M_OTA_FHEM_HA] extends = esp8266_1M_OTA platform = ${regular_platform.platform} platform_packages = ${regular_platform.platform_packages} @@ -220,7 +220,7 @@ build_flags = ${regular_platform.build_flags} ${esp8266_1M_OTA.build_flags} ${minimal_OTA_FHEM_HA.build_flags} -[env:minimal_core_263_ESP8285_1M_OTA_FHEM_HA] +[env:minimal_core_270_ESP8285_1M_OTA_FHEM_HA] extends = esp8285_1M_OTA platform = ${regular_platform.platform} platform_packages = ${regular_platform.platform_packages} @@ -228,7 +228,7 @@ build_flags = ${regular_platform.build_flags} ${esp8285_1M_OTA.build_flags} ${minimal_OTA_FHEM_HA.build_flags} -[env:minimal_core_263_sdk3_ESP8266_1M_OTA_FHEM_HA] +[env:minimal_core_270_sdk3_ESP8266_1M_OTA_FHEM_HA] extends = esp8266_1M_OTA platform = ${core_2_7_0_sdk3.platform} platform_packages = ${core_2_7_0_sdk3.platform_packages} @@ -236,7 +236,7 @@ build_flags = ${core_2_7_0_sdk3.build_flags} ${esp8266_1M_OTA.build_flags} ${minimal_OTA_FHEM_HA.build_flags} -[env:minimal_core_263_sdk3_ESP8285_1M_OTA_FHEM_HA] +[env:minimal_core_270_sdk3_ESP8285_1M_OTA_FHEM_HA] extends = esp8285_1M_OTA platform = ${core_2_7_0_sdk3.platform} platform_packages = ${core_2_7_0_sdk3.platform_packages}