Arduino Dew Controller

I came to know Arduino based focuser and dew controller design from the internet recently, and was surprised by its simplicity and powerfulness. Though dew is usually not an issue on mountains around valley due to inversion layer, it always causes trouble in the valley. So I decided to build my own dew controller using Arduino.

I wanted an intelligent dew controller which turns on the heating strap only when needed to save the power, for this there has to be an ambient humidity and temperature sensor. There are many inexpensive humidity sensors like DTH11, but they are not designed to work in open environment as condensation may damage the sensor. I use a HIH6121 which has a filter to allow it work reliably even with condensation.

The key features of the dew controller include:

  • 2 channels. Each channel has one temperature sensor (DS18B20) and one LED. The LED is lit when the heating strap is on.
  • Ambient temperature and humidity sensor HIH6121
  •  Automatic and manual mode.
    • In automatic mode, it keeps each channel temperature 5C above dew point (calculated from ambient temperature and humidity).
    • In semi auto mode, it ignores humidity reading (ie, assumes humidity is 100%), and keeps each channel temperature 0~10C (controlled by a potentiometer) above dew point.
    • Manual mode: a channel is in manual mode if ambient and/or channel temperature sensor is not available (or fails to operate). Two channels may be in different mode, eg, if one channel’s temperature sensor fails, another channel will not be affected. In manual mode, the duty cycle of channel output is controlled by a potentiometer.
  • Self checking and reporting of sensor status during power on.
  • Arduino Nano based design which can be ported to Uno.
  • 12V power input

Intelligent Dew Controller with Arduino Nano

Here is the link to schematic, Arduino sketch and my final product.

It should be noted that I use an external 7805 regulator to convert 12V to 5V which is supplied to Arduino and other digital logic. Technically you dont need it since Arduino already has a builtin 5V regulator taking input from VIN, but somehow it was burnt in my prototype board with no reason so I thought it might be more reliable with an external 5V regulator.

Updated on 4/17/2017: It seems that cheap Arudino clone sold on ebay is prone to 5V regulator damage if powered by both USB and external 12V. Since USB is only useful during debug, it is Ok to not use 7805, which is what my final product does.

You can buy most of these components on ebay, except HIH6121 which is available from DigiKey (and it is costly). I also found that the following prototype PCB board is very useful and handy for this project.