Merge pull request #29 from p0l0us/water_temp_200_hack
Water temp 200 shown as 80 hack.
This commit is contained in:
commit
5120926a8a
@ -5,10 +5,11 @@ namespace esphome {
|
|||||||
namespace truma_inetbox {
|
namespace truma_inetbox {
|
||||||
|
|
||||||
static const char *const TAG = "truma_inetbox.water_climate";
|
static const char *const TAG = "truma_inetbox.water_climate";
|
||||||
|
|
||||||
void TrumaWaterClimate::setup() {
|
void TrumaWaterClimate::setup() {
|
||||||
this->parent_->get_heater()->add_on_message_callback([this](const StatusFrameHeater *status_heater) {
|
this->parent_->get_heater()->add_on_message_callback([this](const StatusFrameHeater *status_heater) {
|
||||||
// Publish updated state
|
// Publish updated state
|
||||||
this->target_temperature = temp_code_to_decimal(status_heater->target_temp_water);
|
this->target_temperature = water_temp_200_fix(temp_code_to_decimal(status_heater->target_temp_water));
|
||||||
this->current_temperature = temp_code_to_decimal(status_heater->current_temp_water);
|
this->current_temperature = temp_code_to_decimal(status_heater->current_temp_water);
|
||||||
this->mode = (status_heater->target_temp_water == TargetTemp::TARGET_TEMP_OFF) ? climate::CLIMATE_MODE_OFF
|
this->mode = (status_heater->target_temp_water == TargetTemp::TARGET_TEMP_OFF) ? climate::CLIMATE_MODE_OFF
|
||||||
: climate::CLIMATE_MODE_HEAT;
|
: climate::CLIMATE_MODE_HEAT;
|
||||||
|
|||||||
@ -27,6 +27,13 @@ float temp_code_to_decimal(u_int16_t val, float zero) {
|
|||||||
return ((float) val) / 10.0f - 273.0f;
|
return ((float) val) / 10.0f - 273.0f;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
float water_temp_200_fix(float val) {
|
||||||
|
if (val == 200) {
|
||||||
|
return 80;
|
||||||
|
}
|
||||||
|
return val;
|
||||||
|
}
|
||||||
|
|
||||||
float temp_code_to_decimal(TargetTemp val, float zero) { return temp_code_to_decimal((u_int16_t) val, zero); }
|
float temp_code_to_decimal(TargetTemp val, float zero) { return temp_code_to_decimal((u_int16_t) val, zero); }
|
||||||
|
|
||||||
TargetTemp decimal_to_temp(u_int8_t val) { return (TargetTemp) ((((u_int16_t) val) + 273) * 10); }
|
TargetTemp decimal_to_temp(u_int8_t val) { return (TargetTemp) ((((u_int16_t) val) + 273) * 10); }
|
||||||
|
|||||||
@ -16,6 +16,7 @@ u_int8_t addr_parity(const u_int8_t pid);
|
|||||||
u_int8_t data_checksum(const u_int8_t *message, u_int8_t length, uint16_t sum);
|
u_int8_t data_checksum(const u_int8_t *message, u_int8_t length, uint16_t sum);
|
||||||
float temp_code_to_decimal(u_int16_t val, float zero = NAN);
|
float temp_code_to_decimal(u_int16_t val, float zero = NAN);
|
||||||
float temp_code_to_decimal(TargetTemp val, float zero = NAN);
|
float temp_code_to_decimal(TargetTemp val, float zero = NAN);
|
||||||
|
float water_temp_200_fix(float val);
|
||||||
TargetTemp decimal_to_temp(u_int8_t val);
|
TargetTemp decimal_to_temp(u_int8_t val);
|
||||||
TargetTemp decimal_to_temp(float val);
|
TargetTemp decimal_to_temp(float val);
|
||||||
TargetTemp decimal_to_room_temp(u_int8_t val);
|
TargetTemp decimal_to_room_temp(u_int8_t val);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user