I have a plant growing box, fully controlled with arduino.

Youtube: ESP8266 IOT Flora

All things are under control, besides the air temperature. I can cool it down running fans, but cannot find a way to heat it up.

Need to keep the temperature between 25-28 C all the time.

I was thinking of:

  • 8x8 (64) Leds - maybe this can heat up the temperature, how much ?
  • Dedicated Module - is there any 5v heating module available ?
  • How are you powering the ESP8266?
    – VE7JRO
    Jul 22 '19 at 19:50
  • 3A 5V - Typical iPhone charger.
    – PeeS
    Jul 22 '19 at 19:51
  • 1
    It really depends on the space you need to heat. Are you brewing beer or trying to survive a high latitude winter? How much insulation does the space have, how often is it opened to the outside (for inspecting your beer, or people entering and leaving the space, respectively)? You could need to control anything between a Peltier-effect heater/cooler, to a house- (or larger?) sized HVAC unit.
    – JRobert
    Jul 22 '19 at 23:45
  • 1
    You could add some insulation to the box.
    – Gerben
    Jul 23 '19 at 13:22
  • 1
    @JRobert - the box is in the garage, all year - actually the tempearture drops there during winter to 13C.
    – PeeS
    Jul 23 '19 at 15:15

LEDs are not really efficient for heating up, you can better use a normal light bulb for that (they are less efficient, thus giving more heat).

The Arduino can only control some 100's of mA, that's not much for heating purposes.

Did you think about using a real heater (maybe small size), and use a relay to turn it on by your Arduino, and using a temperature sensor to switch it off above 28 and switch it on below 25 (or a lesser margin to keep up with the time it takes to change the environment temperature)?

If you do not want an external mains power, you could use probably a 12V heater and use a 12V->5V converter for your Arduino, or use a 5V heater pad, but according to what I have seen they are more for warming up cold hands, I doubt they can bring up the heat to 25-28 degrees Celcius. Besides, they are probably not very efficient.

  • Thank You Michel, sure i can go with the external power supply - reason i didn't do it yet is just because i like how clean the whole setup is with a single 5V 3A power. I also have ESP12E motor shield : arduino-shop.eu/arduino-platform/… where i can connect external power source and there's a relay. Question is what do i choose to keep that 25-28 ..
    – PeeS
    Jul 22 '19 at 19:56
  • 1
    If you search for a recommendation for a heater, than I don't know. Also, to be honest, that's not an Arduino question and on Electronics stackexchange product recommendations are not allowed. Maybe you can try Home Improvement/ DIY stackexchange: diy.stackexchange.com Jul 22 '19 at 20:00
  • Thanks again, will look more and update the post with findings.
    – PeeS
    Jul 22 '19 at 20:03
  • 1
    Good luck with your project :-) Jul 22 '19 at 20:04

The total current of your power supply, 5V • 3A is only 15 watts. That's not enough power to create a meaningful amount of heat. (although looking at your video your grow box is really tiny...)

LEDs are a terrible choice for providing heat. They produce mostly light, and very little heat (which is good if you want light, but bad if your goal is to build a heater.)

You probably want 30-60 watts of heat. As others have said, you could use a light bulb with a relay to control it. You could use a digital thermometer like a DHT11 to measure the temp, and then have a "digital" relay to control the heat source. You'd write a sketch that would turn your heater on at slightly above your minimum temp and turn it off at slightly below your max temp. (How much above and below your thresholds should be would depend on how strong your heater is and how long it takes to heat up your grow space. You'd need to do some testing.)

I created a forced air "boot dryer" where I used a couple of 120V, 500 watt heating elements in series (which lowers the power to 250 watts) and a thermostat. That is likely way too much heat for your tiny grow-box. Here is a link to that heating element: https://www.amazon.com/gp/product/B005RG64LQ/ref=ppx_yo_dt_b_asin_title_o01_s00?ie=UTF8&psc=1

And for a relay I used a 5V "digital" relay like this one: https://vetco.net/products/single-relay-module-for-arduino?gclid=EAIaIQobChMIgfy8jtjJ4wIVA5-fCh2TXQH1EAQYBCABEgI3mfD_BwE

  • Note that if you have a high current DC supply you can use a MOSFET transistor rather than a relay to switch your heater on and off. To drive a heater you don't need a regulated supply. A simple high current "wall wart" style DC supply that puts out >= 30 watts and a low powered heating element would work.
    – Duncan C
    Jul 23 '19 at 12:20
  • For that matter, you could use an AC step-down transformer and a full wave bridge rectifier to create switched DC and feed that into a high power switching MOSFET and then to your heating element. For driving a heating element you don't need to regulate the power at all - just get rid of the negative voltage, since transistors can only switch current in one direction.
    – Duncan C
    Jul 23 '19 at 12:22
  • So why the down-vote? If you think my answer needs improvement please explain why.
    – Duncan C
    Jul 24 '19 at 2:15
  • note that most LEDs make about half light and half heat, which isn't half bad for making heat. even the best ones are only about 65% efficient.
    – dandavis
    Jul 24 '19 at 16:12

You can use nickle chrome wire to easily heat that small box.

From Wikipedia:

Almost any conductive wire can be used for heating, but most metals conduct electricity with great efficiency, requiring them to be formed into very thin and delicate wires in order to create enough resistance to generate heat. When heated in air, most metals then oxidize quickly, become brittle, and break. Nichrome wire, however, when heated to red-hot temperatures, develops an outer layer of chromium oxide, which is thermodynamically stable in air, is mostly impervious to oxygen, and protects the heating element from further oxidation.

5V nickle chrome wires are available online to order, it's usually used as car seat heater.

Just be careful do not use Nickle chrome wire with Arduino directly because it can draw up to 2A from the power source and burn your Arduino board, instead use a relay to control the heater.

Here's the schematic to control a heater using Arduino and a relay:


simulate this circuit – Schematic created using CircuitLab


One simple way I can think of would be to turn a 100 W lightbulb (EDIT or whatever size makes sense for your application) on / off using a relay. You could use a heat lamp, but with a small box like you have, a lightbulb should give off plenty of heat. You would want to make sure that the bulb didn't give off enough heat to damage any plastic too close to it.

  • 1
    I was thinking a 100W bulb as well, but given how tiny that box is, 100W might be too much. I'm thinking 30W might be better.
    – Duncan C
    Jul 23 '19 at 0:34
  • Yeah, one of the cool things about using lightbulbs is you can tune it to the desired output just by swapping bulbs. I'd think the desired result would be the minimum wattage that was able to maintain temp, so as to avoid thrashing the relay.
    – Rob Sweet
    Jul 23 '19 at 2:02
  • Thrashing the relay or cooking the seedlings. You don't want to either cycle the power too often or overshoot the target temp/blast the seedlings with too much infrared.
    – Duncan C
    Jul 23 '19 at 12:18
  • 1
    I wonder if an (incandescent) grow light (more expensive) would give a two for one deal and also provide better growing conditions?
    – Rob Sweet
    Jul 23 '19 at 15:03
  • I thought about that, but plants do best with a distinct day and night period. Lights that turn on and off at odd intervals driven by the temperature would likely disturb the plants' circadian rhythms. Better to run the lights based on day/night cycles, and the heater based on temp. Using LEDs for the grow lights would be a good idea to avoid overheating the plants during their day hours.
    – Duncan C
    Jul 24 '19 at 2:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.