ESP8266 HVAC control

Can you just help me how to add button for 30min manual run? What exactly should I include into code and where?

use a simpleTimer “timeout”

I know but I do not know how to make it work in this project. I can not even add simple button that would do the same as first option in “Settings” mode (to trigger propper port and to have working indicator led)

Are you saying that a dashboard that has been cloned by QR code can’t be modified? If that’s the case, just modify the existing manual setting in the code to time out. No additional buttons necessary.

You could also copy my dashboard by hand to a new dashboard, and add your own custom buttons.

I am using your project (really thank you for great work) and I am using also your dashboard, just I have modified according to my wishes.

Now I would like to have also real button for manual mode (with 30min auto off), not only as item in settings, but honestly I do not know how to do it in a way that everything will work the same way

Excellent project all up and running except the “Home” and “Away” IFTTT , I cant get it to work can anyone help thanks

I have now fixed the problem i replaced with ip address instead all working thanks

1 Like

how convert dht fahrenheit to celcius in this code?

@Jean_Masse ask Google.

1 Like

I think you just change the line

  float ReadF = dht.readTemperature(true);


  float ReadF = dht.readTemperature();
1 Like

If the above solution doesn’t work, you might have to revert to math :scream: I do not like math, or is it math doesn’t like me?

Hi there Everyone!!

First i wanna say, your code is awesome @chrome1000 It help me a lot. Im new in this.

I was wondering how can i get counts of how many times the “Fan” is ON. The code function in frequency, soo if a put a counter when the “FAN” gets “ON” it will count all the time cycle begins.

Thanks from Panama!!

int Counter = 0; 

if (HumAct < HumDes){
    else if (HumAct >= (HumDes)) {

Just to pitch in, this is how I’m doing it:

void totalRuntime()
  if (digitalRead(blowerPin) == LOW) // If fan is running...
    ++currentCycleSec;               // accumulate the running time, however...
    currentCycleMin = (currentCycleSec / 60);
  else if (digitalRead(blowerPin) == HIGH && currentCycleSec > 0) // if fan is off but recorded some runtime...
    Blynk.virtualWrite(110, ++hvacTodaysStartCount);              // Stores how many times the unit has started today... adds one start.

    currentCycleSec = 0;                                          // Reset the current cycle clock
    currentCycleMin = 0;

totalRuntime is something that I have running every second. As you can see, this solution is intertwined with recording a current fan cycle runtime… something you may or may not be interested in! I reset all these values at midnight.

A post was merged into an existing topic: WIFI temperature level control with set point and hysteresis, DHT22 and relay on/off

When I first posted this project, it occurred to me that my particular 2-pipe HVAC system was pretty specific, and I wondered how it might to adapt it to other systems (e.g. forced air or radiant). Is anyone using it for another type of heating / cooling system, and if so, what changes were necessary to make for it to work?

I am using it for auxilary heater in my camping car. The only modifications I have made is visual appearance on blynk control pannel :wink:

1 Like

@structure7 thanks for the support!!.

@chrome1000 I´m using for control humidity for mushroom! thanks for the contribution and support. I will post it soon here,

1 Like

I am using it in my camper to controll Webasto heater and the first idea was to use gsm module (actually I have attached it, but never managed to properly configure it) Since I am not using it every day, i just put a spare android phone in my camper with turned on a mobile hotspot and use normal wemos wifi solution.

But most used scenario. I am laying on my bed in a camper and I am too lazy to adjust the thermostat. I just create a mobile hot spot on the phone I am using, wemos automatically connects to it and then I just adjust the temperature.

I tweaked the code to work with a DS18B20 1-wire sensor and am using it to control a fermentation fridge.

Thanks for the great code

What more noble cause could there be than bringing more beer to the world? :beers: