mirror of
https://github.com/emsesp/EMS-ESP32.git
synced 2025-12-08 08:49:52 +03:00
add auxilliary heater setting #803
This commit is contained in:
@@ -568,6 +568,12 @@ Boiler::Boiler(uint8_t device_type, int8_t device_id, uint8_t product_id, const
|
|||||||
FL_(auxHeaterOnly),
|
FL_(auxHeaterOnly),
|
||||||
DeviceValueUOM::NONE,
|
DeviceValueUOM::NONE,
|
||||||
MAKE_CF_CB(set_additionalHeaterOnly));
|
MAKE_CF_CB(set_additionalHeaterOnly));
|
||||||
|
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA,
|
||||||
|
&auxHeater_,
|
||||||
|
DeviceValueType::BOOL,
|
||||||
|
FL_(auxHeater),
|
||||||
|
DeviceValueUOM::NONE,
|
||||||
|
MAKE_CF_CB(set_additionalHeater));
|
||||||
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA,
|
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA,
|
||||||
&addHeaterDelay_,
|
&addHeaterDelay_,
|
||||||
DeviceValueType::USHORT,
|
DeviceValueType::USHORT,
|
||||||
@@ -1502,8 +1508,9 @@ void Boiler::process_HpValve(std::shared_ptr<const Telegram> telegram) {
|
|||||||
// Boiler(0x08) -> All(0x00), ?(0x0491), data: 03 01 00 00 00 02 64 00 00 14 01 2C 00 0A 00 1E 00 1E 00 00 1E 0A 1E 05 05
|
// Boiler(0x08) -> All(0x00), ?(0x0491), data: 03 01 00 00 00 02 64 00 00 14 01 2C 00 0A 00 1E 00 1E 00 00 1E 0A 1E 05 05
|
||||||
void Boiler::process_HpAdditionalHeater(std::shared_ptr<const Telegram> telegram) {
|
void Boiler::process_HpAdditionalHeater(std::shared_ptr<const Telegram> telegram) {
|
||||||
has_update(telegram, auxHeaterOnly_, 1);
|
has_update(telegram, auxHeaterOnly_, 1);
|
||||||
|
has_update(telegram, auxHeater_, 2);
|
||||||
has_update(telegram, tempParMode_, 5);
|
has_update(telegram, tempParMode_, 5);
|
||||||
has_update(telegram, addHeaterDelay_, 10);
|
// has_update(telegram, addHeaterDelay_, ?); // unknown position
|
||||||
}
|
}
|
||||||
|
|
||||||
// Settings AM200
|
// Settings AM200
|
||||||
@@ -2465,6 +2472,15 @@ bool Boiler::set_additionalHeaterOnly(const char * value, const int8_t id) {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool Boiler::set_additionalHeater(const char * value, const int8_t id) {
|
||||||
|
bool v;
|
||||||
|
if (Helpers::value2bool(value, v)) {
|
||||||
|
write_command(0x491, 2, v ? 1 : 0, 0x491);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
bool Boiler::set_tempParMode(const char * value, const int8_t id) {
|
bool Boiler::set_tempParMode(const char * value, const int8_t id) {
|
||||||
int v;
|
int v;
|
||||||
if (Helpers::value2temperature(value, v)) {
|
if (Helpers::value2temperature(value, v)) {
|
||||||
|
|||||||
@@ -243,6 +243,7 @@ class Boiler : public EMSdevice {
|
|||||||
uint8_t releaseWait_; // pos 15: Boiler release wait time (min)
|
uint8_t releaseWait_; // pos 15: Boiler release wait time (min)
|
||||||
|
|
||||||
uint8_t auxHeaterOnly_;
|
uint8_t auxHeaterOnly_;
|
||||||
|
uint8_t auxHeater_;
|
||||||
uint16_t addHeaterDelay_;
|
uint16_t addHeaterDelay_;
|
||||||
int8_t minTempSilent_;
|
int8_t minTempSilent_;
|
||||||
int8_t tempParMode_;
|
int8_t tempParMode_;
|
||||||
@@ -389,6 +390,7 @@ class Boiler : public EMSdevice {
|
|||||||
}
|
}
|
||||||
bool set_minTempSilent(const char * value, const int8_t id);
|
bool set_minTempSilent(const char * value, const int8_t id);
|
||||||
bool set_additionalHeaterOnly(const char * value, const int8_t id);
|
bool set_additionalHeaterOnly(const char * value, const int8_t id);
|
||||||
|
bool set_additionalHeater(const char * value, const int8_t id);
|
||||||
bool set_additionalHeaterDelay(const char * value, const int8_t id);
|
bool set_additionalHeaterDelay(const char * value, const int8_t id);
|
||||||
bool set_tempParMode(const char * value, const int8_t id);
|
bool set_tempParMode(const char * value, const int8_t id);
|
||||||
|
|
||||||
|
|||||||
@@ -368,6 +368,7 @@ MAKE_PSTR_LIST(maxHeatComp, "maxheatcomp", "heat limit compressor", "Heizgrenze
|
|||||||
MAKE_PSTR_LIST(maxHeatHeat, "maxheatheat", "heat limit heating", "Heizgrenze Heizen", "heat limit heating", "heat limit heating", "limit ciepła dla ogrzewania", "maks varmegrense oppvarming", "limite chaleur chauffage")
|
MAKE_PSTR_LIST(maxHeatHeat, "maxheatheat", "heat limit heating", "Heizgrenze Heizen", "heat limit heating", "heat limit heating", "limit ciepła dla ogrzewania", "maks varmegrense oppvarming", "limite chaleur chauffage")
|
||||||
MAKE_PSTR_LIST(maxHeatDhw, "maxheatdhw", "heat limit dhw", "Heizgrenze Warmwasser", "heat limit dhw", "heat limit dhw", "limit ciepła dla c.w.u.", "varmegrense varmtvann", "limite chaleur ecs")
|
MAKE_PSTR_LIST(maxHeatDhw, "maxheatdhw", "heat limit dhw", "Heizgrenze Warmwasser", "heat limit dhw", "heat limit dhw", "limit ciepła dla c.w.u.", "varmegrense varmtvann", "limite chaleur ecs")
|
||||||
|
|
||||||
|
MAKE_PSTR_LIST(auxHeater, "auxheater", "auxilliary heater", "Zusatzheizer")
|
||||||
MAKE_PSTR_LIST(auxHeaterOnly, "auxheateronly", "auxilliary heater only", "nur Zusatzheizer")
|
MAKE_PSTR_LIST(auxHeaterOnly, "auxheateronly", "auxilliary heater only", "nur Zusatzheizer")
|
||||||
MAKE_PSTR_LIST(addHeaterDelay, "addheaterdelay", "additional heater on delay", "Zusatzheizer Einschaltverzögerung")
|
MAKE_PSTR_LIST(addHeaterDelay, "addheaterdelay", "additional heater on delay", "Zusatzheizer Einschaltverzögerung")
|
||||||
MAKE_PSTR_LIST(minTempSilent, "mintempsilent", "min. outside temp. for silent mode", "Minimale Aussentemperatur Silentmodus")
|
MAKE_PSTR_LIST(minTempSilent, "mintempsilent", "min. outside temp. for silent mode", "Minimale Aussentemperatur Silentmodus")
|
||||||
|
|||||||
Reference in New Issue
Block a user