format code

This commit is contained in:
Yurii
2023-10-19 00:40:07 +03:00
parent d5a92c47c7
commit f8750373d4
8 changed files with 63 additions and 67 deletions

View File

@@ -92,7 +92,7 @@ public:
const byte valueLB = response & 0xFF; const byte valueLB = response & 0xFF;
const byte valueHB = (response >> 8) & 0xFF; const byte valueHB = (response >> 8) & 0xFF;
float value = (int8_t) valueHB; float value = (int8_t)valueHB;
return value + (float)valueLB / 256.0; return value + (float)valueLB / 256.0;
} }

View File

@@ -15,7 +15,7 @@ public:
const char* noChecked = "type=\"checkbox\""; const char* noChecked = "type=\"checkbox\"";
const char* trueVal = "T"; const char* trueVal = "T";
CheckboxParameter(const char* id, const char* label, bool value): WiFiManagerParameter("") { CheckboxParameter(const char* id, const char* label, bool value) : WiFiManagerParameter("") {
init(id, label, value ? trueVal : "0", 1, "", WFM_LABEL_AFTER); init(id, label, value ? trueVal : "0", 1, "", WFM_LABEL_AFTER);
} }
@@ -34,5 +34,5 @@ public:
class SeparatorParameter : public WiFiManagerParameter { class SeparatorParameter : public WiFiManagerParameter {
public: public:
SeparatorParameter(): WiFiManagerParameter("<hr>") {} SeparatorParameter() : WiFiManagerParameter("<hr>") {}
}; };

View File

@@ -2,9 +2,9 @@ extern MqttTask* tMqtt;
extern SensorsTask* tSensors; extern SensorsTask* tSensors;
extern OpenThermTask* tOt; extern OpenThermTask* tOt;
class MainTask: public Task { class MainTask : public Task {
public: public:
MainTask(bool _enabled = false, unsigned long _interval = 0): Task(_enabled, _interval) {} MainTask(bool _enabled = false, unsigned long _interval = 0) : Task(_enabled, _interval) {}
protected: protected:
unsigned long lastHeapInfo = 0; unsigned long lastHeapInfo = 0;
@@ -25,7 +25,7 @@ protected:
tMqtt->enable(); tMqtt->enable();
} }
if ( firstFailConnect != 0 ) { if (firstFailConnect != 0) {
firstFailConnect = 0; firstFailConnect = 0;
} }

View File

@@ -8,9 +8,9 @@ PubSubClient client(espClient);
HomeAssistantHelper haHelper; HomeAssistantHelper haHelper;
class MqttTask: public Task { class MqttTask : public Task {
public: public:
MqttTask(bool _enabled = false, unsigned long _interval = 0): Task(_enabled, _interval) {} MqttTask(bool _enabled = false, unsigned long _interval = 0) : Task(_enabled, _interval) {}
protected: protected:
unsigned long lastReconnectAttempt = 0; unsigned long lastReconnectAttempt = 0;
@@ -101,7 +101,7 @@ protected:
} }
if (!doc["emergency"]["target"].isNull() && doc["emergency"]["target"].is<float>()) { if (!doc["emergency"]["target"].isNull() && doc["emergency"]["target"].is<float>()) {
if ( doc["emergency"]["target"].as<float>() > 0 && doc["emergency"]["target"].as<float>() < 100 ) { if (doc["emergency"]["target"].as<float>() > 0 && doc["emergency"]["target"].as<float>() < 100) {
settings.emergency.target = round(doc["emergency"]["target"].as<float>() * 10) / 10; settings.emergency.target = round(doc["emergency"]["target"].as<float>() * 10) / 10;
flag = true; flag = true;
} }
@@ -125,21 +125,21 @@ protected:
} }
if (!doc["heating"]["target"].isNull() && doc["heating"]["target"].is<float>()) { if (!doc["heating"]["target"].isNull() && doc["heating"]["target"].is<float>()) {
if ( doc["heating"]["target"].as<float>() > 0 && doc["heating"]["target"].as<float>() < 100 ) { if (doc["heating"]["target"].as<float>() > 0 && doc["heating"]["target"].as<float>() < 100) {
settings.heating.target = round(doc["heating"]["target"].as<float>() * 10) / 10; settings.heating.target = round(doc["heating"]["target"].as<float>() * 10) / 10;
flag = true; flag = true;
} }
} }
if (!doc["heating"]["hysteresis"].isNull() && doc["heating"]["hysteresis"].is<float>()) { if (!doc["heating"]["hysteresis"].isNull() && doc["heating"]["hysteresis"].is<float>()) {
if ( doc["heating"]["hysteresis"].as<float>() >= 0 && doc["heating"]["hysteresis"].as<float>() <= 5 ) { if (doc["heating"]["hysteresis"].as<float>() >= 0 && doc["heating"]["hysteresis"].as<float>() <= 5) {
settings.heating.hysteresis = round(doc["heating"]["hysteresis"].as<float>() * 10) / 10; settings.heating.hysteresis = round(doc["heating"]["hysteresis"].as<float>() * 10) / 10;
flag = true; flag = true;
} }
} }
if (!doc["heating"]["maxTemp"].isNull() && doc["heating"]["maxTemp"].is<unsigned char>()) { if (!doc["heating"]["maxTemp"].isNull() && doc["heating"]["maxTemp"].is<unsigned char>()) {
if ( doc["heating"]["maxTemp"].as<unsigned char>() > 0 && doc["heating"]["maxTemp"].as<unsigned char>() <= 100 && doc["heating"]["maxTemp"].as<unsigned char>() > settings.heating.minTemp ) { if (doc["heating"]["maxTemp"].as<unsigned char>() > 0 && doc["heating"]["maxTemp"].as<unsigned char>() <= 100 && doc["heating"]["maxTemp"].as<unsigned char>() > settings.heating.minTemp) {
settings.heating.maxTemp = doc["heating"]["maxTemp"].as<unsigned char>(); settings.heating.maxTemp = doc["heating"]["maxTemp"].as<unsigned char>();
vars.parameters.heatingMaxTemp = settings.heating.maxTemp; vars.parameters.heatingMaxTemp = settings.heating.maxTemp;
flag = true; flag = true;
@@ -147,7 +147,7 @@ protected:
} }
if (!doc["heating"]["minTemp"].isNull() && doc["heating"]["minTemp"].is<unsigned char>()) { if (!doc["heating"]["minTemp"].isNull() && doc["heating"]["minTemp"].is<unsigned char>()) {
if ( doc["heating"]["minTemp"].as<unsigned char>() >= 0 && doc["heating"]["minTemp"].as<unsigned char>() < 100 && doc["heating"]["minTemp"].as<unsigned char>() < settings.heating.maxTemp ) { if (doc["heating"]["minTemp"].as<unsigned char>() >= 0 && doc["heating"]["minTemp"].as<unsigned char>() < 100 && doc["heating"]["minTemp"].as<unsigned char>() < settings.heating.maxTemp) {
settings.heating.minTemp = doc["heating"]["minTemp"].as<unsigned char>(); settings.heating.minTemp = doc["heating"]["minTemp"].as<unsigned char>();
vars.parameters.heatingMinTemp = settings.heating.minTemp; vars.parameters.heatingMinTemp = settings.heating.minTemp;
flag = true; flag = true;
@@ -162,14 +162,14 @@ protected:
} }
if (!doc["dhw"]["target"].isNull() && doc["dhw"]["target"].is<unsigned char>()) { if (!doc["dhw"]["target"].isNull() && doc["dhw"]["target"].is<unsigned char>()) {
if ( doc["dhw"]["target"].as<unsigned char>() >= 0 && doc["dhw"]["target"].as<unsigned char>() < 100 ) { if (doc["dhw"]["target"].as<unsigned char>() >= 0 && doc["dhw"]["target"].as<unsigned char>() < 100) {
settings.dhw.target = doc["dhw"]["target"].as<unsigned char>(); settings.dhw.target = doc["dhw"]["target"].as<unsigned char>();
flag = true; flag = true;
} }
} }
if (!doc["dhw"]["maxTemp"].isNull() && doc["dhw"]["maxTemp"].is<unsigned char>()) { if (!doc["dhw"]["maxTemp"].isNull() && doc["dhw"]["maxTemp"].is<unsigned char>()) {
if ( doc["dhw"]["maxTemp"].as<unsigned char>() > 0 && doc["dhw"]["maxTemp"].as<unsigned char>() <= 100 && doc["dhw"]["maxTemp"].as<unsigned char>() > settings.dhw.minTemp ) { if (doc["dhw"]["maxTemp"].as<unsigned char>() > 0 && doc["dhw"]["maxTemp"].as<unsigned char>() <= 100 && doc["dhw"]["maxTemp"].as<unsigned char>() > settings.dhw.minTemp) {
settings.dhw.maxTemp = doc["dhw"]["maxTemp"].as<unsigned char>(); settings.dhw.maxTemp = doc["dhw"]["maxTemp"].as<unsigned char>();
vars.parameters.dhwMaxTemp = settings.dhw.maxTemp; vars.parameters.dhwMaxTemp = settings.dhw.maxTemp;
flag = true; flag = true;
@@ -177,7 +177,7 @@ protected:
} }
if (!doc["dhw"]["minTemp"].isNull() && doc["dhw"]["minTemp"].is<unsigned char>()) { if (!doc["dhw"]["minTemp"].isNull() && doc["dhw"]["minTemp"].is<unsigned char>()) {
if ( doc["dhw"]["minTemp"].as<unsigned char>() >= 0 && doc["dhw"]["minTemp"].as<unsigned char>() < 100 && doc["dhw"]["minTemp"].as<unsigned char>() < settings.dhw.maxTemp ) { if (doc["dhw"]["minTemp"].as<unsigned char>() >= 0 && doc["dhw"]["minTemp"].as<unsigned char>() < 100 && doc["dhw"]["minTemp"].as<unsigned char>() < settings.dhw.maxTemp) {
settings.dhw.minTemp = doc["dhw"]["minTemp"].as<unsigned char>(); settings.dhw.minTemp = doc["dhw"]["minTemp"].as<unsigned char>();
vars.parameters.dhwMinTemp = settings.dhw.minTemp; vars.parameters.dhwMinTemp = settings.dhw.minTemp;
flag = true; flag = true;
@@ -192,35 +192,35 @@ protected:
} }
if (!doc["pid"]["p_factor"].isNull() && doc["pid"]["p_factor"].is<float>()) { if (!doc["pid"]["p_factor"].isNull() && doc["pid"]["p_factor"].is<float>()) {
if ( doc["pid"]["p_factor"].as<float>() >= 0 && doc["pid"]["p_factor"].as<float>() <= 20 ) { if (doc["pid"]["p_factor"].as<float>() >= 0 && doc["pid"]["p_factor"].as<float>() <= 20) {
settings.pid.p_factor = round(doc["pid"]["p_factor"].as<float>() * 1000) / 1000; settings.pid.p_factor = round(doc["pid"]["p_factor"].as<float>() * 1000) / 1000;
flag = true; flag = true;
} }
} }
if (!doc["pid"]["i_factor"].isNull() && doc["pid"]["i_factor"].is<float>()) { if (!doc["pid"]["i_factor"].isNull() && doc["pid"]["i_factor"].is<float>()) {
if ( doc["pid"]["i_factor"].as<float>() >= 0 && doc["pid"]["i_factor"].as<float>() <= 20 ) { if (doc["pid"]["i_factor"].as<float>() >= 0 && doc["pid"]["i_factor"].as<float>() <= 20) {
settings.pid.i_factor = round(doc["pid"]["i_factor"].as<float>() * 1000) / 1000; settings.pid.i_factor = round(doc["pid"]["i_factor"].as<float>() * 1000) / 1000;
flag = true; flag = true;
} }
} }
if (!doc["pid"]["d_factor"].isNull() && doc["pid"]["d_factor"].is<float>()) { if (!doc["pid"]["d_factor"].isNull() && doc["pid"]["d_factor"].is<float>()) {
if ( doc["pid"]["d_factor"].as<float>() >= 0 && doc["pid"]["d_factor"].as<float>() <= 20 ) { if (doc["pid"]["d_factor"].as<float>() >= 0 && doc["pid"]["d_factor"].as<float>() <= 20) {
settings.pid.d_factor = round(doc["pid"]["d_factor"].as<float>() * 1000) / 1000; settings.pid.d_factor = round(doc["pid"]["d_factor"].as<float>() * 1000) / 1000;
flag = true; flag = true;
} }
} }
if (!doc["pid"]["maxTemp"].isNull() && doc["pid"]["maxTemp"].is<unsigned char>()) { if (!doc["pid"]["maxTemp"].isNull() && doc["pid"]["maxTemp"].is<unsigned char>()) {
if ( doc["pid"]["maxTemp"].as<unsigned char>() > 0 && doc["pid"]["maxTemp"].as<unsigned char>() <= 100 && doc["pid"]["maxTemp"].as<unsigned char>() > settings.pid.minTemp ) { if (doc["pid"]["maxTemp"].as<unsigned char>() > 0 && doc["pid"]["maxTemp"].as<unsigned char>() <= 100 && doc["pid"]["maxTemp"].as<unsigned char>() > settings.pid.minTemp) {
settings.pid.maxTemp = doc["pid"]["maxTemp"].as<unsigned char>(); settings.pid.maxTemp = doc["pid"]["maxTemp"].as<unsigned char>();
flag = true; flag = true;
} }
} }
if (!doc["pid"]["minTemp"].isNull() && doc["pid"]["minTemp"].is<unsigned char>()) { if (!doc["pid"]["minTemp"].isNull() && doc["pid"]["minTemp"].is<unsigned char>()) {
if ( doc["pid"]["minTemp"].as<unsigned char>() >= 0 && doc["pid"]["minTemp"].as<unsigned char>() < 100 && doc["pid"]["minTemp"].as<unsigned char>() < settings.pid.maxTemp ) { if (doc["pid"]["minTemp"].as<unsigned char>() >= 0 && doc["pid"]["minTemp"].as<unsigned char>() < 100 && doc["pid"]["minTemp"].as<unsigned char>() < settings.pid.maxTemp) {
settings.pid.minTemp = doc["pid"]["minTemp"].as<unsigned char>(); settings.pid.minTemp = doc["pid"]["minTemp"].as<unsigned char>();
flag = true; flag = true;
} }
@@ -233,21 +233,21 @@ protected:
} }
if (!doc["equitherm"]["n_factor"].isNull() && doc["equitherm"]["n_factor"].is<float>()) { if (!doc["equitherm"]["n_factor"].isNull() && doc["equitherm"]["n_factor"].is<float>()) {
if ( doc["equitherm"]["n_factor"].as<float>() >= 0 && doc["equitherm"]["n_factor"].as<float>() <= 20 ) { if (doc["equitherm"]["n_factor"].as<float>() >= 0 && doc["equitherm"]["n_factor"].as<float>() <= 20) {
settings.equitherm.n_factor = round(doc["equitherm"]["n_factor"].as<float>() * 1000) / 1000; settings.equitherm.n_factor = round(doc["equitherm"]["n_factor"].as<float>() * 1000) / 1000;
flag = true; flag = true;
} }
} }
if (!doc["equitherm"]["k_factor"].isNull() && doc["equitherm"]["k_factor"].is<float>()) { if (!doc["equitherm"]["k_factor"].isNull() && doc["equitherm"]["k_factor"].is<float>()) {
if ( doc["equitherm"]["k_factor"].as<float>() >= 0 && doc["equitherm"]["k_factor"].as<float>() <= 20 ) { if (doc["equitherm"]["k_factor"].as<float>() >= 0 && doc["equitherm"]["k_factor"].as<float>() <= 20) {
settings.equitherm.k_factor = round(doc["equitherm"]["k_factor"].as<float>() * 1000) / 1000; settings.equitherm.k_factor = round(doc["equitherm"]["k_factor"].as<float>() * 1000) / 1000;
flag = true; flag = true;
} }
} }
if (!doc["equitherm"]["t_factor"].isNull() && doc["equitherm"]["t_factor"].is<float>()) { if (!doc["equitherm"]["t_factor"].isNull() && doc["equitherm"]["t_factor"].is<float>()) {
if ( doc["equitherm"]["t_factor"].as<float>() >= 0 && doc["equitherm"]["t_factor"].as<float>() <= 20 ) { if (doc["equitherm"]["t_factor"].as<float>() >= 0 && doc["equitherm"]["t_factor"].as<float>() <= 20) {
settings.equitherm.t_factor = round(doc["equitherm"]["t_factor"].as<float>() * 1000) / 1000; settings.equitherm.t_factor = round(doc["equitherm"]["t_factor"].as<float>() * 1000) / 1000;
flag = true; flag = true;
} }
@@ -256,28 +256,28 @@ protected:
// sensors // sensors
if (!doc["sensors"]["outdoor"]["type"].isNull() && doc["sensors"]["outdoor"]["type"].is<unsigned char>()) { if (!doc["sensors"]["outdoor"]["type"].isNull() && doc["sensors"]["outdoor"]["type"].is<unsigned char>()) {
if ( doc["sensors"]["outdoor"]["type"].as<unsigned char>() >= 0 && doc["sensors"]["outdoor"]["type"].as<unsigned char>() <= 2 ) { if (doc["sensors"]["outdoor"]["type"].as<unsigned char>() >= 0 && doc["sensors"]["outdoor"]["type"].as<unsigned char>() <= 2) {
settings.sensors.outdoor.type = doc["sensors"]["outdoor"]["type"].as<unsigned char>(); settings.sensors.outdoor.type = doc["sensors"]["outdoor"]["type"].as<unsigned char>();
flag = true; flag = true;
} }
} }
if (!doc["sensors"]["outdoor"]["offset"].isNull() && doc["sensors"]["outdoor"]["offset"].is<float>()) { if (!doc["sensors"]["outdoor"]["offset"].isNull() && doc["sensors"]["outdoor"]["offset"].is<float>()) {
if ( doc["sensors"]["outdoor"]["offset"].as<float>() >= -10 && doc["sensors"]["outdoor"]["offset"].as<float>() <= 10 ) { if (doc["sensors"]["outdoor"]["offset"].as<float>() >= -10 && doc["sensors"]["outdoor"]["offset"].as<float>() <= 10) {
settings.sensors.outdoor.offset = round(doc["sensors"]["outdoor"]["offset"].as<float>() * 1000) / 1000; settings.sensors.outdoor.offset = round(doc["sensors"]["outdoor"]["offset"].as<float>() * 1000) / 1000;
flag = true; flag = true;
} }
} }
if (!doc["sensors"]["indoor"]["type"].isNull() && doc["sensors"]["indoor"]["type"].is<unsigned char>()) { if (!doc["sensors"]["indoor"]["type"].isNull() && doc["sensors"]["indoor"]["type"].is<unsigned char>()) {
if ( doc["sensors"]["indoor"]["type"].as<unsigned char>() >= 1 && doc["sensors"]["indoor"]["type"].as<unsigned char>() <= 2 ) { if (doc["sensors"]["indoor"]["type"].as<unsigned char>() >= 1 && doc["sensors"]["indoor"]["type"].as<unsigned char>() <= 2) {
settings.sensors.indoor.type = doc["sensors"]["indoor"]["type"].as<unsigned char>(); settings.sensors.indoor.type = doc["sensors"]["indoor"]["type"].as<unsigned char>();
flag = true; flag = true;
} }
} }
if (!doc["sensors"]["indoor"]["offset"].isNull() && doc["sensors"]["indoor"]["offset"].is<float>()) { if (!doc["sensors"]["indoor"]["offset"].isNull() && doc["sensors"]["indoor"]["offset"].is<float>()) {
if ( doc["sensors"]["indoor"]["offset"].as<float>() >= -10 && doc["sensors"]["indoor"]["offset"].as<float>() <= 10 ) { if (doc["sensors"]["indoor"]["offset"].as<float>() >= -10 && doc["sensors"]["indoor"]["offset"].as<float>() <= 10) {
settings.sensors.indoor.offset = round(doc["sensors"]["indoor"]["offset"].as<float>() * 1000) / 1000; settings.sensors.indoor.offset = round(doc["sensors"]["indoor"]["offset"].as<float>() * 1000) / 1000;
flag = true; flag = true;
} }
@@ -314,14 +314,14 @@ protected:
} }
if (!doc["temperatures"]["indoor"].isNull() && doc["temperatures"]["indoor"].is<float>()) { if (!doc["temperatures"]["indoor"].isNull() && doc["temperatures"]["indoor"].is<float>()) {
if ( settings.sensors.indoor.type == 1 && doc["temperatures"]["indoor"].as<float>() > -100 && doc["temperatures"]["indoor"].as<float>() < 100 ) { if (settings.sensors.indoor.type == 1 && doc["temperatures"]["indoor"].as<float>() > -100 && doc["temperatures"]["indoor"].as<float>() < 100) {
vars.temperatures.indoor = round(doc["temperatures"]["indoor"].as<float>() * 100) / 100; vars.temperatures.indoor = round(doc["temperatures"]["indoor"].as<float>() * 100) / 100;
flag = true; flag = true;
} }
} }
if (!doc["temperatures"]["outdoor"].isNull() && doc["temperatures"]["outdoor"].is<float>()) { if (!doc["temperatures"]["outdoor"].isNull() && doc["temperatures"]["outdoor"].is<float>()) {
if ( settings.sensors.outdoor.type == 1 && doc["temperatures"]["outdoor"].as<float>() > -100 && doc["temperatures"]["outdoor"].as<float>() < 100 ) { if (settings.sensors.outdoor.type == 1 && doc["temperatures"]["outdoor"].as<float>() > -100 && doc["temperatures"]["outdoor"].as<float>() < 100) {
vars.temperatures.outdoor = round(doc["temperatures"]["outdoor"].as<float>() * 100) / 100; vars.temperatures.outdoor = round(doc["temperatures"]["outdoor"].as<float>() * 100) / 100;
flag = true; flag = true;
} }

View File

@@ -3,9 +3,9 @@
CustomOpenTherm* ot; CustomOpenTherm* ot;
class OpenThermTask: public Task { class OpenThermTask : public Task {
public: public:
OpenThermTask(bool _enabled = false, unsigned long _interval = 0): Task(_enabled, _interval) {} OpenThermTask(bool _enabled = false, unsigned long _interval = 0) : Task(_enabled, _interval) {}
protected: protected:
void setup() { void setup() {
@@ -28,7 +28,7 @@ protected:
static byte currentHeatingTemp, currentDHWTemp = 0; static byte currentHeatingTemp, currentDHWTemp = 0;
unsigned long localResponse; unsigned long localResponse;
if ( setMasterMemberIdCode() ) { if (setMasterMemberIdCode()) {
DEBUG_F("Slave member id code: %u\r\n", vars.parameters.slaveMemberIdCode); DEBUG_F("Slave member id code: %u\r\n", vars.parameters.slaveMemberIdCode);
DEBUG_F("Master member id code: %u\r\n", settings.opentherm.memberIdCode > 0 ? settings.opentherm.memberIdCode : vars.parameters.slaveMemberIdCode); DEBUG_F("Master member id code: %u\r\n", settings.opentherm.memberIdCode > 0 ? settings.opentherm.memberIdCode : vars.parameters.slaveMemberIdCode);
@@ -48,7 +48,7 @@ protected:
return; return;
} }
if ( vars.parameters.heatingEnabled != heatingEnabled ) { if (vars.parameters.heatingEnabled != heatingEnabled) {
vars.parameters.heatingEnabled = heatingEnabled; vars.parameters.heatingEnabled = heatingEnabled;
INFO_F("Heating enabled: %s\r\n", heatingEnabled ? "on\0" : "off\0"); INFO_F("Heating enabled: %s\r\n", heatingEnabled ? "on\0" : "off\0");
} }
@@ -70,7 +70,7 @@ protected:
DEBUG_F("Master type: %u, version: %u\r\n", vars.parameters.masterType, vars.parameters.masterVersion); DEBUG_F("Master type: %u, version: %u\r\n", vars.parameters.masterType, vars.parameters.masterVersion);
DEBUG_F("Slave type: %u, version: %u\r\n", vars.parameters.slaveType, vars.parameters.slaveVersion); DEBUG_F("Slave type: %u, version: %u\r\n", vars.parameters.slaveType, vars.parameters.slaveVersion);
if ( settings.opentherm.dhwPresent ) { if (settings.opentherm.dhwPresent) {
updateMinMaxDhwTemp(); updateMinMaxDhwTemp();
} }
updateMinMaxHeatingTemp(); updateMinMaxHeatingTemp();
@@ -83,7 +83,7 @@ protected:
ot->sendBoilerReset(); ot->sendBoilerReset();
} }
if ( vars.states.diagnostic ) { if (vars.states.diagnostic) {
ot->sendServiceReset(); ot->sendServiceReset();
} }
@@ -92,7 +92,7 @@ protected:
} }
updatePressure(); updatePressure();
if ((settings.opentherm.dhwPresent && settings.dhw.enable) || settings.heating.enable || heatingEnabled ) { if ((settings.opentherm.dhwPresent && settings.dhw.enable) || settings.heating.enable || heatingEnabled) {
updateModulationLevel(); updateModulationLevel();
} else { } else {
@@ -100,17 +100,13 @@ protected:
} }
yield(); yield();
if ( settings.opentherm.dhwPresent ) { if (settings.opentherm.dhwPresent) {
updateDHWTemp(); updateDHWTemp();
} else { } else {
vars.temperatures.dhw = 0; vars.temperatures.dhw = 0;
} }
//if ( settings.heating.enable || heatingEnabled ) { updateHeatingTemp();
updateHeatingTemp();
//} else {
// vars.temperatures.heating = 0;
//}
yield(); yield();
// //
@@ -267,7 +263,7 @@ protected:
response & 0xFF response & 0xFF
);*/ );*/
} else if ( settings.opentherm.memberIdCode <= 0 ) { } else if (settings.opentherm.memberIdCode <= 0) {
return false; return false;
} }

View File

@@ -6,9 +6,9 @@ Equitherm etRegulator;
GyverPID pidRegulator(0, 0, 0); GyverPID pidRegulator(0, 0, 0);
PIDtuner pidTuner; PIDtuner pidTuner;
class RegulatorTask: public LeanTask { class RegulatorTask : public LeanTask {
public: public:
RegulatorTask(bool _enabled = false, unsigned long _interval = 0): LeanTask(_enabled, _interval) {} RegulatorTask(bool _enabled = false, unsigned long _interval = 0) : LeanTask(_enabled, _interval) {}
protected: protected:
bool tunerInit = false; bool tunerInit = false;
@@ -139,7 +139,7 @@ protected:
newTemp += prevPidResult; newTemp += prevPidResult;
} }
} else if ( settings.pid.enable && !vars.parameters.heatingEnabled && prevPidResult != 0 ) { } else if (settings.pid.enable && !vars.parameters.heatingEnabled && prevPidResult != 0) {
newTemp += prevPidResult; newTemp += prevPidResult;
} }

View File

@@ -1,9 +1,9 @@
#include <OneWire.h> #include <OneWire.h>
#include <DallasTemperature.h> #include <DallasTemperature.h>
class SensorsTask: public LeanTask { class SensorsTask : public LeanTask {
public: public:
SensorsTask(bool _enabled = false, unsigned long _interval = 0): LeanTask(_enabled, _interval) {} SensorsTask(bool _enabled = false, unsigned long _interval = 0) : LeanTask(_enabled, _interval) {}
protected: protected:
OneWire* oneWireOutdoorSensor; OneWire* oneWireOutdoorSensor;
@@ -24,17 +24,17 @@ protected:
void setup() {} void setup() {}
void loop() { void loop() {
if ( settings.sensors.outdoor.type == 2 ) { if (settings.sensors.outdoor.type == 2) {
outdoorTemperatureSensor(); outdoorTemperatureSensor();
} }
if ( settings.sensors.indoor.type == 2 ) { if (settings.sensors.indoor.type == 2) {
indoorTemperatureSensor(); indoorTemperatureSensor();
} }
} }
void outdoorTemperatureSensor() { void outdoorTemperatureSensor() {
if ( !initOutdoorSensor ) { if (!initOutdoorSensor) {
oneWireOutdoorSensor = new OneWire(settings.sensors.outdoor.pin); oneWireOutdoorSensor = new OneWire(settings.sensors.outdoor.pin);
outdoorSensor = new DallasTemperature(oneWireOutdoorSensor); outdoorSensor = new DallasTemperature(oneWireOutdoorSensor);
outdoorSensor->begin(); outdoorSensor->begin();
@@ -46,12 +46,12 @@ protected:
} }
unsigned long estimateConversionTime = millis() - startConversionTime; unsigned long estimateConversionTime = millis() - startConversionTime;
if ( estimateConversionTime < outdoorSensor->millisToWaitForConversion() ) { if (estimateConversionTime < outdoorSensor->millisToWaitForConversion()) {
return; return;
} }
bool completed = outdoorSensor->isConversionComplete(); bool completed = outdoorSensor->isConversionComplete();
if ( !completed && estimateConversionTime >= 1000 ) { if (!completed && estimateConversionTime >= 1000) {
// fail, retry // fail, retry
outdoorSensor->requestTemperatures(); outdoorSensor->requestTemperatures();
startConversionTime = millis(); startConversionTime = millis();
@@ -59,7 +59,7 @@ protected:
ERROR("[SENSORS][OUTDOOR] Could not read temperature data (no response)"); ERROR("[SENSORS][OUTDOOR] Could not read temperature data (no response)");
} }
if ( !completed ) { if (!completed) {
return; return;
} }
@@ -91,7 +91,7 @@ protected:
} }
void indoorTemperatureSensor() { void indoorTemperatureSensor() {
if ( !initIndoorSensor ) { if (!initIndoorSensor) {
oneWireIndoorSensor = new OneWire(settings.sensors.indoor.pin); oneWireIndoorSensor = new OneWire(settings.sensors.indoor.pin);
indoorSensor = new DallasTemperature(oneWireIndoorSensor); indoorSensor = new DallasTemperature(oneWireIndoorSensor);
indoorSensor->begin(); indoorSensor->begin();
@@ -103,12 +103,12 @@ protected:
} }
unsigned long estimateConversionTime = millis() - startConversionTime; unsigned long estimateConversionTime = millis() - startConversionTime;
if ( estimateConversionTime < indoorSensor->millisToWaitForConversion() ) { if (estimateConversionTime < indoorSensor->millisToWaitForConversion()) {
return; return;
} }
bool completed = indoorSensor->isConversionComplete(); bool completed = indoorSensor->isConversionComplete();
if ( !completed && estimateConversionTime >= 1000 ) { if (!completed && estimateConversionTime >= 1000) {
// fail, retry // fail, retry
indoorSensor->requestTemperatures(); indoorSensor->requestTemperatures();
startConversionTime = millis(); startConversionTime = millis();
@@ -116,7 +116,7 @@ protected:
ERROR("[SENSORS][INDOOR] Could not read temperature data (no response)"); ERROR("[SENSORS][INDOOR] Could not read temperature data (no response)");
} }
if ( !completed ) { if (!completed) {
return; return;
} }

View File

@@ -40,7 +40,7 @@ void setup() {
if (eeSettingsResult == 0) { if (eeSettingsResult == 0) {
INFO("Settings loaded"); INFO("Settings loaded");
if ( strcmp(SETTINGS_VALID_VALUE, settings.validationValue) != 0 ) { if (strcmp(SETTINGS_VALID_VALUE, settings.validationValue) != 0) {
INFO("Settings not valid, reset and restart..."); INFO("Settings not valid, reset and restart...");
eeSettings.reset(); eeSettings.reset();
delay(1000); delay(1000);