set range for comfort point temp + offset - #2935

This commit is contained in:
proddy
2026-02-01 12:02:40 +01:00
parent abdf2c5037
commit 6b87bbb882
2 changed files with 29 additions and 32 deletions

View File

@@ -4929,13 +4929,10 @@ void Thermostat::register_device_values_hc(std::shared_ptr<Thermostat::HeatingCi
register_device_value( register_device_value(
tag, &hc->cooltemp, DeviceValueType::INT8, DeviceValueNumOp::DV_NUMOP_DIV2, FL_(cooltemp), DeviceValueUOM::DEGREES, MAKE_CF_CB(set_cooltemp), -1, 30); tag, &hc->cooltemp, DeviceValueType::INT8, DeviceValueNumOp::DV_NUMOP_DIV2, FL_(cooltemp), DeviceValueUOM::DEGREES, MAKE_CF_CB(set_cooltemp), -1, 30);
register_device_value(tag, &hc->fastHeatup, DeviceValueType::UINT8, FL_(fastheatup), DeviceValueUOM::PERCENT, MAKE_CF_CB(set_fastheatup)); register_device_value(tag, &hc->fastHeatup, DeviceValueType::UINT8, FL_(fastheatup), DeviceValueUOM::PERCENT, MAKE_CF_CB(set_fastheatup));
register_device_value(tag, register_device_value(
&hc->comfortPointOffset, tag, &hc->comfortPointOffset, DeviceValueType::UINT8, FL_(comfortPointOffset), DeviceValueUOM::DEGREES_R, MAKE_CF_CB(set_comfortPointOffset), 0, 10);
DeviceValueType::UINT8, register_device_value(
FL_(comfortPointOffset), tag, &hc->comfortPointTemp, DeviceValueType::INT8, FL_(comfortPointTemp), DeviceValueUOM::DEGREES, MAKE_CF_CB(set_comfortPointTemp), -5, 15);
DeviceValueUOM::DEGREES_R,
MAKE_CF_CB(set_comfortPointOffset));
register_device_value(tag, &hc->comfortPointTemp, DeviceValueType::UINT8, FL_(comfortPointTemp), DeviceValueUOM::DEGREES, MAKE_CF_CB(set_comfortPointTemp));
register_device_value(tag, register_device_value(tag,
&hc->switchonoptimization, &hc->switchonoptimization,
DeviceValueType::BOOL, DeviceValueType::BOOL,

View File

@@ -90,8 +90,8 @@ class Thermostat : public EMSdevice {
uint8_t switchProgMode; uint8_t switchProgMode;
int8_t redThreshold; int8_t redThreshold;
// BC400 // BC400
uint8_t comfortPointTemp; int8_t comfortPointTemp; // -5-15° C - in BC400
uint8_t comfortPointOffset; uint8_t comfortPointOffset; // 0-10° K - in BC400
// RC 10 // RC 10
uint8_t reducehours; // night reduce duration uint8_t reducehours; // night reduce duration
uint16_t reduceminutes; // remaining minutes to night->day uint16_t reduceminutes; // remaining minutes to night->day