[Project] HVAC Temperature Zone Control App

This project is focused on developing a new HE App that will compare current zone(room) temperatures to target zone temperatures, then control HVAC system air flow distribution so that all zones achieve target temperatures.

Air flow distribution adjustments will be achieved via controllable registers/dampers. The target hardware is custom built registers and duct dampers that are positioned by servos. Servo control is via Hubduino EX_Servo child device.

For more information on Hubduino EX_Servo child devices see this topic:

ASSUMPTIONS (work in progress, seeking input from community) @brianspranger

App input devices:

  • Any sensor with temperature capability
  • Any thermostat with states "coolingSetpoint", "heatingSetpoint", "thermostatMode", and "thermostatOperatingState"

App output devices:

  • Hubduino child servo attached to register or damper. Update "Level" and "Duration" parameters and then issue "Set Level" command.
  • Investigate option: control Keen Smart Vent
  • Investigate option: control Flair Smart Vent
  • Investigate option: control thermostat setpoints and modes

App setup:
User adds a zone and selects

  • one or more temperature sensors to create an average zone current temperature
  • one or more Hubduino child servos (vent or damper) to control
  • target temperature source (thermostat setpoint with +/- offset, or temperature value entered in app)
  • Hubduino child servo "Duration" (user inputs value that is slow enough to avoid objectionable noise)
  • Hubduino child servo default "Level" (user inputs value that gives best airflow balance for system without active control)

Control algorithm:

  • calculate vent/damper positions based on: difference between target and current zone temperatures, default "Level", "thermostatMode", and "thermostatOperatingState"
  • prioritize air flow to zones based on magnitude of temperature error
  • fully close airflow to zones that are at target temperature
  • fully close airflow to zones that are above target temperature in heating mode or below target temperature in cooling mode
  • fully open airflow to the zone with the largest temperature error
  • other zones airflow scaled based on relative temperature error and default "Level"
  • only change register/damper positions if "thermostatOperatingState" is not "idle"
1 Like

OPEN ISSUES (to be added)

SURVEY OF EXISTING APPS WITH SIMILAR PURPOSE

Rule Machine

Cobra Apps and Drivers Temperature Controlled Window-Vent-Blind

JasonJoel Temperature balancing app

Have you started coding anything? I want to but haven't had any time yet...

Not yet. It's been a busy week. I want to put a little more time into looking for existing apps, then review and compare them. Coding apps is new to me, so I'm trying to get familiar with the structure of an app.

I see that the last post was a year ago. Did you end up working on this project? I am considering writing a zone controller app for HE. Not exactly what you propose here, but similar. I am thinking of an app that would replace the zone controller currently fastened to my furnace. I would use Zooz Zen16s to send signals to the furnace and to conventional zone dampers. My motivation is primarily to learn the programming skills.

I haven't gotten to it yet.

Still need to finish my controllable registers.

Im an air conditioner technician and this sounds good. I'm sure you can do this with sonoff 6 channel maybe? Lol
The 12v damper works with RJ connection with open, common and close.
With each taking 2 wires.

Please see this post about release of my zone control app.

Download the Hubitat app