HVACMonitor: Project to Monitor My HVAC System
This is Part 1 of the HVACMonitor project. Part 1 describes the project and shows how HVAC information is picked up and displayed. Part 2 covers the hardware build, ESPHome and Homeassistant configurations.
The latest version and information (including schematics, build, and ESPHome and Homeassistant configuration) is found on the project page on Github.
I live in Florida and that means rising temperatures in the summer, along with surging electric bills for cooling.
A couple years back, my air conditioner had trouble keeping up with the hotter temperatures and seemed to run all the time. By the time I got a technician out to look at it, most of the coolant had leaked out. Refilling it was a big expense. That got me thinking that I needed a better way to understand how the system was working.
Fresh off an ESPHome/Homeassistant project to monitor my home alarm system, I went looking for a solution.
I came across Jim Shank’s great AC Watcher project. I used a number of his ideas that got this project moving much more quickly. Thank you Jim!
Some of my functional goals:
- Monitor the current state of the HVAC system: heat/cooling, fan on/off, compressor on/off
- Monitor the effectiveness by sampling intake and discharge temperatures
- Monitor the temperatures where all that cold air runs through ducts sitting in a hot attic
- Monitor the power consumption of the whole system - compressor and air handler
- Minimal changes to the HVAC system, and nothing that would void any warranties.
I ended up building this in several parts:
- An ESPHome-based monitor for everything other than power consumption
- A commercially available power monitor I could install in my breaker panel to capture the compressor and air handler power consumption. More on this later.
- Homeassistant to provide visibility and additional, stastical, information
Table of Contents
- HVACMonitor: Project to Monitor My HVAC System
- Hardware; The HVAC Monitor Board
- Home Assistant: Get the Full View
Current Information from the ESPHome on the HVAC Monitor board
The HVAC Monitor board has an on-board web server to show basic, current state information.
Full Information in Homeassistant
Homeassistant has many more capabilities to create additional views and enrich the sensor data from the HVAC monitor board. It also integrates data from other sensor devices into a complete view of the HVAC system. In this view Homeassistant is computing run times and is merging data from the HVAC Monitor board and the power monitor in the breaker panel.
Homeassistant can pull data collected over time and provide graphical displays:
In this case, when the compressor was running at top and what the ambient temperature was in the attic at the same time. Data is pulled from the past five days.
Accessing HVAC State
In a traditional heap pump scenario, all the information about the state is available by monitoring the signals from the thermostat to the HVAC system.
A typical heat pump HVAC system is controlled by a thermostat which receives power form the air handler and sends control signals to the air handler and the compressor as illustrated below:
The signals to control the compressor (whether one or two stages), fan, auxillary heater and heat/cool mode are present as 0VAC or 24VAC on the connection between the thermostat and the air handler. I tapped this cable, outside of the air handler, to get access to the HVAC state. So I just picked up some thermostat wire (8/18 guage) at my local big box store and accessed the signals in my attic:
NOTICE: OF COURSE, YOU NEED TO DETERMINE THE CONFIGURATION FOR YOUR PARTICULAR SYSTEM. THESE ARE COMMON FOR POPULAR HONEYWELL THERMOSTSATS.
IT IS ALSO CRITICAL FOR THIS IMPLEMENTATION THAT THE SIGNAL VOLTAGE LEVELS NOT EXCEEED 30VAC.
THIS DESIGN IS FOR HVAC SYSTEMS WITH ONE OR TWO STAGE COMPRESSORS AND ONE OR TWO STAGE HEATING
Continue on to Part 2 to learn about the hardware, the build and the configuration for ESPHome and Homeassistant.