Temp Controller Overview

Homebrew Talk - Beer, Wine, Mead, & Cider Brewing Discussion Forum

Help Support Homebrew Talk - Beer, Wine, Mead, & Cider Brewing Discussion Forum:

This site may earn a commission from merchant affiliate links, including eBay, Amazon, and others.
It took me a couple of years of homebrewing before I started worrying about my fermentation temperatures. Up until then, whatever the temperature my basement was at, was what my beer would be at. However, I eventually wanted to control my fermentation temperatures to improve the quality of my beer, be able to cold crash, and try my hand at some lagers. So I bought a used fridge on Craigslist and built a simple temperature controller to control the fridge’s temperature more accurately. The small control pad can set a temperature range and the controller will turn something on and off to stay within that temperature range. Just like the air conditioning in a house.

I use a generic controller that’s very similar to others that I’ve seen, but they almost all have the same problem. They’re not intuitive. Mine only has 4 buttons and a simple LCD screen to change a dozen different settings, so knowing how to access each menu and what each menu does is vital. Changing the desired temperature is about the only straight forward process. To do that, you tap the “Set” button and will notice that the displayed temperature starts blinking. You can now use the up and down buttons to change the target temperature. Once you’re done setting the temperature, you hit “Set” again and that’s the new temperature that your temperature controller will target. FYI, the screen will jump back to displaying the current temperature of your beer and not the target temperature you just chose. This function is just as easy as changing your home’s thermostat. Mine shows the current temperature by default, so if you sit in a menu too long the display will jump back (out of the menu you’re in) to displaying the current temperature.

The rest of the controller’s functions will need a little more explaining. We’ll start with one of the first things you should do with any temperature probe… calibration. In a perfect world, you would plug your fridge into your new temperature controller, set it to 68ºF, and boom you’re beer is fermenting at exactly 68ºF. A new controller requires you to fine tune its accuracy. When you first plug it in and the display reads 68ºF, the actual temperature might be 67.5ºF for example. You need to adjust the controller to match the real world temperature. I’ve heard that putting the temperature probe in ice water is a good way to calibrate, since we know water freezes at 32ºF. However, when I tried that method I had 2 other thermometers tell me something different. So I trusted the 2 thermometers (that are both already calibrated) and adjusted my probe to match those readings instead.
Therefore, I’d recommend using a separate thermometer for calibration. To adjust the calibration, you have to hold down the “Set” button until the screen displays letters. This means you entered the main settings menu. Then use the up and down arrows to scroll through that menu until you find “CA” which is the calibration menu. Tap “Set” again to enter the “CA” menu. You can now use the up and down arrows to add or subtract degrees (0.1ºF increments) until your displayed temp matches the real world temp. In my example, I would subtract 0.5ºF, so my controller would show 67.5ºF like my thermometer. Hit “Set” to save your adjustments and the display will automatically jump back to the main menu. You can wait for it to automatically close the main menu or you can hit “Rst” (reset button) to jump back out of the main menu.


Another important setting is called the slewing range. This is how tightly you want to control your temperature. If I have mine set to 65ºF and I set the slewing range to 5ºF, the fridge will not start cooling until the temperature reads 5ºF higher than my target temp (65ºF + 5ºF = 70ºF). Once the fridge turns on at 70ºF to cool things down though, it won’t stop cooling until the temperature reaches my target of 65ºF. With a 5 gallon batch of beer temperatures don’t change instantly though. So even if the fridge kicks on at 70ºF, the beer may continue to warm up to 72ºF until the air gets cold enough to start cooling the beer. After a few hours of cooling, the same thing may happen on the other end of the spectrum. Once the beer is cooled to 65ºF and the fridge turns off, it’s still sitting in a 40ºF fridge and may drift past 65º to 63º. In this example, that means your beer is fermenting between 63ºF – 72ºF. Not exactly a precise 65ºF fermentation. To make this more accurate you can tighten the temperature window by reducing the slewing range. Just make sure your fridge isn’t turning on and off frequently since that will reduce its longevity. I had this problem when I had my probe sitting in a cup of water in my fridge, since there was no good way to get the probe inside my bucket to read the beer’s actual temp. For that setup I had to use a slew of 2ºF since 1ºF was causing my fridge to turn on and off every 10 minutes.
Since then, I’ve installed a thermowell in my bucket so my probe isn’t as exposed to the cold circulating air in the fridge any more. With the thermowell I prefer to use 1ºF since that’s the smallest window possible for my controller. To adjust the slewing range, hold the “Set” button until you enter the main menu. Then use the up and down arrows to find the “CP” menu. Hit “Set” to enter the “CP” menu. From here you can use the up and down arrows to adjust how many degrees you let your beer drift away from your target temp (1ºF increments), before the controller turns the fridge on again to cool things back down. Hit “Set” to save your adjustments and the temperature controller will automatically jump back to the main menu. The last step is to hit “Rst” (reset button) to close the main menu and the display will go back to its default of displaying the beer’s actual temp again.

Like anything else there are several types of temp controllers out there with a range of features and prices. Some additional features I’ve seen include: higher accuracy, outputs for an alarm light or bell, LED display, wider temperature capability, and auto/manual control.
A more accurate way to maintain temps would be to use a PID Temp controller. Here’s an example of how it works. If you’re heating a pot of water to 150ºF with a standard controller, it’ll heat with 100% power until it reaches 150ºF and shut off completely. With that method, the water will almost always overheat a few degrees (overshoot). Then it won’t turn the power back on until the temperature drops to 149ºF (undershoot) and then it’s back to blasting 100% power again to try and get back to 150ºF. With something called fuzzy logic, the controller can tell when you’re near your target temperature and will reduce the power as you approach. So when you reach 145ºF while heating, fuzzy logic can lower the power to 50% so you don’t overshoot 150 ºF like a standard controller. It basically allows you to slow down as you reach your target instead of running past it. It’s a simple idea but very helpful when trying to keep a stable temperature. Most of the PID’s I’ve seen used for homebrewing range from $10 - $100, depending on what features or brand you want, and how much DIY you'd like to do.


My temperature controller is made of a plastic project box, a generic controller display that came with a 3’ temperature probe, a standard 120v power cord, a few twist-on wire nuts, and a common household outlet / face plate. All together it was about $25. I really like how it takes the temperature guess work out of fermentation, diacetyl rests, cold crashing, bottle conditioning, and carbonating kegs. I consider a $25 investment well worth it when it prevents me from potentially ruining $50 batches of beer. Sometimes spending a little money can help you save a lot.
Nice write up. One question I have though. Is the fuzzy logic feature a good thing from the perspective of the compressor in the refrigerator or freezer? I thought the reducing the power to the compressor was a no go. in your example given of heating I can see it but I'm curious from a cooling perspective.
Great article! On a side note though that is not really a PID-controller as a true pid will adjust the control signal by using the error of the input value (real temperature - actual temperature). A fridge can normally only be controlled on or off, as opposed to controlling the cooling power on a sliding scale, so a pid is not really applicable.
Erm, big problem with the article in general. That device is not a PID, it’s a generic temperature controller. PID is not a general term for a temperature controller, and it specifically stands for “proportional–integral–derivative,” which is the math determining when to turn on and off your device. It’s a more complex algorithm which much more precisely gets when you want at the temperature you want.
The device you have listed does not do any of that math. That’s just fine for a refrigerator, since they cycle infrequently and change temperature slowly, but is inadequate for more complex tasks.
I would suggest editing your article’s title and text to be more correct.
My understanding is that using a thermowell will cause considerable overshoots in cooling and the best practice is to insulate the probe from the surrounding open air and measure the wall temperature of the fermentation vessel.
I appreciate all the time put into these articles. I have learned quite a few things from them over the years. Thank you Mike for doing this one. I am wondering if there should have been a bit more research on this article. I don't believe an STC-1000 (Which is what is featured in the article) qualifies as a PID controller. It is a simple on/off type controller. Yes, it has settings for error correction and "slew", but it doesn't do any predictive modeling to hit temperatures.
A PID is a proportional–integral–derivative controller (PID controller or three term controller) [Wikipedia] It's distinguishing function is that tries to predict the input and output to dampen oscillations. This is what the author calls "fuzzy logic".
Both types of controllers have their place in homebrewing. An STC-1000 can fit the bill for a lot of homebrewing applications, but it shouldn't be confused with the more advanced capabilities of a PID.
Thanks for this reply. I was going to write the same thing but you did it first more eloquently and politely.
You're right, fuzzy logic is not useful for a fridge or freezer. Those like to be on or off and run for long cycles rather than short frequent cycles which can wear them out quickly. I've always seen fuzzy logic used to keep stable mashing temps where the heating source can be varied between 0-100%.
Agreed, can't have one without the other and expect great beer.
I used to tape my probe to the side of my vessel and insulate it like you mentioned, and it kind of worked, but I've had much better luck with my thermowell. Anything will overshoot if the temperature drop is large. Even with my thermowell, I drop the temp in a couple stages if it's a large (10ºF or more) drop. If I have 75ºF wort and want to drop it to 55ºF for a lager, it'll overshoot down into the 40's if I try to drop 20ºF all at once. So I drop it to 60ºF, and then the next day I'll drop it the rest of the way to 55ºF. Just my preference. I feel like it's quicker to reach 55ºF that way and there's fewer temperature swings.
Hey NeoBrew. You're correct. The controller in my article is just a basic on/off type controller. I'm using the term PID very loosely in this article since it's just an intro to how a "PID" works for those that haven't used one before. The interface and functions are the same as a true PID, just without the proportional control (which makes it a true PID). For all intents and purposes, I'm considering this temperature controller a PID for this general overview.
You’re correct. The controller in my article is just a basic on/off type controller. I’m using the term PID very loosely in this article since it’s just an intro to how a “PID” works for those that haven’t used one before. The interface and functions are the same as a true PID, just without the proportional control (which makes it a true PID). For all intents and purposes, I’m considering this temperature controller a PID for this general overview.
You’re correct. The controller in my article is just a basic on/off type controller. I’m using the term PID very loosely in this article since it’s just an intro to how a “PID” works for those that haven’t used one before. The interface and functions are the same as a true PID, just without the proportional control (which makes it a true PID). For all intents and purposes, I’m considering this temperature controller a PID for this general overview.
You’re correct. The controller in my article is just a basic on/off type controller. I’m using the term PID very loosely in this article since it’s just an intro to how a “PID” works for those that haven’t used one before. The interface and functions are the same as a true PID, just without the proportional control (which makes it a true PID). For all intents and purposes, I’m considering this temperature controller a PID for this general overview.
Just because you are consdiring them the same doesn't make it true. You are writing an informative article, and as such have a responsibility for giving people correct information. Please edit your article.
First I want to thank the author for taking time to write up the article - these take time to research and write, and we are blessed that many take on these sometimes thankless jobs! Others have pointed out the STC is not a true PID controller, so I won't restate the differences (I do agree the article should be edited to correct this).
However, I would like to comment on "overshoot" and "undershoot". Thermostats, which the STC device featured here is, do not use any algorithms as the author pointed out. However, overshooting or undershooting occurs because of the temperature differences between the liquid interface (fermenter wall) and the measurement point.
In the case of a fermentation vessel, if the probe were placed on the outside of the fermenter (at the liquid interface), attached by tape, which is a commonly used method of measurement, the probe will respond to changes in ambient temperature very quickly. This will cause the heating or cooling circuit to cycle frequently, but the ambient temperature will stay within a tight range and the fermenting vessel will see very little temperature variation. This is not a problem for heaters - but it is for compressors, which the author noted. "Short cycling" compressors will prematurely age them.
On the other hand, if the the temperature probe were placed deep within the fermenting liquid (e.g. center of its mass), the ambient temperature will need to be changed for a long time before it measures any change, since the liquid near the surface will need to change temp first and conduct out internal heat. This causes the ambient air and surface liquid to have dramatic temperature swings with respect to the measuring point in the center. So for example, when cooling, the compressor will cool the ambient air, then the fermented surface, then the center. By the time the center reaches its target temp, the surface is well below that temp, causing ongoing cooling to the center, and the "undershoot". The reverse happens and overshoot occurs when the ambient air is warming the fermenter, either naturally or via heating.
To find the best of both worlds, the temp probe should be located somewhere inside the vessel's liquid, but not at the center. With a thermowell which penetrates to the center, the sensing probe need not be inserted all the way to the end. Of course the well itself conducts, so it will tend to equalize small changes in probe penetration. I would propose the probe penetrate 20% - 40% into the liquid, and the system response be evaluated. If the cycle time is too short (several times an hour), then the probe should be further inserted. If too long, causing dramatic over/undershoots, it can be retracted slightly. Ultimately the probe wire can be marked with tape or ink to identify a repeatable depth.
The article is great! Just one thing - I think that on the pictures in the article the controller is stc-1000, which is not PID, but a normal temperature controller.
+++1 BrunDog! For a few years now, I've found the "sweetspot" for my thermowell to be about halfway into the wort and 2" in from the side of the FV (fermenting vessel.) This buffers the over/undershoots problem of having the probe in the center of the liquid because of "thermal inertia" (tendency of the change in temp to continue moving from the point of change throughout the liquid.) Otherwise, very informative article that explains the basics of fermentation temperature control using a programmable device. Note I didn't get into the STC vs PID thing? Ed
Yes you are correct. Placing the temperature probe inside a 12 inch long thermowell, located near the center of the fermenter, will produce the most accurate results. Doing so will assure your are measuring the 'core' temperature of the fermenting wort. As a result the temperature swing up or down will be minimal. This prevents the compressor from cycling on and off frequently.
By the way, I use an STC-1000+ in combination with a thermowell. With this combination I can maintain ~0.5F fluctuation from my temperature set point.
Forgot about fuzzy logic. This one is a pretty vague term. On a technical level, it refers to the blending of multiple control laws based on the state of the system. An example would be two different PID controllers controlling the same system. One is used when the system is first warming up, the second is used once the system is warmed up. The two PID outputs would be weighted and added together, with the weighting depending on how warmed up the system is. Before the adoption of fuzzy logic this would have been handled by abruptly switching from one controller to the other, which causes some strange transitions and potential limit cycle oscillations.
The term fuzzy logic 'nowadays' gets thrown around. But basically it means that the control changes on its own depending on when the thing it controls changes in some important way.
This is a very good write up. I recommend using a RIB (Relay in a Box) when using an STC-1000 or the inkbird version ITC-1000. When using a RIB, the temperature controller never get's the startup amp draw of the compressor, and the actual load is very very very low... no matter how many amps are being drawn.
Good article.
When a thermowell is not available, I suggest using a larger vessel filled with water, like a 1 gallon jug. When the thermistor probe is immersed in it, the temperature changes will occur slower and thus prevent short cycling of the compressor.
Also, most temperature controllers, including STC-1000 have a cooling parameter for minimum OFF time, with default set to 5 minutes. This prevents short cycling even if the probe sees sudden temperature swings.
I don't want to split hairs here, but PID is not the same as fuzzy logic. They are different methods of predicting temperature changes and adjusting the output ON/OFF rate. Not that it matters for this application.
PID control is only useful for resistive electric heating elements, which can be cycled many times in a short time period. Refrigeration has to use ON/OFF method due to compressor limitations.
I started working on an open source project called BrewBench to control temperatures with an arduino, I have it wired up with thermowells and thermistors for both the brew session and fermentation.
Very good.
Perhaps if you referred to your slew rate as integral control which simply put is correcting the error between Set point Temp and Actual measured temp.
The controller you are describing is a PI controller.
From a control systems prospective controlling a fridge is either power on or off. To remove extremes of temp between fridge top and bottom a cheap computer or USB fan can be used.
This fan is connected electrically to the output of the Temp controller where the fridge plugs into.
I use this system with my integral set at 0.5 degrees C and it works really well maintaining my fermenting brew to within 0.5 deg C with a decent length of time ( greater than 10 minutes ) between my fridge turning on and off. Using a thermal well has the disadvantage of increasing the air temp swings within your fridge. i find it better to just control the air temp in the fridge. Hope I'm not confusing anyone here. Temperature control is important to understand properly.
To quote the Joy of Home Brewing by Charlie Papazian " Don't Worry Be Happy Have another Home Brew
I had a very simple way I was thinking to make a fermentation chamber, I have a 7 cu ft freezer I store my kegged beer in at 34 F, I was going to get a non working 7 cu ft freezer and sit it next to my working one. Here is where it gets cool, was going to connect the 2 freezers with a insulated duct pipe with a fan hooked up to a cheap controller, when the fermentation chamber needs cooling it will just turn on the fan and blow a little cool air until my set point is achieved. Does this sound like it would work?