Automatic humidistat control based on outside temperature

I know this is nothing new, but I just accessed the developer website and am learning what it will take to set up an automatic humidistat control with my heat recovery ventilator based on outside temperature. The table I am looking at is as follows:

When The Outdoor Temp is _, This Relative Humidity _ Should Be Maintained
+40°F,45%; +30°,40%; +20°,35%; +10°,30%; 0°,25%; -10°,20%; -20°,15%

Ideally, I did not want an external app having to poll and adjust, but I am willing to power up my old pc to make this happen so that I won't have to continually adjust the humidity setpoint. By leaving the HRV on constantly during the day, I am wasting energy and drying out the house for no reason. Any chance Ecobee can include this feature on the thermostat itself? If not, can you at least make the manual humidity adjustment lower so that I can keep moisture off my windows on those cold -40° nights?
9 people like
this idea
+1
Reply
  • I am currently working on a Perl script to do _exactly_ this. It will run on my always-on Linux server. I plan to have the script called periodically (every 15, 30, 60 minutes. Not sure yet how often is necessary). It would start, read the values from the API, make the calculations, take the decisions, modify the thermostat parameters and exit.

    I plan to take into account:
    Outside air temperature and humidity
    Inside air temperature and humidity
    To:
    Determine IF outside air can be used to dehumidify based on humidity ratio
    Determine what is the desired interior humidity based on outside air temperature

    I would also prefer that the thermostat did this on its own but I'm not waiting for it in the meantime (if ever).

    If anybody is interested, I will gladly share.
    Daniel
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. happy, confident, thankful, excited indifferent, undecided, unconcerned sad, anxious, confused, frustrated kidding, amused, unsure, silly

  • I’m having fun
    If anyone is interested, I have a running script written in perl: one Ecobee.pm module to handle all the low-level interactions with the API and one ecobee_hum.pl script to handle the higher-level decision making and actions.

    The script can be called periodically (I have it running in a crontab every 30 minutes). It will do its thing and exit.

    It will handle all authentication and token requests/refresh automatically and can run in an "-auto" mode when called unattended (fails in authentication for anything but token refresh). It will log all parameters gathered, decisions taken, errors encountered automatically to a local log file.

    This is what the script does:

    Get thermostat data (outside temp and humidity from current weather forecast, current indoor temp and humidity, operating parameters)

    It will only continue if thermostat is connected, hvac mode is 'heat', there is an HRV present, a dehumidifier is present (the HRV) and "dehumidify when heating" is enabled.

    It will convert the exterior humidity to inside temps using a psychrometric formula.

    It will figure out the ideal indoor humidity level at 21C for the outside temps (currently a linear scale from 60% to 30% for outside temperature ranges of >10C .. < -30C
    This can easily adapted, based on the quality of your windows.

    It will adjust the ideal indoor humidity to current indoor temperature (if not 21C).

    If adjusted outdoor humidity is not 2% lower than current indoor humidity, turn off dehumidifier (we don't want to increase humidity!)

    if adjusted outdoor humidity is not 2% lower than adjusted ideal indoor humidity but still less than current indoor humidity, set dehumidifier level to adjusted outdoor humidity + 2%

    if adjusted outdoor humidity is more than 2% lower than adjusted ideal indoor humidity, adjust dehumidifier to that.

    I chose a 2% humidity "deadband" to avoid long HRV runtimes. This may need to be adjusted.

    It's still in its early testing stages but so far, it looks promising!

    If anyone is interested in getting a copy of these scripts, just reply here.
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. happy, confident, thankful, excited indifferent, undecided, unconcerned sad, anxious, confused, frustrated kidding, amused, unsure, silly

  • I installed the ecobee3 this week. I am also looking to control an external humidifier and a whole-house attic fan from data on the ecobee3. So Daniel I would be interested in your python scripts.

    My plan is a little odd in that I have a heat only system and live in a very dry area. So in the summer with the heat off I need to control a humidifier. Humidity can easily drop to the single digits around here in the summer.

    I also want to control a whole house fan in the summer. If outside temp is less than the inside temp turn the fan on. Once the outside temp drops below the inside temp turn the fan off. Since I live at 6300ft above sea level the temp easily drops 15-20 degrees a half hour after sunset in the summer. A 30 degree drop is not unusual. So a attic fan can easy to cool the house off.

    Everything controlled via cron and wemo switches via Ouimeaux Open Source WeMo Control. From Ubuntu Linux running on a Cubox pro.

    But I need the inside and outside temp and humidity data.
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. happy, confident, thankful, excited indifferent, undecided, unconcerned sad, anxious, confused, frustrated kidding, amused, unsure, silly

  • Alan, it's all written in perl, not python.
    If you're still interested, PM me. I tried sending you a PM but wasn't able to. Don't want to add too much additional noise to this thread. (If you can't, meet me on smarthomehub.net)
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. happy, confident, thankful, excited indifferent, undecided, unconcerned sad, anxious, confused, frustrated kidding, amused, unsure, silly

  • This reply was removed on 2017-07-08.
    see the change log