We’re using Tibber as our electricity supplier — we have the Tibber Pulse reading our power usage and making it available in Home Assistant, through an integration.
But Tibber also controls our heat-pump, by interfacing a Sensibo Sky. Tibber’s smart heating control takes multiple factors into account; outside temperature, power price, thermal inertia. A clever algorithm, made by clever people — it works really well 🙂
I found an easy way to “hook into” this heat control, using a simple Home Assistant automation.
Table of contents
Prerequisites
For this to work; you obviously need Tibber to control some sort of heating device in your home. This device must also be integrated into Home Assistant — allowing you to “reach” the temperature set point value controlled by Tibber.
Home Assistant
Climate
We’re using the Sensibo Sky, which controls our heat-pump. Adding the sensibo
climate platform, makes it available as a thermostat in Home Assistant.
Below is the configuration for the Sensibo and generic thermostat integrations. The generic thermostat simply connects a sensor and switch together; to control a heater, or air conditioning.
I’m using an Aqara temperature sensor and TP-Link HS100 smart plug, but you can use anything that can be integrated into Home Assistant.
climate:
- platform: sensibo
api_key: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
- platform: generic_thermostat
name: Play room
heater: switch.playroom_heater
target_sensor: sensor.playroom_temperature
min_cycle_duration: 2
cold_tolerance: 0.3
hot_tolerance: 0
Automation
Now to connect the two climate integrations; the automation below is triggered when the set temperature is changed on the Sensibo. The new set temperature is then applied to the generic thermostat as well.
- id: '1638281776325'
alias: Mirror temperature set point from Sensibo
description: ''
trigger:
- platform: state
entity_id: climate.heat_pump
attribute: temperature
condition: []
action:
- service: climate.set_temperature
target:
entity_id: climate.play_room
data:
temperature: '{{ state_attr(''climate.heat_pump'', ''temperature'') | float }}'
mode: single
Ending thoughts
This was really easy to implement, but so very useful! We had a dumb convection heater, with a mechanical thermostat, that we didn’t use. With a cheap smart plug and some Home Assistant magic; it’s now a smart heater with a powerful controlling algorithm 👍
Last commit 2024-04-05, with message: Tag cleanup.