# KartoffelToby/better_thermostat

This custom component for Home Assistant will add crucial features to your climate-controlling TRV (Thermostatic Radiator Valves) to save you the work of creating automations to make it smart. It combines a room-temperature sensor, window/door sensors, weather forecasts, or an ambient temperature probe to decide when it should call for heat and automatically calibrate your TRVs to fix the imprecise measurements taken in the radiator's vicinity.

Repository: https://github.com/KartoffelToby/better_thermostat
Canonical: https://ross.abutalabs.com/products/better_thermostat
Homepage: https://better-thermostat.org
Language: Python
License: AGPL-3.0
License Family: copyleft
Topics: sensor, climate, home-assistant, thermostat, hacs, zigbee2mqtt, zigbee, smarthome, spzb0001, ts0601, tuya, moes, sea801, sea802, energy-efficiency, home-automation, homeassistant, hacktoberfest
Last push: 2026-08-25T14:32:49+00:00

## Health v2 (maintenance only)
Score: 99/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 99, release rhythm 99, longevity 100
- inputs: {"age_days": 1768, "days_push": 8, "days_rel": 8, "gap_med": 8, "n_releases_24m": 8}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1471, forks 171 (observed 2026-08-28T04:04:49.269462+00:00)

## What it is
Better Thermostat is a custom Home Assistant integration that makes dumb TRV (thermostatic radiator valve) climate entities smart. It combines external room temperature sensors, window/door sensors, weather forecasts, and outside temperature probes to intelligently control heating, automatically calibrate TRV measurements, and reduce energy consumption without requiring users to write their own automations.

## Use cases
- make my dumb radiator thermostat smart using a real room temperature sensor
- automatically turn off heating when a window is open
- calibrate TRV temperature readings that are inaccurate because the sensor is next to the radiator
- save energy by pausing heating based on weather forecast or outdoor temperature
- control multiple radiator valves in one room as a single thermostat
- prevent TRV valves from getting stuck over the summer with automatic maintenance
- get better heating control with PID/MPC algorithms instead of simple target matching
- make my TRV compatible with Google Home voice control

## When to choose
- you use Home Assistant and have TRVs whose built-in sensors read inaccurately due to proximity to the heat source
- you want window-open detection, weather-based heating pauses, or valve maintenance without writing automations yourself
- you have multiple radiators in one room and want them grouped under a single thermostat entity
- you want advanced control algorithms (MPC, PID, TPI, AI Time Based) for tighter temperature control and energy savings
- your TRVs are connected via Zigbee2MQTT, deCONZ, or Tado with local calibration support

## When to avoid
- you don't use Home Assistant, as this is a HA custom component with no standalone mode
- you need a standalone thermostat controller or physical hardware rather than a software integration
- your thermostat is not exposed as a Home Assistant climate entity
- you need a simple plug-and-play solution with no additional sensors, since a separate room temperature sensor is required
- you want a cloud-native commercial smart thermostat service rather than a self-hosted, community-maintained integration

## Facets
- artifact type: plugin
- maturity: active
- function: workflow-automation, scheduling, monitoring, configuration-management
- domain: iot
- platform: iot, python, self-hosted
- tags: thermostat, trv, climate-control, heating, smart-home, home-assistant-integration, energy-saving, hvac, zigbee, tuya, home-automation, energy-efficiency, hacs, zigbee2mqtt

## Member repositories
- KartoffelToby/better_thermostat (main) score 99

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:04:49.269462+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T04:34:44.518283+00:00, confidence not recorded.
  - readme: https://github.com/KartoffelToby/better_thermostat (fetched 2026-08-28T04:04:49.269462+00:00, sha 0db12e6fc9c4)
  - homepage: https://better-thermostat.org (fetched 2026-08-29T11:42:29.405403+00:00, sha c6d5b151ae16)
  - site_page: https://better-thermostat.org/setup/getting-started (fetched 2026-08-29T11:42:29.414675+00:00, sha ad9393605469)
  - site_page: https://better-thermostat.org/faq/common-questions (fetched 2026-08-29T11:42:29.416590+00:00, sha 4370be681b7f)
- Data as of 2026-08-30T08:39:29.467469+00:00.
