Quantcast
Channel: Configuration - Home Assistant Community
Viewing all articles
Browse latest Browse all 95397

Data template in timer duration

$
0
0

@tortfeaser wrote:

Hi there,

I’m trying to create an automation for my salt water pool chlorine generator. The time the chlorinator must be active and therefore generating chlorine is dependant on the temperature of the water. The hotter it is, the more chlorine is required.

So I want an automation that switches the chlorinator on at sunset and turns off some time later, where the time is determined by pool temp (deg C) * 12. IE for every degree the chlorinator runs for 12 minutes.

My config info is below.

The trouble is that I don’t seem to be able to use any sort of variable for timer duration. The config below, for example, gives the error: extra keys not allowed @ data['data_template']

Is there any other option?

I have a sensor that determines this time:

## Pool chlorinator time needed
- platform: template
  sensors:
    chlorinate_time:
      value_template: >-
        {% set time = (states('sensor.pool_temp')|float)|round * 720 %}
        {% set minutes = ((time % 3600) / 60) | int %}
        {% set hours = ((time % 86400) / 3600) | int %}
        "{{ "%02d" | format(hours) }}:{{"%02d" | format(minutes)}}"

sensor.chlorinate_time returns a value like “02:36”

I have a timer set in configuration.yaml:

## timers
timer:
  pool_pm:

And I have two automations (nb the chlorinator uses a climate integration as a hack, there is no pool chlorinator component):

- id: chlorinator-on-pm
  alias: chlorinator-on-pm
  description: 'Turn on pool chlorinator at sunset'
  trigger:
  - event: sunset
    platform: sun
  condition: []
  action:
  - service: climate.set_temperature
    data:
      entity_id: climate.chlorinator
      temperature: 100
  - service: timer.start
    data_template:
      entity_id: timer.pool_pm
      duration: '{{states('sensor.chlorinate_time')}}'

- id: chlorinator-off-pm
  alias: chlorinator-off-pm
  description: Turn off pool chlorinator after temp-calc duration
  trigger:
  - event_data:
      entity_id: timer.pool_pm
    event_type: timer.finished
    platform: event
  condition: []
  action:
  - data:
      entity_id: climate.chlorinator
      temperature: 0
    service: climate.set_temperature

Posts: 4

Participants: 2

Read full topic


Viewing all articles
Browse latest Browse all 95397

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>