[BLUEPRINT] Adaptive Climate Control - ASHRAE 55 Implementation with Energy Optimization

Open your Home Assistant instance and show the blueprint import dialog with a specific blueprint pre-filled.

Overview

I’ve just released my first open-source contribution: an adaptive climate control blueprint for Home Assistant that implements ASHRAE 55 standards.

What makes it different

Instead of fixed temperature setpoints, this blueprint:

  • Calculates optimal comfort zones based on outdoor temperature
  • Provides 15-30% energy savings through intelligent control
  • Integrates seamlessly with SmartIR and other climate platforms
  • Automatically detects natural ventilation opportunities

Implementation

Based on ASHRAE 55-2017 adaptive comfort model with three configurable comfort categories for different user preferences.

Community Input Needed

As this is my first major open-source project, I’m looking for:

  • Beta testers with different climate setups
  • Code reviewers for blueprint optimization
  • Documentation contributors to improve user guides
  • Feature suggestions from the community

Works with any climate entity

climate_entity: climate.your_ac
indoor_temp_sensor: sensor.room_temperature
outdoor_temp_sensor: sensor.outdoor_temperature
6 Likes

Hello Marco Sinhoreli,
Welcome to the Home Assistant Forum!

Thanks for contributing to the community with a new Blueprint.

I have a suggestion for you. Many people who are not familiar with directory structures will have problems installing this without the Home Assistant MY tools.

Adding a MY link for this Blueprint to your top post would help them a lot.
Here is the link to make that.

Create a link – My Home Assistant

Thank you @Sir_Goodenough ! It’s done.

1 Like

Thanks will try this out. Looks very promising.
Edit tried it, I want to report 2 things:

  • Error during updating my fan mode: Fan mode auto is not valid. Valid fan modes are: 1, 2, 3
  • My AC makes a beeping sound when it is turned on or off. The automation currently decides to turn it off even when it’s already off, which causes unnecessary beeps.

Thanks.

Open your Home Assistant instance and show the blueprint import dialog with a specific blueprint pre-filled.

I made some improvments:

  • Automatically switch to ASHRAE 55 Category III (maximum energy saving) when there is no occupancy
  • Automation only runs if climate_entity state is not ‘off’ (respects manual AC shutdown via Home Assistant).
  • Additional bugfixes and minor logic adjustments for setpoint and comfort zone handling.
  • Minor bugfixes.
1 Like

I really want to try this out, but there doesn’t seem to be any way to make decisions based on ventilation needs. I know that’s not in ASHRAE55, but ideally I’d like to control a ventilation fan (in my case) and have control over CO2/VOC levels. Do you feel like this is out of scope for your project?

Hi Marco. This looks very valuable

Can you clarify please how this Blueprint relates to your similar HACS Custom Integration device? Do they work together, or are they alternatives?

1 Like

Here are some error messages for you:

Logger: homeassistant.components.automation.ashrae_55_adaptive_climate_control_kitchen
Source: helpers/script.py:2067
integration: Automation (documentation, issues)
First occurred: 16 July 2025 at 00:08:25 (30155 occurrences)
Last logged: 07:34:01

ASHRAE 55 Adaptive Climate Control - Kitchen : Choose at step 1: choice 2: Error executing script. Error for choose at pos 1: Provided temperature 22.1 is not valid. Accepted range is 5.0 to 22.0
ASHRAE 55 Adaptive Climate Control - Kitchen : Error executing script. Error for choose at pos 1: Provided temperature 22.1 is not valid. Accepted range is 5.0 to 22.0
ASHRAE 55 Adaptive Climate Control - Kitchen : Choose at step 1: choice 2: Choose at step 1: choice 3: Error executing script. Error for call_service at pos 3: Entity climate.kitchen does not support action climate.set_fan_mode
ASHRAE 55 Adaptive Climate Control - Kitchen : Choose at step 1: choice 2: Error executing script. Error for choose at pos 1: Entity climate.kitchen does not support action climate.set_fan_mode
ASHRAE 55 Adaptive Climate Control - Kitchen : Error executing script. Error for choose at pos 1: Entity climate.kitchen does not support action climate.set_fan_mode

Firstly bit thanks for this addition! I’ve been using it for a few weeks now and it really does a great job. Thanks so much for creating it.

My only small suggestion is adding an option to only run between certain times. I don’t have reliable presence sensing, so I just added a time based condition to only run between 2 times and that works fine. Might be a bit specific to my setup, but just a suggestion.

Again, great work on this!

Thank you so much for this blueprint, it’s an amazing work and exactly what I needed.

Main issue so far:
Error: HVAC mode auto is not valid. Valid HVAC modes are: off, heat, cool, fan_only

Indeed it would be great to set time ranges for target temperature ranges. Essentially, I mostly want to relax the range at night.

On medium/long term, it would also be cool to be able to react to electricity price changes or high pricing events (possibly in conjunction with other automations).

Many thanks :slight_smile:

Hi I stumbled upon this blueprint and would like to know how it will save energy when I am away? I currently do not use any occupancy sensor, can you make it to work with person sensor? Thanks in advance.

1 Like

I’m using the nest cloud connection with the API key.

i am getting this error when tracing:

Error: Provided temperature -4.555555555555555 is not valid. Accepted range is 10 to 32

outdoor temp is also giving a similar error. my outdoor sensor is using blink cameras outdoor.

what am i doing wrong?

I ran into this as well when using @msinhore’s integration, I suspect it’s not converting C to F or vice versa. If you interpret -4.555… as Celcius and convert to Fahrenheit it’s 23.8F, which if the units were interpreted correctly, likely means that it should have been interpreted as 74.84F.

I opened an issue for this, it looks like a great integration and I hope I can get it working! :slight_smile:

Seems the repo got deleted?! @msinhore any info?

It’s not deleted, it just appears to have been renamed. GitHub - msinhore/adaptive-climate-blueprint: Adaptive thermal comfort blueprints for Home Assistant implementing ASHRAE 55 adaptive model standard with SmartIR integration and energy efficiency optimization.

Hi, I used your blueprint and found an issue: even when I turn off the Natural Ventilation option,
it still shuts down directly and gives me the following message:

ASHRAE 55 Adaptive Climate Natural ventilation active. HVAC turned off. Outdoor: 27.0°C, Indoor: 28.6°C

As you can see, even though it’s 27°C outside, it’s still a stuffy 28.6°C indoors.
Not to mention, in some cases there isn’t even a way to open the windows, so I think this should be taken into account.

Also, for most models, if the remote control has a button to disable the LED display, the AC can start in silent mode,
which usually avoids the annoying beep sound. Unfortunately, because your blueprint attempts to completely shut down the AC,
the silent mode is lost when it powers off, and then after a minute or two, the beep sound comes back.

My second suggestion is to simply cancel the shutdown function altogether and instead switch the HVAC to fan mode.
Since the compressor isn’t running, it won’t consume much power anyway, and the indoor fan uses very little electricity—sometimes even less than a regular fan.

Awesome automation!! I’ve made some improvements to the main blueprint:

Fork here: GitHub - SuprBadass/adaptive-climate-blueprint-fahrenheit: Allows using Fahrenheit units for msinhore's amazing Home Assistant blueprint

  1. Fix bugs with logic namely inverted energy save toggle
  2. Fix current_hvac_mode always returning none
  3. Add temperature unit selector in blueprint import wizard for switching between C and F
  4. Add internal conversions for using inputs from F to internally calculate as C
  5. Fix incompatible fan modes for my thermostat. At least for Honeywell (I have a T10 Pro +), these resulted in errors during operation before this fix
  6. Fix incompatible auto mode for Honeywell
  7. Fix incompatible temperature setting for when thermostat is in ‘auto’ mode (the Honeywell actually calls it heat_cool instead of auto, and requires both a HIGH and LOW temperature in this mode instead of single setpoint)
  8. Add a ‘dry-run’ mode selectable in the blueprint import wizard that attempts to just log but not change any climate settings

I actually think #1 and #2 could be put in a PR to merge in the main repo. Also, since this is such a great automation, maybe we could collect some features others have forked here and integrate those in the main repo too?

The temperature unit conversion is a bit messy and I’d welcome suggestions/patches to make it cleaner. I tried to do it with a helper, but I find the variable declaration order required in YAML automations to be wildly frustrating, so I instead hard-coded it everywhere there is a conversion needed. Maybe there is a better way?

1 Like

i would like an option to only set a temperature number helper to use it with other heating blueprints/integrations like

You don’t need a blueprint to create a helper. Just create it.

The request is about the blueprint optionally setting the value of a number helper rather then of a climate.

1 Like