167 lines
6.1 KiB
YAML
167 lines
6.1 KiB
YAML
heating_sensors:
|
|
module: virtualsensors
|
|
class: VirtualSensorsApp
|
|
priority: 10 # default priority app is 50, since most of them require sensors created by virtual sensors, it's important that virtual_sensors start first
|
|
|
|
sensors:
|
|
binary_sensor.heatpump_winter_mode:
|
|
trigger_conditions: false #sensor.month >= 10 or sensor.month <= 4
|
|
value_selector.target_temperature_heatpump:
|
|
attributes:
|
|
unit_of_measurement: °C
|
|
device_class: temperature
|
|
icon: mdi:thermometer
|
|
values:
|
|
winter_mode:
|
|
conditions: binary_sensor.heatpump_winter_mode
|
|
value: 18
|
|
default:
|
|
conditions: True
|
|
value: 27
|
|
|
|
smart_heating_templates_library:
|
|
module: templatelibrary
|
|
class: TemplateLibrary
|
|
priority: 1
|
|
|
|
templates_library:
|
|
clim_conditions:
|
|
local_expressions:
|
|
temp_threshold: "sleeping_in_the_room ? 0.5 : 1"
|
|
trigger_conditions:
|
|
- "not binary_sensor.heatpump_winter_mode and (ext_temperature >= room_temperature or ext_temperature >= target_temperature or cant_open_window) and room_temperature >= (quick_resume ? target_temperature : (target_temperature + temp_threshold))"
|
|
- not binary_sensor.heatpump_winter_mode and self and (ext_temperature >= target_temperature or cant_open_window)
|
|
- binary_sensor.heatpump_winter_mode and room_temperature <= (target_temperature - 1) and ext_temperature <= 10
|
|
- binary_sensor.heatpump_winter_mode and self and room_temperature < target_temperature
|
|
blocking_conditions:
|
|
- binary_sensor.is_everybody_sleeping and not sleeping_in_the_room and not stay_on_while_sleeping
|
|
- not room_occupancy
|
|
- not binary_sensor.someone_home
|
|
- window_open
|
|
|
|
desk_heatpump:
|
|
module: smartheatpump
|
|
class: SmartHeatpump
|
|
entity: climate.desk_heatpump
|
|
|
|
templates_library: smart_heating_templates_library
|
|
|
|
constants:
|
|
window_open: binary_sensor.desk_window
|
|
ext_temperature: sensor.ext_front_temperature
|
|
room_temperature: sensor.desk_temperature
|
|
room_occupancy: binary_sensor.desk_occupancy
|
|
target_temperature: sensor.target_temperature_heatpump
|
|
cant_open_window: binary_sensor.is_desk_sleeping
|
|
sleeping_in_the_room: binary_sensor.is_desk_sleeping
|
|
quick_resume: binary_sensor.desk_heatpump_quick_resume
|
|
stay_on_while_sleeping: false
|
|
|
|
virtual_sensors:
|
|
sensors:
|
|
value_selector.desk_heatpump_fan_mode:
|
|
auto: binary_sensor.heatpump_winter_mode
|
|
quiet: True
|
|
|
|
target_temperature: sensor.target_temperature_heatpump
|
|
hvac_mode: "binary_sensor.heatpump_winter_mode ? 'heat' : 'cool'"
|
|
fan_mode: sensor.desk_heatpump_fan_mode
|
|
|
|
smart_conditions:
|
|
callback_delay: 10 # on the morning it can happen that we ask to start and stop the heat pump immediately afterwards which in result in the heat pump ignoring the second command
|
|
template_conditions: <clim_conditions>
|
|
|
|
control_mode_selector:
|
|
sensor: input_select.desk_heatpump_override
|
|
reset_events:
|
|
- good_morning
|
|
- good_bye
|
|
|
|
quick_resume:
|
|
sensor: binary_sensor.desk_heatpump_quick_resume
|
|
reset_events: good_morning
|
|
|
|
#input_buttons:
|
|
# turn_on: input_button.clim_du_bureau_turn_on
|
|
# turn_off: input_button.clim_du_bureau_turn_off
|
|
|
|
bedroom_heatpump:
|
|
module: smartheatpump
|
|
class: SmartHeatpump
|
|
entity: climate.bedroom_heatpump
|
|
|
|
templates_library: smart_heating_templates_library
|
|
|
|
constants:
|
|
window_open: binary_sensor.bedroom_french_door
|
|
ext_temperature: sensor.ext_front_temperature
|
|
room_temperature: sensor.bedroom_temperature
|
|
room_occupancy: binary_sensor.bedroom_occupancy
|
|
target_temperature: sensor.target_temperature_heatpump
|
|
cant_open_window: binary_sensor.is_bedroom_sleeping
|
|
sleeping_in_the_room: binary_sensor.is_bedroom_sleeping
|
|
quick_resume: binary_sensor.bedroom_heatpump_quick_resume
|
|
stay_on_while_sleeping: true
|
|
|
|
virtual_sensors:
|
|
sensors:
|
|
value_selector.bedroom_heatpump_fan_mode:
|
|
auto: binary_sensor.heatpump_winter_mode
|
|
quiet: True
|
|
|
|
target_temperature: sensor.target_temperature_heatpump + 0.5
|
|
hvac_mode: "binary_sensor.heatpump_winter_mode ? 'heat' : 'cool'"
|
|
fan_mode: sensor.bedroom_heatpump_fan_mode
|
|
|
|
smart_conditions:
|
|
callback_delay: 10 # on the morning it can happen that we ask to start and stop the heat pump immediately afterwards which in result in the heat pump ignoring the second command
|
|
template_conditions: <clim_conditions>
|
|
|
|
quick_resume:
|
|
sensor: binary_sensor.bedroom_heatpump_quick_resume
|
|
reset_events: good_morning
|
|
|
|
control_mode_selector:
|
|
sensor: input_select.bedroom_heatpump_override
|
|
reset_events:
|
|
- good_morning
|
|
- good_bye
|
|
|
|
living_room_heatpump:
|
|
module: smartheatpump
|
|
class: SmartHeatpump
|
|
entity: climate.living_room_heatpump
|
|
|
|
templates_library: smart_heating_templates_library
|
|
|
|
virtual_sensors:
|
|
sensors:
|
|
binary_sensor.living_room_any_window_open: binary_sensor.living_room_french_door or binary_sensor.living_room_window
|
|
|
|
constants:
|
|
window_open: binary_sensor.living_room_any_window_open
|
|
ext_temperature: sensor.ext_front_temperature
|
|
room_temperature: sensor.living_room_temperature
|
|
room_occupancy: binary_sensor.living_room_occupancy
|
|
target_temperature: sensor.target_temperature_heatpump
|
|
cant_open_window: binary_sensor.is_living_room_sleeping
|
|
sleeping_in_the_room: binary_sensor.is_living_room_sleeping
|
|
quick_resume: binary_sensor.living_room_heatpump_quick_resume
|
|
stay_on_while_sleeping: false
|
|
|
|
target_temperature: sensor.target_temperature_heatpump
|
|
hvac_mode: "binary_sensor.heatpump_winter_mode ? 'heat' : 'cool'"
|
|
|
|
smart_conditions:
|
|
callback_delay: 10 # on the morning it can happen that we ask to start and stop the heat pump immediately afterwards which in result in the heat pump ignoring the second command
|
|
template_conditions: <clim_conditions>
|
|
|
|
control_mode_selector:
|
|
sensor: input_select.living_room_heatpump_override
|
|
reset_events:
|
|
- good_morning
|
|
- good_bye
|
|
|
|
quick_resume:
|
|
sensor: binary_sensor.living_room_heatpump_quick_resume
|
|
reset_events: good_morning |