mirror of
https://github.com/emsesp/EMS-ESP32.git
synced 2025-12-06 15:59:52 +03:00
@@ -335,6 +335,11 @@ Boiler::Boiler(uint8_t device_type, int8_t device_id, uint8_t product_id, const
|
|||||||
MAKE_CF_CB(set_emergency_temp),
|
MAKE_CF_CB(set_emergency_temp),
|
||||||
15,
|
15,
|
||||||
70);
|
70);
|
||||||
|
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA, &pc0Flow_, DeviceValueType::INT16, FL_(pc0Flow), DeviceValueUOM::LH);
|
||||||
|
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA, &pc1Flow_, DeviceValueType::INT16, FL_(pc1Flow), DeviceValueUOM::LH);
|
||||||
|
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA, &pc1On_, DeviceValueType::BOOL, FL_(pc1On), DeviceValueUOM::NONE);
|
||||||
|
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA, &pc1Rate_, DeviceValueType::UINT8, FL_(pc1Rate), DeviceValueUOM::PERCENT);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Hybrid heatpump with telegram 0xBB is readable and writeable in boiler and thermostat
|
* Hybrid heatpump with telegram 0xBB is readable and writeable in boiler and thermostat
|
||||||
* thermostat always overwrites settings in boiler
|
* thermostat always overwrites settings in boiler
|
||||||
@@ -541,7 +546,7 @@ Boiler::Boiler(uint8_t device_type, int8_t device_id, uint8_t product_id, const
|
|||||||
register_device_value(DeviceValueTAG::TAG_DHW1, &nrgSuppWw_, DeviceValueType::UINT24, FL_(nrgSuppWw), DeviceValueUOM::KWH);
|
register_device_value(DeviceValueTAG::TAG_DHW1, &nrgSuppWw_, DeviceValueType::UINT24, FL_(nrgSuppWw), DeviceValueUOM::KWH);
|
||||||
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA, &nrgSuppCooling_, DeviceValueType::UINT24, FL_(nrgSuppCooling), DeviceValueUOM::KWH);
|
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA, &nrgSuppCooling_, DeviceValueType::UINT24, FL_(nrgSuppCooling), DeviceValueUOM::KWH);
|
||||||
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA, &nrgSuppPool_, DeviceValueType::UINT24, FL_(nrgSuppPool), DeviceValueUOM::KWH);
|
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA, &nrgSuppPool_, DeviceValueType::UINT24, FL_(nrgSuppPool), DeviceValueUOM::KWH);
|
||||||
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA, &hpPower_, DeviceValueType::UINT8, DeviceValueNumOp::DV_NUMOP_DIV10, FL_(hpPower), DeviceValueUOM::KW);
|
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA, &hpPower_, DeviceValueType::UINT16, DeviceValueNumOp::DV_NUMOP_DIV10, FL_(hpPower), DeviceValueUOM::KW);
|
||||||
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA,
|
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA,
|
||||||
&hpMaxPower_,
|
&hpMaxPower_,
|
||||||
DeviceValueType::UINT8,
|
DeviceValueType::UINT8,
|
||||||
@@ -684,7 +689,12 @@ Boiler::Boiler(uint8_t device_type, int8_t device_id, uint8_t product_id, const
|
|||||||
FL_(auxHeaterOff),
|
FL_(auxHeaterOff),
|
||||||
DeviceValueUOM::NONE,
|
DeviceValueUOM::NONE,
|
||||||
MAKE_CF_CB(set_additionalHeater));
|
MAKE_CF_CB(set_additionalHeater));
|
||||||
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA, &auxHeaterStatus_, DeviceValueType::BOOL, FL_(auxHeaterStatus), DeviceValueUOM::NONE);
|
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA,
|
||||||
|
&auxHeaterStatus_,
|
||||||
|
DeviceValueType::ENUM,
|
||||||
|
FL_(enum_hpactivity),
|
||||||
|
FL_(auxHeaterStatus),
|
||||||
|
DeviceValueUOM::NONE);
|
||||||
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA, &auxHeaterLevel_, DeviceValueType::UINT8, FL_(auxHeaterLevel), DeviceValueUOM::PERCENT);
|
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA, &auxHeaterLevel_, DeviceValueType::UINT8, FL_(auxHeaterLevel), DeviceValueUOM::PERCENT);
|
||||||
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA,
|
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA,
|
||||||
&auxHeaterDelay_,
|
&auxHeaterDelay_,
|
||||||
@@ -856,10 +866,6 @@ Boiler::Boiler(uint8_t device_type, int8_t device_id, uint8_t product_id, const
|
|||||||
FL_(hpPowerLimit),
|
FL_(hpPowerLimit),
|
||||||
DeviceValueUOM::W,
|
DeviceValueUOM::W,
|
||||||
MAKE_CF_CB(set_hpPowerLimit));
|
MAKE_CF_CB(set_hpPowerLimit));
|
||||||
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA, &pc0Flow_, DeviceValueType::INT16, FL_(pc0Flow), DeviceValueUOM::LH);
|
|
||||||
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA, &pc1Flow_, DeviceValueType::INT16, FL_(pc1Flow), DeviceValueUOM::LH);
|
|
||||||
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA, &pc1On_, DeviceValueType::BOOL, FL_(pc1On), DeviceValueUOM::NONE);
|
|
||||||
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA, &pc1Rate_, DeviceValueType::UINT8, FL_(pc1Rate), DeviceValueUOM::PERCENT);
|
|
||||||
|
|
||||||
// heatpump DHW settings
|
// heatpump DHW settings
|
||||||
register_device_value(DeviceValueTAG::TAG_DHW1,
|
register_device_value(DeviceValueTAG::TAG_DHW1,
|
||||||
@@ -1660,13 +1666,17 @@ void Boiler::process_HpPower(std::shared_ptr<const Telegram> telegram) {
|
|||||||
// has_bitupdate(telegram, heating_, 0, 0); // heating on? https://github.com/emsesp/EMS-ESP32/discussions/1898
|
// has_bitupdate(telegram, heating_, 0, 0); // heating on? https://github.com/emsesp/EMS-ESP32/discussions/1898
|
||||||
has_bitupdate(telegram, hpSwitchValve_, 0, 4);
|
has_bitupdate(telegram, hpSwitchValve_, 0, 4);
|
||||||
|
|
||||||
|
has_bitupdate(telegram, elHeatStep1_, 3, 0);
|
||||||
|
has_bitupdate(telegram, elHeatStep2_, 3, 1);
|
||||||
|
has_bitupdate(telegram, elHeatStep3_, 3, 2);
|
||||||
has_bitupdate(telegram, hpCompOn_, 3, 4);
|
has_bitupdate(telegram, hpCompOn_, 3, 4);
|
||||||
has_bitupdate(telegram, hpEA0_, 3, 6);
|
has_bitupdate(telegram, hpEA0_, 3, 6);
|
||||||
has_update(telegram, hpCircSpd_, 4);
|
has_update(telegram, hpCircSpd_, 4);
|
||||||
has_update(telegram, hpBrinePumpSpd_, 5);
|
has_update(telegram, hpBrinePumpSpd_, 5);
|
||||||
has_update(telegram, auxHeaterLevel_, 6);
|
has_update(telegram, auxHeaterLevel_, 6);
|
||||||
has_update(telegram, hpActivity_, 7);
|
has_update(telegram, hpActivity_, 7);
|
||||||
has_update(telegram, hpPower_, 11);
|
has_update(telegram, auxHeaterStatus_, 8);
|
||||||
|
has_update(telegram, hpPower_, 10);
|
||||||
has_update(telegram, hpCompSpd_, 17);
|
has_update(telegram, hpCompSpd_, 17);
|
||||||
|
|
||||||
has_bitupdate(telegram, hpInput[0].state, 1, 4);
|
has_bitupdate(telegram, hpInput[0].state, 1, 4);
|
||||||
@@ -1967,7 +1977,7 @@ void Boiler::process_HpSilentMode(std::shared_ptr<const Telegram> telegram) {
|
|||||||
|
|
||||||
// Boiler(0x08) -B-> All(0x00), ?(0x0488), data: 8E 00 00 00 00 00 01 03
|
// Boiler(0x08) -B-> All(0x00), ?(0x0488), data: 8E 00 00 00 00 00 01 03
|
||||||
void Boiler::process_HpValve(std::shared_ptr<const Telegram> telegram) {
|
void Boiler::process_HpValve(std::shared_ptr<const Telegram> telegram) {
|
||||||
has_bitupdate(telegram, auxHeaterStatus_, 0, 2);
|
// has_bitupdate(telegram, auxHeaterStatus_, 0, 2);
|
||||||
has_update(telegram, auxHeatMixValve_, 7);
|
has_update(telegram, auxHeatMixValve_, 7);
|
||||||
has_update(telegram, pc1Rate_, 13); // percent
|
has_update(telegram, pc1Rate_, 13); // percent
|
||||||
}
|
}
|
||||||
@@ -2028,9 +2038,9 @@ void Boiler::process_HpSettings3(std::shared_ptr<const Telegram> telegram) {
|
|||||||
has_update(telegram, primePump_, 4);
|
has_update(telegram, primePump_, 4);
|
||||||
has_update(telegram, primePumpMod_, 5);
|
has_update(telegram, primePumpMod_, 5);
|
||||||
// has_update(telegram, hp3wayValve_, 6); // read in 48D
|
// has_update(telegram, hp3wayValve_, 6); // read in 48D
|
||||||
has_update(telegram, elHeatStep1_, 7);
|
// has_update(telegram, elHeatStep1_, 7);
|
||||||
has_update(telegram, elHeatStep2_, 8);
|
// has_update(telegram, elHeatStep2_, 8);
|
||||||
has_update(telegram, elHeatStep3_, 9);
|
// has_update(telegram, elHeatStep3_, 9);
|
||||||
}
|
}
|
||||||
|
|
||||||
// boiler(0x08) -W-> Me(0x0B), ?(0x04AE), data: 00 00 BD C4 00 00 5B 6A 00 00 00 24 00 00 62 59 00 00 00 00 00 00 00 00
|
// boiler(0x08) -W-> Me(0x0B), ?(0x04AE), data: 00 00 BD C4 00 00 5B 6A 00 00 00 24 00 00 62 59 00 00 00 00 00 00 00 00
|
||||||
|
|||||||
@@ -194,7 +194,7 @@ class Boiler : public EMSdevice {
|
|||||||
uint16_t maintenanceTime_;
|
uint16_t maintenanceTime_;
|
||||||
|
|
||||||
// heatpump
|
// heatpump
|
||||||
uint8_t hpPower_;
|
uint16_t hpPower_;
|
||||||
uint8_t hpCompOn_;
|
uint8_t hpCompOn_;
|
||||||
uint8_t hpBrinePumpSpd_;
|
uint8_t hpBrinePumpSpd_;
|
||||||
uint8_t hpCompSpd_;
|
uint8_t hpCompSpd_;
|
||||||
|
|||||||
Reference in New Issue
Block a user