Overview
Iâve created a blueprint that monitors your HVAC systemâs performance by checking if the temperature responds appropriately to heating and cooling cycles. This was inspired by a similar feature on Nest thermostats that actually helped me discover my furnaceâs flame sensor was dirty - it was cutting the gas and preventing proper heating!
NEW: This blueprint now uses different failure detection strategies optimized for different HVAC system types: AC cooling problems trigger alerts after consecutive failures, while gas furnace heating problems are tracked weekly to catch intermittent issues like dirty flame sensors and pressure switch faults.
LATEST UPDATE: Enhanced with precise AC runtime tracking using dedicated timestamp storage for more accurate long runtime detection and improved timing accuracy.
This blueprint can help detect potential issues early, such as:
- Dirty flame sensors causing heating cutoffs
- Dirty filters reducing airflow
- Refrigerant leaks in cooling systems
- Blocked vents or ducts
- Failing components
- Inefficient operation
- NEW: Long AC runtime indicating system efficiency problems with precise timing
How It Works
The automation triggers when your thermostat starts heating or cooling, then:
- Records the starting temperature and precise timestamp
- Waits for a configurable runtime period (default: 90 minutes for cooling, 30 minutes for heating)
- Checks if the temperature changed by the expected amount
- NEW: Uses dual tracking strategies:
- AC Cooling: Tracks consecutive failures (reset after successful cycle)
- Gas Furnace Heating: Tracks weekly failures (reset every Sunday at midnight)
- ENHANCED: Monitors for excessively long AC runtime with precise timestamp tracking (default: 12+ hours continuous)
- Triggers your chosen actions when a problem is detected
Features
- Separate temperature tolerances for heating and cooling systems
- Smart deadband detection with configuration warnings to prevent false alarms
- Dual success criteria - validates both performance thresholds and setpoint achievement
- NEW: Dual failure tracking strategies - consecutive for AC, weekly for gas furnace
- ENHANCED: Precise AC runtime tracking - uses dedicated datetime helper for accurate timing
- NEW: Weekly heating failure reset - automatically resets every Sunday at midnight
- Comprehensive commenting throughout the code for easy understanding and modification
- Configurable runtime periods and failure counting thresholds
- Separate actions for heating, cooling, and long runtime problems with detailed notifications
- Built-in education about deadband relationships and proper configuration
- Easy to disable heating or cooling monitoring individually
Required Helper Entities
Before using this blueprint, youâll need to create 7 helper entities:
Input Number:
input_number.hvac_monitor_start_temp(min: 0, max: 100, step: 0.1)input_number.hvac_long_runtime_threshold(min: 0, max: 24, step: 1)
Input Datetime:
input_datetime.hvac_cooling_start_time(date & time) NEW - For precise runtime tracking
Counter:
counter.hvac_cooling_failures(initial: 0, step: 1)counter.hvac_heating_failures(initial: 0, step: 1)counter.hvac_deadband_cooling_warnings(initial: 0, step: 1)counter.hvac_deadband_heating_warnings(initial: 0, step: 1)
You can create these through Settings â Devices & Services â Helpers â Create Helper.
Configuration Options
- Thermostat: Select your climate entity
-
IMPORTANT: Your thermostat must have an âhvac_actionâ attribute that reports âheatingâ or âcoolingâ when the system is actively running. Check in Developer Tools > States to verify your thermostat shows hvac_action: heating/cooling/idle. If your thermostat doesnât have hvac_action or reports different values, this blueprint will not trigger properly.
-
- Cooling Minimum Runtime: How long AC should run before checking (30-240 minutes, default: 90 minutes)
- Heating Minimum Runtime: How long gas furnace should run before checking (15-90 minutes, default: 30 minutes)
- NEW: Maximum AC Continuous Runtime: Alert threshold for long AC runtime with precise tracking (4-24 hours, default: 12 hours)
- Cooling Temperature Tolerance: Expected minimum cooling change (0.1-2.0°C, default: 0.4°C)
-
IMPORTANT: This value should be SMALLER than your thermostatâs deadband (the temperature difference that triggers your AC). Most thermostats have a 0.5-1.5°C deadband. -
Example: If your AC turns on when room is 0.5°C above setpoint, the system will normally cool by about 0.5°C before turning off. Set your tolerance to 0.3-0.4°C to detect real problems while allowing normal operation. If tolerance is too high, youâll get false failures. If too low, you might miss real issues.
-
- Heating Temperature Tolerance: Expected minimum heating change (0.1-2.0°C, default: 0.4°C)
-
IMPORTANT: This value should be SMALLER than your thermostatâs deadband (the temperature difference that triggers your heater). Most thermostats have a 0.5-1.5°C deadband. Example: If your heater turns on when room is 0.5°C below setpoint, the system will normally heat by about 0.5°C before turning off. Set your tolerance to 0.3-0.4°C to detect real problems while allowing normal operation. If tolerance is too high, youâll get false failures. If too low, you might miss real issues.
-
- Enable Cooling/Heating Check: Toggle monitoring for each system independently
- NEW: Enable AC Long Runtime Detection: Monitor for extended AC operation with precise timing
- Enable Deadband Detection: Disable for smart thermostats (Nest, Ecobee) that use predictive algorithms
- Maximum Consecutive Cooling Failures: Failures needed before alerting (1-10, default: 1)
- NEW: Maximum Heating Failures Per Week: Weekly failure threshold before alerting (1-15, default: 4)
- NEW: Deadband Warning Threshold: Consecutive warnings before notification (1-10, default: 5)
- Problem Actions: Separate customizable actions for heating, cooling, and long runtime issues
Why Different Tracking Strategies?
AC Cooling problems often manifest immediately when thereâs an issue (low refrigerant, dirty coils, compressor problems), so consecutive failure tracking helps detect issues quickly.
Gas Furnace Heating problems are often intermittent - dirty flame sensors and pressure switch faults can cause the system to work sometimes but fail randomly. Weekly tracking catches declining performance better than consecutive failures, as successful cycles between failures are normal for these types of issues.
Example Notification Actions
- action: notify.notify
metadata: {}
data:
title: "HVAC Issue Detected with Furnace"
message: >-
Your thermostat was heating but the temperature did not change as
expected. Check your Furnace unit.
Installation
- Create the required 7 helper entities (see above)
- Go to Settings â Automations & Scenes â Blueprints
- Click âImport Blueprintâ and paste the blueprint URL
- Create a new automation using the blueprint
- Configure your thermostat and preferences
Blueprint Code
Tips for Use
- Start with default settings and adjust based on your systemâs performance
- Consider seasonal adjustments - some systems may need different tolerances
- Monitor the logbook entries to understand your systemâs normal behavior
- The persistent notifications will help you track issues over time
- If you are facing any issues, check the comprehensive troubleshooting guide: https://github.com/gmlupatelli/blueprints_repo/blob/master/hvac_health_monitor/README.md
Recent Updates
- v2.2:
- IMPROVED: Parameter naming - simplified to
cooling_runtimeandheating_runtime(removed âminimumâ) - OPTIMIZED: Cooling failure threshold default increased from 1 to 2 consecutive failures for better balance
- FIXED: Failure detection now verifies thermostat is still actively cooling/heating before flagging issues to prevent false alarms
- IMPROVED: Parameter naming - simplified to
- v2.1:
- ENHANCED: Precise AC runtime tracking using input_datetime helper for accurate timing
- IMPROVED: More reliable long runtime detection with timestamp storage
- UPDATED: Now requires 7 helper entities (added input_datetime.hvac_cooling_start_time)
- OPTIMIZED: Better trigger configuration with stabilization delays
- ENHANCED: Comprehensive documentation updates
- v2.0:
- Added weekly heating failure tracking for gas furnaces
- Added AC long runtime detection for efficiency monitoring
- Implemented dual failure strategies optimized for different HVAC types
- Added automatic weekly reset for heating failures (Sunday midnight)
- Enhanced helper entity requirements for new features
- Improved default runtime settings based on system type
- v1.0:
- Initial release
Feedback Welcome!
This blueprint was inspired by a Nest thermostat feature that saved me from a cold house - it detected that my furnace wasnât heating properly, which led me to discover the flame sensor was dirty and causing the gas to cut off intermittently. I wanted to bring this same monitoring capability to Home Assistant for any thermostat!
The latest updates make this blueprint even more sophisticated by using different tracking strategies optimized for the unique failure patterns of AC vs gas furnace systems, with enhanced precision in runtime tracking for better accuracy.
This is my most complex blueprint contribution - Iâd love to hear your feedback and suggestions for improvements.
Let me know if you encounter any issues or have ideas for enhancements!