I’m trying to create a blueprint that will respond to a window open event by calling a service to notify the associated heating zone. This will cause the thermostat set temperature to be reduced while the window remains open. The blueprint just asks for the window sensor and the target climate device. I’m then using a template to capture the device id from the thermostat in a variable (climate_id) which is passed to the service call:
input:
window_entity:
name: Window Sensor
description: The window sensor that controls the climate entity.
selector:
entity:
domain: binary_sensor
device_class: window
climate_entity:
name: Climate Device
description: The climate entity that is controlled by the window sensor.
selector:
entity:
domain: climate
source_url: https://gist.github.com/sotatech/500b53ee64ca5ad5299c22cde47407ed#file-window-open-notify-homematic-yaml
variables:
climate_target: !input climate_entity
climate_id: '{{ state_attr( climate_target, "id") }}'
trigger:
- platform: state
entity_id: !input 'window_entity'
to: 'on'
action:
- service: homematic.set_device_value
data_template:
address: climate_id
channel: 1
param: 'WINDOW_STATE'
value: 1
- wait_for_trigger:
- platform: state
entity_id: !input 'window_entity'
to: 'off'
continue_on_timeout: false
- service: homematic.set_device_value
data_template:
address: climate_id
channel: 1
param: 'WINDOW_STATE'
value: 0
The template works when I test it, but when I create an automation with the blueprint, the logs just show “CLIMATE_ID not found!”
Any ideas how to debug this, or can anyone spot whatever glaring errors I have made?
Thanks!
Glad that you got it to work could you please mark my post as the solution then. This way it will be marked as solved and others will find the solution quickly.
I fully understand you probably wanted to create a blueprint but I do the same with a tiny automation. Just turning off the NETATMO valve when the doors/windows are open. What’s the added value here? Do I miss something?
Btw, I found your thread because I want to sent a template value to an entity, I have exact syntax but mine does not work. Service returns “float expected” while I am sending float, have you had a comparable problem? The brackets should solve it, but did not for me
That’s a fair point, but I have a few reasons for doing it this way:
I want to get familiar with Blueprints, so this has been a good exercise.
I have 20+ doors & windows so writing and maintaining automations for these would have been a pain. Using a blueprint keeps them all consistent.
Control of the home heating system (schedule, temperatures, times, etc.) is fully managed by Home Assistant. So, I want to make it as easy as possible for other members of the household to be able to change it when necessary rather than having to rely on me. Using a blueprint is much easier for non-technical users.
I’m afraid I’m still on the bottom end of the learning curve with regard to templates, so I can’t help you with yours - sorry