Home Brew Heater Controller

Picture of Home Brew Heater Controller
This is a picaxe-controlled LCD thermostat. The cheap heating pad I bought didn't have any sort of temperature control and I couldn't find a cheap thermostat online that would do what I wanted : easy push-button controls and a simple LCD to show temperature info. Of course it could be used for things other than brewing beer, for example as a pet bed heater, aquarium heater, etc. The temperature sensor works from -55 to +127 degrees celsius.

The temp controller is powered from the same 12v mains transformer that powers the heating pad, which is regulated down to 5v to drive the circuit. A picaxe 18X does the work, and a DS18B20 digital temp sensor is immersed in the brew to sense the temperature. The sensor is encapsulated in stainless steel so it can remain in the vat for the duration of the brewing.

The unit has a 2-line alphanumeric LCD to show the preset temperature, and the actual temp of the brew. Two buttons adjust the present temperature, and LEDs indicate when the heating element is on and/or the brew is at the desired temperature. A MOSFET switches the 12V at about 2 amps to drive the heating element. The mosfet I used can actually handle about 15 amps if required.

I used the thermostat to control a resistive heater which is sewn between a woollen blanket and cotton sheet, to form a thick wrap which I tie around the vat of home brew to keep it at a constant temperature for perfect fermentation, even during cold winter months in an unheated room. Thanks to Bec for sewing the heater element into the blanket!
Remove these adsRemove these ads by Signing Up
BruGuy2 years ago
Great instructable! I plan on building one soon!
dialup_prisoner (author)  BruGuy2 years ago
I'm planning a second revision, this time using an Arduino. As usual with hobby projects, I have no idea _when_ it will happen, although I hope to get something working before June (Winter here in Australia) More details will follow here as I make progress.
dialup_prisoner (author) 3 years ago
The latest version of the code supports the Picaxe 18M2 and allows for display of fahrenheit temperatures. Hold down the up and down keys simultaneously when switching the unit on to display temperatures in fahrenheit instead. Thanks to Ash for pointing out that there are still 3 countries that for some reason choose not to use the metric system, and AndyGadget for the suggestion of the most hardware-friendly way to change modes.
Great temperature controller, would it be possible to add a switch for Fahrenheit or Celsius display? I know this would only be of use to a small part of the world but they have a habit of complaining when they see something they don't understand.
dialup_prisoner (author)  c.ash.norris4 years ago
Yes. There are a few ways to do this.

1. (the easiest way) A firmware change to display farenheit temperatures. Without some form of input (like a switch on one of the picaxe's input pins) you would not be able to select celsius or farenheit on the fly - the only way to select between the two would be to plug in the programming cable and change the firmware. If you're not changing scales every day, this would work fine. I hope to put up code to do this within the next few weeks. Not hard to write, but hard to find the time!

2. (slightly harder) To avoid changing the circuit board, one could solder a switch and a pull-down resistor to one of the unused picaxe input pins, to allow the user to select between celsius and farenheit (even Kelvin if you want to be cheeky) on the fly.

3. Change the circuit board to have another switch on the front panel. This is the hardest route to take but would give the most professional-looking result. We'll wait and see how much interest there is, and if it is demanded, maybe I'll upload a version 2 of the board

3/4. The picaxe 18X, which is what the board was designed for, has a hardware "reset" switch on pin4, which on my prototype I hid at the back of the board. Revolution Education are replacing the 18X with a new chip, the 18M2, which has no requirement for a reset switch. It should be possible to have the best of the all the above options, without having to re-design the PCB - you would just have a little hole in the back of the case, where a hidden button would allow you to switch between celsius and farenheit. Next time I put in a picaxe order, I will make sure to get a couple of 18M2s and try this myself. As an added bonus, this chip is also cheaper than the original 18X.

I hope this is of some use to you.

Another way :-
Hold down UP and DN together for 3 seconds to switch between Celcius and Fahrenheit.  Store a flag in EEPROM so it remembers the state for next time. 

OR :-
Hold down UP at power up to change to Celcius. Hold down DN to change to Fahrenheit .  Store in EEPROM as above.

Useful project by the way - I'll be making something like this for brewing before next winter.
dialup_prisoner (author)  AndyGadget3 years ago
Good idea Andy. I'm building one for a friend in the next few weeks so hopefully I'll get the chance to implement your suggestion then...

Hold down key at startup would be the easier one to code.
Picaxe 08M2, 14M2 and 20X2 just released by Rev-Ed., although if you are a 'dialup prisoner' it's going to take a while to download all 88MB of the updated PE.  (If you ask on the PicAxe forum some kind soul may send you a CD as there appear to be a fair few PicAxers in Aus.)
atmorris4 years ago
Hi, I'd very much like to build one of these, especially since you've already fabricated plans for a PCB. My biodiesel club at school (we're a bunch of chem E's that don't know circuits) really needs one of these attatched to a heating element. I must admit, I have no circuit experience, I do however know theory.

In your instructables you seem to skip over quite a few steps. I'm not really sure what all the resistors/capacitors are connecting. And your eagle files download to .temp when I change the file extension only one of them work on eagle. Is this project just as simple as having the parts, learning to read Eagle schematics and connecting/soldering? Or is this for people who have an understanding of building these projects already?

Also, for my project I'm looking for more of a temperature controlled switch, so could I just replace your mosfet with a relay? Thanks For your help! I'd really like to get this project going
dialup_prisoner (author)  atmorris4 years ago
I had success downloading the files, then renaming them back to their .brd and .sch extensions. Both of them opened OK in Eagle 5.10.0. I could put all the required files in a big .zip archive if that would be easier to use? That way when you unzip it, all the original filenames and directory structure should be preserved.

Yes, it should "just work" if you simply follow the Eagle layout. However we both know life isn't that simple! Especially if you haven't used the picaxes before, it might be worth asking someone for help.

The picaxe can't switch enough current to drive a relay directly, so you would still need to increase the picaxe's switching capacity somehow. You could replace the mosfet with a cheaper transistor, but you'd only be saving a few cents.

Let me know if you want me to try uploading the files again. If you can see the circuit board layout on screen, that should give a better idea of what's involved in construction.
Ok, I'm near finishing up the research stage, and although ur heating controller looks badass, I'm afraid I might run into too many problems while trying to get it to work. I may save this project for when we get our 20 gallon continous flow going. Thanks very much for the help though!