mirror of
https://github.com/emsesp/EMS-ESP32.git
synced 2025-12-07 00:09:51 +03:00
add energy and meter for cooling #1940
This commit is contained in:
@@ -439,6 +439,12 @@ Boiler::Boiler(uint8_t device_type, int8_t device_id, uint8_t product_id, const
|
|||||||
DeviceValueNumOp::DV_NUMOP_DIV100,
|
DeviceValueNumOp::DV_NUMOP_DIV100,
|
||||||
FL_(nrgHeat),
|
FL_(nrgHeat),
|
||||||
DeviceValueUOM::KWH);
|
DeviceValueUOM::KWH);
|
||||||
|
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA,
|
||||||
|
&nrgCool_,
|
||||||
|
DeviceValueType::UINT24,
|
||||||
|
DeviceValueNumOp::DV_NUMOP_DIV100,
|
||||||
|
FL_(nrgCool),
|
||||||
|
DeviceValueUOM::KWH);
|
||||||
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA,
|
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA,
|
||||||
&meterTotal_,
|
&meterTotal_,
|
||||||
DeviceValueType::UINT24,
|
DeviceValueType::UINT24,
|
||||||
@@ -463,6 +469,12 @@ Boiler::Boiler(uint8_t device_type, int8_t device_id, uint8_t product_id, const
|
|||||||
DeviceValueNumOp::DV_NUMOP_DIV100,
|
DeviceValueNumOp::DV_NUMOP_DIV100,
|
||||||
FL_(meterHeat),
|
FL_(meterHeat),
|
||||||
DeviceValueUOM::KWH);
|
DeviceValueUOM::KWH);
|
||||||
|
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA,
|
||||||
|
&meterCool_,
|
||||||
|
DeviceValueType::UINT24,
|
||||||
|
DeviceValueNumOp::DV_NUMOP_DIV100,
|
||||||
|
FL_(meterCool),
|
||||||
|
DeviceValueUOM::KWH);
|
||||||
register_device_value(DeviceValueTAG::TAG_DHW1, &meterWw_, DeviceValueType::UINT24, DeviceValueNumOp::DV_NUMOP_DIV100, FL_(meterWw), DeviceValueUOM::KWH);
|
register_device_value(DeviceValueTAG::TAG_DHW1, &meterWw_, DeviceValueType::UINT24, DeviceValueNumOp::DV_NUMOP_DIV100, FL_(meterWw), DeviceValueUOM::KWH);
|
||||||
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA,
|
register_device_value(DeviceValueTAG::TAG_DEVICE_DATA,
|
||||||
&upTimeTotal_,
|
&upTimeTotal_,
|
||||||
@@ -1970,6 +1982,7 @@ void Boiler::process_HpEnergy(std::shared_ptr<const Telegram> telegram) {
|
|||||||
has_update(telegram, nrgTotal_, 0);
|
has_update(telegram, nrgTotal_, 0);
|
||||||
has_update(telegram, nrgHeat_, 4);
|
has_update(telegram, nrgHeat_, 4);
|
||||||
has_update(telegram, nrgWw_, 12);
|
has_update(telegram, nrgWw_, 12);
|
||||||
|
has_update(telegram, nrgCool_, 20);
|
||||||
}
|
}
|
||||||
|
|
||||||
// boiler(0x08) -W-> Me(0x0B), ?(0x04AF), data: 00 00 48 B2 00 00 48 55 00 00 00 5D 00 00 01 78 00 00 00 00 00 00 07 61
|
// boiler(0x08) -W-> Me(0x0B), ?(0x04AF), data: 00 00 48 B2 00 00 48 55 00 00 00 5D 00 00 01 78 00 00 00 00 00 00 07 61
|
||||||
@@ -1981,6 +1994,7 @@ void Boiler::process_HpMeters(std::shared_ptr<const Telegram> telegram) {
|
|||||||
has_update(telegram, meterEHeat_, 8);
|
has_update(telegram, meterEHeat_, 8);
|
||||||
has_update(telegram, meterHeat_, 24);
|
has_update(telegram, meterHeat_, 24);
|
||||||
has_update(telegram, meterWw_, 32);
|
has_update(telegram, meterWw_, 32);
|
||||||
|
has_update(telegram, meterCool_, 40);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Boiler::process_HpPressure(std::shared_ptr<const Telegram> telegram) {
|
void Boiler::process_HpPressure(std::shared_ptr<const Telegram> telegram) {
|
||||||
|
|||||||
@@ -225,11 +225,13 @@ class Boiler : public EMSdevice {
|
|||||||
uint32_t nrgHeat_;
|
uint32_t nrgHeat_;
|
||||||
uint32_t nrgWw2_;
|
uint32_t nrgWw2_;
|
||||||
uint32_t nrgHeat2_;
|
uint32_t nrgHeat2_;
|
||||||
|
uint32_t nrgCool_;
|
||||||
uint32_t meterTotal_;
|
uint32_t meterTotal_;
|
||||||
uint32_t meterComp_;
|
uint32_t meterComp_;
|
||||||
uint32_t meterEHeat_;
|
uint32_t meterEHeat_;
|
||||||
uint32_t meterHeat_;
|
uint32_t meterHeat_;
|
||||||
uint32_t meterWw_;
|
uint32_t meterWw_;
|
||||||
|
uint32_t meterCool_;
|
||||||
uint32_t gasMeterHeat_;
|
uint32_t gasMeterHeat_;
|
||||||
uint32_t gasMeterWw_;
|
uint32_t gasMeterWw_;
|
||||||
uint8_t hpEA0_;
|
uint8_t hpEA0_;
|
||||||
|
|||||||
@@ -554,6 +554,7 @@ MAKE_TRANSLATION(releaseWait, "releasewait", "boiler release wait time", "Wartez
|
|||||||
// energy
|
// energy
|
||||||
MAKE_TRANSLATION(nrgTotal, "nrgtotal", "total energy", "Energie gesamt", "", "", "całkowita energia", "", "", "", "", "celková energia") // TODO translate
|
MAKE_TRANSLATION(nrgTotal, "nrgtotal", "total energy", "Energie gesamt", "", "", "całkowita energia", "", "", "", "", "celková energia") // TODO translate
|
||||||
MAKE_TRANSLATION(nrgHeat, "nrgheat", "energy heating", "Energie Heizen", "", "", "energia na ogrzewanie", "", "", "ısıtma enerjisi", "", "energetické vykurovanie") // TODO translate
|
MAKE_TRANSLATION(nrgHeat, "nrgheat", "energy heating", "Energie Heizen", "", "", "energia na ogrzewanie", "", "", "ısıtma enerjisi", "", "energetické vykurovanie") // TODO translate
|
||||||
|
MAKE_TRANSLATION(nrgCool, "nrgcool", "energy cooling", "Energie Kühlen", "", "", "", "", "", "", "", "") // TODO translate
|
||||||
MAKE_TRANSLATION(nrgWw, "nrg", "energy", "Energie", "", "", "energia", "", "", "sıcak kullanım suyu enerjisi", "", "energia") // TODO translate
|
MAKE_TRANSLATION(nrgWw, "nrg", "energy", "Energie", "", "", "energia", "", "", "sıcak kullanım suyu enerjisi", "", "energia") // TODO translate
|
||||||
MAKE_TRANSLATION(nrgHeat2, "nrgheat2", "energy heating 2", "Energie Heizen 2", "", "", "energia na ogrzewanie 2", "", "", "ısıtma enerjisi 2", "", "energetické vykurovanie") // TODO translate
|
MAKE_TRANSLATION(nrgHeat2, "nrgheat2", "energy heating 2", "Energie Heizen 2", "", "", "energia na ogrzewanie 2", "", "", "ısıtma enerjisi 2", "", "energetické vykurovanie") // TODO translate
|
||||||
MAKE_TRANSLATION(nrgWw2, "nrg2", "energy 2", "Energie 2", "", "", "energia 2", "", "", "sıcak kullanım suyu enerjisi 2", "", "energia 2") // TODO translate
|
MAKE_TRANSLATION(nrgWw2, "nrg2", "energy 2", "Energie 2", "", "", "energia 2", "", "", "sıcak kullanım suyu enerjisi 2", "", "energia 2") // TODO translate
|
||||||
@@ -562,6 +563,7 @@ MAKE_TRANSLATION(meterTotal, "metertotal", "meter total", "Messung gesamt", "",
|
|||||||
MAKE_TRANSLATION(meterComp, "metercomp", "meter compressor", "Messung Kompressor", "", "", "licznik sprężarki", "", "", "", "", "meter kompresor") // TODO translate
|
MAKE_TRANSLATION(meterComp, "metercomp", "meter compressor", "Messung Kompressor", "", "", "licznik sprężarki", "", "", "", "", "meter kompresor") // TODO translate
|
||||||
MAKE_TRANSLATION(meterEHeat, "metereheat", "meter e-heater", "Messung E-Heizer", "", "", "licznik dogrzewacza", "", "", "", "", "elektrický ohrievač") // TODO translate
|
MAKE_TRANSLATION(meterEHeat, "metereheat", "meter e-heater", "Messung E-Heizer", "", "", "licznik dogrzewacza", "", "", "", "", "elektrický ohrievač") // TODO translate
|
||||||
MAKE_TRANSLATION(meterHeat, "meterheat", "meter heating", "Messung Heizen", "", "", "licznik ogrzewania", "", "", "", "", "") // TODO translate
|
MAKE_TRANSLATION(meterHeat, "meterheat", "meter heating", "Messung Heizen", "", "", "licznik ogrzewania", "", "", "", "", "") // TODO translate
|
||||||
|
MAKE_TRANSLATION(meterCool, "metercool", "meter cooling", "Messung Kühlen", "", "", "", "", "", "", "", "") // TODO translate
|
||||||
MAKE_TRANSLATION(meterWw, "meter", "meter", "Messung", "", "", "licznik", "", "", "", "", "") // TODO translate
|
MAKE_TRANSLATION(meterWw, "meter", "meter", "Messung", "", "", "licznik", "", "", "", "", "") // TODO translate
|
||||||
MAKE_TRANSLATION(gasMeterHeat, "gasmeterheat", "gas meter heating", "Gas Messung Heizen", "", "", "licznik gazu na ogrzewanie", "", "", "", "", "") // TODO translate
|
MAKE_TRANSLATION(gasMeterHeat, "gasmeterheat", "gas meter heating", "Gas Messung Heizen", "", "", "licznik gazu na ogrzewanie", "", "", "", "", "") // TODO translate
|
||||||
MAKE_TRANSLATION(gasMeterWw, "gasmeter", "gas meter", "Gas Messung", "", "", "licznik gazu", "", "", "", "", "") // TODO translate
|
MAKE_TRANSLATION(gasMeterWw, "gasmeter", "gas meter", "Gas Messung", "", "", "licznik gazu", "", "", "", "", "") // TODO translate
|
||||||
|
|||||||
Reference in New Issue
Block a user