Replace a broken fridge thermostat with an Arduino

This page is meant to collect information on a small project that evolved out of necessity: My fridge started to freeze because of a broken thermostat. It seems this problem is very common and often has a simple solution (replace the thermostat with a spare part for 50 EUR) – however, many newer fridges cannot be repaired simply because disassembling them is nearly impossible.

But people started to use Arduinos as a replacement at a similar price - with more fun.

Design goals

  • Simple to build (few and accessible parts)
  • Sensible project costs (~ 50 EUR) in the rage of a mechanical thermostat
  • At least the same functionality as the mechanical thermostat (motor start saver, defrost, adjustable temperature, fridge light)
  • Better: two temperature sensors (fridge + freezer) and door open sensor
  • Sustainable energy usage (< 5 % of fridge consumption)
  • Initial data logging facility to learn about system characteristics and design a good controlling behaviour
  • Later: LCD for displaying desired and actual temperatures

Power consumption

My fridge is labelled to consume 270 kWh / year, which comes down to about 20 W average consumption (the motor has 150 W, so this means, it is expected to run about 15% of the time or 10 minutes each hour). If I want the Arduino to consume less than 5% of the overall energy usage for cooling, this is 1 W. However, a modern power supply will eat about 0.2 W, leaving just below 100 mA @ 9 V for the Arduino itself.

Most of the time, no processing power is needed and the full setup could go to a low-power state. Every few minutes, it should wake up, read its temperature sensors (which need some power as well), and calculate if it needs to start cooling. Whenever the compressor is switched on, the system will need additional power to pull the relay. When the door is open, it might have to switch on LED lights, display some info on an LCD, and react to a user turning the temperature adjustment potentiometer.

It would be great, if the system could be powered by battery or even a goldcap capacitor during low-power. Whenever the relay gets pulled, a 230V power supply could be switched on as well and refill the capacitor.

Part choices

This part is very preliminary: It covers my current state-of-mind. I'm still researching, what I want exactly.

  • Ideally a low-power board like the one from Nathan Chantrell (ATtiny) or Peter Vojtek (Bareduino328/ATMEGA328P-PU) (see below, both < 10 EUR).
  • Cheap and simple mechanical relay like the Komputer/DFrobot one (< 6 EUR). If I read the data sheet correctly, it operates from 3.8 to 6.5 V, drawing 55 to 95 mA (70 Ohms) plus about 15 mA for the LED and reactive power.
  • 2x Cheap, calibrated and precise DS18S20 temperature sensors (2x 2,10 EUR + shipping).
  • Small Breadboard (< 3 EUR)
  • FFC cable to keep breadboard on the outside and connect through the door without affecting the insulation (~ 4 EUR)
  • External low-loss universal switching power supply at 5 V, < 600 mA (< 10 EUR) - this part I'm unsure about. I'd prefer something that could be soldered on a PCB

The above list lets me assume, all parts together could go for under 50 EUR.

Planned for later additions:

  • Door switch
  • LED lights
  • Data logging facility, f.e. to SD-card
  • Potentiometer as input for desired temperature
  • LCD for display purposes
  • Low-power mode (most of the time) powered by battery / gold-cap, switching on the power supply only during compressor activity. This will need a voltage up-converter like a MAX 660 to initially switch on the relay from battery, before the power supply kicks in. Will also need additional circuitry to protect the battery (3.2 V?) from the power supply (see,24261.0.html)


Similar projects:

Low Power Arduino:

Temperature sensors:


LCD modules: