mirror of
https://github.com/emsesp/EMS-ESP32.git
synced 2025-12-09 01:09:51 +03:00
Merge remote-tracking branch 'origin/dev' into idf4_no_master
This commit is contained in:
@@ -424,6 +424,15 @@ Boiler::Boiler(uint8_t device_type, int8_t device_id, uint8_t product_id, const
|
|||||||
MAKE_CF_CB(set_ww_maxpower),
|
MAKE_CF_CB(set_ww_maxpower),
|
||||||
0,
|
0,
|
||||||
130);
|
130);
|
||||||
|
register_device_value(DeviceValueTAG::TAG_BOILER_DATA_WW,
|
||||||
|
&wwMaxTemp_,
|
||||||
|
DeviceValueType::UINT,
|
||||||
|
nullptr,
|
||||||
|
FL_(wwMaxTemp),
|
||||||
|
DeviceValueUOM::DEGREES,
|
||||||
|
MAKE_CF_CB(set_ww_maxtemp),
|
||||||
|
0,
|
||||||
|
70);
|
||||||
register_device_value(DeviceValueTAG::TAG_BOILER_DATA_WW,
|
register_device_value(DeviceValueTAG::TAG_BOILER_DATA_WW,
|
||||||
&wwCircPump_,
|
&wwCircPump_,
|
||||||
DeviceValueType::BOOL,
|
DeviceValueType::BOOL,
|
||||||
@@ -794,6 +803,7 @@ void Boiler::process_UBAParameterWWPlus(std::shared_ptr<const Telegram> telegram
|
|||||||
has_update(telegram, wwDisinfectionTemp_, 12); // setting here, status in E9
|
has_update(telegram, wwDisinfectionTemp_, 12); // setting here, status in E9
|
||||||
has_update(telegram, wwSelTempSingle_, 16);
|
has_update(telegram, wwSelTempSingle_, 16);
|
||||||
has_update(telegram, wwSelTempLow_, 18);
|
has_update(telegram, wwSelTempLow_, 18);
|
||||||
|
has_update(telegram, wwMaxTemp_, 20);
|
||||||
has_update(telegram, wwChargeOptimization_, 25);
|
has_update(telegram, wwChargeOptimization_, 25);
|
||||||
|
|
||||||
uint8_t wwComfort1 = EMS_VALUE_UINT_NOTSET;
|
uint8_t wwComfort1 = EMS_VALUE_UINT_NOTSET;
|
||||||
@@ -1411,6 +1421,18 @@ bool Boiler::set_ww_maxpower(const char * value, const int8_t id) {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// set dhw maximum temperature
|
||||||
|
bool Boiler::set_ww_maxtemp(const char * value, const int8_t id) {
|
||||||
|
int v = 0;
|
||||||
|
if (!Helpers::value2number(value, v)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
write_command(EMS_TYPE_UBAParameterWWPlus, 20, v, EMS_TYPE_UBAParameterWWPlus);
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
// set min pump modulation
|
// set min pump modulation
|
||||||
bool Boiler::set_min_pump(const char * value, const int8_t id) {
|
bool Boiler::set_min_pump(const char * value, const int8_t id) {
|
||||||
int v = 0;
|
int v = 0;
|
||||||
|
|||||||
@@ -51,39 +51,40 @@ class Boiler : public EMSdevice {
|
|||||||
static constexpr uint16_t EMS_TYPE_UBAEnergySupplied = 0x494;
|
static constexpr uint16_t EMS_TYPE_UBAEnergySupplied = 0x494;
|
||||||
|
|
||||||
// ww
|
// ww
|
||||||
uint8_t wwSetTemp_; // DHW set temperature
|
uint8_t wwSetTemp_; // DHW set temperature
|
||||||
uint8_t wwSelTemp_; // DHW selected temperature
|
uint8_t wwSelTemp_; // DHW selected temperature
|
||||||
uint8_t wwSelTempLow_; // DHW lower selected temperature
|
uint8_t wwSelTempLow_; // DHW lower selected temperature
|
||||||
uint8_t wwSelTempOff_; // DHW selected temperature for off position
|
uint8_t wwSelTempOff_; // DHW selected temperature for off position
|
||||||
uint8_t wwSelTempSingle_; // DHW single charge temperature
|
uint8_t wwSelTempSingle_; // DHW single charge temperature
|
||||||
uint8_t wwType_; // 0-off, 1-flow, 2-flowbuffer, 3-buffer, 4-layered buffer
|
uint8_t wwType_; // 0-off, 1-flow, 2-flowbuffer, 3-buffer, 4-layered buffer
|
||||||
uint8_t wwComfort_; // WW comfort mode
|
uint8_t wwComfort_; // WW comfort mode
|
||||||
uint8_t wwComfort1_; // WW comfort mode RC310
|
uint8_t wwComfort1_; // WW comfort mode RC310
|
||||||
uint8_t wwCircPump_; // DHW circulation pump available
|
uint8_t wwCircPump_; // DHW circulation pump available
|
||||||
uint8_t wwChargeType_; // DHW charge type (pump or 3-way-valve)
|
uint8_t wwChargeType_; // DHW charge type (pump or 3-way-valve)
|
||||||
uint8_t wwChargeOptimization_; // DHW charge optimization
|
uint8_t wwChargeOptimization_; // DHW charge optimization
|
||||||
uint8_t wwDisinfectionTemp_; // DHW disinfection temperature to prevent infection
|
uint8_t wwDisinfectionTemp_; // DHW disinfection temperature to prevent infection
|
||||||
uint8_t wwCircMode_; // DHW circulation pump mode
|
uint8_t wwCircMode_; // DHW circulation pump mode
|
||||||
uint8_t wwCirc_; // Circulation on/off
|
uint8_t wwCirc_; // Circulation on/off
|
||||||
uint16_t wwCurTemp_; // DHW current temperature
|
uint16_t wwCurTemp_; // DHW current temperature
|
||||||
uint16_t wwCurTemp2_; // DHW current temperature storage
|
uint16_t wwCurTemp2_; // DHW current temperature storage
|
||||||
uint8_t wwCurFlow_; // DHW current flow temp in l/min
|
uint8_t wwCurFlow_; // DHW current flow temp in l/min
|
||||||
uint16_t wwStorageTemp1_; // DHW storage temp 1
|
uint16_t wwStorageTemp1_; // DHW storage temp 1
|
||||||
uint16_t wwStorageTemp2_; // DHW storage temp 2
|
uint16_t wwStorageTemp2_; // DHW storage temp 2
|
||||||
uint8_t wwActivated_; // DHW activated
|
uint8_t wwActivated_; // DHW activated
|
||||||
uint8_t wwOneTime_; // DHW one time function on/off
|
uint8_t wwOneTime_; // DHW one time function on/off
|
||||||
uint8_t wwDisinfect_; // DHW disinfection on/off
|
uint8_t wwDisinfect_; // DHW disinfection on/off
|
||||||
uint8_t wwCharging_; // DHW charging on/off
|
uint8_t wwCharging_; // DHW charging on/off
|
||||||
uint8_t wwRecharging_; // DHW recharge on/off
|
uint8_t wwRecharging_; // DHW recharge on/off
|
||||||
uint8_t wwTempOK_; // DHW temperature ok on/off
|
uint8_t wwTempOK_; // DHW temperature ok on/off
|
||||||
uint8_t wwActive_; //
|
uint8_t wwActive_; //
|
||||||
uint8_t ww3wayValve_; // 3-way valve on WW
|
uint8_t ww3wayValve_; // 3-way valve on WW
|
||||||
uint8_t wwSetPumpPower_; // ww pump speed/power?
|
uint8_t wwSetPumpPower_; // ww pump speed/power?
|
||||||
uint8_t wwFlowTempOffset_; // Boiler offset for ww heating
|
uint8_t wwFlowTempOffset_; // Boiler offset for ww heating
|
||||||
uint8_t wwMaxPower_; // DHW maximum power
|
uint8_t wwMaxPower_; // DHW maximum power
|
||||||
uint32_t wwStarts_; // DHW starts
|
uint8_t wwMaxTemp_; // DHW maximum temperature
|
||||||
uint32_t wwStarts2_; // DHW control starts
|
uint32_t wwStarts_; // DHW starts
|
||||||
uint32_t wwWorkM_; // DHW minutes
|
uint32_t wwStarts2_; // DHW control starts
|
||||||
|
uint32_t wwWorkM_; // DHW minutes
|
||||||
int8_t wwHystOn_;
|
int8_t wwHystOn_;
|
||||||
int8_t wwHystOff_;
|
int8_t wwHystOff_;
|
||||||
uint8_t wwTapActivated_; // maintenance-mode to switch DHW off
|
uint8_t wwTapActivated_; // maintenance-mode to switch DHW off
|
||||||
@@ -255,6 +256,7 @@ class Boiler : public EMSdevice {
|
|||||||
bool set_ww_temp_single(const char * value, const int8_t id);
|
bool set_ww_temp_single(const char * value, const int8_t id);
|
||||||
bool set_ww_disinfect_temp(const char * value, const int8_t id);
|
bool set_ww_disinfect_temp(const char * value, const int8_t id);
|
||||||
bool set_ww_maxpower(const char * value, const int8_t id);
|
bool set_ww_maxpower(const char * value, const int8_t id);
|
||||||
|
bool set_ww_maxtemp(const char * value, const int8_t id);
|
||||||
bool set_ww_flowTempOffset(const char * value, const int8_t id);
|
bool set_ww_flowTempOffset(const char * value, const int8_t id);
|
||||||
bool set_ww_chargeOptimization(const char * value, const int8_t id);
|
bool set_ww_chargeOptimization(const char * value, const int8_t id);
|
||||||
bool set_flow_temp(const char * value, const int8_t id);
|
bool set_flow_temp(const char * value, const int8_t id);
|
||||||
|
|||||||
Reference in New Issue
Block a user