Gå til indhold

Better Thermostat - Intelligent Varmestyring

Medium 30 min

Better Thermostat er en HACS integration der gør dine “dumme” radiator-termostater smarte. Den bruger en ekstern temperatursensor, vinduessensorer og vejrdata til at optimere varmen og spare energi.

Better Thermostat oversigt

Radiator-termostater (TRV) måler temperaturen direkte ved radiatoren - som typisk er 2-5°C varmere end resten af rummet. Better Thermostat løser dette:

ProblemBetter Thermostat Løsning
Forkert temperaturBruger ekstern sensor til reel rumtemperatur
Åbent vindue = spildAutomatisk stop ved åbent vindue
Manuel justeringPresets: Eco, Comfort, Away, Boost
Flere radiatorerGruppér TRV’er i samme rum
KalibreringAutomatisk offset-kalibrering

Hardware (du har sandsynligvis allerede)

Sektion kaldt “Hardware (du har sandsynligvis allerede)”
KomponentEksemplerNødvendig?
Radiator termostat (TRV)Shelly TRV, TRÅDFRI, Sonoff TRVZB, Aqara✅ Ja
TemperatursensorShelly Wall Display, Aqara, IKEA Vindstyrka✅ Anbefalet
VinduessensorAqara, Sonoff, Shelly⭐ Valgfri
Home AssistantMed HACS installeret✅ Ja

Baseret på din Home Assistant har du allerede:

  • Shelly TRV radiator-termostater i stuen
  • Shelly Wall Display med temperatursensor
  • Flere temperatursensorer rundt i huset
  1. Åbn HACS i Home Assistant
  2. Klik på Integrations
  3. Søg efter Better Thermostat
  4. Klik Download og genstart Home Assistant
  1. Gå til Indstillinger → Enheder og tjenester
  2. Klik Tilføj integration
  3. Søg Better Thermostat
  4. Følg opsætningsguiden

Ved oprettelse skal du angive:

FeltBeskrivelseEksempel
NavnNavn på termostaten”Stue Better”
ThermostatDin eksisterende TRVclimate.shelly_trv_stue
Temperature SensorEkstern rumtemperatursensorsensor.shelly_wall_display_temperature
Window SensorVinduessensor (valgfri)binary_sensor.vindue_stue
# Disse kan justeres via UI efter oprettelse:
# Temperatur offsets
outdoor_sensor: sensor.openweathermap_temperature
window_open_timeout: 30 # sekunder før reaktion på åbent vindue
# Presets (standard værdier)
eco_temp: 19
comfort_temp: 21
boost_temp: 24
away_temp: 16
sleep_temp: 18

Her er et komplet eksempel fra dit setup med stuen der har 2 Shelly TRV’er:

  1. Tilføj integration → Better Thermostat
  2. Navn: “Stue Varme”
  3. Thermostat: Vælg begge TRV’er (gruppering)
    • climate.shelly_trv_stue_1
    • climate.shelly_trv_stue_2
  4. Temperature Sensor: sensor.shelly_wall_display_temperature
  5. Window Sensor: binary_sensor.vindue_stue (hvis du har en)

Efter oprettelse får du:

# Ny climate entitet
climate.stue_varme:
current_temperature: 21.5°C # Fra Wall Display
target_temperature: 21°C
preset_mode: comfort
# Attributter
hvac_action: heating
window_open: false
PresetDefault TempAnvendelse
None20°CStandard
Eco19°CEnergibesparelse
Comfort21°CHjemme og aktiv
Boost24°CHurtig opvarmning
Away16°CIkke hjemme
Sleep18°CNat
# Via automation eller service call
service: climate.set_temperature
target:
entity_id: climate.stue_varme
data:
temperature: 22

Skift preset baseret på tilstedeværelse

Sektion kaldt “Skift preset baseret på tilstedeværelse”
automation:
- alias: "Varme: Away når ingen hjemme"
trigger:
- platform: state
entity_id: group.personer_hjemme
to: "not_home"
for:
minutes: 30
action:
- service: climate.set_preset_mode
target:
entity_id:
- climate.stue_varme
- climate.sovevaerelse_varme
- climate.kontor_varme
data:
preset_mode: away
- alias: "Varme: Comfort når hjemme"
trigger:
- platform: state
entity_id: group.personer_hjemme
to: "home"
action:
- service: climate.set_preset_mode
target:
entity_id:
- climate.stue_varme
- climate.sovevaerelse_varme
data:
preset_mode: comfort
automation:
- alias: "Varme: Sleep om natten"
trigger:
- platform: time
at: "22:30:00"
action:
- service: climate.set_preset_mode
target:
entity_id:
- climate.stue_varme
- climate.sovevaerelse_varme
data:
preset_mode: sleep
- alias: "Varme: Comfort om morgenen"
trigger:
- platform: time
at: "06:30:00"
condition:
- condition: state
entity_id: group.personer_hjemme
state: "home"
action:
- service: climate.set_preset_mode
target:
entity_id:
- climate.stue_varme
- climate.sovevaerelse_varme
data:
preset_mode: comfort
automation:
- alias: "Kontor: Boost ved tilstedeværelse"
trigger:
- platform: state
entity_id: binary_sensor.kontor_tilstedevaerelse
to: "on"
condition:
- condition: numeric_state
entity_id: sensor.kontor_temperature
below: 20
action:
- service: climate.set_preset_mode
target:
entity_id: climate.kontor_varme
data:
preset_mode: boost
# Skift til comfort efter 30 min
- delay:
minutes: 30
- service: climate.set_preset_mode
target:
entity_id: climate.kontor_varme
data:
preset_mode: comfort

Better Thermostat kan automatisk stoppe opvarmning når et vindue åbnes:

# Konfigureres ved oprettelse eller via Options
window_sensor: binary_sensor.vindue_stue
window_delay: 30 # Vent 30 sek før reaktion

Better Thermostat kan detektere åbne vinduer via pludseligt temperaturfald:

# Aktiveres i Options
window_detection_method: temperature_drop
window_detection_threshold: 0.5 # °C fald over kort tid

Installer det matchende UI card for at se ekstra info:

  1. Åbn HACS → Frontend
  2. Søg Better Thermostat UI Card
  3. Installer og genstart browser
# Lovelace card konfiguration
type: custom:better-thermostat-ui-card
entity: climate.stue_varme
eco_temperature: 19
disable_window: false
disable_summer: false
type: thermostat
entity: climate.stue_varme
features:
- type: climate-preset-modes
preset_modes:
- eco
- comfort
- boost
- away
- sleep

Better Thermostat kalibrerer automatisk din TRV baseret på forskellen mellem TRV’ens indbyggede sensor og din eksterne sensor.

  1. TRV måler 24°C (ved radiatoren)
  2. Ekstern sensor måler 21°C (i rummet)
  3. Better Thermostat beregner offset: -3°C
  4. Sender kalibrering til TRV
# Tving genkalibrering via service
service: better_thermostat.calibrate
target:
entity_id: climate.stue_varme

Kombiner med Energy dashboard:

# Tilføj til configuration.yaml
template:
- sensor:
- name: "Stue Varme Status"
state: >
{% if is_state_attr('climate.stue_varme', 'hvac_action', 'heating') %}
Varmer
{% else %}
Idle
{% endif %}
- name: "Daglig Varmetid Stue"
state: >
{{ states('sensor.stue_varme_heating_time') | float / 60 | round(1) }}
unit_of_measurement: "timer"
climate.stue_varme → Shelly TRV x2 + Wall Display temp
climate.sovevaerelse_varme → Shelly TRV + Aqara temp sensor
climate.kontor_varme → Shelly TRV + LD2410 temp (ESP32)
climate.badevaerelse_varme → Shelly TRV + Wall Display temp
# groups.yaml
varme_alle_rum:
name: "Alle rum varme"
entities:
- climate.stue_varme
- climate.sovevaerelse_varme
- climate.kontor_varme
- climate.badevaerelse_varme