Skip to content

Instantly share code, notes, and snippets.

@fbradyirl
Forked from r3mcos3/heating.yaml
Last active March 12, 2023 12:27
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 3 You must be signed in to fork a gist
  • Save fbradyirl/89c1d3212c915a023cb60d54bf06a5a5 to your computer and use it in GitHub Desktop.
Save fbradyirl/89c1d3212c915a023cb60d54bf06a5a5 to your computer and use it in GitHub Desktop.
Home Assistant Blueprint For Heating
blueprint:
name: Heating Control
description: Control your heating with options for group home, if temp is below
a specific value, set temp, and heating between specific times.
domain: automation
input:
heating:
name: Climate Device
description: The climate device to use.
selector:
entity:
domain: climate
temp_sensor:
name: Temperature Sensor
description: Temperature Sensor to check.
selector:
entity:
domain: sensor
device_class: temperature
groupname:
name: Person Group
description: The group of people that have to be home.
default: []
selector:
entity:
domain: group
min_temp:
name: Minimum Temp
description: If temperature is below this value and someone is home, It turns
heating on.
default: 15
selector:
number:
min: 11.0
max: 25.0
step: 0.1
mode: slider
set_temp:
name: Temperature Target
description: If the heating turns on, It heats to this target temperature.
default: 20
selector:
number:
min: 14.0
max: 25.0
step: 0.1
mode: slider
time_after:
name: Time After
description: After this time the heating turns on, so it's warm in the morning
default: 07:30:00
selector:
time: {}
time_before:
name: Time Before
description: After this time the heating turns off, This to prevent the heating
is on in the middle of the night
default: '21:30:00'
selector:
time: {}
variables:
set_temp: !input 'set_temp'
trigger:
- platform: homeassistant
event: start
- platform: event
event_type: automation_reloaded
- platform: time_pattern
minutes: /1
action:
- choose:
- conditions:
- condition: numeric_state
entity_id: !input 'temp_sensor'
below: !input 'min_temp'
- condition: time
before: !input 'time_before'
after: !input 'time_after'
- condition: or
conditions:
- condition: state
entity_id: !input 'groupname'
state: home
sequence:
- service: climate.set_preset_mode
data:
entity_id: !input 'heating'
preset_mode: 'none'
- service: climate.set_temperature
data:
entity_id: !input 'heating'
hvac_mode: heat
temperature: '{{ set_temp }}'
default:
- service: climate.set_preset_mode
data:
entity_id: !input 'heating'
preset_mode: 'eco'
mode: single
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment