Screenshots From the README of waermewacht/integration.
About
Wärmewacht is a health check for heat pumps that calculates efficiency figures from the entities the pump already provides. It reports performance factors per operating mode and time period, such as heating, hot water and a combined value, for today, yesterday, the month, the season and in total. It also counts compressor starts, short runs and defrosts, and binary sensors flag conspicuous cycling, a drop in efficiency and backup heater use on mild days. Optional cost calculation uses electricity prices, including dynamic tariffs, and can account for own PV and battery. For gas or oil boilers it derives the heat load of the house from fuel use, as a basis for sizing a heat pump. It only reads data and never controls the heat pump, works locally, and is set up in the UI.
Automatic summary of the README and code of waermewacht/integration. Something wrong, or are you the maintainer and want your own text here? Get in touch
Shows in Vulpo
Button card, Chart card, Apple Watch.Supports
- Works locallyTalks to your devices on your own network. No vendor cloud in between.
- From the MarketplaceInstalled through the Marketplace, formerly HACS.
- Actively maintainedIts author released or pushed a change in the last six months.
Provides
- Sensors
Setting it up
Install it from the Marketplace and restart Home Assistant, then add it under Settings, Devices and services.
Set up a heat pump
- NamePrefix of the entity ids.
- SourceA found heat pump fills in the entities; manual: pick them yourself.
Also asked when at the set up a heat pump step.
Entities
- Heat produced heating (meter)
- Compressor electricity heatingElectricity of the compressor for heating, without the backup heater.
- Backup heater heatingElectricity of the backup heater for heating, if it is metered apart.
- Heat produced hot water (meter)
- Compressor electricity hot water
- Backup heater hot water
- Hot water temperature (actual, tank)Actual temperature in the hot water tank, not the setpoint. Gives charges and disinfections.
- Heat removed cooling (meter)
- Compressor electricity cooling
- Boiler heat heatingHeat the boiler reports, with EMS-ESP usually …boiler_energy_heating_2 (Buderus “energy supplied”). Not …boiler_energy_heating without “_2”: EMS-ESP computes that one only from modulation × nominal power.
- Boiler heat hot waterWith EMS-ESP usually …boiler_dhw_energy_2.
- Boiler fuel heatingFuel of the boiler in kWh (EMS-ESP: boiler_gasmeterheat, in HA usually …boiler_gas_meter_heating, also for oil). Used for the heat only without a heat counter.
- Boiler fuel hot waterEMS-ESP: boiler_dhw_gasmeter, in HA usually …boiler_dhw_gas_meter.
- Compressor running (on/off or speed)An on/off entity, or a number above 0 while the compressor runs (speed, frequency, modulation in %). Not a status text such as "heating": that belongs under Activity.
- ActivityWhat the heat pump is doing (heating, hot water, defrost, ...), e.g. EMS-ESP "hpactivity". Gives defrosts and the mode of each run; without it runs are counted without a mode.
Set up a gas boiler
- Gas total (heating and hot water)A gas meter (pulse, AI-on-the-edge) or the boiler's counter, in kWh or m³, with statistics. Hot water is estimated from summer days unless you choose a hot water counter.
- Gas heating onlyOnly if the boiler counts heating and hot water apart (e.g. Viessmann ViCare); then add the hot water counter as well. Leave "Gas total" empty.
- Gas hot waterOptional: gas for hot water, if counted apart.
- Outdoor temperatureWith long-term statistics (state class measurement). A nearby weather station is fine.
- Flow temperatureOptional: the flow temperature of the boiler or the heating circuit, with long-term statistics (state class measurement). Gives the flow at 0 °C and at the design temperature – what a heat pump would have to deliver at most. Only with a hot water counter, or with a heating counter if the boiler makes no hot water: a hot water charge lifts the flow. A sensor in the heating circuit needs neither (box below).
- Flow sensor sits in the heating circuit (after buffer or mixing valve)Tick it when the sensor measures the flow of the heating circuit, not the boiler outlet (e.g. after a buffer tank or a mixing valve). Then hot water charges do not affect it, and the flow needs no hot water counter: Wärmewacht takes the hours in which the circuit runs (flow at least 25 °C, days below 15 °C), not the burner hours.
- Readings by handInstead of a counter: the unit of your gas meter. You enter its reading with the entity "Enter meter reading" or the action "Add meter reading (gas, oil)" (also for older readings, e.g. from bills). Each period between two readings of 5 to 35 days is one point of the energy signature.
- Calorific valueOnly for counters in m³: from the gas bill (kWh per m³, gross calorific value Hs).
- Z-numberOnly for counters in m³: from the gas bill (Zustandszahl).
Set up an oil boiler
- Oil total (heating and hot water)An oil meter in litres or a counter in kWh, e.g. the fuel counter of the boiler (EMS-ESP: boiler_gasmeterheat, in HA usually …boiler_gas_meter_heating, named so for oil as well), with statistics. Hot water is estimated from summer days unless you choose a hot water counter.
- Oil heating onlyOnly if the boiler counts heating and hot water apart; then add the hot water counter as well. Leave "Oil total" empty.
- Oil hot waterOptional: oil for hot water, if counted apart (EMS-ESP: boiler_dhw_gasmeter, in HA usually …boiler_dhw_gas_meter).
- Outdoor temperatureWith long-term statistics (state class measurement). A nearby weather station is fine.
- Flow temperatureOptional: the flow temperature of the boiler or the heating circuit, with long-term statistics (state class measurement). Gives the flow at 0 °C and at the design temperature – what a heat pump would have to deliver at most. Only with a hot water counter, or with a heating counter if the boiler makes no hot water: a hot water charge lifts the flow. A sensor in the heating circuit needs neither (box below).
- Flow sensor sits in the heating circuit (after buffer or mixing valve)Tick it when the sensor measures the flow of the heating circuit, not the boiler outlet (e.g. after a buffer tank or a mixing valve). Then hot water charges do not affect it, and the flow needs no hot water counter: Wärmewacht takes the hours in which the circuit runs (flow at least 25 °C, days below 15 °C), not the burner hours.
- Readings by handInstead of a counter: an oil meter (litres, counts up), the tank level (litres, counts down) or a counter in kWh. You enter it with the entity "Enter meter reading" or "Enter tank level", or the action "Add meter reading (gas, oil)". With the tank level, after filling up first "Enter refill", then the new level. Each period between two readings of 5 to 35 days is one point of the energy signature.
- Boiler typeGives the efficiency on the gross calorific value: condensing 0.87, low temperature 0.79, constant temperature (mostly before 1990) 0.70, derived from the expenditure factors of DIN V 4701-10 (IWU 2005). The heat load changes in proportion.
- Custom efficiency (Hs)Only for "Custom value": the share of the oil that becomes heat, on the gross calorific value.
After setup
- Electricity priceGross price per kWh of the heat pump's electricity; empty: no costs. With a price sensor (under “More prices”): for the hours without its price.
- Design outdoor temperatureFrom DIN/TS 12831-1 for your postcode (e.g. the BWP climate map). Without it the heat load is given per kelvin only.
- Boiler efficiencyOnly for boiler heat from fuel: heat = fuel × efficiency, on the gross calorific value (Hs) as the boiler counts its fuel. 0.87: field value of condensing gas boilers (DBU 2004), taken over for oil; a boiler that runs short and in pieces in a hybrid system reaches less.
- Electricity price sensorFor a dynamic tariff (Tibber, Nordpool, EPEX Spot …) or a template: each hour is priced with the sensor's mean of that hour from the long-term statistics (needs state class measurement), also the look-back before the setup. Unit ct/kWh, €/kWh or €/MWh.
- Electricity base priceOnly for a separate heat pump meter (heat pump tariff), gross per year. On the household meter leave it empty: that base price is paid anyway.
- Gas working priceGross, per kWh on the gross calorific value (as on the gas bill). Boiler efficiency 0.87.
- Gas base priceGross per year; spread over the days of a period.
- Grid import meter (own PV and battery)Optional: the meter of the grid connection the heat pump is behind. With it, heat pump electricity from own PV or battery costs the feed-in tariff instead of the grid price (only the costs change, not the performance factors). Not for a separate heat pump tariff meter.
- Feed-in meterWith feed-in and PV meters the heat pump gets the grid share of the whole house; without them the grid import goes to the heat pump first.
- PV production meterWith a hybrid inverter: its AC output.
- Battery charge meterOptional, only together with the discharge meter.
- Battery discharge meter
- Feed-in tariffWhat own electricity would have earned when fed in; empty: 0.
- Valid from
- Electricity pricect/kWh gross, grid electricity. With a price sensor: for hours without its price.
- Boiler efficiency (Hs)Share of the gas that becomes heat, on the gross calorific value. 0.87 is the field value of condensing boilers (Jagnow/Wolff); older boilers are lower. The heat load changes in proportion.
- Design outdoor temperatureFrom DIN/TS 12831-1 for your postcode (e.g. the BWP climate map). Without it the heat load is given per kelvin only.
- Gas working priceGross, per kWh on the gross calorific value (as on the gas bill).
- Gas base priceGross per year.
- Calorific valueOnly for counters in m³: from the gas bill.
- Z-numberOnly for counters in m³: from the gas bill.
- Electricity priceGross price per kWh of the heat pump's electricity; empty: no costs. With a price sensor (under “More prices”): for the hours without its price.
- Design outdoor temperatureFrom DIN/TS 12831-1 for your postcode (e.g. the BWP climate map). Without it the heat load is given per kelvin only.
- Boiler efficiencyOnly for boiler heat from fuel: heat = fuel × efficiency, on the gross calorific value (Hs) as the boiler counts its fuel. 0.87: field value of condensing gas boilers (DBU 2004), taken over for oil; a boiler that runs short and in pieces in a hybrid system reaches less.
- Electricity price sensorFor a dynamic tariff (Tibber, Nordpool, EPEX Spot …) or a template: each hour is priced with the sensor's mean of that hour from the long-term statistics (needs state class measurement), also the look-back before the setup. Unit ct/kWh, €/kWh or €/MWh.
- Electricity base priceOnly for a separate heat pump meter (heat pump tariff), gross per year. On the household meter leave it empty: that base price is paid anyway.
- Gas working priceGross, per kWh on the gross calorific value (as on the gas bill). Boiler efficiency 0.87.
- Gas base priceGross per year; spread over the days of a period.
- Grid import meter (own PV and battery)Optional: the meter of the grid connection the heat pump is behind. With it, heat pump electricity from own PV or battery costs the feed-in tariff instead of the grid price (only the costs change, not the performance factors). Not for a separate heat pump tariff meter.
- Feed-in meterWith feed-in and PV meters the heat pump gets the grid share of the whole house; without them the grid import goes to the heat pump first.
- PV production meterWith a hybrid inverter: its AC output.
- Battery charge meterOptional, only together with the discharge meter.
- Battery discharge meter
- Feed-in tariffWhat own electricity would have earned when fed in; empty: 0.
- Valid from
- Electricity pricect/kWh gross, grid electricity. With a price sensor: for hours without its price.
- Electricity priceGross price per kWh of the heat pump's electricity; empty: no costs. With a price sensor (under “More prices”): for the hours without its price.
- Design outdoor temperatureFrom DIN/TS 12831-1 for your postcode (e.g. the BWP climate map). Without it the heat load is given per kelvin only.
- Boiler efficiencyOnly for boiler heat from fuel: heat = fuel × efficiency, on the gross calorific value (Hs) as the boiler counts its fuel. 0.87: field value of condensing gas boilers (DBU 2004), taken over for oil; a boiler that runs short and in pieces in a hybrid system reaches less.
- Electricity price sensorFor a dynamic tariff (Tibber, Nordpool, EPEX Spot …) or a template: each hour is priced with the sensor's mean of that hour from the long-term statistics (needs state class measurement), also the look-back before the setup. Unit ct/kWh, €/kWh or €/MWh.
- Electricity base priceOnly for a separate heat pump meter (heat pump tariff), gross per year. On the household meter leave it empty: that base price is paid anyway.
- Gas working priceGross, per kWh on the gross calorific value (as on the gas bill). Boiler efficiency 0.87.
- Gas base priceGross per year; spread over the days of a period.
- Grid import meter (own PV and battery)Optional: the meter of the grid connection the heat pump is behind. With it, heat pump electricity from own PV or battery costs the feed-in tariff instead of the grid price (only the costs change, not the performance factors). Not for a separate heat pump tariff meter.
- Feed-in meterWith feed-in and PV meters the heat pump gets the grid share of the whole house; without them the grid import goes to the heat pump first.
- PV production meterWith a hybrid inverter: its AC output.
- Battery charge meterOptional, only together with the discharge meter.
- Battery discharge meter
- Feed-in tariffWhat own electricity would have earned when fed in; empty: 0.
- Valid from
- Electricity pricect/kWh gross, grid electricity. With a price sensor: for hours without its price.
- Electricity priceGross price per kWh of the heat pump's electricity; empty: no costs. With a price sensor (under “More prices”): for the hours without its price.
- Design outdoor temperatureFrom DIN/TS 12831-1 for your postcode (e.g. the BWP climate map). Without it the heat load is given per kelvin only.
- Boiler efficiencyOnly for boiler heat from fuel: heat = fuel × efficiency, on the gross calorific value (Hs) as the boiler counts its fuel. 0.87: field value of condensing gas boilers (DBU 2004), taken over for oil; a boiler that runs short and in pieces in a hybrid system reaches less.
- Electricity price sensorFor a dynamic tariff (Tibber, Nordpool, EPEX Spot …) or a template: each hour is priced with the sensor's mean of that hour from the long-term statistics (needs state class measurement), also the look-back before the setup. Unit ct/kWh, €/kWh or €/MWh.
- Electricity base priceOnly for a separate heat pump meter (heat pump tariff), gross per year. On the household meter leave it empty: that base price is paid anyway.
- Gas working priceGross, per kWh on the gross calorific value (as on the gas bill). Boiler efficiency 0.87.
- Gas base priceGross per year; spread over the days of a period.
- Grid import meter (own PV and battery)Optional: the meter of the grid connection the heat pump is behind. With it, heat pump electricity from own PV or battery costs the feed-in tariff instead of the grid price (only the costs change, not the performance factors). Not for a separate heat pump tariff meter.
- Feed-in meterWith feed-in and PV meters the heat pump gets the grid share of the whole house; without them the grid import goes to the heat pump first.
- PV production meterWith a hybrid inverter: its AC output.
- Battery charge meterOptional, only together with the discharge meter.
- Battery discharge meter
- Feed-in tariffWhat own electricity would have earned when fed in; empty: 0.
- Valid from
- Electricity pricect/kWh gross, grid electricity. With a price sensor: for hours without its price.
- Boiler typeGives the efficiency on the gross calorific value: condensing 0.87, low temperature 0.79, constant temperature (mostly before 1990) 0.70, derived from the expenditure factors of DIN V 4701-10 (IWU 2005). The heat load changes in proportion.
- Energy per litre (Hs)Gross calorific value of heating oil EL: 10.66 kWh/l (net 10 kWh/l after HeizkostenV, ratio 0.938 after the KfW/BAFA infosheet). Change it only if your dealer names another value.
- Custom efficiency (Hs)Only for "Custom value": the share of the oil that becomes heat, on the gross calorific value.
- Design outdoor temperatureFrom DIN/TS 12831-1 for your postcode (e.g. the BWP climate map). Without it the heat load is given per kelvin only.
- Oil priceGross per 100 litres, as dealers quote it (e.g. for 3000 l).
Texts from the code of waermewacht/integration.
Entities
- Binary sensorsConspicuous cycling, Efficiency dropped, Backup heater on mild days, Backup heater in hot water charges, Hot water efficiency below last year, Conspicuous status messages, System pressure dropped
- ButtonsReport for a bug report, Recalculate look-back
- NumbersEnter meter reading, Enter tank level, Enter refill
- SensorsCOP heating today, COP heating yesterday, COP heating month, COP heating season, COP heating total, COP hot water today, COP hot water yesterday, COP hot water month, COP hot water season, COP hot water total, COP heating+DHW today, COP heating+DHW yesterday, and 77 more
Actions
- ReportHeat, electricity and ratios of a period, also before the setup (from the long-term statistics), with months.
- Heat pump
- Start
- End
- Performance curveRatio per 2-K class of the daily mean outdoor temperature, without standby (at least 7 days per class).
- Heat pump
- Start
- End
- Scope
- Heat loadEnergy signature: weekly heating power over the weekly mean outdoor temperature (weeks below 12 °C).
- Heat pump
- Start
- End
- Design outdoor temperature
- Add meter reading (gas, oil)Adds a reading of the gas or oil meter or the oil tank level, now or at a time in the past (e.g. from a bill). A reading at the same minute replaces the old one.
- Gas or oil boiler
- Reading
- Time
- Remove meter reading (gas, oil)Removes the reading at this time (to the minute), e.g. a typo.
- Gas or oil boiler
- Time
- Add oil refillAdds a refill of the oil tank, now or at a time in the past (e.g. from the delivery note). A refill at the same minute replaces the old one; a tank level at the same minute counts as read after the refill.
- Oil boiler
- Litres
- Time
- Remove oil refillRemoves the refill at this time (to the minute), e.g. a typo.
- Oil boiler
- Time
Troubleshooting
- DiagnosticsDownloads a diagnostics file to attach to a bug report.
- Repair noticesNotices it can show in Settings, Repairs:Wärmewacht: entity missing, Wärmewacht: unusable unit, Wärmewacht: flow rate implausible, Wärmewacht: flow rate 0 while heating, Wärmewacht: total counter instead of day values, Wärmewacht: day counter instead of total, Wärmewacht: no new energy values, Wärmewacht: energy entities changed meaning, Wärmewacht: activity entity without an activity, Wärmewacht: compressor without a usable value, Wärmewacht: flow and return swapped?, Wärmewacht: meter stands still, Wärmewacht: source unreachable, Wärmewacht: outdoor temperature unusable, Wärmewacht: own sensor as a source
From the README
Vorlagen: Die Vorlagen für EMS-ESP, Bosch HomeCom und Daikin Altherma (P1P2MQTT) laufen an echten Anlagen, alle anderen sind Beta (siehe Voraussetzungen).
Wie effizient arbeitet deine Wärmepumpe wirklich? Wärmewacht berechnet in Home Assistant Arbeitszahlen je Betriebsart und Zeitraum, zählt Starts, Kurzläufe und Abtauungen und zeigt einige Diagnosewerte. Grundlage sind die Entitäten, die deine Wärmepumpe schon liefert. Wärmewacht liest nur und steuert nie. Keine Cloud, keine Netzabfragen.
Information
- Installs
- 56 sharing analytics
- GitHub stars
- 14
- Connection
- Works locally
- Upkeep
- Updated in the last 6 months
- Version
- v0.11.0,
- Kind
- Marketplace integration
- Needs
- Needs the Marketplace (HACS on 2026.10 and older)
- Domain
waermewacht- Issues
- Report an issue














