Heat Index Calculated Sensor in Home Assistant

The following is a sample of how to implement a sensor in Home Assistant that displays a calculated heat index value based off an existing sensor device that provides temperature and relative humidity readings.

This calculation is using the formulas provided on the National Weather Service website.

- platform: template
  sensors:
    sensor_device_heat_index:
      unique_id: "your-unique-id-here"
      friendly_name: "Location: Heat Index"
      unit_of_measurement: "°F"
      value_template: >
        {% set sensorVars = {
          "simpleValue": (0.5 * ( states.sensor.device_air_temperature.state|float(default=0) + 61.0 + ((states.sensor.device_air_temperature.state|float(default=0) - 68.0) * 1.2) + (states.sensor.device_humidity.state|float(default=0) * 0.094)) )|round(1, 'common'),
          "regressionValue": (-42.379 + (2.04901523 * states.sensor.device_air_temperature.state|float(default=0)) + (10.14333127 * states.sensor.device_humidity.state|float(default=0)) - (0.22475541 * states.sensor.device_air_temperature.state|float(default=0) * states.sensor.device_humidity.state|float(default=0)) - ((6.83783 * 10**-3) * states.sensor.device_air_temperature.state|float(default=0)**2) - ((5.481717 * 10**-2) * states.sensor.device_humidity.state|float(default=0)**2) + ((1.22874 * 10**-3) * states.sensor.device_air_temperature.state|float(default=0)**2 * states.sensor.device_humidity.state|float(default=0)) + ((8.5282 * 10**-4) * states.sensor.device_air_temperature.state|float(default=0) * states.sensor.device_humidity.state|float(default=0)**2) - ((1.99 * 10**-6) * states.sensor.device_air_temperature.state|float(default=0)**2 * states.sensor.device_humidity.state|float(default=0)**2))|round(1, 'common')
        } %}
        {% if ([sensorVars.simpleValue, states.sensor.device_air_temperature.state|float(default=0)] | average) >= 80.0 -%}
          {{ sensorVars.regressionValue }}
        {% else %}
          {{ sensorVars.simpleValue }}
        {% endif %}

I have a few Z-Wave multi-sensor devices that provide me temperature and humidity data in various rooms of my home. Using the above template, I am able to create individual heat index sensors for each of these devices. Using this I am able to better gauge the comfort level of the air throughout my home and adjust the thermostat accordingly.

Mastodon: @[email protected]