diff --git a/src/modules/exec/MySensors/MySensorsGate.cpp b/src/modules/exec/MySensors/MySensorsGate.cpp index ba820351..32fe9c97 100644 --- a/src/modules/exec/MySensors/MySensorsGate.cpp +++ b/src/modules/exec/MySensors/MySensorsGate.cpp @@ -344,22 +344,24 @@ class MySensorsGate : public IoTItem { class MySensorsNode : public IoTItem { private: - String id; - int orange; - int red; - int offline; + String id = ""; + int orange = 0; + int red = 0; + int offline = 0; int _minutesPassed = 0; String json = "{}"; bool dataFromNode = false; public: MySensorsNode(String parameters) : IoTItem(parameters) { - SerialPrint("i", "MySensors", "Node initialized"); jsonRead(parameters, F("id"), id); - orange = jsonReadInt(parameters, F("orange")); - red = jsonReadInt(parameters, F("red")); - offline = jsonReadInt(parameters, F("offline")); + + jsonRead(parameters, F("orange"), orange); + jsonRead(parameters, F("red"), red); + jsonRead(parameters, F("offline"), offline); + dataFromNode = false; + SerialPrint("i", "MySensors", "Node initialized"); } void setValue(const IoTValue& Value, bool genEvent = true) { @@ -393,14 +395,16 @@ class MySensorsNode : public IoTItem { void setNewWidgetAttributes() { if (dataFromNode) { jsonWriteStr(json, F("info"), String(_minutesPassed) + " min"); - if (_minutesPassed < orange) { - jsonWriteStr(json, F("color"), ""); - } else if (_minutesPassed >= orange) { - jsonWriteStr(json, F("color"), F("orange")); //сделаем виджет оранжевым - } else if (_minutesPassed >= red) { - jsonWriteStr(json, F("color"), F("red")); //сделаем виджет красным - } else if (_minutesPassed >= offline) { - jsonWriteStr(json, F("info"), F("offline")); + if (orange != 0 && red != 0 && offline != 0) { + if (_minutesPassed < orange) { + jsonWriteStr(json, F("color"), ""); + } else if (_minutesPassed >= orange) { + jsonWriteStr(json, F("color"), F("orange")); //сделаем виджет оранжевым + } else if (_minutesPassed >= red) { + jsonWriteStr(json, F("color"), F("red")); //сделаем виджет красным + } else if (_minutesPassed >= offline) { + jsonWriteStr(json, F("info"), F("offline")); + } } } else { jsonWriteStr(json, F("info"), F("awaiting")); diff --git a/src/modules/sensors/Bme280/modinfo.json b/src/modules/sensors/Bme280/modinfo.json index d2b05beb..8b41b3f5 100644 --- a/src/modules/sensors/Bme280/modinfo.json +++ b/src/modules/sensors/Bme280/modinfo.json @@ -67,10 +67,22 @@ "defActive": true, "usedLibs": { "esp32_4mb": [ - "adafruit/Adafruit BME280 Library" + "milesburton/DallasTemperature@^3.9.1" ], "esp8266_4mb": [ - "adafruit/Adafruit BME280 Library" + "milesburton/DallasTemperature@^3.9.1" + ], + "esp8266_1mb": [ + "milesburton/DallasTemperature@^3.9.1" + ], + "esp8266_1mb_ota": [ + "milesburton/DallasTemperature@^3.9.1" + ], + "esp8285_1mb": [ + "milesburton/DallasTemperature@^3.9.1" + ], + "esp8285_1mb_ota": [ + "milesburton/DallasTemperature@^3.9.1" ] } } \ No newline at end of file diff --git a/src/modules/sensors/Bmp280/modinfo.json b/src/modules/sensors/Bmp280/modinfo.json index 4bfb5c27..870529ae 100644 --- a/src/modules/sensors/Bmp280/modinfo.json +++ b/src/modules/sensors/Bmp280/modinfo.json @@ -53,10 +53,22 @@ "defActive": true, "usedLibs": { "esp32_4mb": [ - "adafruit/Adafruit BMP280 Library" + "milesburton/DallasTemperature@^3.9.1" ], "esp8266_4mb": [ - "adafruit/Adafruit BMP280 Library" + "milesburton/DallasTemperature@^3.9.1" + ], + "esp8266_1mb": [ + "milesburton/DallasTemperature@^3.9.1" + ], + "esp8266_1mb_ota": [ + "milesburton/DallasTemperature@^3.9.1" + ], + "esp8285_1mb": [ + "milesburton/DallasTemperature@^3.9.1" + ], + "esp8285_1mb_ota": [ + "milesburton/DallasTemperature@^3.9.1" ] } } \ No newline at end of file